diff --git a/.editorconfig b/.editorconfig index 880f0cb6f602f2b3023ef86392a23ae3d4d60a83..cb73cfb11170d2fe3f20d517cef45d7de8fc9c02 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,3 +1,5 @@ +# SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: AGPL-3.0-or-later root = true # General @@ -13,6 +15,9 @@ insert_final_newline = true [Makefile] indent_style = tab +[renovate.json] +indent_style = tab + [*.yml] indent_style = space indent_size = 2 diff --git a/.eslintrc.js b/.eslintrc.js index 3a012201cff4c3b9eaa122a10853357c48cce068..49ec525b74f12386d817db55c4c816a27f377eb9 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -1,3 +1,7 @@ +/** + * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ module.exports = { extends: [ '@nextcloud', diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs new file mode 100644 index 0000000000000000000000000000000000000000..3855a5092ff1be19209517cf87bfb759c0dc930a --- /dev/null +++ b/.git-blame-ignore-revs @@ -0,0 +1,10 @@ +# .git-blame-ignore-revs + +# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: AGPL-3.0-or-later + +# Update to coding-standard 1.2.3 +3b3935b4e754ccbc00d3abb71ab6836f3db5b026 + +# Update to coding-standard 1.3.1 +db4964b631856f514bc08d3da0e86014a18d678f diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000000000000000000000000000000000000..65e354564c8dd36e6468c5c0db44c91f9abced60 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,5 @@ +# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: AGPL-3.0-or-later + +# App maintainers +* @SebastianKrupinski @st3iny @tcitworld diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml index 7eb77b647b59703ca16c9db12be3cc52b540e824..119b51379996caec557a85b94df2109c9a58a456 100644 --- a/.github/ISSUE_TEMPLATE/bug.yml +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -41,7 +41,7 @@ body: - type: textarea id: actual-behavior attributes: - label: Actual behaviour + label: Actual behavior description: | Tell us what happens instead validations: @@ -114,10 +114,12 @@ body: Select PHP engine version serving Nextcloud Server. _Describe in the "Additional info" section if you chose "Other"._ options: - - "PHP 7.3" - "PHP 7.4" - "PHP 8.0" - "PHP 8.1" + - "PHP 8.2" + - "PHP 8.3" + - "PHP 8.4" - "Other" - type: input id: nextcloud-version diff --git a/.github/ISSUE_TEMPLATE/bug.yml.license b/.github/ISSUE_TEMPLATE/bug.yml.license new file mode 100644 index 0000000000000000000000000000000000000000..499bb41101998ba6af113dc79dda228314ccef6e --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug.yml.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors +SPDX-License-Identifier: MIT diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index be540b27cd7837f0937c2d31d71ca0ad5e638939..6f369932aedb420b3d7d3886424b0f9b544c12ea 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -3,6 +3,9 @@ contact_links: - name: ❓ Question url: https://help.nextcloud.com/ about: I have a question … - - name: 🔒 Security Vulnerability + - name: 🚨 Report a security or privacy issue url: https://hackerone.com/nextcloud - about: Found a security vulnerability? + about: Report security and privacy related issues privately to the Nextcloud team, so we can coordinate the fix and release without potentially exposing all Nextcloud servers and users in the meantime. + - name: 🚨 报告安全或隐私问题 + url: https://hackerone.com/nextcloud + about: 请以私密方式向 Nextcloud 团队报告安全和隐私相关问题,以便我们能够协调修复工作并安排发布计划,避免在此期间可能暴露所有 Nextcloud 服务器和用户的风险。 diff --git a/.github/ISSUE_TEMPLATE/config.yml.license b/.github/ISSUE_TEMPLATE/config.yml.license new file mode 100644 index 0000000000000000000000000000000000000000..ddf14c9f668e01a1cf59c1945bf28ca7158a61e3 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors +SPDX-License-Identifier: MIT diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml.license b/.github/ISSUE_TEMPLATE/feature_request.yml.license new file mode 100644 index 0000000000000000000000000000000000000000..499bb41101998ba6af113dc79dda228314ccef6e --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml.license @@ -0,0 +1,2 @@ +SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors +SPDX-License-Identifier: MIT diff --git a/.github/dependabot.yml b/.github/dependabot.yml deleted file mode 100644 index d7a0653d9f415c327acbaba4f2fd7fe93a151d12..0000000000000000000000000000000000000000 --- a/.github/dependabot.yml +++ /dev/null @@ -1,27 +0,0 @@ -version: 2 -updates: -- package-ecosystem: composer - directory: "/" - schedule: - interval: weekly - day: saturday - time: "03:00" - timezone: Europe/Paris - open-pull-requests-limit: 10 - labels: - - 3 - to review -- package-ecosystem: npm - directory: "/" - schedule: - interval: weekly - day: saturday - time: "03:00" - timezone: Europe/Paris - open-pull-requests-limit: 10 - labels: - - 3 - to review - ignore: - - dependency-name: css-loader - versions: - - ">= 4.a" - - "< 5" diff --git a/.github/no-response.yml b/.github/no-response.yml index 3b2ef27df69a2482e334c05163002beb6e2518e9..b8dc1d8c6c010349ad19ee23fba67c2013c7b859 100644 --- a/.github/no-response.yml +++ b/.github/no-response.yml @@ -1,5 +1,8 @@ # Configuration for probot-no-response - https://github.com/probot/no-response - +# +# SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT +# # Number of days of inactivity before an Issue is closed for lack of response daysUntilClose: 21 # Label requiring a response diff --git a/.github/workflows/appstore-build-publish.yml b/.github/workflows/appstore-build-publish.yml index fc04383c6b4f1a023a8d7a4f506f98ce162ad73a..c28e4b2bb47a87ba3a942c8fa839292beaeee550 100644 --- a/.github/workflows/appstore-build-publish.yml +++ b/.github/workflows/appstore-build-publish.yml @@ -2,6 +2,9 @@ # # https://github.com/nextcloud/.github # https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT name: Build and publish app release @@ -9,9 +12,6 @@ on: release: types: [published] -env: - PHP_VERSION: 7.4 - jobs: build_and_publish: runs-on: ubuntu-latest @@ -21,59 +21,67 @@ jobs: steps: - name: Check actor permission - uses: skjnldsv/check-actor-permission@v2 + uses: skjnldsv/check-actor-permission@69e92a3c4711150929bca9fcf34448c5bf5526e7 # v3.0 with: require: write - name: Set app env run: | - # Split and keep last + # Split and keep last echo "APP_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV echo "APP_VERSION=${GITHUB_REF##*/}" >> $GITHUB_ENV - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 with: path: ${{ env.APP_NAME }} - name: Get appinfo data id: appinfo - uses: skjnldsv/xpath-action@master + uses: skjnldsv/xpath-action@f5b036e9d973f42c86324833fd00be90665fbf77 # master with: filename: ${{ env.APP_NAME }}/appinfo/info.xml expression: "//info//dependencies//nextcloud/@min-version" - name: Read package.json node and npm engines version - uses: skjnldsv/read-package-engines-version-actions@v1.2 + uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3 id: versions # Continue if no package.json continue-on-error: true with: path: ${{ env.APP_NAME }} - fallbackNode: "^12" - fallbackNpm: "^6" + fallbackNode: '^20' + fallbackNpm: '^10' - name: Set up node ${{ steps.versions.outputs.nodeVersion }} # Skip if no package.json if: ${{ steps.versions.outputs.nodeVersion }} - uses: actions/setup-node@v3 + uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b # v4.0.3 with: node-version: ${{ steps.versions.outputs.nodeVersion }} - name: Set up npm ${{ steps.versions.outputs.npmVersion }} # Skip if no package.json if: ${{ steps.versions.outputs.npmVersion }} - run: npm i -g npm@"${{ steps.versions.outputs.npmVersion }}" + run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}' + + - name: Get php version + id: php-versions + uses: icewind1991/nextcloud-version-matrix@58becf3b4bb6dc6cef677b15e2fd8e7d48c0908f # v1.3.1 + with: + filename: ${{ env.APP_NAME }}/appinfo/info.xml - - name: Set up php ${{ env.PHP_VERSION }} - uses: shivammathur/setup-php@v2 + - name: Set up php ${{ steps.php-versions.outputs.php-min }} + uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2.31.1 with: - php-version: ${{ env.PHP_VERSION }} + php-version: ${{ steps.php-versions.outputs.php-min }} coverage: none + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Check composer.json id: check_composer - uses: andstor/file-existence-action@v1 + uses: andstor/file-existence-action@076e0072799f4942c8bc574a82233e1e4d13e9d6 # v3.0.0 with: files: "${{ env.APP_NAME }}/composer.json" @@ -86,22 +94,24 @@ jobs: - name: Build ${{ env.APP_NAME }} # Skip if no package.json if: ${{ steps.versions.outputs.nodeVersion }} + env: + CYPRESS_INSTALL_BINARY: 0 run: | cd ${{ env.APP_NAME }} npm ci - npm run build + npm run build --if-present - name: Check Krankerl config id: krankerl - uses: andstor/file-existence-action@v1 + uses: andstor/file-existence-action@076e0072799f4942c8bc574a82233e1e4d13e9d6 # v3.0.0 with: files: ${{ env.APP_NAME }}/krankerl.toml - name: Install Krankerl if: steps.krankerl.outputs.files_exists == 'true' run: | - wget https://github.com/ChristophWurst/krankerl/releases/download/v0.13.0/krankerl_0.13.0_amd64.deb - sudo dpkg -i krankerl_0.13.0_amd64.deb + wget https://github.com/ChristophWurst/krankerl/releases/download/v0.14.0/krankerl_0.14.0_amd64.deb + sudo dpkg -i krankerl_0.14.0_amd64.deb - name: Package ${{ env.APP_NAME }} ${{ env.APP_VERSION }} with krankerl if: steps.krankerl.outputs.files_exists == 'true' @@ -119,14 +129,15 @@ jobs: continue-on-error: true id: server-checkout run: | - NCVERSION=${{ fromJSON(steps.appinfo.outputs.result).nextcloud.min-version }} + NCVERSION='${{ fromJSON(steps.appinfo.outputs.result).nextcloud.min-version }}' wget --quiet https://download.nextcloud.com/server/releases/latest-$NCVERSION.zip unzip latest-$NCVERSION.zip - name: Checkout server master fallback - uses: actions/checkout@v3 + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 if: ${{ steps.server-checkout.outcome != 'success' }} with: + submodules: true repository: nextcloud/server path: nextcloud @@ -137,7 +148,7 @@ jobs: tar -xvf ${{ env.APP_NAME }}.tar.gz cd ../../../ # Setting up keys - echo "${{ secrets.APP_PRIVATE_KEY }}" > ${{ env.APP_NAME }}.key + echo '${{ secrets.APP_PRIVATE_KEY }}' > ${{ env.APP_NAME }}.key wget --quiet "https://github.com/nextcloud/app-certificate-requests/raw/master/${{ env.APP_NAME }}/${{ env.APP_NAME }}.crt" # Signing php nextcloud/occ integrity:sign-app --privateKey=../${{ env.APP_NAME }}.key --certificate=../${{ env.APP_NAME }}.crt --path=../${{ env.APP_NAME }}/build/artifacts/${{ env.APP_NAME }} @@ -146,7 +157,7 @@ jobs: tar -zcvf ${{ env.APP_NAME }}.tar.gz ${{ env.APP_NAME }} - name: Attach tarball to github release - uses: svenstaro/upload-release-action@v2 + uses: svenstaro/upload-release-action@04733e069f2d7f7f0b4aebc4fbdbce8613b03ccd # v2 id: attach_to_release with: repo_token: ${{ secrets.GITHUB_TOKEN }} @@ -156,7 +167,7 @@ jobs: overwrite: true - name: Upload app to Nextcloud appstore - uses: nextcloud-releases/nextcloud-appstore-push-action@v1 + uses: nextcloud-releases/nextcloud-appstore-push-action@a011fe619bcf6e77ddebc96f9908e1af4071b9c1 # v1 with: app_name: ${{ env.APP_NAME }} appstore_token: ${{ secrets.APPSTORE_TOKEN }} diff --git a/.github/workflows/appstore-conventional-build-publish.yml b/.github/workflows/appstore-conventional-build-publish.yml new file mode 100644 index 0000000000000000000000000000000000000000..5c75fdd5164700db5d7a1e7d2defec25149a33a5 --- /dev/null +++ b/.github/workflows/appstore-conventional-build-publish.yml @@ -0,0 +1,87 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2021-2025 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Build and publish app release conventionally + +on: + workflow_dispatch: + branches: stable* + inputs: + prerelease: + description: 'Pre-release' + type: boolean + required: true + prereleaseIdentifier: + description: 'Pre-release identifier' + required: true + default: 'rc' + type: choice + options: + - alpha + - beta + - rc + +env: + PHP_VERSION: 8.2 + +jobs: + build_and_publish: + runs-on: [ubuntu-latest, self-hosted] + environment: release + + steps: + - name: Check actor permission + uses: skjnldsv/check-actor-permission@69e92a3c4711150929bca9fcf34448c5bf5526e7 # v3.0 + with: + require: write + + - name: Set app env + run: | + # Split and keep last + echo "APP_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV + echo "APP_VERSION=${GITHUB_REF##*/}" >> $GITHUB_ENV + + - name: Checkout + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + with: + token: ${{ secrets.RELEASE_PAT }} + fetch-depth: 0 + + - name: Conventional Changelog Action + id: changelog + uses: TriPSs/conventional-changelog-action@b7f32a8347e86c26ea2f4823cc7c160b9014c6a0 # v3 + with: + github-token: ${{ secrets.RELEASE_PAT }} + git-user-email: nextcloud-command@users.noreply.github.com + git-user-name: Nextcloud Command Bot + skip-git-pull: "true" + pre-commit: build/pre-commit.js + release-count: 0 + version-file: "package.json, package-lock.json" + pre-release: ${{ inputs.prerelease }} + pre-release-identifier: ${{ inputs.prereleaseIdentifier }} + + - name: Push tag to releases organization + if: ${{ steps.changelog.outputs.skipped == 'false' }} + run: | + git remote add release https://github.com/nextcloud-releases/${{ env.APP_NAME }}.git + git push release ${{ steps.changelog.outputs.tag }} + + - name: Create Release + if: ${{ steps.changelog.outputs.skipped == 'false' }} + id: create_release + uses: actions/create-release@0cb9c9b65d5d1901c1f53e5e66eaf4afd303e70e # v1 + env: + GITHUB_TOKEN: ${{ secrets.RELEASE_PAT }} + with: + owner: nextcloud-releases + repo: ${{ env.APP_NAME }} + tag_name: ${{ steps.changelog.outputs.tag }} + release_name: ${{ steps.changelog.outputs.tag }} + body: ${{ steps.changelog.outputs.clean_changelog }} + prerelease: ${{ inputs.prerelease }} diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml deleted file mode 100644 index 2d2f637f7a3aa6cc803de9003edb72273c073fff..0000000000000000000000000000000000000000 --- a/.github/workflows/build.yml +++ /dev/null @@ -1,36 +0,0 @@ -name: Build - -on: - pull_request: - push: - branches: - - main - -jobs: - build: - runs-on: ubuntu-latest - - strategy: - matrix: - node-version: [14, 15, 16] - - name: node${{ matrix.node-version }} - - steps: - - uses: actions/checkout@v2 - - - name: Set up node ${{ matrix.node-version }} - uses: actions/setup-node@v2 - with: - node-version: ${{ matrix.node-version }} - - - name: Set up npm 7 - run: npm i -g npm@7 - - - name: Install dependencies - run: npm ci - - - name: Build - run: npm run build - env: - CI: true diff --git a/.github/workflows/conventional_commits.yml b/.github/workflows/conventional_commits.yml new file mode 100644 index 0000000000000000000000000000000000000000..c3dce15226a32abb54289b2fbe3e67440e761d2e --- /dev/null +++ b/.github/workflows/conventional_commits.yml @@ -0,0 +1,17 @@ +# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT +name: Conventional Commits + +on: + pull_request: + types: [opened, ready_for_review, reopened, synchronize] + branches: + - stable* + +jobs: + build: + name: Conventional Commits + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 + - uses: webiny/action-conventional-commits@8bc41ff4e7d423d56fa4905f6ff79209a78776c7 # v1.3.0 diff --git a/.github/workflows/fixup.yml b/.github/workflows/fixup.yml index c2be823400c93adc1fdd65f8c601ac3bd892766a..69da2bbb039f21da327423d70357d460bc5edcd7 100644 --- a/.github/workflows/fixup.yml +++ b/.github/workflows/fixup.yml @@ -1,11 +1,36 @@ -on: pull_request -name: Commit checks +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Block fixup and squash commits + +on: + pull_request: + types: [opened, ready_for_review, reopened, synchronize] + +permissions: + contents: read + +concurrency: + group: fixup-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + jobs: - commit-message-check: - name: Block fixup and squash commits - runs-on: ubuntu-latest - steps: - - name: Run check - uses: xt0rted/block-autosquash-commits-action@main - with: - repo-token: ${{ secrets.GITHUB_TOKEN }} + commit-message-check: + if: github.event.pull_request.draft == false + + permissions: + pull-requests: write + name: Block fixup and squash commits + + runs-on: ubuntu-latest-low + + steps: + - name: Run check + uses: skjnldsv/block-fixup-merge-action@c138ea99e45e186567b64cf065ce90f7158c236a # v2 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/lint-eslint-when-unrelated.yml b/.github/workflows/lint-eslint-when-unrelated.yml new file mode 100644 index 0000000000000000000000000000000000000000..92a83a90ccdbe5c4ad4eac1ae072c5724d9e7ab6 --- /dev/null +++ b/.github/workflows/lint-eslint-when-unrelated.yml @@ -0,0 +1,39 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Lint eslint + +on: + pull_request: + paths-ignore: + - '.github/workflows/**' + - 'src/**' + - 'appinfo/info.xml' + - 'package.json' + - 'package-lock.json' + - 'tsconfig.json' + - '.eslintrc.*' + - '.eslintignore' + - '**.js' + - '**.ts' + - '**.vue' + +permissions: + contents: read + +jobs: + lint: + permissions: + contents: none + + runs-on: ubuntu-latest + + name: eslint + + steps: + - run: 'echo "No eslint required"' diff --git a/.github/workflows/lint-eslint.yml b/.github/workflows/lint-eslint.yml new file mode 100644 index 0000000000000000000000000000000000000000..74c5e9c88fdad9796828919f5b569dfbe5b583eb --- /dev/null +++ b/.github/workflows/lint-eslint.yml @@ -0,0 +1,98 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Lint eslint + +on: pull_request + +permissions: + contents: read + +concurrency: + group: lint-eslint-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + changes: + runs-on: ubuntu-latest-low + permissions: + contents: read + pull-requests: read + + outputs: + src: ${{ steps.changes.outputs.src}} + + steps: + - uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2 + id: changes + continue-on-error: true + with: + filters: | + src: + - '.github/workflows/**' + - 'src/**' + - 'appinfo/info.xml' + - 'package.json' + - 'package-lock.json' + - 'tsconfig.json' + - '.eslintrc.*' + - '.eslintignore' + - '**.js' + - '**.ts' + - '**.vue' + + lint: + runs-on: ubuntu-latest + + needs: changes + if: needs.changes.outputs.src != 'false' + + name: NPM lint + + steps: + - name: Checkout + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + + - name: Read package.json node and npm engines version + uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3 + id: versions + with: + fallbackNode: '^20' + fallbackNpm: '^10' + + - name: Set up node ${{ steps.versions.outputs.nodeVersion }} + uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b # v4.0.3 + with: + node-version: ${{ steps.versions.outputs.nodeVersion }} + + - name: Set up npm ${{ steps.versions.outputs.npmVersion }} + run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}' + + - name: Install dependencies + env: + CYPRESS_INSTALL_BINARY: 0 + PUPPETEER_SKIP_DOWNLOAD: true + run: npm ci + + - name: Lint + run: npm run lint + + summary: + permissions: + contents: none + runs-on: ubuntu-latest-low + needs: [changes, lint] + + if: always() + + # This is the summary, we just avoid to rename it so that branch protection rules still match + name: eslint + + steps: + - name: Summary status + run: if ${{ needs.changes.outputs.src != 'false' && needs.lint.result != 'success' }}; then exit 1; fi diff --git a/.github/workflows/lint-info-xml.yml b/.github/workflows/lint-info-xml.yml new file mode 100644 index 0000000000000000000000000000000000000000..736a89502c65308b4ac93202a60f338dea5ec7d0 --- /dev/null +++ b/.github/workflows/lint-info-xml.yml @@ -0,0 +1,36 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Lint info.xml + +on: pull_request + +permissions: + contents: read + +concurrency: + group: lint-info-xml-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + xml-linters: + runs-on: ubuntu-latest-low + + name: info.xml lint + steps: + - name: Checkout + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + + - name: Download schema + run: wget https://raw.githubusercontent.com/nextcloud/appstore/master/nextcloudappstore/api/v1/release/info.xsd + + - name: Lint info.xml + uses: ChristophWurst/xmllint-action@36f2a302f84f8c83fceea0b9c59e1eb4a616d3c1 # v1.2 + with: + xml-file: ./appinfo/info.xml + xml-schema-file: ./info.xsd diff --git a/.github/workflows/lint-php-cs.yml b/.github/workflows/lint-php-cs.yml new file mode 100644 index 0000000000000000000000000000000000000000..3cd4d74e829607f5ccacfcec3ac4c09146a43bf4 --- /dev/null +++ b/.github/workflows/lint-php-cs.yml @@ -0,0 +1,48 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Lint php-cs + +on: pull_request + +permissions: + contents: read + +concurrency: + group: lint-php-cs-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + lint: + runs-on: ubuntu-latest + + name: php-cs + + steps: + - name: Checkout + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + + - name: Get php version + id: versions + uses: icewind1991/nextcloud-version-matrix@58becf3b4bb6dc6cef677b15e2fd8e7d48c0908f # v1.3.1 + + - name: Set up php${{ steps.versions.outputs.php-min }} + uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2.31.1 + with: + php-version: ${{ steps.versions.outputs.php-min }} + extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite + coverage: none + ini-file: development + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Install dependencies + run: composer i + + - name: Lint + run: composer run cs:check || ( echo 'Please run `composer run cs:fix` to format your code' && exit 1 ) diff --git a/.github/workflows/lint-php.yml b/.github/workflows/lint-php.yml new file mode 100644 index 0000000000000000000000000000000000000000..8dba53814a33ecd4a06f4f42a4d47bd1d9dde9d7 --- /dev/null +++ b/.github/workflows/lint-php.yml @@ -0,0 +1,70 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Lint php + +on: pull_request + +permissions: + contents: read + +concurrency: + group: lint-php-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + matrix: + runs-on: ubuntu-latest-low + outputs: + php-versions: ${{ steps.versions.outputs.php-versions }} + steps: + - name: Checkout app + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + - name: Get version matrix + id: versions + uses: icewind1991/nextcloud-version-matrix@c2bf575a3516752db5ce2915499d3f694885e2c7 # v1.0.0 + + php-lint: + runs-on: ubuntu-latest + needs: matrix + strategy: + matrix: + php-versions: ${{fromJson(needs.matrix.outputs.php-versions)}} + + name: php-lint + + steps: + - name: Checkout + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + + - name: Set up php ${{ matrix.php-versions }} + uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2.31.1 + with: + php-version: ${{ matrix.php-versions }} + extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite + coverage: none + ini-file: development + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Lint + run: composer run lint + + summary: + permissions: + contents: none + runs-on: ubuntu-latest-low + needs: php-lint + + if: always() + + name: php-lint-summary + + steps: + - name: Summary status + run: if ${{ needs.php-lint.result != 'success' && needs.php-lint.result != 'skipped' }}; then exit 1; fi diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml deleted file mode 100644 index 55f498cde4fc75ed69ed8b9e5c81e620162b46ff..0000000000000000000000000000000000000000 --- a/.github/workflows/lint.yml +++ /dev/null @@ -1,81 +0,0 @@ -name: Lint - -on: - pull_request: - push: - branches: - - main - -jobs: - xml-linters: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v2 - - name: Download schema - run: wget https://apps.nextcloud.com/schema/apps/info.xsd - - name: Lint info.xml - uses: ChristophWurst/xmllint-action@v1 - with: - xml-file: ./appinfo/info.xml - xml-schema-file: ./info.xsd - - php-linters: - runs-on: ubuntu-latest - strategy: - matrix: - php-versions: ['7.4', '8.0', '8.1', '8.2'] - name: php${{ matrix.php-versions }} lint - steps: - - name: Checkout - uses: actions/checkout@v2 - - name: Set up php${{ matrix.php-versions }} - uses: shivammathur/setup-php@master - with: - php-version: ${{ matrix.php-versions }} - coverage: none - - name: Lint - run: composer run lint - - node-linters: - runs-on: ubuntu-latest - name: ESLint - - steps: - - uses: actions/checkout@v2 - - - name: Set up Node - uses: actions/setup-node@v2 - with: - node-version: 14 - - - name: Set up npm7 - run: npm i -g npm@7 - - - name: npm install - run: npm ci - - - name: eslint - run: npm run lint - env: - CI: true - - php-cs-fixer: - name: php-cs check - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v2 - - - name: Set up php - uses: shivammathur/setup-php@master - with: - php-version: 7.4 - coverage: none - - - name: Install dependencies - run: composer i - - - name: Run coding standards check - run: composer run cs:check || ( echo 'Please run `composer run cs:fix` to format your code' && exit 1 ) diff --git a/.github/workflows/npm-audit-fix.yml b/.github/workflows/npm-audit-fix.yml new file mode 100644 index 0000000000000000000000000000000000000000..9d17986e2034e4c002134f94d2021a7ebbb928fe --- /dev/null +++ b/.github/workflows/npm-audit-fix.yml @@ -0,0 +1,81 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Npm audit fix and compile + +on: + workflow_dispatch: + schedule: + # At 2:30 on Sundays + - cron: '30 2 * * 0' + +permissions: + contents: read + +jobs: + build: + runs-on: ubuntu-latest + + strategy: + fail-fast: false + matrix: + branches: ['main', 'stable5.2', 'stable4.7'] + + name: npm-audit-fix-${{ matrix.branches }} + + steps: + - name: Checkout + id: checkout + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + persist-credentials: false + ref: ${{ matrix.branches }} + continue-on-error: true + + - name: Read package.json node and npm engines version + uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3 + id: versions + with: + fallbackNode: '^20' + fallbackNpm: '^10' + + - name: Set up node ${{ steps.versions.outputs.nodeVersion }} + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 + with: + node-version: ${{ steps.versions.outputs.nodeVersion }} + + - name: Set up npm ${{ steps.versions.outputs.npmVersion }} + run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}' + + - name: Fix npm audit + id: npm-audit + uses: nextcloud-libraries/npm-audit-action@2a60bd2e79cc77f2cc4d9a3fe40f1a69896f3a87 # v0.1.0 + + - name: Run npm ci and npm run build + if: steps.checkout.outcome == 'success' + env: + CYPRESS_INSTALL_BINARY: 0 + run: | + npm ci + npm run build --if-present + + - name: Create Pull Request + if: steps.checkout.outcome == 'success' + uses: peter-evans/create-pull-request@5e914681df9dc83aa4e4905692ca88beb2f9e91f # v7.0.5 + with: + token: ${{ secrets.COMMAND_BOT_PAT }} + commit-message: 'fix(deps): Fix npm audit' + committer: GitHub + author: nextcloud-command + signoff: true + branch: automated/noid/${{ matrix.branches }}-fix-npm-audit + title: '[${{ matrix.branches }}] Fix npm audit' + body: ${{ steps.npm-audit.outputs.markdown }} + labels: | + dependencies + 3. to review diff --git a/.github/workflows/npm-test.yml b/.github/workflows/npm-test.yml index 58ceeb8d77b888947ef3d6bfca6fa67df9e34fa0..3d3290532b127fbdc3e75f7e6d4240d28d4dce79 100644 --- a/.github/workflows/npm-test.yml +++ b/.github/workflows/npm-test.yml @@ -1,10 +1,7 @@ +# SPDX-FileCopyrightText: 2020-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT name: JS Tests - -on: - pull_request: - push: - branches: - - main +on: pull_request jobs: jest: @@ -12,20 +9,24 @@ jobs: strategy: matrix: - node-version: [14, 15, 16] + node-version: [20] + npm-version: [9] name: node${{ matrix.node-version }} steps: - - uses: actions/checkout@v2 + - name: Checkout + uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + with: + persist-credentials: false - name: Set up node ${{ matrix.node-version }} - uses: actions/setup-node@v2 + uses: actions/setup-node@3235b876344d2a9aa001b8d1453c930bba69e610 # v3 with: node-version: ${{ matrix.node-version }} - - name: Set up npm 7 - run: npm i -g npm@7 + - name: Set up npm ${{ matrix.npm-version }} + run: npm i -g npm@${{ matrix.npm-version }} - name: Install dependencies run: npm ci @@ -34,8 +35,22 @@ jobs: run: npm run test:coverage - name: Upload coverage to Codecov - uses: codecov/codecov-action@v1 + uses: codecov/codecov-action@1e68e06f1dbfde0e4cefc87efeba9e4643565303 # v5.1.2 with: + token: ${{ secrets.CODECOV_TOKEN }} file: ./coverage/coverage-final.json flags: javascript - fail_ci_if_error: true + fail_ci_if_error: ${{ !github.event.pull_request.head.repo.fork }} + + summary: + runs-on: ubuntu-latest + needs: + - jest + + if: always() + + name: npm-test-summary + + steps: + - name: Jest status + run: if ${{ needs.jest.result != 'success' && needs.jest.result != 'skipped' }}; then exit 1; fi diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml index b4c6deee06785474888d2757ba7e70903da0086e..cd581ac3e7bd19a7b2b2cce998846f0087444731 100644 --- a/.github/workflows/package.yml +++ b/.github/workflows/package.yml @@ -1,32 +1,46 @@ +# SPDX-FileCopyrightText: 2021-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT name: Packaging - -on: [push, pull_request] +on: pull_request jobs: release-tarball: - runs-on: ubuntu-18.04 + runs-on: ubuntu-latest name: Build release tarball steps: - name: Checkout - uses: actions/checkout@v2 - - name: Set up Node - uses: actions/setup-node@v2 + uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3 + - name: Read package.json node and npm engines version + uses: skjnldsv/read-package-engines-version-actions@06d6baf7d8f41934ab630e97d9e6c0bc9c9ac5e4 # v3 + id: versions + with: + fallbackNode: '^20' + fallbackNpm: '^10' + - name: Set up node ${{ steps.versions.outputs.nodeVersion }} + uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 with: - node-version: 15 - - name: Set up php$ - uses: shivammathur/setup-php@master + node-version: ${{ steps.versions.outputs.nodeVersion }} + - name: Set up npm ${{ steps.versions.outputs.npmVersion }} + run: npm i -g 'npm@${{ steps.versions.outputs.npmVersion }}' + - name: Get php version + id: php-versions + uses: icewind1991/nextcloud-version-matrix@58becf3b4bb6dc6cef677b15e2fd8e7d48c0908f # v1.3.1 + - name: Set up php ${{ steps.php-versions.outputs.php-min }} + uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a with: - php-version: 7.4 - tools: composer:v1 + php-version: ${{ steps.php-versions.outputs.php-min }} + tools: composer extensions: ctype,curl,dom,gd,iconv,intl,json,mbstring,openssl,posix,sqlite,xml,zip,gmp coverage: none + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Install Krankerl run: | - wget https://github.com/ChristophWurst/krankerl/releases/download/v0.12.3/krankerl_0.12.3_amd64.deb - sudo dpkg -i krankerl_0.12.3_amd64.deb + wget https://github.com/ChristophWurst/krankerl/releases/download/v0.14.0/krankerl_0.14.0_amd64.deb + sudo dpkg -i krankerl_0.14.0_amd64.deb - name: Package app run: krankerl package - - uses: actions/upload-artifact@v2 + - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4 with: path: build/artifacts/calendar.tar.gz if-no-files-found: error diff --git a/.github/workflows/php-test.yml b/.github/workflows/php-test.yml index b8d2a931098e23926874aa3c977268bf8975cc1d..fc9c1dff618479421c9b054de6ae279af46cda1e 100644 --- a/.github/workflows/php-test.yml +++ b/.github/workflows/php-test.yml @@ -1,54 +1,40 @@ +# SPDX-FileCopyrightText: 2020-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT name: PHP Tests - -on: - pull_request: - push: - branches: - - main +on: pull_request jobs: unit-tests: runs-on: ubuntu-latest strategy: matrix: - php-versions: ['7.4'] - nextcloud-versions: ['stable22', 'stable23'] - include: - - php-versions: '7.4' - nextcloud-versions: 'stable24' - - php-versions: '8.0' - nextcloud-versions: 'stable24' - - php-versions: '8.1' - nextcloud-versions: 'stable24' - - php-versions: '7.4' - nextcloud-versions: 'master' - - php-versions: '8.0' - nextcloud-versions: 'master' - - php-versions: '8.1' - nextcloud-versions: 'master' + php-versions: [ '8.1', '8.2', '8.3', '8.4' ] + nextcloud-versions: [ 'master', 'stable31', 'stable30' ] + exclude: + - php-versions: '8.4' + nextcloud-versions: 'stable30' name: php${{ matrix.php-versions }} on ${{ matrix.nextcloud-versions }} unit tests env: CI: true XDEBUG_MODE: coverage steps: - name: Set up php${{ matrix.php-versions }} - uses: shivammathur/setup-php@master + uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a with: php-version: ${{ matrix.php-versions }} extensions: ctype, curl, dom, gd, gmp, iconv, intl, json, mbstring, openssl, pdo_sqlite, posix, sqlite, xml, zip coverage: xdebug - name: Checkout Nextcloud run: git clone https://github.com/nextcloud/server.git --recursive --depth 1 -b ${{ matrix.nextcloud-versions }} nextcloud + - name: Patch version check for nightly PHP + if: ${{ matrix.php-versions == '8.4' }} + run: echo " nextcloud/lib/versioncheck.php - name: Install Nextcloud run: php -f nextcloud/occ maintenance:install --database-name oc_autotest --database-user oc_autotest --admin-user admin --admin-pass admin --database sqlite --database-pass='' - name: Checkout the app - uses: actions/checkout@v2 + uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3 with: path: nextcloud/apps/calendar - - name: Fix php-parser on stable20 incompatibility with phpunit 9.3+ - if: ${{ matrix.nextcloud-versions == 'stable20' }} - working-directory: nextcloud/3rdparty - run: composer require nikic/php-parser:4.10 - name: Install dependencies working-directory: nextcloud/apps/calendar run: composer install @@ -57,8 +43,67 @@ jobs: run: composer run test - name: Upload coverage to Codecov if: ${{ matrix.nextcloud-versions == 'master' }} - uses: codecov/codecov-action@v1 + uses: codecov/codecov-action@b9fd7d16f6d7d1b5d2bec1a2887e65ceed900238 # v4 with: + token: ${{ secrets.CODECOV_TOKEN }} file: nextcloud/apps/calendar/clover.unit.xml flags: php - fail_ci_if_error: true + fail_ci_if_error: ${{ !github.event.pull_request.head.repo.fork }} + verbose: true + + integration-tests: + runs-on: ubuntu-latest + strategy: + matrix: + php-versions: [ '8.1', '8.2', '8.3', '8.4' ] + nextcloud-versions: [ 'master', 'stable31', 'stable30' ] + exclude: + - php-versions: '8.4' + nextcloud-versions: 'stable30' + name: php${{ matrix.php-versions }} on ${{ matrix.nextcloud-versions }} integration tests + env: + CI: true + XDEBUG_MODE: coverage + steps: + - name: Set up php${{ matrix.php-versions }} + uses: shivammathur/setup-php@cf4cade2721270509d5b1c766ab3549210a39a2a + with: + php-version: ${{ matrix.php-versions }} + extensions: ctype, curl, dom, gd, gmp, iconv, intl, json, mbstring, openssl, pdo_sqlite, posix, sqlite, xml, zip + coverage: xdebug + - name: Checkout Nextcloud + run: git clone https://github.com/nextcloud/server.git --recursive --depth 1 -b ${{ matrix.nextcloud-versions }} nextcloud + - name: Patch version check for nightly PHP + if: ${{ matrix.php-versions == '8.4' }} + run: echo " nextcloud/lib/versioncheck.php + - name: Install Nextcloud + run: php -f nextcloud/occ maintenance:install --database-name oc_autotest --database-user oc_autotest --admin-user admin --admin-pass admin --database sqlite --database-pass='' + - name: Checkout the app + uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3 + with: + path: nextcloud/apps/calendar + - name: Install dependencies + working-directory: nextcloud/apps/calendar + run: composer install + - name: Install Calendar + run: php -f nextcloud/occ app:enable calendar + - name: Run tests + working-directory: nextcloud/apps/calendar + run: composer run test:integration + + summary: + runs-on: ubuntu-latest + needs: + - unit-tests + - integration-tests + + if: always() + + name: php-test-summary + + steps: + - name: Unit test status + run: if ${{ needs.unit-tests.result != 'success' && needs.unit-tests.result != 'skipped' }}; then exit 1; fi + - name: Integration test status + run: if ${{ needs.integration-tests.result != 'success' && needs.integration-tests.result != 'skipped' }}; then exit 1; fi + diff --git a/.github/workflows/pr-feedback.yml b/.github/workflows/pr-feedback.yml new file mode 100644 index 0000000000000000000000000000000000000000..7d4966907ad18c8bf13f0448542aa0b024986613 --- /dev/null +++ b/.github/workflows/pr-feedback.yml @@ -0,0 +1,55 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization + +# SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-FileCopyrightText: 2023 Marcel Klehr +# SPDX-FileCopyrightText: 2023 Joas Schilling <213943+nickvergessen@users.noreply.github.com> +# SPDX-FileCopyrightText: 2023 Daniel Kesselberg +# SPDX-FileCopyrightText: 2023 Florian Steffens +# SPDX-License-Identifier: MIT + +name: 'Ask for feedback on PRs' +on: + schedule: + - cron: '30 1 * * *' + +permissions: + contents: read + pull-requests: write + +jobs: + pr-feedback: + if: ${{ github.repository_owner == 'nextcloud' }} + runs-on: ubuntu-latest + steps: + - name: The get-github-handles-from-website action + uses: marcelklehr/get-github-handles-from-website-action@06b2239db0a48fe1484ba0bfd966a3ab81a08308 # v1.0.1 + id: scrape + with: + website: 'https://nextcloud.com/team/' + + - name: Get blocklist + id: blocklist + run: | + blocklist=$(curl https://raw.githubusercontent.com/nextcloud/.github/master/non-community-usernames.txt | paste -s -d, -) + echo "blocklist=$blocklist" >> "$GITHUB_OUTPUT" + + - uses: marcelklehr/pr-feedback-action@1883b38a033fb16f576875e0cf45f98b857655c4 + with: + feedback-message: | + Hello there, + Thank you so much for taking the time and effort to create a pull request to our Nextcloud project. + + We hope that the review process is going smooth and is helpful for you. We want to ensure your pull request is reviewed to your satisfaction. If you have a moment, our community management team would very much appreciate your feedback on your experience with this PR review process. + + Your feedback is valuable to us as we continuously strive to improve our community developer experience. Please take a moment to complete our short survey by clicking on the following link: https://cloud.nextcloud.com/apps/forms/s/i9Ago4EQRZ7TWxjfmeEpPkf6 + + Thank you for contributing to Nextcloud and we hope to hear from you soon! + + (If you believe you should not receive this message, you can add yourself to the [blocklist](https://github.com/nextcloud/.github/blob/master/non-community-usernames.txt).) + days-before-feedback: 14 + start-date: '2024-04-30' + exempt-authors: '${{ steps.blocklist.outputs.blocklist }},${{ steps.scrape.outputs.users }}' + exempt-bots: true diff --git a/.github/workflows/psalm-matrix.yml b/.github/workflows/psalm-matrix.yml new file mode 100644 index 0000000000000000000000000000000000000000..b9d92490d154143f0e704a7f69fefbe38890056a --- /dev/null +++ b/.github/workflows/psalm-matrix.yml @@ -0,0 +1,71 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization +# +# SPDX-FileCopyrightText: 2022-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: MIT + +name: Static analysis + +on: pull_request + +concurrency: + group: psalm-${{ github.head_ref || github.run_id }} + cancel-in-progress: true + +jobs: + matrix: + runs-on: ubuntu-latest-low + outputs: + ocp-matrix: ${{ steps.versions.outputs.ocp-matrix }} + steps: + - name: Checkout app + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + - name: Get version matrix + id: versions + uses: icewind1991/nextcloud-version-matrix@58becf3b4bb6dc6cef677b15e2fd8e7d48c0908f # v1.3.1 + + static-analysis: + runs-on: ubuntu-latest + needs: matrix + strategy: + # do not stop on another job's failure + fail-fast: false + matrix: ${{ fromJson(needs.matrix.outputs.ocp-matrix) }} + + name: static-psalm-analysis ${{ matrix.ocp-version }} + steps: + - name: Checkout + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + + - name: Set up php${{ matrix.php-versions }} + uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2.31.1 + with: + php-version: ${{ matrix.php-versions }} + extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite + coverage: none + ini-file: development + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Install dependencies + run: composer i + + - name: Install dependencies + run: composer require --dev 'nextcloud/ocp:${{ matrix.ocp-version }}' --ignore-platform-reqs --with-dependencies + + - name: Run coding standards check + run: composer run psalm + + summary: + runs-on: ubuntu-latest-low + needs: static-analysis + + if: always() + + name: static-psalm-analysis-summary + + steps: + - name: Summary status + run: if ${{ needs.static-analysis.result != 'success' }}; then exit 1; fi diff --git a/.github/workflows/reuse.yml b/.github/workflows/reuse.yml new file mode 100644 index 0000000000000000000000000000000000000000..95eaba80e7b1d3dd36ec70d6f4b82df86a3fd892 --- /dev/null +++ b/.github/workflows/reuse.yml @@ -0,0 +1,22 @@ +# This workflow is provided via the organization template repository +# +# https://github.com/nextcloud/.github +# https://docs.github.com/en/actions/learn-github-actions/sharing-workflows-with-your-organization + +# SPDX-FileCopyrightText: 2022 Free Software Foundation Europe e.V. +# +# SPDX-License-Identifier: CC0-1.0 + +name: REUSE Compliance Check + +on: [pull_request] + +jobs: + reuse-compliance-check: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 + + - name: REUSE Compliance Check + uses: fsfe/reuse-action@3ae3c6bdf1257ab19397fab11fd3312144692083 # v4.0.0 diff --git a/.gitignore b/.gitignore index dfd9ba3e78a257a0f09e84ed7590994fd492579b..086c89410398ac011f0b2bba1892452045054409 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,6 @@ +# SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-FileCopyrightText: 2014-2016 ownCloud, Inc. +# SPDX-License-Identifier: AGPL-3.0-or-later ### Intellij ### # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm @@ -62,7 +65,8 @@ build/.sass-cache/ ### Composer ### composer.phar -vendor/ +/vendor/ +/vendor-bin/*/vendor # vim ex mode .vimrc @@ -71,6 +75,10 @@ vendor/ .kdev *.kdev4 +# VSCode / VSCodium +.vscode/ +*.code-workspace + build/ js/ node_modules/ diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000000000000000000000000000000000000..6f12428e929cc6a1fda99d466995447c046e6a5b --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,121 @@ +stages: + - prepare + - test + - build + - deploy + +default: + image: node:18 + before_script: + - npm set cache .npm + - npm install --prefer-offline --no-audit + cache: + key: ${CI_COMMIT_REF_SLUG} + paths: + - .npm/ + - node_modules/ + +install-node-deps: + stage: prepare + before_script: + - node --version + - npm --version + script: + - npm set cache .npm + - npm ci + only: + changes: + - package*.json + +lint: + stage: test + script: + - npm run lint + +build-frontend: + stage: build + script: + - npm run build + - mkdir -p dist/$CI_PROJECT_NAME + - cp -a appinfo css img l10n lib templates js dist/$CI_PROJECT_NAME + artifacts: + paths: + - dist/ + +.deploy:nextcloud-app: + image: ubuntu:focal + stage: deploy + dependencies: + - build-frontend + before_script: + - mkdir $HOME/.ssh + - chmod 700 ~/.ssh + - echo "$SSH_PRIVATE_KEY_ED" > $HOME/.ssh/id_ed25519 + - echo "$SSH_PUBKEY_ED" > $HOME/.ssh/id_ed25519.pub + - echo "$SSH_KNOWN_HOSTS" > $HOME/.ssh/known_hosts + - chmod 600 ~/.ssh/id_ed25519 + - chmod 644 ~/.ssh/known_hosts ~/.ssh/id_ed25519.pub + - apt-get update && apt-get install -y openssh-client rsync + script: + - echo "Deploying $CI_PROJECT_NAME of $CI_PROJECT_PATH_SLUG to $CI_ENVIRONMENT_NAME ($DEPLOYMENT_HOST)" + - rsync -avzh dist/ $SSH_USER@$DEPLOYMENT_HOST:/tmp/${CI_JOB_ID} + - ssh $SSH_USER@$DEPLOYMENT_HOST "sudo rsync -avzh --chown www-data:www-data --delete /tmp/${CI_JOB_ID}/$CI_PROJECT_NAME ${DEPLOYMENT_PATH}/html/custom_apps/ && rm -rf /tmp/${CI_JOB_ID} && sudo docker exec -u www-data $CONTAINER_NAME /var/www/html/occ app:enable $CI_PROJECT_NAME" + + +deploy:dev01: + extends: .deploy:nextcloud-app + only: + - master + - main + - production + - calendar-invitation-suggestions + environment: + name: dev/01 + url: https://dev.eeo.one/ + variables: + DEPLOYMENT_BRANCH: $CI_COMMIT_BRANCH + CONTAINER_NAME: dev01_nextcloud + +deploy:dev02: + extends: .deploy:nextcloud-app + when: manual + only: + - master + - main + - production + - calendar-invitation-suggestions + environment: + name: dev/02 + url: https://ecloud02.dev.eeo.one + variables: + DEPLOYMENT_BRANCH: $CI_COMMIT_BRANCH + CONTAINER_NAME: dev02_nextcloud + +deploy:dev03: + extends: .deploy:nextcloud-app + when: manual + only: + - master + - main + - production + - calendar-invitation-suggestions + environment: + name: dev/03 + url: https://ecloud03.dev.eeo.one + variables: + DEPLOYMENT_BRANCH: $CI_COMMIT_BRANCH + CONTAINER_NAME: dev03_nextcloud + +deploy:staging: + extends: .deploy:nextcloud-app + when: manual + only: + - master + - main + - production + environment: + name: staging/01 + url: https://eeo.one + variables: + DEPLOYMENT_BRANCH: $CI_COMMIT_BRANCH + CONTAINER_NAME: nextcloud diff --git a/.nextcloudignore b/.nextcloudignore index d6a73b6e06dc4eb63b831dacbaa784d1ae2a2fe9..5ad5f6281933e7f2ccb8503b56cfebb031364c95 100644 --- a/.nextcloudignore +++ b/.nextcloudignore @@ -1,6 +1,10 @@ +# SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: AGPL-3.0-or-later +__mocks__ .editorconfig .eslintrc.js .git +.git-blame-ignore-revs .github .gitignore .gitlab-ci.yml @@ -25,9 +29,15 @@ package.json package-lock.json phpunit.unit.xml README.md +phpunit*.xml +/psalm.xml +renovate.json screenshots src stylelint.config.js tests timezones +/vendor/bin +/vendor/bamarni/composer-bin-plugin/e2e +/vendor-bin webpack.* diff --git a/.php-cs-fixer.dist.php b/.php-cs-fixer.dist.php index 6172c58c6bf799f4925400f18c13f688ce920b04..69afba9e3275de7e9731291c2a72a3450dc1587a 100644 --- a/.php-cs-fixer.dist.php +++ b/.php-cs-fixer.dist.php @@ -1,8 +1,11 @@ /calendar.po source_file = translationfiles/templates/calendar.pot source_lang = en -type = PO +type = PO + diff --git a/AUTHORS.md b/AUTHORS.md new file mode 100644 index 0000000000000000000000000000000000000000..4fb177f43d9af71d299e268f51d61c9c75cba79e --- /dev/null +++ b/AUTHORS.md @@ -0,0 +1,27 @@ + +# Authors + +- Anna Larch +- Christoph Wurst +- Georg Ehrke +- Grigory Vodyanov +- Hamza Mahjoubi +- Jakob Röhrl +- John Molakvoæ +- Jonas Heinrich +- Julia Kirschenheuter +- Julius Härtl +- Mikhail Sazanov +- Raghu Nayyar +- René Gieling +- Richard Steinmetz +- Thomas Citharel +- Thomas Müller +- Valdnet <47037905+Valdnet@users.noreply.github.com> +- Informatyka Boguslawski sp. z o.o. sp.k., https://www.ib.pl/ +- Nextcloud GmbH +- ownCloud, Inc. +- Team Popcorn diff --git a/CHANGELOG.md b/CHANGELOG.md index 0d9b82633a8188b5a4a03b4102f6ecfda0aaecbb..d9f480855b2a5e5a6ea64dd2ebd44553505ddd98 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,957 +1,739 @@ +## [5.3.5](https://github.com/nextcloud/calendar/compare/v5.3.4...v5.3.5) (2025-07-08) + + +### Bug Fixes + +* **l10n:** Update translations from Transifex ([a3cd706](https://github.com/nextcloud/calendar/commit/a3cd706bede469cc4490969287ee2811ebaa13fd)) +* **l10n:** Update translations from Transifex ([d18594f](https://github.com/nextcloud/calendar/commit/d18594f686dbecc70fb022dfe394d7cde42d8d70)) +* **l10n:** Update translations from Transifex ([0c2c2d3](https://github.com/nextcloud/calendar/commit/0c2c2d35ed87aaa8d6443c1a67bb64908a72f042)) +* **l10n:** Update translations from Transifex ([81d2f8a](https://github.com/nextcloud/calendar/commit/81d2f8ab84c5ebba48278550bdfed06885d3c51c)) +* **l10n:** Update translations from Transifex ([8b33cdb](https://github.com/nextcloud/calendar/commit/8b33cdbaa0d9d3329ac92d13400fc97171fc019d)) +* **l10n:** Update translations from Transifex ([0a1022d](https://github.com/nextcloud/calendar/commit/0a1022d27a04d33dc193a561d02b05752534a2f0)) +* **l10n:** Update translations from Transifex ([685e81b](https://github.com/nextcloud/calendar/commit/685e81b0a15d53d5b59940265cf46ba3cd8b92a7)) +* **l10n:** Update translations from Transifex ([73b6268](https://github.com/nextcloud/calendar/commit/73b62684cfa217145ecd16b2dc0b8dc2d691ed14)) +* **l10n:** Update translations from Transifex ([6fbf559](https://github.com/nextcloud/calendar/commit/6fbf559fae31a9a4217ff3c3e3f0a42b8112ffce)) +* **l10n:** Update translations from Transifex ([bfb0b6f](https://github.com/nextcloud/calendar/commit/bfb0b6f6b42242275e1d5f0460e2f931916a1558)) +* **l10n:** Update translations from Transifex ([d193c04](https://github.com/nextcloud/calendar/commit/d193c044647ed2c36fc5daba83c28836631bad58)) +* **l10n:** Update translations from Transifex ([7290ca9](https://github.com/nextcloud/calendar/commit/7290ca94bdd2da889398d19da74d4d033b1f9ea2)) +* **l10n:** Update translations from Transifex ([493a884](https://github.com/nextcloud/calendar/commit/493a884cf8da9eb4402c5d18bffc8798dd5a7e29)) +* **PropertyTitleTimePicker:** debounce date time picker ([e0f31d0](https://github.com/nextcloud/calendar/commit/e0f31d049cc336fd988610338caa35ff92a72276)) + + + +## [5.3.4](https://github.com/nextcloud/calendar/compare/v5.3.3...v5.3.4) (2025-06-26) + + +### Bug Fixes + +* **deps:** Fix npm audit ([af77abe](https://github.com/nextcloud/calendar/commit/af77abe4a3408d13da9b2d27c7c48175fd85378c)) +* **deps:** Fix npm audit ([486fe79](https://github.com/nextcloud/calendar/commit/486fe79d195f69c6324715516aa7bad5db8c4913)) +* handle missing organizer gracefully when fetching room suggestions ([5829ddb](https://github.com/nextcloud/calendar/commit/5829ddbcf72103a8c5336518568174713a384bda)) +* **l10n:** Update translations from Transifex ([750fc74](https://github.com/nextcloud/calendar/commit/750fc744e5ce4e8ca03bf8b2fd0a58f54fa29d2a)) +* **l10n:** Update translations from Transifex ([36f2b51](https://github.com/nextcloud/calendar/commit/36f2b51ad52f0332bf104b9cab8a696218ad3624)) +* **l10n:** Update translations from Transifex ([2c0a9ef](https://github.com/nextcloud/calendar/commit/2c0a9ef37fd569966a91cb0e41c575bc92d354a3)) +* **l10n:** Update translations from Transifex ([62265e4](https://github.com/nextcloud/calendar/commit/62265e4292e57689a674a459ed7a656c4ca30932)) +* **l10n:** Update translations from Transifex ([7fde774](https://github.com/nextcloud/calendar/commit/7fde774fca47f7cd76f431b729cb6ab3330513d6)) + + + +## [5.3.3](https://github.com/nextcloud/calendar/compare/v5.3.2...v5.3.3) (2025-06-17) + + +### Bug Fixes + +* do not show hidden calendars ([d2087a3](https://github.com/nextcloud/calendar/commit/d2087a3502a0acea5ae4b3bf1b4054abaff671f1)) +* **l10n:** Update translations from Transifex ([cced69c](https://github.com/nextcloud/calendar/commit/cced69c6802117763e66bd0a618a29e47d4710e2)) +* **l10n:** Update translations from Transifex ([a8000e3](https://github.com/nextcloud/calendar/commit/a8000e304755e72b4bf256201d12f6e2124bc55b)) +* **l10n:** Update translations from Transifex ([99439b8](https://github.com/nextcloud/calendar/commit/99439b85da84250f911d2d3e065ce49f2fea074b)) +* **l10n:** Update translations from Transifex ([03a0292](https://github.com/nextcloud/calendar/commit/03a029250a466e1f71a5d7bc6d7637a5a1b55546)) + + + +## [5.3.2](https://github.com/nextcloud/calendar/compare/v5.3.1...v5.3.2) (2025-06-10) + + +### Bug Fixes + +* **deps:** Fix npm audit ([3822521](https://github.com/nextcloud/calendar/commit/38225213191092807fccfe37a4898d17624c778d)) +* **free-busy:** close modal when all attendees removed ([159ddfd](https://github.com/nextcloud/calendar/commit/159ddfd31bc2daed928e8f703835046a581c7adc)) +* **l10n:** Update translations from Transifex ([6007fe1](https://github.com/nextcloud/calendar/commit/6007fe1762a08891de4467b7c92984c6aeb10615)) +* **l10n:** Update translations from Transifex ([160810c](https://github.com/nextcloud/calendar/commit/160810c119582093d681e1f139c428c7883ce9ce)) +* **l10n:** Update translations from Transifex ([eca7f3c](https://github.com/nextcloud/calendar/commit/eca7f3cc44464ccfb5a935708e5140f8e91727ef)) +* **l10n:** Update translations from Transifex ([dd8c0cf](https://github.com/nextcloud/calendar/commit/dd8c0cfbd0fe903287a207c1bc5773c06c19598a)) +* **l10n:** Update translations from Transifex ([06184f6](https://github.com/nextcloud/calendar/commit/06184f62ccce1676449e41a126e771a0655b5e01)) +* respect Talk config when creating a new conversation for an event ([c038286](https://github.com/nextcloud/calendar/commit/c038286e96631644032c2ccbb09dd41d5c914cd4)) + + + +## [5.3.1](https://github.com/nextcloud/calendar/compare/v5.3.0...v5.3.1) (2025-06-03) + + +### Bug Fixes + +* add a gap for event dragging ([4cf192d](https://github.com/nextcloud/calendar/commit/4cf192d1827df7bcf81e0b48d0f7e96de9854677)) +* allow all calendars as appointment conflict calendars ([8f10775](https://github.com/nextcloud/calendar/commit/8f107759afaaa562d4218a605c13b669b3d49423)) +* always show alarm unit in pural ([1509e87](https://github.com/nextcloud/calendar/commit/1509e8747f526baed2520d2ce1b85517651467dd)) +* **appointments:** mobile booking view not being responsive ([5a18d85](https://github.com/nextcloud/calendar/commit/5a18d85915aaae0449d4e2428317716732e3afe6)) +* **attachments:** improve confirmation dialog message ([ec93e91](https://github.com/nextcloud/calendar/commit/ec93e91e85e4b86927b9a7b4664b41e4600627d5)) +* avoid hotkeys in contenteditable ([cad954e](https://github.com/nextcloud/calendar/commit/cad954e7bdf20c591afcf087c2719438b9c7eff2)) +* **calendar-list:** restrict calendar visibility toggle to checkbox only ([f1ceb1a](https://github.com/nextcloud/calendar/commit/f1ceb1a2a32e535f4006a163b96b7819d514777f)), closes [#3027](https://github.com/nextcloud/calendar/issues/3027) +* close modal after creating conversation ([a636ea0](https://github.com/nextcloud/calendar/commit/a636ea09f00fb38c4fb308fda51b627fab7da372)) +* color picker size ([0c1d227](https://github.com/nextcloud/calendar/commit/0c1d22737ef82fb5e76ca5abbf842f178c9912f6)) +* Console-log errors thrown when saving an event ([30f9eb7](https://github.com/nextcloud/calendar/commit/30f9eb75892ef56bac5a5a25140b59d09a2678f0)) +* date selector resetting time ([caf5cf8](https://github.com/nextcloud/calendar/commit/caf5cf87b2a075a061294d09a657b3047cc89b5c)) +* **deps:** bump @nextcloud/auth from 2.4.0 to ^2.5.1 (main) ([#6976](https://github.com/nextcloud/calendar/issues/6976)) ([12f442a](https://github.com/nextcloud/calendar/commit/12f442a0107248e2224d05504863193c51bd2aed)) +* **deps:** bump @nextcloud/calendar-js from 8.0.3 to ^8.1.0 (main) ([#6646](https://github.com/nextcloud/calendar/issues/6646)) ([a75bd08](https://github.com/nextcloud/calendar/commit/a75bd08d0548dcaaaeecc54a313a5618f0081a6d)) +* **deps:** bump @nextcloud/calendar-js from 8.1.0 to ^8.1.1 (main) ([#6807](https://github.com/nextcloud/calendar/issues/6807)) ([026cfd5](https://github.com/nextcloud/calendar/commit/026cfd57127a2583abb6e756c454afe8f1a39a88)) +* **deps:** bump @nextcloud/cdav-library from 1.5.2 to ^1.5.3 (main) ([#6855](https://github.com/nextcloud/calendar/issues/6855)) ([521a4fd](https://github.com/nextcloud/calendar/commit/521a4fd113049ffe3c070921a46096ad8b774e2e)) +* **deps:** bump @nextcloud/dialogs from 6.0.1 to ^6.1.1 (main) ([#6647](https://github.com/nextcloud/calendar/issues/6647)) ([d30e56a](https://github.com/nextcloud/calendar/commit/d30e56abb76c0ee642fa3803ee24165d1bee0f1e)) +* **deps:** bump @nextcloud/dialogs from 6.1.1 to ^6.2.0 (main) ([#6946](https://github.com/nextcloud/calendar/issues/6946)) ([05e7009](https://github.com/nextcloud/calendar/commit/05e700965d22974cea7e1ffc0598e65e89728e5c)) +* **deps:** bump @nextcloud/event-bus from 3.3.1 to ^3.3.2 (main) ([#6783](https://github.com/nextcloud/calendar/issues/6783)) ([3b4fc40](https://github.com/nextcloud/calendar/commit/3b4fc40e69666e68f76de49358dbe68e3371335f)) +* **deps:** bump @nextcloud/l10n from 3.2.0 to ^3.2.0 (main) ([#6745](https://github.com/nextcloud/calendar/issues/6745)) ([e0e0bb3](https://github.com/nextcloud/calendar/commit/e0e0bb32e767b0521fc24a2f6a97a634d6d02467)) +* **deps:** bump @nextcloud/moment from 1.3.2 to ^1.3.4 (main) ([#6962](https://github.com/nextcloud/calendar/issues/6962)) ([ac544e8](https://github.com/nextcloud/calendar/commit/ac544e8d5dc6d67ef0ce70eb0bdd1e3a1fb94e88)) +* **deps:** bump @nextcloud/vue from 8.22.0 to ^8.23.1 ([c7e91ab](https://github.com/nextcloud/calendar/commit/c7e91ab1ef08323f158fa151988e24c6631b0d9c)) +* **deps:** bump @nextcloud/vue from 8.23.1 to ^8.24.0 ([ef0cbf6](https://github.com/nextcloud/calendar/commit/ef0cbf6f02902d68091cc9a10ece39f39656e162)) +* **deps:** bump @nextcloud/vue from 8.24.0 to ^8.26.0 ([36d7ec4](https://github.com/nextcloud/calendar/commit/36d7ec4f3afc529d390601b319f0e1abf23d6c0e)) +* **deps:** bump color-convert from 2.0.1 to v3 ([dde4ba5](https://github.com/nextcloud/calendar/commit/dde4ba59c31da3a093c5dca0b1a788960db82e84)) +* **deps:** bump color-string from 1.9.1 to v2 ([a08c9ee](https://github.com/nextcloud/calendar/commit/a08c9eead5a76af3d6e82a04420f294748145d08)) +* **deps:** bump core-js from 3.40.0 to ^3.41.0 (main) ([#6784](https://github.com/nextcloud/calendar/issues/6784)) ([a8920a1](https://github.com/nextcloud/calendar/commit/a8920a1306186ad2463a362e1d83abb12d778169)) +* **deps:** bump core-js from 3.41.0 to ^3.42.0 (main) ([#6947](https://github.com/nextcloud/calendar/issues/6947)) ([71ffe32](https://github.com/nextcloud/calendar/commit/71ffe325696b157c09c88f891432d23e4d4b7d8f)) +* **deps:** bump fullcalendar family from 6.1.15 to v6.1.17 ([e617d74](https://github.com/nextcloud/calendar/commit/e617d74fa2d6f8a0bcbbe1394e7aaa05a8b5dcb4)) +* **deps:** bump pinia from 2.3.0 to ^2.3.1 (main) ([#6645](https://github.com/nextcloud/calendar/issues/6645)) ([097f964](https://github.com/nextcloud/calendar/commit/097f9642bef7c7d37c6ea141a722702b5a595095)) +* **deps:** bump webdav from 5.7.1 to ^5.8.0 (main) ([#6769](https://github.com/nextcloud/calendar/issues/6769)) ([e1b1db5](https://github.com/nextcloud/calendar/commit/e1b1db53235626318f803ff62450a38b58d73de1)) +* **deps:** Fix npm audit ([7269771](https://github.com/nextcloud/calendar/commit/726977128ca2a7439b04eb3e3d5392d4aaffb783)) +* **deps:** Fix npm audit ([dc77c02](https://github.com/nextcloud/calendar/commit/dc77c02e4897e9fda4f0918d61b8852506d1356b)) +* **deps:** Fix npm audit ([050f25d](https://github.com/nextcloud/calendar/commit/050f25d3381a8075eb317319dc4e3d50f3f86bac)) +* **deps:** Fix npm audit ([3fa3f18](https://github.com/nextcloud/calendar/commit/3fa3f1831156fffdead028b45b73fccafb886009)) +* do not show attendee actions in viewing mode ([adcac42](https://github.com/nextcloud/calendar/commit/adcac426f9ec2d0967c96f5d338a46a54995aaba)) +* do not show attendee list when there are no attendees in viewing mode ([0fb2f7a](https://github.com/nextcloud/calendar/commit/0fb2f7a2002bb2faf6a3d2e702a39ea3b5fd2c8e)) +* do not show items from deleted calendars in widget ([9d1d26f](https://github.com/nextcloud/calendar/commit/9d1d26f0dcdfdf39930e8b85808bd087304cb5e8)) +* **editor:** Allow edits as attending organizer ([ba6dea5](https://github.com/nextcloud/calendar/commit/ba6dea5fd3906a098a12bf1bb88c15d2d104f54b)) +* **EditorMixin:** add viewed by organizer if no attendees ([3a35fae](https://github.com/nextcloud/calendar/commit/3a35fae9deaa3efe001dcea649e7243868f859df)) +* **EditorMixin:** timepicker not adjusting end date ([ddf2d8d](https://github.com/nextcloud/calendar/commit/ddf2d8d0354b92552a81a387f802ab3e85ed6c72)) +* **editor:** Rephraze ambiguous "group" invites ([28745e4](https://github.com/nextcloud/calendar/commit/28745e4ab8032638b6d8e6c00f3273d38042d6a9)) +* **editor:** show add talk button if there are no attendees yet ([9bf6383](https://github.com/nextcloud/calendar/commit/9bf63836f99deaa45d8e26490499748d1d77f405)) +* **editor:** wrap date selects on small screens ([e6bc12b](https://github.com/nextcloud/calendar/commit/e6bc12b2f924bc0101067e4bf419d76f5ba59264)) +* EditSideBar bug ([ab102c7](https://github.com/nextcloud/calendar/commit/ab102c72f133641a0f71457b144b8af34d31ca8c)) +* **EditSidebar:** free busy not updating time ([cac80be](https://github.com/nextcloud/calendar/commit/cac80be0e2dc4d6c5047492d8d02295e74bae8ad)) +* end time resetting when changing day ([9fe7ffb](https://github.com/nextcloud/calendar/commit/9fe7ffba442d5eca5b1190bc3a1c1a55b56f6695)) +* **eventDidMount:** make time text color be main text ([53ea163](https://github.com/nextcloud/calendar/commit/53ea1635e56ed440ed9f1a905f63a08c06601876)) +* force height for descr and location ([832f86d](https://github.com/nextcloud/calendar/commit/832f86dfcc1a3c0d5a0f0ac69a66b5a08c41c21e)) +* free busy not updating date ([3b2d626](https://github.com/nextcloud/calendar/commit/3b2d6269c30d436ef0970807c27168fc33ada18c)) +* freebusy ui visual improvements ([2dec06e](https://github.com/nextcloud/calendar/commit/2dec06e2455abd4dbb6a844e3a5501f17cb667bf)) +* **freebusy:** free busy ignoring user's time zone ([b3fc6dc](https://github.com/nextcloud/calendar/commit/b3fc6dc0e62906f7db336ca46359578947b67974)) +* **freebusy:** slot header format not respecting user's locale ([8d73bd2](https://github.com/nextcloud/calendar/commit/8d73bd23b08d514ddeeeaef805ec3bda56611ceb)) +* **fullcalendar css:** make event margin be in vw instead of percentage ([6eb2cbb](https://github.com/nextcloud/calendar/commit/6eb2cbb4724c0cfaef26f2ae827f540ffcbcfd98)) +* keyboard shortcut modal not being responsive ([1ecf27b](https://github.com/nextcloud/calendar/commit/1ecf27b67c23c99bd16ecb4e3630743971e660ae)) +* **l10n:** add context for translators (second vs. seconds) ([9d76c8c](https://github.com/nextcloud/calendar/commit/9d76c8c5a3487c58732fe193155a59d59c1a5861)) +* **l10n:** Update translations from Transifex ([09ae903](https://github.com/nextcloud/calendar/commit/09ae9032ff0edc96266e5fe3c18cda854daa215f)) +* **l10n:** Update translations from Transifex ([ecdb3e9](https://github.com/nextcloud/calendar/commit/ecdb3e9791fb58ddd0da29a6d634453fe9616ee0)) +* **l10n:** Update translations from Transifex ([ea8c004](https://github.com/nextcloud/calendar/commit/ea8c004b48c4009e321fc6f394ecb624820abdf8)) +* **l10n:** Update translations from Transifex ([1c8abbf](https://github.com/nextcloud/calendar/commit/1c8abbfb88fa706206a88de157d26a61bfa88722)) +* **l10n:** Update translations from Transifex ([42ea5a5](https://github.com/nextcloud/calendar/commit/42ea5a57b2be2243bca27c0d46c1a3c3c138a46f)) +* **l10n:** Update translations from Transifex ([64a2cf1](https://github.com/nextcloud/calendar/commit/64a2cf14a0e08b6383578362c40794049c91855a)) +* **l10n:** Update translations from Transifex ([84e1b09](https://github.com/nextcloud/calendar/commit/84e1b0912bd3ec8e5bd9678b066cfa29138d29f0)) +* **l10n:** Update translations from Transifex ([634b6a6](https://github.com/nextcloud/calendar/commit/634b6a6f6aa6e5753d7a3ed67a1a86c62d582a11)) +* **l10n:** Update translations from Transifex ([34b3d58](https://github.com/nextcloud/calendar/commit/34b3d589a5c658f6d1298d02434c7e30215d9b01)) +* **l10n:** Update translations from Transifex ([97a73bf](https://github.com/nextcloud/calendar/commit/97a73bffc5780e4cd07a1604e355d264f47d1dda)) +* **l10n:** Update translations from Transifex ([f33c90f](https://github.com/nextcloud/calendar/commit/f33c90f13f7a929e93ef91fc5945406df0453c40)) +* **l10n:** Update translations from Transifex ([9198fbd](https://github.com/nextcloud/calendar/commit/9198fbd0b9c9aaec02bd19cf4f632d4e57c34a5f)) +* **l10n:** Update translations from Transifex ([965ee9e](https://github.com/nextcloud/calendar/commit/965ee9e339784ed2ca08b53cbcd4301a8863c105)) +* **l10n:** Update translations from Transifex ([43f427a](https://github.com/nextcloud/calendar/commit/43f427a4e2a227766ac6d191baca42077083dd97)) +* **l10n:** Update translations from Transifex ([657f9c4](https://github.com/nextcloud/calendar/commit/657f9c42e5c3a4b65968d74fe126d17bc5f8a3df)) +* **l10n:** Update translations from Transifex ([d19ed5d](https://github.com/nextcloud/calendar/commit/d19ed5d78894f8a851c852f134602b5793b2c87c)) +* **l10n:** Update translations from Transifex ([6c37b2d](https://github.com/nextcloud/calendar/commit/6c37b2d240202e1b03aeaef8bed212b134fd321b)) +* **l10n:** Update translations from Transifex ([b224dab](https://github.com/nextcloud/calendar/commit/b224dab8abcdd9b9f1b4ea407e11796270cfbd1a)) +* **l10n:** Update translations from Transifex ([7499428](https://github.com/nextcloud/calendar/commit/749942815bf3e47f34f68c553b92c98ca4af9284)) +* **l10n:** Update translations from Transifex ([d719b79](https://github.com/nextcloud/calendar/commit/d719b79b0d83d15e00f400b837e5e77159dbbaea)) +* **l10n:** Update translations from Transifex ([e43a3f8](https://github.com/nextcloud/calendar/commit/e43a3f8a64ceac0d2a0d808a74ec17bd162ed740)) +* **l10n:** Update translations from Transifex ([18c2a61](https://github.com/nextcloud/calendar/commit/18c2a61f27c1ceae15f10ebae3f662d2b166f3f1)) +* **l10n:** Update translations from Transifex ([cc758db](https://github.com/nextcloud/calendar/commit/cc758dbb9f7b54df33eed881ec9b92ccd212633b)) +* **l10n:** Update translations from Transifex ([eefcbc2](https://github.com/nextcloud/calendar/commit/eefcbc24d71ebc3c524dc7376d53ce3efc8dbce4)) +* **l10n:** Update translations from Transifex ([e33da56](https://github.com/nextcloud/calendar/commit/e33da56c108e36389788f196e21a832047ced8c4)) +* **l10n:** Update translations from Transifex ([1f49d01](https://github.com/nextcloud/calendar/commit/1f49d01a58ae7548b3decd9aabe29f738dd3db6f)) +* **l10n:** Update translations from Transifex ([597fc06](https://github.com/nextcloud/calendar/commit/597fc06995b054e6975242e989bc729509e252c5)) +* **l10n:** Update translations from Transifex ([c9dc23d](https://github.com/nextcloud/calendar/commit/c9dc23d175dc1c8475b5c7a40ed0a0e86c55a9e9)) +* **l10n:** Update translations from Transifex ([969a8d8](https://github.com/nextcloud/calendar/commit/969a8d80c141eb39ef6bf44c6456ac98e0076d4b)) +* **lint-php-cs:** use minimum available php version ([906868c](https://github.com/nextcloud/calendar/commit/906868c45fa9882626d4406bedb345625c2284db)) +* margin when dragging on selected events ([ae7275f](https://github.com/nextcloud/calendar/commit/ae7275f830d677615f39152f0221da6e6b59346b)) +* monthly recurrance type and bymonthday selection ([7afb1b4](https://github.com/nextcloud/calendar/commit/7afb1b4091a32804f233d226c3489e5d9630639c)) +* **public-calendar:** remove toggle functionality from public view ([8fb5f97](https://github.com/nextcloud/calendar/commit/8fb5f9743f507f5d8679e77571fd3268e472945f)) +* reduce long press event delay to 500 ms ([1a3ff7b](https://github.com/nextcloud/calendar/commit/1a3ff7babb203a77f880dc43a9b42fbfd8a2d1c0)) +* Release automation ([6a941c9](https://github.com/nextcloud/calendar/commit/6a941c96b41e3d2345eb28d53873b1f4e1cecfed)) +* remove organizer when there are no attendees ([7d936f8](https://github.com/nextcloud/calendar/commit/7d936f8c0de46d4ce3d55f71d462c0bb54ee0bbb)) +* restrict attendees edit priveleges in the frontend ([7c77be2](https://github.com/nextcloud/calendar/commit/7c77be260ba54b70b060c60c1d258b5410897578)) +* room suggestions not being rendered ([c674fac](https://github.com/nextcloud/calendar/commit/c674fac39a3d920e2236ff74f51111f3297ca7f1)) +* search for possible Talk room attendees by displayed name instead of email ([8ccce9d](https://github.com/nextcloud/calendar/commit/8ccce9dc69fe3a76ab12c134b053fa37f000b4e4)) +* show display name instead of user id in availability integration ([cb7d9aa](https://github.com/nextcloud/calendar/commit/cb7d9aa2b02ebe7a9ec3caea1c711349dae3f082)) +* show generic participation status for the organizer ([983a6dc](https://github.com/nextcloud/calendar/commit/983a6dc04da8e2571a2a063486cc1b2d8b57e694)) +* simple calendar view width ([27d7852](https://github.com/nextcloud/calendar/commit/27d7852bff6120d7763bdb36ada927f7003fe1b2)) +* simple editor size and jumping ([11f766f](https://github.com/nextcloud/calendar/commit/11f766f2dd6f89636859b69b431b3508525eaeaf)) +* sort talk conversations by most recent activity ([056a8aa](https://github.com/nextcloud/calendar/commit/056a8aa333121a7d88a071cdb0a3e9a7816d3c66)) +* **talkintegration:** allow room creation with description ([65195e8](https://github.com/nextcloud/calendar/commit/65195e826539916daa8e1eab69dd7d4db92604ef)) +* **transifex:** backport to stable5.1 ([d081af5](https://github.com/nextcloud/calendar/commit/d081af5839ce520427a375d7de1681fe13165903)) +* trashbin error toast wording when deleting items ([826dade](https://github.com/nextcloud/calendar/commit/826daded3039953550ccbaac845e748a2d116340)) +* update app store description ([9f0c255](https://github.com/nextcloud/calendar/commit/9f0c2550255f074e5a2a8eff2b3eebb1705ce152)) +* yearly recurrance options - month selection ([49f98be](https://github.com/nextcloud/calendar/commit/49f98bec6f7373157109cb768f502b4ce6ee0fa9)) +* yearly recurrance options - month selection ([43fb124](https://github.com/nextcloud/calendar/commit/43fb124e4524806a94c97992859daaeb6b9b194b)) + + +### Features + +* add support for nextcloud 32 ([5be4249](https://github.com/nextcloud/calendar/commit/5be4249857a0ba83dd73b14da41e062b0386ae98)) +* **FullCalendar:** add conditional styling for participation status in grid ([a68f90c](https://github.com/nextcloud/calendar/commit/a68f90ccb2456c86a2fb3d9a77618a75e10af3ec)) +* **talkintegration:** add object type to talk room creation ([85bec05](https://github.com/nextcloud/calendar/commit/85bec05b878c3dafccbcdd2610a3ac0196bc9bd0)) +* **talkintegration:** filter out event type rooms from suggestions ([909f399](https://github.com/nextcloud/calendar/commit/909f399a04a1283c366b4224e7dec36e72a143c9)) + + + +# [5.1.0-beta2](https://github.com/nextcloud/calendar/compare/v5.1.0-beta1...v5.1.0-beta2) (2025-01-16) + + +### Bug Fixes + +* **deps:** bump @nextcloud/calendar-availability-vue from 2.2.4 to ^2.2.6 (main) ([#6628](https://github.com/nextcloud/calendar/issues/6628)) ([a67b49f](https://github.com/nextcloud/calendar/commit/a67b49f2b21ad691bef6bd128e9f5d8f633c94df)) +* **deps:** bump core-js from 3.39.0 to ^3.40.0 (main) ([#6629](https://github.com/nextcloud/calendar/issues/6629)) ([7a8ede3](https://github.com/nextcloud/calendar/commit/7a8ede390f21f34c69e65df48f68dc4139c550ed)) +* location and description not being saved ([5348612](https://github.com/nextcloud/calendar/commit/5348612ffae9196963b495b9c71007489c29f685)) + + +### Features + +* **editor:** improve attendee and resource status display ([9c23ed8](https://github.com/nextcloud/calendar/commit/9c23ed8e11811faa94d5b91e406d272d36918c9b)) + + + +# [5.1.0-beta1](https://github.com/nextcloud/calendar/compare/v5.1.0-alpha2...v5.1.0-beta1) (2025-01-14) + + +### Features + +* add availability action to the contacts menu ([266a345](https://github.com/nextcloud/calendar/commit/266a34543e8ca552b5bd164472676379a80ae8de)) +* Add overlay between calendar and open simple editor ([8699a65](https://github.com/nextcloud/calendar/commit/8699a658475e8a511b23187056bc7308b535b6f8)) + + + +# [5.1.0-alpha2](https://github.com/nextcloud/calendar/compare/v5.1.0-alpha1...v5.1.0-alpha2) (2025-01-09) + + +### Bug Fixes + +* firefox avatar icon styling inconsistency ([02e8ed4](https://github.com/nextcloud/calendar/commit/02e8ed422aba9d2edf543196d317b4f2a0d84c62)) +* max-width for long timezones names ([c27f067](https://github.com/nextcloud/calendar/commit/c27f067da8efcce8a77ad120b8930e022b202703)) + + + +# [5.1.0-alpha1](https://github.com/nextcloud/calendar/compare/v5.0.0-alpha4...v5.1.0-alpha1) (2025-01-07) + + +### Bug Fixes + +* add border to sidebar button ([50878bf](https://github.com/nextcloud/calendar/commit/50878bfea41f1c9e372afc4c83db46a60b8244a7)) +* add missing license ([9196525](https://github.com/nextcloud/calendar/commit/91965257efe918bbac804aedc43f066895bffdfa)) +* adjust url for task links ([#6550](https://github.com/nextcloud/calendar/issues/6550)) ([e86c82a](https://github.com/nextcloud/calendar/commit/e86c82a965a791fae0e9ee14966f2949502011b8)) +* **alarms:** also update DISPLAY alarms ([b66f96a](https://github.com/nextcloud/calendar/commit/b66f96ab30cdd5011695b52001179edbacb99f2a)) +* allow adding self to shared event ([479ba82](https://github.com/nextcloud/calendar/commit/479ba82475b81687c6d6dc4355acead16c2f081a)) +* appointment slots start and end time ([6e06e87](https://github.com/nextcloud/calendar/commit/6e06e87c416120482f3ae38dcb26c967564b8050)) +* **appointments:** log calculated start and end times for slot generation ([13ad251](https://github.com/nextcloud/calendar/commit/13ad251c07e5eda8cd2b1859b7b2fd4a82573295)) +* **appointments:** properly localise the calendar events ([74df703](https://github.com/nextcloud/calendar/commit/74df7032d0a03855ad98bf4b678a49ac96313780)) +* **appointments:** Set organiser email to correct langauge ([7893c95](https://github.com/nextcloud/calendar/commit/7893c95cd2c5d04d4b231553855ce423b289ab82)) +* **appointments:** simplify booking response ([3acd930](https://github.com/nextcloud/calendar/commit/3acd93027c3948eb52a4091408e6fe0128269afc)) +* attachment folder picker ([93374fa](https://github.com/nextcloud/calendar/commit/93374fad5e8fd1d16b31fd776077a2e0b560d483)) +* **attachments:** add missing file picker confirm ([df34ac0](https://github.com/nextcloud/calendar/commit/df34ac087e28f547ab3d06f81762b18693e7273e)) +* **attachments:** adjust click handler ([9346664](https://github.com/nextcloud/calendar/commit/9346664359110c0a052d6933b57b4fc99c94dd5c)) +* **attachmentService, propfindErrorParse:** add an error message for when a file is not compatible for windows ([d7288b0](https://github.com/nextcloud/calendar/commit/d7288b06368b3fa0e4a3999c7e70338322e02f02)) +* **attachments:** improve layout ([e9e9bcf](https://github.com/nextcloud/calendar/commit/e9e9bcf209e1ae3a051e44f7cfb24d62ff30c533)) +* avatar status icon text misalignment ([f837082](https://github.com/nextcloud/calendar/commit/f8370822b0c7f697b8683bf0c453725d21ce357d)) +* **CalendarListNew:** Public Calendar Modal Opening ([0ae73bc](https://github.com/nextcloud/calendar/commit/0ae73bcb63ace8cb5c268b2a49d174d73441fb6e)) +* **CalendarObjectInstance:** reset attendee participation status on duplication of an event ([0b7f8dc](https://github.com/nextcloud/calendar/commit/0b7f8dc5d9d339218c2cc9990f01e15adad32e65)) +* **calendarPicker:** undefined calendar ([94fc5d1](https://github.com/nextcloud/calendar/commit/94fc5d12b7772f7aa3e06aef28e6feb8a812926a)) +* check if userId is null ([a123dc8](https://github.com/nextcloud/calendar/commit/a123dc80d6e80f17d3f985f6c3ad34818240a687)) +* CI ([75445bd](https://github.com/nextcloud/calendar/commit/75445bd624e9d1ba0fb06b25c683a6cb4f6528cc)) +* default calendar needs to support VEVENTs ([99921bc](https://github.com/nextcloud/calendar/commit/99921bc9ce7e243b9bbf028d90f7195d815380e3)) +* default reminder ui bug ([def95a6](https://github.com/nextcloud/calendar/commit/def95a6b109b11485ee176aa4ab0fea94f0ac6ab)) +* **deps:** bump @nextcloud/auth from 2.2.1 to ^2.3.0 (main) ([#5946](https://github.com/nextcloud/calendar/issues/5946)) ([9f1f387](https://github.com/nextcloud/calendar/commit/9f1f3878ede2499f0abbf1510bf40285c9383b3d)) +* **deps:** bump @nextcloud/auth from 2.4.0 to ^2.4.0 (main) ([#6257](https://github.com/nextcloud/calendar/issues/6257)) ([8d3357f](https://github.com/nextcloud/calendar/commit/8d3357f8bd72776e3f7a18eabfbc55ac1b3b6864)) +* **deps:** bump @nextcloud/axios from 2.4.0 to ^2.5.0 (main) ([#5989](https://github.com/nextcloud/calendar/issues/5989)) ([928d36b](https://github.com/nextcloud/calendar/commit/928d36bc50c687f7901b25678e9e726b03f11865)) +* **deps:** bump @nextcloud/axios from 2.5.0 to ^2.5.1 (main) ([#6366](https://github.com/nextcloud/calendar/issues/6366)) ([5203eeb](https://github.com/nextcloud/calendar/commit/5203eebd680cdf2325ae6de6f3e32e90e7320129)) +* **deps:** bump @nextcloud/calendar-availability-vue from 2.2.0 to ^2.2.1 (main) ([#6019](https://github.com/nextcloud/calendar/issues/6019)) ([70b8ae7](https://github.com/nextcloud/calendar/commit/70b8ae7b3c2813b7aa07dbf3766609a05d0324e6)) +* **deps:** bump @nextcloud/calendar-availability-vue from 2.2.1 to ^2.2.2 (main) ([#6085](https://github.com/nextcloud/calendar/issues/6085)) ([4081035](https://github.com/nextcloud/calendar/commit/408103599f1c7cfacc68b9d19940ff793e762125)) +* **deps:** bump @nextcloud/calendar-availability-vue from 2.2.2 to ^2.2.4 (main) ([#6272](https://github.com/nextcloud/calendar/issues/6272)) ([37f6e34](https://github.com/nextcloud/calendar/commit/37f6e345e8149657dda9ff84c9c7d14ec42a2428)) +* **deps:** bump @nextcloud/calendar-js from 8.0.2 to ^8.0.3 (main) ([#6526](https://github.com/nextcloud/calendar/issues/6526)) ([d674751](https://github.com/nextcloud/calendar/commit/d674751988b334342f94acb508f1978d2ce1d527)) +* **deps:** bump @nextcloud/cdav-library from 1.3.0 to ^1.4.0 ([b8e713c](https://github.com/nextcloud/calendar/commit/b8e713c8138cff678e5cfd8221020494ce9899ae)) +* **deps:** bump @nextcloud/cdav-library from 1.4.0 to ^1.5.0 (main) ([#6174](https://github.com/nextcloud/calendar/issues/6174)) ([5e5a9a0](https://github.com/nextcloud/calendar/commit/5e5a9a061d91f9258a06e5872d8884d1d93e6e91)) +* **deps:** bump @nextcloud/cdav-library from 1.5.0 to ^1.5.1 (main) ([#6182](https://github.com/nextcloud/calendar/issues/6182)) ([48116a4](https://github.com/nextcloud/calendar/commit/48116a4fcfd8edd9a26ff6244a04ccb79f702911)) +* **deps:** bump @nextcloud/cdav-library from 1.5.1 to ^1.5.2 (main) ([#6426](https://github.com/nextcloud/calendar/issues/6426)) ([faf4cd6](https://github.com/nextcloud/calendar/commit/faf4cd6a46062cf0d5c1f1b8d8391a38773a7292)) +* **deps:** bump @nextcloud/dialogs from 4.2.6 to v5 ([e93fb34](https://github.com/nextcloud/calendar/commit/e93fb34070a4f8575bb1ab9ff3ed2dc36cc1836f)) +* **deps:** bump @nextcloud/dialogs from 5.3.1 to ^5.3.2 (main) ([#6055](https://github.com/nextcloud/calendar/issues/6055)) ([c384096](https://github.com/nextcloud/calendar/commit/c384096f2a614563c6c30b6df795475ca7fd4f97)) +* **deps:** bump @nextcloud/dialogs from 5.3.2 to ^5.3.4 (main) ([#6086](https://github.com/nextcloud/calendar/issues/6086)) ([d3ba8ce](https://github.com/nextcloud/calendar/commit/d3ba8cec1597d3273b9029f29b86266fbfc6d342)) +* **deps:** bump @nextcloud/dialogs from 5.3.4 to ^5.3.5 (main) ([#6132](https://github.com/nextcloud/calendar/issues/6132)) ([ad5a518](https://github.com/nextcloud/calendar/commit/ad5a518abc2565d78c3aaf73f518124d47fae1cd)) +* **deps:** bump @nextcloud/dialogs from 5.3.5 to ^5.3.6 (main) ([#6273](https://github.com/nextcloud/calendar/issues/6273)) ([da7cc68](https://github.com/nextcloud/calendar/commit/da7cc685fc6681bb4b7a4e1476223662094946ad)) +* **deps:** bump @nextcloud/dialogs from 5.3.6 to ^5.3.7 (main) ([#6296](https://github.com/nextcloud/calendar/issues/6296)) ([e21d65e](https://github.com/nextcloud/calendar/commit/e21d65e41fb30541ee75da21e14bf8baf1b3f99d)) +* **deps:** bump @nextcloud/dialogs from 5.3.7 to ^5.3.8 (main) ([#6464](https://github.com/nextcloud/calendar/issues/6464)) ([aa30c8f](https://github.com/nextcloud/calendar/commit/aa30c8f6c164b420cfeb4b40cb3d91d4c1d39716)) +* **deps:** bump @nextcloud/dialogs from 5.3.8 to v6 ([e2a85a4](https://github.com/nextcloud/calendar/commit/e2a85a471778594d0638fbe28fc9549423c1d274)) +* **deps:** bump @nextcloud/event-bus from 3.2.0 to ^3.2.0 (main) ([#5947](https://github.com/nextcloud/calendar/issues/5947)) ([3cb4d04](https://github.com/nextcloud/calendar/commit/3cb4d04baa389a838fc383d8c57d3563c3626443)) +* **deps:** bump @nextcloud/event-bus from 3.2.0 to ^3.3.1 (main) ([#6028](https://github.com/nextcloud/calendar/issues/6028)) ([f242ae8](https://github.com/nextcloud/calendar/commit/f242ae81d976e1a83ea65ee3324d63fad5e4aca5)) +* **deps:** bump @nextcloud/initial-state from 2.1.0 to ^2.2.0 (main) ([#5990](https://github.com/nextcloud/calendar/issues/5990)) ([8f695f8](https://github.com/nextcloud/calendar/commit/8f695f83f26a7c608fba03e7737ae3388fba7bb6)) +* **deps:** bump @nextcloud/l10n from 2.2.0 to v3 ([bd67b27](https://github.com/nextcloud/calendar/commit/bd67b275a0454689612ecc8b7f447af6c29cf9e1)) +* **deps:** bump @nextcloud/logger from 2.7.0 to v3 ([5f84062](https://github.com/nextcloud/calendar/commit/5f84062945a27e5f373ca17f4b4b03fb5857c95a)) +* **deps:** bump @nextcloud/logger from 3.0.1 to ^3.0.2 (main) ([#6020](https://github.com/nextcloud/calendar/issues/6020)) ([f75b2a6](https://github.com/nextcloud/calendar/commit/f75b2a6c98830dd9b5720412e9f0172c5d953814)) +* **deps:** bump @nextcloud/moment from 1.3.1 to ^1.3.2 (main) ([#6575](https://github.com/nextcloud/calendar/issues/6575)) ([8d3b8b4](https://github.com/nextcloud/calendar/commit/8d3b8b46b662716cfc8e7c23f4780cfd541d2167)) +* **deps:** bump @nextcloud/router from 3.0.0 to ^3.0.1 (main) ([#5945](https://github.com/nextcloud/calendar/issues/5945)) ([2f8515d](https://github.com/nextcloud/calendar/commit/2f8515d0fe28696fa81173dc484d7b91ce23d747)) +* **deps:** bump @nextcloud/vue from 8.11.2 to ^8.11.2 ([e15a1a2](https://github.com/nextcloud/calendar/commit/e15a1a266374672555e0ee5e9d0394fa97b1f310)) +* **deps:** bump @nextcloud/vue from 8.11.2 to ^8.11.3 ([ccf5f95](https://github.com/nextcloud/calendar/commit/ccf5f95d88842b91e2944066d76ac6628b95495f)) +* **deps:** bump @nextcloud/vue from 8.11.3 to ^8.12.0 ([d5af6fc](https://github.com/nextcloud/calendar/commit/d5af6fc5fe920539bb6b3b8d0d5bdde941cb1dfa)) +* **deps:** bump @nextcloud/vue from 8.12.0 to ^8.13.0 ([f3a79a7](https://github.com/nextcloud/calendar/commit/f3a79a7416ba5ad933982e1f86b7a6bc48107a85)) +* **deps:** bump @nextcloud/vue from 8.13.0 to ^8.14.0 ([60d03d4](https://github.com/nextcloud/calendar/commit/60d03d4e4d9489cf4befd197b2a8669a67b90c97)) +* **deps:** bump @nextcloud/vue from 8.14.0 to ^8.15.0 ([0271a5b](https://github.com/nextcloud/calendar/commit/0271a5b1496eaa7c9d957301d4479e63bce6ad75)) +* **deps:** bump @nextcloud/vue from 8.15.0 to ^8.15.1 ([de9bebb](https://github.com/nextcloud/calendar/commit/de9bebb62449de8b30fc5b704d6d3337824231ab)) +* **deps:** bump @nextcloud/vue from 8.15.1 to ^8.16.0 ([48a812c](https://github.com/nextcloud/calendar/commit/48a812cf3b615d58f276a944b43299e894ef5734)) +* **deps:** bump @nextcloud/vue from 8.18.0 to ^8.18.0 ([bd73f27](https://github.com/nextcloud/calendar/commit/bd73f27ab5fd9a793fbaec15feb6cc1bbc8107d7)) +* **deps:** bump @nextcloud/vue from 8.19.0 to ^8.19.0 ([6309905](https://github.com/nextcloud/calendar/commit/6309905c58c85b58118d825354b6d369e38f9b94)) +* **deps:** bump @nextcloud/vue from 8.19.0 to ^8.20.0 ([128c0ba](https://github.com/nextcloud/calendar/commit/128c0ba612c97b39f0c1676b38051de5f1bb91e3)) +* **deps:** bump @nextcloud/vue from 8.20.0 to ^8.22.0 ([5350abb](https://github.com/nextcloud/calendar/commit/5350abb88d020e6a085dcb7686c75a7b2d8a2084)) +* **deps:** bump core-js from 3.36.1 to ^3.37.0 (main) ([#5927](https://github.com/nextcloud/calendar/issues/5927)) ([7c62824](https://github.com/nextcloud/calendar/commit/7c62824dab7f3a25a8a04ba9b505894d0c027020)) +* **deps:** bump core-js from 3.37.0 to ^3.37.1 (main) ([#6006](https://github.com/nextcloud/calendar/issues/6006)) ([fb1d43c](https://github.com/nextcloud/calendar/commit/fb1d43c65dce261c28d7a0a899878fc021762299)) +* **deps:** bump core-js from 3.37.1 to ^3.38.0 (main) ([#6242](https://github.com/nextcloud/calendar/issues/6242)) ([399c8b6](https://github.com/nextcloud/calendar/commit/399c8b66746093f58635204e5d5481984fe64649)) +* **deps:** bump core-js from 3.38.0 to ^3.38.1 (main) ([#6298](https://github.com/nextcloud/calendar/issues/6298)) ([2ada469](https://github.com/nextcloud/calendar/commit/2ada469e5561588205d3f264d307dd3543826749)) +* **deps:** bump core-js from 3.38.1 to ^3.39.0 (main) ([#6491](https://github.com/nextcloud/calendar/issues/6491)) ([5f6bbbf](https://github.com/nextcloud/calendar/commit/5f6bbbf2e7416f7ba856d2973af1e491d7c22192)) +* **deps:** bump debounce from 2.0.0 to ^2.1.0 (main) ([#6030](https://github.com/nextcloud/calendar/issues/6030)) ([cb76a3f](https://github.com/nextcloud/calendar/commit/cb76a3f1cb45e9c8303957fbc58de16ee4655488)) +* **deps:** bump debounce from 2.1.1 to ^2.1.1 (main) ([#6334](https://github.com/nextcloud/calendar/issues/6334)) ([696cb0b](https://github.com/nextcloud/calendar/commit/696cb0b8c62542b841969dcf09d0ae80eeeccaf8)) +* **deps:** bump debounce from 2.1.1 to ^2.2.0 ([13545a6](https://github.com/nextcloud/calendar/commit/13545a6f288efed6bf88dd4d018e46ce0cfac0f8)) +* **deps:** bump fullcalendar family from 6.1.11 to v6.1.14 ([8c443cc](https://github.com/nextcloud/calendar/commit/8c443cc3195c64078a110a93533f25fdf5e30b72)) +* **deps:** bump fullcalendar family from 6.1.14 to v6.1.15 ([7fb8727](https://github.com/nextcloud/calendar/commit/7fb872793d73bdc785603a14e76079c43579b29a)) +* **deps:** bump linkifyjs from 4.1.3 to ^4.2.0 (main) ([#6576](https://github.com/nextcloud/calendar/issues/6576)) ([f31991d](https://github.com/nextcloud/calendar/commit/f31991dbaa3e5d589c829abfb615a9ee6de67002)) +* **deps:** bump p-limit from 5.0.0 to v6 ([b093b06](https://github.com/nextcloud/calendar/commit/b093b06ded3b784751712bbd5afdca692842a608)) +* **deps:** bump p-limit from 6.1.0 to ^6.2.0 (main) ([#6592](https://github.com/nextcloud/calendar/issues/6592)) ([8fdb932](https://github.com/nextcloud/calendar/commit/8fdb932240ab550441175d4016108d724f0c98fb)) +* **deps:** bump pinia from 2.1.7 to ^2.2.0 (main) ([#6209](https://github.com/nextcloud/calendar/issues/6209)) ([e4b2139](https://github.com/nextcloud/calendar/commit/e4b21392b4833f025012780ca502d81a4301ad7c)) +* **deps:** bump pinia from 2.2.0 to ^2.2.1 (main) ([#6240](https://github.com/nextcloud/calendar/issues/6240)) ([795a49d](https://github.com/nextcloud/calendar/commit/795a49d4d8be16a4c8a423233175e925fd6589f3)) +* **deps:** bump pinia from 2.2.1 to ^2.2.2 (main) ([#6299](https://github.com/nextcloud/calendar/issues/6299)) ([7b55dd5](https://github.com/nextcloud/calendar/commit/7b55dd54835eaaaeacac9379b51e33d2271d172a)) +* **deps:** bump pinia from 2.2.2 to ^2.2.4 (main) ([#6387](https://github.com/nextcloud/calendar/issues/6387)) ([d59146b](https://github.com/nextcloud/calendar/commit/d59146b64e1529ef30a0fc369d9bff987f0cfdc7)) +* **deps:** bump pinia from 2.2.4 to ^2.2.5 (main) ([#6450](https://github.com/nextcloud/calendar/issues/6450)) ([730b9e8](https://github.com/nextcloud/calendar/commit/730b9e8d986f207fe497fd2bd3884821887d358c)) +* **deps:** bump pinia from 2.2.5 to ^2.2.6 (main) ([#6465](https://github.com/nextcloud/calendar/issues/6465)) ([1ab521c](https://github.com/nextcloud/calendar/commit/1ab521c0db8e05c589d32cf3fa2092d0104520b8)) +* **deps:** bump pinia from 2.2.6 to ^2.3.0 (main) ([#6577](https://github.com/nextcloud/calendar/issues/6577)) ([fcc3182](https://github.com/nextcloud/calendar/commit/fcc318245d24ef2c8d6012146247a57751c3c1e0)) +* **deps:** bump vue-material-design-icons from 5.3.0 to ^5.3.1 (main) ([#6412](https://github.com/nextcloud/calendar/issues/6412)) ([b097235](https://github.com/nextcloud/calendar/commit/b097235cb35caede9e41e115a5a221c6c969d4e1)) +* **deps:** bump webdav from 5.5.0 to ^5.6.0 (main) ([#6007](https://github.com/nextcloud/calendar/issues/6007)) ([e3f9fe8](https://github.com/nextcloud/calendar/commit/e3f9fe845801aa2cfa0f27399b75abd0d3bf7cec)) +* **deps:** bump webdav from 5.6.0 to ^5.7.1 (main) ([#6243](https://github.com/nextcloud/calendar/issues/6243)) ([9fc1b6a](https://github.com/nextcloud/calendar/commit/9fc1b6a79815262cd068b39b585f97dba0ae7885)) +* **deps:** Fix npm audit ([492beb5](https://github.com/nextcloud/calendar/commit/492beb5d16cc1db0161c22f506c8168fb8338619)) +* **deps:** Fix npm audit ([dac1c26](https://github.com/nextcloud/calendar/commit/dac1c2677bc9301fef88629e97128ac6fa9e4500)) +* **deps:** Fix npm audit ([6a5ba16](https://github.com/nextcloud/calendar/commit/6a5ba160ec0af4bd25ea191057259230959335ad)) +* **deps:** Fix npm audit ([ccf2a1a](https://github.com/nextcloud/calendar/commit/ccf2a1a1cee4226ef6dc56af46aca42dcec116d6)) +* **deps:** Fix npm audit ([ef73eaf](https://github.com/nextcloud/calendar/commit/ef73eaf695a063a624228e4a3285d9ce3958bd09)) +* **deps:** Fix npm audit ([3d6e499](https://github.com/nextcloud/calendar/commit/3d6e499865a84121b0ab28712d61f1bafb01526b)) +* disable save appointment button ([6bdbb85](https://github.com/nextcloud/calendar/commit/6bdbb85a89139111d24e3cc40597f2a36204f736)) +* don't apply default calendar on Nextcloud < 29 ([b46ea0d](https://github.com/nextcloud/calendar/commit/b46ea0d50edff571dff2b6280efbef0507186fc0)) +* **editor:** add and remove categories from events ([97f62e6](https://github.com/nextcloud/calendar/commit/97f62e604fd5ff61466ff12ef9ead9a0b492b755)) +* **editor:** add indicator to calendar picker ([0dfb690](https://github.com/nextcloud/calendar/commit/0dfb6902a0375bbe6fdf1d0336919373c599d813)) +* **editor:** calendar picker width ([e35da5f](https://github.com/nextcloud/calendar/commit/e35da5f9922dbb8f127ee28e2c15c6076eab4b50)) +* **editor:** creating custom categories ([403ed95](https://github.com/nextcloud/calendar/commit/403ed95864b989502e1b73f77b28d4bc490d224d)) +* **editor:** don't respect default calendar in the calendar picker ([4f2caf6](https://github.com/nextcloud/calendar/commit/4f2caf615b8ecdcb0f2f63abd71093581a0a68bb)) +* **editor:** sidebar editor custom header styling ([aec306b](https://github.com/nextcloud/calendar/commit/aec306b16cb06eaaf0e0ce1aa45b94aec43482b9)) +* **editor:** switching to sidebar after creating a new event ([c3df245](https://github.com/nextcloud/calendar/commit/c3df245dcc9c1ace74123e7d89654592b75ec04e)), closes [#5840](https://github.com/nextcloud/calendar/issues/5840) +* **embed:** calendar header overlapping and adjust to compact design ([96fb2c7](https://github.com/nextcloud/calendar/commit/96fb2c736cf3543842f00317e85598912ada4667)) +* enable attendee selection on shared calendars ([34de776](https://github.com/nextcloud/calendar/commit/34de776798486161e49e195722aa88288dbb4715)) +* enable directory selection in file picker ([4944b64](https://github.com/nextcloud/calendar/commit/4944b64c335c0cc93642f0d2d9fc3a606a39204a)) +* Entity parameter types ([c413f8d](https://github.com/nextcloud/calendar/commit/c413f8d1776924c1ba9c8994b80e60fc4e9734c8)) +* Events with overlapping time visually overlap ([ae0cc82](https://github.com/nextcloud/calendar/commit/ae0cc8222105b07ff7aa62891333ab6b9a74d1d6)) +* external attachment dialog mounted warning ([3fd760f](https://github.com/nextcloud/calendar/commit/3fd760f2466d472760fce345f0e4da9fe8eee106)) +* **fc:** Adjust *today* border radius ([8dbff4c](https://github.com/nextcloud/calendar/commit/8dbff4c4b4ae5f4d58dc87982c68c3bd73bc96d8)) +* **fc:** adjust week day header border radius to new design ([e4dd483](https://github.com/nextcloud/calendar/commit/e4dd483879f8c053def835bbc1023799b5bbcee5)) +* **fc:** tiny white border on highlighted cells ([1017e40](https://github.com/nextcloud/calendar/commit/1017e40e4cc110c317f85ba6da12057db6278426)) +* **files:** fix misplaced empty content ([80e131a](https://github.com/nextcloud/calendar/commit/80e131a0900162d74a1373b6cda96d6502cd0388)) +* **files:** replace input fields with `NcTextField` ([31dd0e9](https://github.com/nextcloud/calendar/commit/31dd0e9bc4ff126aa52ec005d0d67aeab884e25a)) +* **FreeBusySlotService:** improve suggested slots ([aac9479](https://github.com/nextcloud/calendar/commit/aac9479f7176e75ea329fdc3c960eb76aab4efeb)) +* **FullCalendar CSS:** make events in weekly view have the correct width ([0dad0f8](https://github.com/nextcloud/calendar/commit/0dad0f80adc223418909783cd9a0dced79ae99a8)) +* handle timezones with no transitions properly ([991402f](https://github.com/nextcloud/calendar/commit/991402f8669db6508f3f525c1db35bf451f0cd0a)) +* Ignore existing attendee without email in search results ([58fb57b](https://github.com/nextcloud/calendar/commit/58fb57b856cfababeebaa32cc6d2f737a17eb2e0)) +* Ignore VScode IDE directory ([ba60a11](https://github.com/nextcloud/calendar/commit/ba60a1190a2ff000e7c553bc6069f43ac62f0ad3)) +* input label warnings ([bc58a38](https://github.com/nextcloud/calendar/commit/bc58a38efb336bb536b644470b0318f4fbedc985)) +* **InviteesListSearch:** make avatar status not clip ([3cfb3a2](https://github.com/nextcloud/calendar/commit/3cfb3a24726bb4a75741f19aef874baf0df5c9f6)) +* **l10n:** propfind error message translation source ([343fe47](https://github.com/nextcloud/calendar/commit/343fe476439551e79167906e111155fecf491783)) +* make call token extraction more robust ([401f674](https://github.com/nextcloud/calendar/commit/401f674a92c41248fdd383f8da386c382ca8ecde)) +* make sidebar tabs spacing consistent ([bc2cc6d](https://github.com/nextcloud/calendar/commit/bc2cc6d5ad1046a65ae5c5431a184f28bb37972f)) +* missing default props warnings ([4ca0dca](https://github.com/nextcloud/calendar/commit/4ca0dca377b1a6d5d2113fef6dd8f1d0790ae449)) +* modified unit test to include arguments ([c8626fb](https://github.com/nextcloud/calendar/commit/c8626fb8c3986a01901cdd91a7f1f0ec34d249a4)) +* navigation when clicking on the grid on a custom week/month ([209bb44](https://github.com/nextcloud/calendar/commit/209bb44eec28e3ff77dc1d15bda3f6023b3269e4)) +* **navigation:** scope all styles to the calendar app ([307a265](https://github.com/nextcloud/calendar/commit/307a26546e66e5676edb1df9e9c928948cef14a1)) +* **notifications:** Notifier::prepare() threw \InvalidArgumentException which is deprecated ([2ab1b8f](https://github.com/nextcloud/calendar/commit/2ab1b8f033f09cd39d723875f8d7aa6c9061d51d)) +* php lint complaints ([0b9f4cb](https://github.com/nextcloud/calendar/commit/0b9f4cb7311549f3cfd3571b9fe6dec66626c355)) +* phpUnit required time zone object not string ([3c369e4](https://github.com/nextcloud/calendar/commit/3c369e44706a2ab18f62a5a26b1e53468fe4fb81)) +* popover custom trigger warnings ([b8b6490](https://github.com/nextcloud/calendar/commit/b8b6490272b6140d983050c7933f1009eec07ba6)) +* **PropertyColor:** now color is selected with submit button instead of directly ([16ebe41](https://github.com/nextcloud/calendar/commit/16ebe4165f2b403477d2a4f362e7fed9d99d72e2)) +* recurrance selection ([3927688](https://github.com/nextcloud/calendar/commit/3927688e749ff1a3ce28bf5e04bd5087f764b09a)) +* recurrance until selection ([692ea9e](https://github.com/nextcloud/calendar/commit/692ea9e605e340392eb187a8c496d73f6eea20e1)) +* **release:** Fix wget output option ([f77d285](https://github.com/nextcloud/calendar/commit/f77d285fe4a54d8fde47af5fb1d594af49ae13dc)) +* **release:** Ignore unnecessary files ([30efafe](https://github.com/nextcloud/calendar/commit/30efafe12b53d22779606dab000f5c2eae80a43c)) +* **rtl:** align event title ([9bc72ad](https://github.com/nextcloud/calendar/commit/9bc72adfad0e6e18268a7afb650b475853418999)) +* **rtl:** invitees list ([1a4c008](https://github.com/nextcloud/calendar/commit/1a4c008bbbbe1a228908491c39714bda7a201246)) +* **rtl:** navigation buttons ([4f88b3c](https://github.com/nextcloud/calendar/commit/4f88b3c0e9104ebcea017105dd5f724fa9f3e347)) +* **scheduling:** Find attendee via email ([3c0ec2a](https://github.com/nextcloud/calendar/commit/3c0ec2ade0541729384f3e2c7807db48783f22f6)) +* scope global sidebar styles to the app ([2460c53](https://github.com/nextcloud/calendar/commit/2460c539e8b7fdd0b867012006e0f0484ba91d48)) +* send date as sting instead of epoch ([91d787c](https://github.com/nextcloud/calendar/commit/91d787ca37af9ecf3c06d2dfdc22e8018a9b8111)) +* send requestee and requester correct date and time when timezones differ [#5198](https://github.com/nextcloud/calendar/issues/5198) ([01e7e2d](https://github.com/nextcloud/calendar/commit/01e7e2d68a6610d33f77d82b089890d19c5a3969)) +* **settings:** adjust design of import button ([911d5b9](https://github.com/nextcloud/calendar/commit/911d5b93be0b26aa7245e061fc9f741f2d37aff0)) +* **Settings:** invert edit simple checkbox ([761a6cb](https://github.com/nextcloud/calendar/commit/761a6cba7f1c0330847b02c9f66056302a61c293)) +* sidebar editor tab scrolling ([9cb56bd](https://github.com/nextcloud/calendar/commit/9cb56bd2f74c66808cffcee612c03ada1b12ea7c)) +* **teams:** resolve undefined variable error and add logging ([9d1688c](https://github.com/nextcloud/calendar/commit/9d1688c87b4fdf77d66d97c49458dd8334f0a9b7)) +* thrown error on json decoding errors ([2f5c5ba](https://github.com/nextcloud/calendar/commit/2f5c5baa66c1c065e5b231bcfc82d1d27d737b5d)) +* time zone picker when using the simple editor ([dd4d83c](https://github.com/nextcloud/calendar/commit/dd4d83ca787b667db5f4c477ad7fab3654437183)) +* update calendar sharing icon ([55cb697](https://github.com/nextcloud/calendar/commit/55cb69718bf0cc76d2c105eeb6b533ab7d00009a)) +* use first day of week setting from server ([3203378](https://github.com/nextcloud/calendar/commit/3203378112f9a681061ab5bb2837197d0633b597)) +* use folder icon as fallback ([a099e7b](https://github.com/nextcloud/calendar/commit/a099e7bf7409bb4d4222cc62fc23d06861c30c00)) + + +### Features + +* add organizer selection ([cbfbda2](https://github.com/nextcloud/calendar/commit/cbfbda2468e3f1de864a06a1d8bb4c65cbf8d11f)) +* allow inviting contact groups ([7f70db9](https://github.com/nextcloud/calendar/commit/7f70db9929144ab31afe169d3ac6d68816e74447)) +* Allow shared calendars as appointment conflict calendars ([c08f7d1](https://github.com/nextcloud/calendar/commit/c08f7d1ada4c0547c98343ded48c69f0f9c5221f)) +* **appointments:** add timezone to all emails ([d30e6a7](https://github.com/nextcloud/calendar/commit/d30e6a78288a535e5b7385564881bf15a9923cc9)) +* **CalendarList:** fix dragging to order calendars ([619f4f0](https://github.com/nextcloud/calendar/commit/619f4f0e9f93788e7c0c43c379544493cc531603)) +* **dashboard:** reload widget once every 10 minutes ([af94950](https://github.com/nextcloud/calendar/commit/af94950cbd81445e64f6b70dc7429a207175e356)) +* **DatePicker:** use native date and time picker ([7ed3e6e](https://github.com/nextcloud/calendar/commit/7ed3e6ea1960c0663d69ec2fc8a3b3076fe86b4c)) +* **deps:** Add Nextcloud 30 support ([00ba483](https://github.com/nextcloud/calendar/commit/00ba4834f000ed4df81cafb659c8926919ab6929)) +* disable autocompletion for event property field ([cc04b57](https://github.com/nextcloud/calendar/commit/cc04b577ccfb404a16bfec8fe929b045d479f4a8)) +* **editor:** allow adding attendees in simple editor ([7953d6a](https://github.com/nextcloud/calendar/commit/7953d6adf8372ac2b1a79926dc28212cb16bfb2e)) +* implement resources and rooms overview ([8b09651](https://github.com/nextcloud/calendar/commit/8b0965144982eb3f35a4379c9d35febb217858ea)) +* improve sidebar organization ([6bebd61](https://github.com/nextcloud/calendar/commit/6bebd61e442ef70e748c1f3962e128c1c53f46ec)) +* improve the description text ([8f9e504](https://github.com/nextcloud/calendar/commit/8f9e5048c693190d99bea9aadd0001f082ad7aae)) +* rebrand circles to teams in calendar sharing modal ([27f98ba](https://github.com/nextcloud/calendar/commit/27f98ba8aeca3541122cae949924d203e0758df9)) +* reduce header sizes in calendar modal ([3bd39a1](https://github.com/nextcloud/calendar/commit/3bd39a13cc2e070f82523582389004eab6edc780)) +* reduce opacitiy for past events ([3fa906b](https://github.com/nextcloud/calendar/commit/3fa906b67c54fb426b87fed8d41137c840f79daa)) +* refresh calenders on remote changes ([6d1a23d](https://github.com/nextcloud/calendar/commit/6d1a23d2ac17226bd7f7495303bbe21a696892cc)) +* require caldav backend ([5b3293f](https://github.com/nextcloud/calendar/commit/5b3293fabf2e0c7a05dcf5dbae8e6df3e4dd9b0b)) +* update to php8.1 ([1917636](https://github.com/nextcloud/calendar/commit/1917636fe5d8c30b7cdc95a493350aeb9631736f)) + + +### Reverts + +* Revert "fix: popover custom trigger warnings" ([1d1f517](https://github.com/nextcloud/calendar/commit/1d1f517160e5f4736f2ad646057d1055bcfef948)) +* Revert "fix: external attachment dialog mounted warning" ([7cad79a](https://github.com/nextcloud/calendar/commit/7cad79a9903ee57c5a5f3bb532a9a1a229998edb)) +* Revert "fix: input label warnings" ([a64251c](https://github.com/nextcloud/calendar/commit/a64251c240973e177c9b199368af4503d3cc528e)) +* Revert "fix: delay initializing the resize observer until FC is ready" ([a633a5a](https://github.com/nextcloud/calendar/commit/a633a5a0ad440a83db7706ae3634faa53c277c17)) + + + +# [4.7.0-beta4](https://github.com/nextcloud/calendar/compare/v4.7.0-beta3...v4.7.0-beta4) (2024-03-20) + + +### Bug Fixes + +* add VTIMEZONE to Appointments ([496896a](https://github.com/nextcloud/calendar/commit/496896a34daa2b728d659708d083af55d3158565)) +* **appointments:** add date to booking detail view ([eeacfa6](https://github.com/nextcloud/calendar/commit/eeacfa694adeed2de9e3286c3e3b8c54ec5d7fc1)) +* **appointments:** allow 5 minute increments for rounding in slot bookings ([37b2047](https://github.com/nextcloud/calendar/commit/37b20472427614af913a081ee8ad8431f9bda731)) +* **appointments:** Decide rounding by increment OR length ([e49e4a6](https://github.com/nextcloud/calendar/commit/e49e4a6e9431dc5aefa94277a26d4c6988b37a0b)) +* **appointments:** Fix button style ([da06ac5](https://github.com/nextcloud/calendar/commit/da06ac5986022b6849666e571c7525488ef6e7f1)) +* **appointments:** Make rooms public ([d39352f](https://github.com/nextcloud/calendar/commit/d39352f9a2638691b0cffa461ebd8ad7710ffa13)) +* **appointments:** Rate limit config creation and booking ([0f77b41](https://github.com/nextcloud/calendar/commit/0f77b41942d67c58daccdac1ff3a7f80d3b569a7)) +* **appointments:** slot generation deviation for increments that don't fit modulo ([0176063](https://github.com/nextcloud/calendar/commit/0176063a82c78c3970f146552b2d45f4a22197e1)) +* **appointments:** Write Talk link to event ([dcb2524](https://github.com/nextcloud/calendar/commit/dcb2524ecc77801a6e06dbd5e50d05b10cdde87e)) +* **attachments:** Convert FileList to array ([d8ed0ff](https://github.com/nextcloud/calendar/commit/d8ed0ffab5a499ecb7c26f8b6ac82d2d961c89ee)) +* **attachments:** folder picker opening twice ([d520471](https://github.com/nextcloud/calendar/commit/d52047176599cbe5f14e58b8c5d854996ff38793)) +* **dashboard:** properly handle recurring events ([babc444](https://github.com/nextcloud/calendar/commit/babc444245f6e6cef2fd1a88773532074c9cad0e)) +* default calendar picker search and make it not clearable ([9dcc3bb](https://github.com/nextcloud/calendar/commit/9dcc3bbeca324867eb6126f0106f45af7f452d63)) +* **deps:** bump @nextcloud/auth from 2.1.0 to ^2.2.1 (main) ([#5522](https://github.com/nextcloud/calendar/issues/5522)) ([884bf79](https://github.com/nextcloud/calendar/commit/884bf79a6da0bc07a1085662e498ee043367d2f3)) +* **deps:** bump @nextcloud/calendar-availability-vue from 1.0.0 to ^1.0.1 (main) ([#5520](https://github.com/nextcloud/calendar/issues/5520)) ([ab04d3a](https://github.com/nextcloud/calendar/commit/ab04d3aa73af11963ccf52b9a7dbcee9c212b8bc)) +* **deps:** bump @nextcloud/calendar-availability-vue from 2.1.0 to ^2.2.0 ([205dbcb](https://github.com/nextcloud/calendar/commit/205dbcb93ca78e836d1006a75af6668e38190daf)) +* **deps:** bump @nextcloud/calendar-js from 6.0.1 to ^6.1.0 (main) ([#5562](https://github.com/nextcloud/calendar/issues/5562)) ([066f9d9](https://github.com/nextcloud/calendar/commit/066f9d9b97c7ae7a4e953f41ea55ae01a7597ce6)) +* **deps:** bump @nextcloud/dialogs from 4.1.0 to ^4.2.0-beta.2 (main) ([#5415](https://github.com/nextcloud/calendar/issues/5415)) ([2eb9c0a](https://github.com/nextcloud/calendar/commit/2eb9c0aefecfbf72a0ab8832d49bf2aef9e0767d)) +* **deps:** bump @nextcloud/dialogs from 4.2.0 to ^4.2.1 (main) ([#5493](https://github.com/nextcloud/calendar/issues/5493)) ([940bafa](https://github.com/nextcloud/calendar/commit/940bafaccb6f6d83198abf9cacf2bcc14fd636c9)) +* **deps:** bump @nextcloud/dialogs from 4.2.0-beta.2 to ^4.2.0-beta.3 (main) ([#5423](https://github.com/nextcloud/calendar/issues/5423)) ([bf1aab4](https://github.com/nextcloud/calendar/commit/bf1aab4152b8b5f1bdd083d767977523eab06933)) +* **deps:** bump @nextcloud/dialogs from 4.2.0-beta.3 to ^4.2.0-beta.4 (main) ([#5428](https://github.com/nextcloud/calendar/issues/5428)) ([75e3294](https://github.com/nextcloud/calendar/commit/75e3294154b25445cec918586414f8de151df724)) +* **deps:** bump @nextcloud/dialogs from 4.2.0-beta.4 to ^4.2.0 (main) ([#5452](https://github.com/nextcloud/calendar/issues/5452)) ([d717473](https://github.com/nextcloud/calendar/commit/d717473e6917b120b379170a313787402b715c29)) +* **deps:** bump @nextcloud/dialogs from 4.2.1 to ^4.2.2 (main) ([#5576](https://github.com/nextcloud/calendar/issues/5576)) ([fe03d46](https://github.com/nextcloud/calendar/commit/fe03d463615a6092bbb2ed9661848b0b45b63cb9)) +* **deps:** bump @nextcloud/dialogs from 4.2.2 to ^4.2.3 (main) ([#5711](https://github.com/nextcloud/calendar/issues/5711)) ([58df3da](https://github.com/nextcloud/calendar/commit/58df3da170679b1f04c5025fb7f9d44f0528a122)) +* **deps:** bump @nextcloud/dialogs from 4.2.3 to ^4.2.4 (main) ([#5725](https://github.com/nextcloud/calendar/issues/5725)) ([5728a3d](https://github.com/nextcloud/calendar/commit/5728a3d0eb12985cc7317f554b7c159572543d85)) +* **deps:** bump @nextcloud/dialogs from 4.2.4 to ^4.2.5 (main) ([#5740](https://github.com/nextcloud/calendar/issues/5740)) ([c7f5aa9](https://github.com/nextcloud/calendar/commit/c7f5aa9141d16908d230a8936823a4b3d30f2404)) +* **deps:** bump @nextcloud/dialogs from 4.2.5 to ^4.2.6 (main) ([#5803](https://github.com/nextcloud/calendar/issues/5803)) ([27a33d8](https://github.com/nextcloud/calendar/commit/27a33d85d1702f41002b81345ef7ec50f46e6f6b)) +* **deps:** bump @nextcloud/logger from 2.5.0 to ^2.7.0 (main) ([#5523](https://github.com/nextcloud/calendar/issues/5523)) ([c53bde0](https://github.com/nextcloud/calendar/commit/c53bde0f16ef4c234de0362078b69b065ae52312)) +* **deps:** bump @nextcloud/moment from 1.2.1 to ^1.2.2 (main) ([#5535](https://github.com/nextcloud/calendar/issues/5535)) ([b91ec46](https://github.com/nextcloud/calendar/commit/b91ec469238824627a941990e4068b5298468286)) +* **deps:** bump @nextcloud/moment from 1.2.2 to ^1.3.1 (main) ([#5699](https://github.com/nextcloud/calendar/issues/5699)) ([9382732](https://github.com/nextcloud/calendar/commit/93827329ed2651d2f37a9396be0766186a6e3943)) +* **deps:** bump @nextcloud/router from 2.1.2 to ^2.2.0 (main) ([#5548](https://github.com/nextcloud/calendar/issues/5548)) ([ffa118b](https://github.com/nextcloud/calendar/commit/ffa118b2302803a6a70652ca1bd8a097d8a5197e)) +* **deps:** bump @nextcloud/router from 2.2.0 to ^2.2.1 (main) ([#5726](https://github.com/nextcloud/calendar/issues/5726)) ([28d5a02](https://github.com/nextcloud/calendar/commit/28d5a029d4ab36ee11580b72605aa2448622a702)) +* **deps:** bump @nextcloud/router from 2.2.1 to v3 ([fa9c2a1](https://github.com/nextcloud/calendar/commit/fa9c2a126eb345cc46b5c92ad79e1220ab88f3bb)) +* **deps:** bump @nextcloud/vue from 7.12.1 to ^7.12.2 ([b6e4fae](https://github.com/nextcloud/calendar/commit/b6e4faeccc12c03e72958c49610562fcd96e5587)) +* **deps:** bump @nextcloud/vue from 7.12.2 to ^7.12.4 ([0462476](https://github.com/nextcloud/calendar/commit/04624765597a266563207970b2a6816643fb7f07)) +* **deps:** bump @nextcloud/vue from 7.12.4 to ^7.12.5 ([f05aee2](https://github.com/nextcloud/calendar/commit/f05aee245fb1fa393dbe82ab7f748c62e79bc650)) +* **deps:** bump @nextcloud/vue from 7.12.5 to ^7.12.6 ([aa7c81d](https://github.com/nextcloud/calendar/commit/aa7c81d956ee56ec432f93ad9d9c2f971b7a2b09)) +* **deps:** bump @nextcloud/vue from 7.12.6 to ^7.12.7 ([7bc57a8](https://github.com/nextcloud/calendar/commit/7bc57a8d49616302b6a6057f0182b9d490252a28)) +* **deps:** bump @nextcloud/vue from 8.6.2 to ^8.7.0 ([eb7c054](https://github.com/nextcloud/calendar/commit/eb7c05436be67c59be1a3755d40c90f770f82101)) +* **deps:** bump @nextcloud/vue from 8.7.0 to ^8.7.1 ([7833b1e](https://github.com/nextcloud/calendar/commit/7833b1ea4a29903e58b078d2d9ffdb462d3ba007)) +* **deps:** bump core-js from 3.32.0 to ^3.32.1 (main) ([#5430](https://github.com/nextcloud/calendar/issues/5430)) ([0b8ec0d](https://github.com/nextcloud/calendar/commit/0b8ec0da85a3d6605953dc53161396fdd5050c1a)) +* **deps:** bump core-js from 3.32.1 to ^3.32.2 (main) ([#5470](https://github.com/nextcloud/calendar/issues/5470)) ([df6b600](https://github.com/nextcloud/calendar/commit/df6b600e118cdd5631e2a46c4e6ede773ac5b620)) +* **deps:** bump core-js from 3.32.2 to ^3.33.0 (main) ([#5524](https://github.com/nextcloud/calendar/issues/5524)) ([63fd15e](https://github.com/nextcloud/calendar/commit/63fd15e585c49ada7b4da5b369d58706b6508ae9)) +* **deps:** bump core-js from 3.33.0 to ^3.33.1 (main) ([#5546](https://github.com/nextcloud/calendar/issues/5546)) ([b6446c4](https://github.com/nextcloud/calendar/commit/b6446c41b508384c39c61ace250f5af7e200eae7)) +* **deps:** bump core-js from 3.33.1 to ^3.33.2 (main) ([#5558](https://github.com/nextcloud/calendar/issues/5558)) ([4315fbf](https://github.com/nextcloud/calendar/commit/4315fbf61af061da2b5f17ac0086f383b34ed274)) +* **deps:** bump core-js from 3.33.2 to ^3.33.3 (main) ([#5585](https://github.com/nextcloud/calendar/issues/5585)) ([c6b1ed3](https://github.com/nextcloud/calendar/commit/c6b1ed34ba69e09ffab2e32b7f8a40b01bcaa917)) +* **deps:** bump core-js from 3.33.3 to ^3.34.0 (main) ([#5626](https://github.com/nextcloud/calendar/issues/5626)) ([0648771](https://github.com/nextcloud/calendar/commit/0648771a9fe4fd111e7cd90516b7b66e50afd960)) +* **deps:** bump core-js from 3.34.0 to ^3.35.0 (main) ([#5661](https://github.com/nextcloud/calendar/issues/5661)) ([5e60295](https://github.com/nextcloud/calendar/commit/5e60295d0e74712d7b420e5dacabed83cda62e53)) +* **deps:** bump core-js from 3.35.0 to ^3.35.1 (main) ([#5712](https://github.com/nextcloud/calendar/issues/5712)) ([84e98c6](https://github.com/nextcloud/calendar/commit/84e98c6baaf95299e17b4afe592bd310e5f137ef)) +* **deps:** bump core-js from 3.35.1 to ^3.36.0 (main) ([#5811](https://github.com/nextcloud/calendar/issues/5811)) ([752b87e](https://github.com/nextcloud/calendar/commit/752b87eb99b4190933cd639cb0d3e7d60d63f697)) +* **deps:** bump core-js from 3.36.0 to ^3.36.1 (main) ([#5858](https://github.com/nextcloud/calendar/issues/5858)) ([59fe5d0](https://github.com/nextcloud/calendar/commit/59fe5d0cacc0eff31336ed3ce99505587b49e4fb)) +* **deps:** bump debounce from 1.2.1 to v2 ([dba8c91](https://github.com/nextcloud/calendar/commit/dba8c91c4e105daa6da6f31168e72923a641485d)) +* **deps:** bump fullcalendar family from 6.1.10 to v6.1.11 ([82b6908](https://github.com/nextcloud/calendar/commit/82b6908b6aac573aa9539caab348144d8b28c146)) +* **deps:** bump fullcalendar family from 6.1.8 to v6.1.9 ([7d484a9](https://github.com/nextcloud/calendar/commit/7d484a9fa92356a0db0289e2e32e27d35d1fa4ec)) +* **deps:** bump fullcalendar family from 6.1.9 to v6.1.10 ([6d29805](https://github.com/nextcloud/calendar/commit/6d298059ce9bc6e35a1542a82406bce77bf12f19)) +* **deps:** bump linkifyjs from 4.1.1 to ^4.1.2 (main) ([#5577](https://github.com/nextcloud/calendar/issues/5577)) ([1e2df09](https://github.com/nextcloud/calendar/commit/1e2df0964a24a009d8a5fd7b0877480ffaefeec9)) +* **deps:** bump linkifyjs from 4.1.2 to ^4.1.3 (main) ([#5610](https://github.com/nextcloud/calendar/issues/5610)) ([fe924ae](https://github.com/nextcloud/calendar/commit/fe924ae3694da8ee9efa92bbcfac3ebad6887322)) +* **deps:** bump p-limit from 4.0.0 to v5 ([a8120b9](https://github.com/nextcloud/calendar/commit/a8120b90f6c30cc1bffb15fdbd63251509405565)) +* **deps:** bump vue monorepo from 2.7.14 to ^2.7.15 (main) ([#5547](https://github.com/nextcloud/calendar/issues/5547)) ([d6f7259](https://github.com/nextcloud/calendar/commit/d6f72593b56f786ebdca8540836935ad44c2864d)) +* **deps:** bump vue monorepo from 2.7.15 to ^2.7.16 (main) ([#5623](https://github.com/nextcloud/calendar/issues/5623)) ([2e712e6](https://github.com/nextcloud/calendar/commit/2e712e65cc1f5524e93af46f87c84ac76238e0c0)) +* **deps:** bump vue-material-design-icons from 5.2.0 to ^5.3.0 (main) ([#5728](https://github.com/nextcloud/calendar/issues/5728)) ([38ebbcf](https://github.com/nextcloud/calendar/commit/38ebbcf3bcc647b909b2e8d4905c0964f086d04c)) +* **deps:** bump webdav from 5.2.3 to ^5.3.0 (main) ([#5453](https://github.com/nextcloud/calendar/issues/5453)) ([50ddadf](https://github.com/nextcloud/calendar/commit/50ddadf37b5b58dfbd17ca6e93f160807db94317)) +* **deps:** bump webdav from 5.3.0 to ^5.3.1 (main) ([#5624](https://github.com/nextcloud/calendar/issues/5624)) ([c1cdd74](https://github.com/nextcloud/calendar/commit/c1cdd7416d46a8447da385a28562cd6f02a8f736)) +* **deps:** bump webdav from 5.3.1 to ^5.3.2 (main) ([#5739](https://github.com/nextcloud/calendar/issues/5739)) ([50991fd](https://github.com/nextcloud/calendar/commit/50991fdc38b5b2bf7cd3e16d866b3603978acb82)) +* **deps:** bump webdav from 5.3.2 to ^5.4.0 (main) ([#5812](https://github.com/nextcloud/calendar/issues/5812)) ([07e87f4](https://github.com/nextcloud/calendar/commit/07e87f49d93dd19a160cc87aa382ebc2e410b5eb)) +* **deps:** bump webdav from 5.4.0 to ^5.5.0 (main) ([#5859](https://github.com/nextcloud/calendar/issues/5859)) ([6244af9](https://github.com/nextcloud/calendar/commit/6244af93bfca824ce32bfec5db25b1594a159fb6)) +* disable resharing of incoming shared calendars ([c370c11](https://github.com/nextcloud/calendar/commit/c370c1163af69926c48394dc4569fbf7b5e2fd61)) +* dont forward internal exceptions ([3b5ecd0](https://github.com/nextcloud/calendar/commit/3b5ecd08ff8fc7bc7fa502cef5a0dd652447967a)) +* **editor:** bring back the three-dot menu ([de1cf84](https://github.com/nextcloud/calendar/commit/de1cf849af30518efd22d32e8f88af93bef00cb1)) +* **editor:** convert start date to user's tz for the sub line ([0716226](https://github.com/nextcloud/calendar/commit/0716226f34af38060a03021eb22988365e537911)) +* **editor:** grow save buttons and change their order ([f2e6975](https://github.com/nextcloud/calendar/commit/f2e6975f29225326ece58d6613a0ee8856a56948)) +* **editor:** show placeholder if an event's title is empty ([b6383fe](https://github.com/nextcloud/calendar/commit/b6383fe0908646bdc62d01dcf2fb04056a7ec245)) +* **editor:** top right actions not positioned properly ([af4e4c1](https://github.com/nextcloud/calendar/commit/af4e4c1fc19c07871d4fac24bcc1d0654e5cbd6e)) +* error handling for exceptions for recurrence next ([cc02049](https://github.com/nextcloud/calendar/commit/cc0204971a851819d32866543367c01ae290496c)) +* **freebusy:** free for all blocks ([fd46192](https://github.com/nextcloud/calendar/commit/fd4619256466e93f767443392e0ce77dd7f93c38)) +* kazakhstan holiday calendars ([66223fd](https://github.com/nextcloud/calendar/commit/66223fd8e8395d82be4c887bc9d6e04c8ab2ee8c)) +* missing public calendar initial state ([c9398b7](https://github.com/nextcloud/calendar/commit/c9398b72f7ff69461547cfdab1c8506af6d78d43)) +* move global sidebar style overrides to sfc ([d1edd61](https://github.com/nextcloud/calendar/commit/d1edd61e46254de5482d60994856013219af3c54)) +* restore original event ordering ([ded1f29](https://github.com/nextcloud/calendar/commit/ded1f294eb40f7299167fcb12c8d6cb63387c9bb)), closes [#4431](https://github.com/nextcloud/calendar/issues/4431) [#4646](https://github.com/nextcloud/calendar/issues/4646) +* **scheduling:** Disable free/busy for attendees ([d9e67db](https://github.com/nextcloud/calendar/commit/d9e67dbb1b8106f8d028fce1246580c09937729c)) +* **scheduling:** Rephraze "Invitation sent" to "Awaiting response" ([5d4e3e2](https://github.com/nextcloud/calendar/commit/5d4e3e224dc47295ee75d4bb148ad63bff00e419)) +* **scheduling:** Use attendee placeholder avatars ([521b530](https://github.com/nextcloud/calendar/commit/521b5303e27dfdf793ccdbb94289e40ec393d131)), closes [#3099](https://github.com/nextcloud/calendar/issues/3099) +* **sidebar:** hide alarm actions menu when starting to edit ([25a6f13](https://github.com/nextcloud/calendar/commit/25a6f1397a67ed6a84bb3e8c60b006d2056b95db)) +* **talk:** Do not invite guest participants ([e6e8c2a](https://github.com/nextcloud/calendar/commit/e6e8c2a531ae75c4223a5ea50036f75892715439)) +* update changelog v4.5.3 ([c0ade81](https://github.com/nextcloud/calendar/commit/c0ade818b857e458b3855267737d11e55fe6e2e0)) +* update holiday calendars ([5a45f89](https://github.com/nextcloud/calendar/commit/5a45f8916f3ff393636d664d62ee1f87c7c73751)) + + +### Features + +* Ability to invite circles ([df2d51b](https://github.com/nextcloud/calendar/commit/df2d51b66631c5149e5a4d7db73c0ccad60bb6fc)) +* Ability to render groups as attendees ([33e236c](https://github.com/nextcloud/calendar/commit/33e236c285513db01f1232722c5ea59974f332a7)) +* add a setting for the default calendar url ([7a307bb](https://github.com/nextcloud/calendar/commit/7a307bbcf0160ca9dd2202ccfe123d086de4c141)) +* **appointments:** show indicator when loading slots and show toast in case of error ([4d3172f](https://github.com/nextcloud/calendar/commit/4d3172f09773e6547b35a592eae3ffb11bc5354c)) +* **editors:** redesign editors ([3369fc8](https://github.com/nextcloud/calendar/commit/3369fc8ea9ac88e0344d9c91f12941585a7a60aa)) +* **scheduling:** Automate free/busy slot selection ([d47632e](https://github.com/nextcloud/calendar/commit/d47632eb0906de5be957fe6b8b0197af049564c0)) +* update info.xml and appversion ([1c32a12](https://github.com/nextcloud/calendar/commit/1c32a12b9c99e79ecdb49ec92db7923ab3fb0d61)) + + +### Performance Improvements + +* **bundles:** refactor @nextcloud/vue imports to use the esm bundle ([baeeae2](https://github.com/nextcloud/calendar/commit/baeeae244614586bbc3c1efd3233f26a84ec0a01)) +* **dashboard:** implement widget item api v2 ([a00f344](https://github.com/nextcloud/calendar/commit/a00f34419eed45d709082b3601cb995ca1855fed)) + + +### Reverts + +* Revert "fix(appointments): Ignore extraneous columns in AppointmentConfigMapper::findByToken" ([8838fba](https://github.com/nextcloud/calendar/commit/8838fba6c0c4be347ff0fa160f6a9dcaa3d216b5)) +* Augment the category menu by system tags and already used categories ([eae6dea](https://github.com/nextcloud/calendar/commit/eae6deada277e718a153a5ff48836f8dba509dd0)) + + + +# [4.5.0-beta1](https://github.com/nextcloud/calendar/compare/v4.5.0-alpha2...v4.5.0-beta1) (2023-08-11) + + +### Features + +* **editor:** make links clickable in locations and description areas ([8fa9d99](https://github.com/nextcloud/calendar/commit/8fa9d99ea7877f0355f357a6511d0698bcd9ad72)) + + + +# [4.5.0-alpha2](https://github.com/nextcloud/calendar/compare/v4.5.0-alpha1...v4.5.0-alpha2) (2023-08-07) + + +### Bug Fixes + +* add requistes link to README ([28ccf72](https://github.com/nextcloud/calendar/commit/28ccf729534b9362b1bb66584dc806172108b9f4)) +* Allow dynamic autoloading for classes added during upgrade ([c88cb60](https://github.com/nextcloud/calendar/commit/c88cb60b810fb2055db9b4806468de9926c359b6)) +* **appointements:** add context for translators for the talk room name string ([ac9e7e5](https://github.com/nextcloud/calendar/commit/ac9e7e5b03f6d9abb9b2d83010209f79ef9d754d)), closes [#5297](https://github.com/nextcloud/calendar/issues/5297) +* **appointments:** calendar booking notifications ([a61f7a9](https://github.com/nextcloud/calendar/commit/a61f7a91559c5da569453b6ac6ded8d3e986faa8)) +* **appointments:** equalize slot booking button width ([7866b18](https://github.com/nextcloud/calendar/commit/7866b18e9a4655352e05443ee8f500ed5241ca77)) +* **appointments:** Fix disabling appointments feature ([f00ce71](https://github.com/nextcloud/calendar/commit/f00ce710d01089d85ff9f6b1df564de6fbbb66d8)) +* **appointments:** Ignore extraneous columns in AppointmentConfigMapper::findByToken ([94c93f1](https://github.com/nextcloud/calendar/commit/94c93f1f457d8fd4910d38cf6e80ef3d4caa0fd3)) +* **appointments:** set visibility to private by default ([e35ba35](https://github.com/nextcloud/calendar/commit/e35ba352eaf7fcb21b3eb4da6b8529884a8485b2)) +* **attachments:** generate proper urls to dav service ([ba04707](https://github.com/nextcloud/calendar/commit/ba047076d1d51c0f27295065a333084b011befee)) +* bring back advanced color picker fields ([3c987b5](https://github.com/nextcloud/calendar/commit/3c987b5184456bd5c438a0adf7a0dedba46f29a5)) +* calendar export button ([07b58ab](https://github.com/nextcloud/calendar/commit/07b58ab939dd166a33f589bae3857bb0bea2692b)) +* **categories:** fall back to empty array ([32fa3fa](https://github.com/nextcloud/calendar/commit/32fa3fa114c7611b41c1d61f0c6e3118c45556b1)) +* debounce calendar modal save and edit methods ([eef9e1b](https://github.com/nextcloud/calendar/commit/eef9e1b75af67e28375c10356e519f2533c5a25c)) +* **deps:** bump @nextcloud/axios from 2.3.0 to ^2.4.0 ([64fe74a](https://github.com/nextcloud/calendar/commit/64fe74ae5775c01b0e39435d6d3bb5a6a6ca6ff6)) +* **deps:** bump @nextcloud/calendar-availability-vue from 0.6.0-alpha1 to v1 ([a937482](https://github.com/nextcloud/calendar/commit/a937482c8c5e6daa4a1ca705e8c0ea431b2de4db)) +* **deps:** bump @nextcloud/dialogs from 4.0.1 to ^4.1.0 ([934f40b](https://github.com/nextcloud/calendar/commit/934f40b36da1f2c7d6e41996ed7b7d2707df6807)) +* **deps:** bump @nextcloud/initial-state from 2.0.0 to ^2.1.0 ([f28d5c4](https://github.com/nextcloud/calendar/commit/f28d5c44a97f00cd9f8a6800635b28c5289286a7)) +* **deps:** bump @nextcloud/l10n from 2.1.0 to ^2.2.0 ([bc18ffa](https://github.com/nextcloud/calendar/commit/bc18ffaaffe7fd7b6c3608bc78b57d0dce95aa44)) +* **deps:** bump @nextcloud/router from 2.1.1 to ^2.1.2 ([63a9f41](https://github.com/nextcloud/calendar/commit/63a9f411ba51b0a1cbdf9d83cd85b1fbcd912ce5)) +* **deps:** bump @nextcloud/vue from 7.11.6 to ^7.12.0 ([9ac0475](https://github.com/nextcloud/calendar/commit/9ac047536cbc9b1818d422321f832ce8b4188426)) +* **deps:** bump @nextcloud/vue from 7.12.0 to ^7.12.1 ([8e0ac6f](https://github.com/nextcloud/calendar/commit/8e0ac6f393cd2901d12206776826010d75d3a1aa)) +* **deps:** bump bamarni/composer-bin-plugin from 1.8.2 to ^1.8.2 ([b46131d](https://github.com/nextcloud/calendar/commit/b46131de549349ead6bad4a8c0187377371a4e40)) +* **deps:** bump core-js from 3.30.2 to ^3.31.0 ([1c029d1](https://github.com/nextcloud/calendar/commit/1c029d10b907ec16141628e1083c07a6d29fbb2c)) +* **deps:** bump core-js from 3.31.0 to ^3.31.1 ([bb4b86a](https://github.com/nextcloud/calendar/commit/bb4b86a9141aa0453b667f5803f16d6ee79d8db7)) +* **deps:** bump core-js from 3.31.1 to ^3.32.0 (main) ([#5388](https://github.com/nextcloud/calendar/issues/5388)) ([4dc430f](https://github.com/nextcloud/calendar/commit/4dc430fa3f563b7827a97796313618a472d84525)) +* **deps:** bump webdav from 5.0.0 to ^5.1.0 ([882008f](https://github.com/nextcloud/calendar/commit/882008fc59139d9cabdf9dd4360886f986332543)) +* **deps:** bump webdav from 5.1.0 to ^5.2.1 ([f41a986](https://github.com/nextcloud/calendar/commit/f41a986f9ca56b3d7f4fb13dd5dacb54153755f8)) +* **deps:** bump webdav from 5.2.1 to ^5.2.2 ([1e9a34d](https://github.com/nextcloud/calendar/commit/1e9a34dad7747d9996ac208ec30ff4dbba43c179)) +* **deps:** bump webdav from 5.2.2 to ^5.2.3 ([302b84a](https://github.com/nextcloud/calendar/commit/302b84a0c273f9e930164d3554ecea4cb02947d9)) +* **deps:** pin dependencies ([9ae057a](https://github.com/nextcloud/calendar/commit/9ae057afcd6512643e6802b6bd46d42a43a711a8)) +* **duplicateEvent:** Open duplicate in sidebar not original ([3dfd7fa](https://github.com/nextcloud/calendar/commit/3dfd7fab060fa534d066e26e54c06929ba13cffe)) +* improve grammar ([edfe0d5](https://github.com/nextcloud/calendar/commit/edfe0d54ab098330aad7487ea8ac72469f213171)) +* indicate if calendar is shared by me ([0e609c6](https://github.com/nextcloud/calendar/commit/0e609c6a8af590d88d65f17b35916943537552d0)) +* **public-embed:** Fix header showing on embed view ([ff17233](https://github.com/nextcloud/calendar/commit/ff17233536ae5ff2a7796a06818ff6f6bc71aee6)) +* **Public-Sharing:** Show footer with server details and eventual ToS through PublicTemplateResponse ([3a42cf6](https://github.com/nextcloud/calendar/commit/3a42cf6ced848c7a7d4f697540558f9a1f9c6c43)) +* **settings:** Fix link to personal availability settings depending on NC version ([df16051](https://github.com/nextcloud/calendar/commit/df16051b84f616bf4ad1375d2e7ee0e65e25591b)), closes [#5226](https://github.com/nextcloud/calendar/issues/5226) +* **sharing:** skip long email addresses ([7899440](https://github.com/nextcloud/calendar/commit/7899440bbbf1a7ab9d68749595668e335cbc4913)) +* sidebar editor subtitle not respecting event's timezone ([de03f3b](https://github.com/nextcloud/calendar/commit/de03f3bc1f90e2dee797b21ec6d3caecefd3d2d9)) +* userAsAttendee failing in case of public links ([e9c0ba9](https://github.com/nextcloud/calendar/commit/e9c0ba997670007a3faaeb14f84ae829e2ca44f3)) + + +### Features + +* Add link to the Thunderbird holiday calendar page ([5f071dd](https://github.com/nextcloud/calendar/commit/5f071dd393be332d94416f0d5cc2481c45652bec)) +* **alarms:** improve email alarm RFC compliance ([150cc29](https://github.com/nextcloud/calendar/commit/150cc2976db52ce61f0ef394e148029adc2fc975)) +* **appointments:** Disable the booking button while loading ([#5244](https://github.com/nextcloud/calendar/issues/5244)) ([da158a0](https://github.com/nextcloud/calendar/commit/da158a07a753acf1c990db9174ce38835c117b3e)) +* **deps:** Revive PHP7.4 support ([5d88b22](https://github.com/nextcloud/calendar/commit/5d88b229fce11c485d7c72ff0ab5b60f30b9eb8d)) +* **editor:** implement app config to hide resources tab ([28d672c](https://github.com/nextcloud/calendar/commit/28d672c368a6fd27c40c9a06f4215d7ec2a716cb)) +* implement dedicated calendar modal save button ([f8d52c8](https://github.com/nextcloud/calendar/commit/f8d52c83ba98b451db5ae619868dc49a0b64f464)) +* migrate trash bin buttons to NcButton ([34577d2](https://github.com/nextcloud/calendar/commit/34577d2b50836eebdeea5f0da504701b368a4285)) +* support Nextcloud 28 ([da70650](https://github.com/nextcloud/calendar/commit/da70650ba9ec699225e15288d9ceb7b0b1eaa322)) +* **talkintegration:** Set Talk conversation description ([9f53311](https://github.com/nextcloud/calendar/commit/9f5331141485232e3351daa0efaacca13e9d3868)) +* **talk:** Make event attendees Talk room participants ([8820948](https://github.com/nextcloud/calendar/commit/8820948844096cf165d41abef315f07dea91eccd)) +* **view:** Introduce year grid view (with FC multiMonthYear plugin) ([e4ab210](https://github.com/nextcloud/calendar/commit/e4ab21072bc8f872ad879d1673f127b322dd7312)), closes [#159](https://github.com/nextcloud/calendar/issues/159) +* **webcal:** Name button *Subscribed* for existing calendars ([d66843d](https://github.com/nextcloud/calendar/commit/d66843d3c4383db68b7ed24a6858c078371d7d14)) +* **webcal:** Thunderbird holiday subscription picker ([1de6116](https://github.com/nextcloud/calendar/commit/1de611697ddbcb3fb441e40da791e1cf1f467c7a)) +* Write Talk URL into location, not description ([7f39c7b](https://github.com/nextcloud/calendar/commit/7f39c7b7dc2690d3bd7532cceb1090d7f4e097b4)) + + +### Performance Improvements + +* **autoloader:** Use Composer's authoritative classmap ([0eb41dc](https://github.com/nextcloud/calendar/commit/0eb41dc1bc2d72a91eb59375c38a36edfd29e97b)) +* Lazy load dashboard components ([e927aa5](https://github.com/nextcloud/calendar/commit/e927aa543df8183e5a084441d69ee6780c1a7257)) + + +### Reverts + +* Revert "Create Talk rooms for appointments" ([5b9c879](https://github.com/nextcloud/calendar/commit/5b9c8796e904004d5a40f8a1f02469fa6615ef06)) +* Revert "Create command-rebase.yml" ([8ffc2df](https://github.com/nextcloud/calendar/commit/8ffc2dfd0f852ad20d74c09731a00a824e6e77e8)) +* Revert "Move event rendering to vue" ([ca2abbb](https://github.com/nextcloud/calendar/commit/ca2abbb2e82a753bcd6b5bbf34561b862819c955)) +* Revert "Show icon for events with attendees" ([7582e1c](https://github.com/nextcloud/calendar/commit/7582e1c75fd9e9fb5d0c1c2f457f01fa21c8d278)) +* Revert "Fix events being editable by invitees" ([cb92d5c](https://github.com/nextcloud/calendar/commit/cb92d5c478819cb86f2dc801f27f6ef6178f9f80)) + + + +# [3.0.0-rc1](https://github.com/nextcloud/calendar/compare/v3.0.0-beta2...v3.0.0-rc1) (2021-11-26) + + + +# [3.0.0-beta2](https://github.com/nextcloud/calendar/compare/v3.0.0-beta1...v3.0.0-beta2) (2021-11-26) + + + +# [3.0.0-beta1](https://github.com/nextcloud/calendar/compare/v2.4.0-rc2...v3.0.0-beta1) (2021-11-25) + + + +# [2.4.0-rc2](https://github.com/nextcloud/calendar/compare/v2.4.0-rc.1...v2.4.0-rc2) (2021-11-15) + + + +# [2.4.0-rc.1](https://github.com/nextcloud/calendar/compare/v2.3.0-RC.1...v2.4.0-rc.1) (2021-11-09) + + + +# [2.3.0-RC.1](https://github.com/nextcloud/calendar/compare/v2.3.0-alpha.3...v2.3.0-RC.1) (2021-06-22) + + + +# [2.3.0-alpha.3](https://github.com/nextcloud/calendar/compare/v2.3.0-alpha.2...v2.3.0-alpha.3) (2021-06-04) + + + +# [2.3.0-alpha.2](https://github.com/nextcloud/calendar/compare/v2.3.0-alpha.1...v2.3.0-alpha.2) (2021-06-01) + + + +# [2.3.0-alpha.1](https://github.com/nextcloud/calendar/compare/v2.2.0...v2.3.0-alpha.1) (2021-06-01) + + +### Reverts + +* Revert "Add Dependabot for stable2.2" ([9697327](https://github.com/nextcloud/calendar/commit/9697327072cef227f1c414c0764b287402ef66a7)) + + + +# [2.2.0](https://github.com/nextcloud/calendar/compare/v2.1.3...v2.2.0) (2021-03-24) + + + +## [2.1.3](https://github.com/nextcloud/calendar/compare/v2.1.2...v2.1.3) (2021-01-04) + + + +## [2.1.2](https://github.com/nextcloud/calendar/compare/v2.1.1...v2.1.2) (2020-09-24) + + +### Reverts + +* Revert "Bump css-loader from 3.6.0 to 4.2.0" ([c128a1f](https://github.com/nextcloud/calendar/commit/c128a1fabe52eabca84f4ee78fb6b31c39dcce0d)) + + + +## [1.6.3](https://github.com/nextcloud/calendar/compare/v1.6.2...v1.6.3) (2018-10-16) + + + +## [1.6.2](https://github.com/nextcloud/calendar/compare/v1.6.1...v1.6.2) (2018-09-05) + + + +## [1.6.1](https://github.com/nextcloud/calendar/compare/v1.6.0...v1.6.1) (2018-03-06) + + + +## [1.5.1](https://github.com/nextcloud/calendar/compare/v1.5.0...v1.5.1) (2017-03-01) + + + +# [1.4.0](https://github.com/nextcloud/calendar/compare/v1.3.3...v1.4.0) (2016-09-19) + + +### Reverts + +* Revert "hide random color button" ([c575c0e](https://github.com/nextcloud/calendar/commit/c575c0e2ff00254a5b35f7680cf4d08140f42a0c)) + + + +## [1.3.3](https://github.com/nextcloud/calendar/compare/v1.3.2...v1.3.3) (2016-08-24) + + +### Reverts + +* Revert "Fix handling of UTC and "floating" tz." ([846b42d](https://github.com/nextcloud/calendar/commit/846b42d8e774b8cf5126986b9dbb5bd644965018)) +* Revert "Fixed tzid on floating date" ([a6a5a5a](https://github.com/nextcloud/calendar/commit/a6a5a5a63a70d44e5e2736d77c53bbdd839262a6)) +* Revert "fix code formatting of pr" ([784b481](https://github.com/nextcloud/calendar/commit/784b481416880d7ef7ec635be2280e91e969ebb7)) + + + +## [1.3.2](https://github.com/nextcloud/calendar/compare/v1.3.1...v1.3.2) (2016-08-05) + + + +## [1.3.1](https://github.com/nextcloud/calendar/compare/v1.3.0...v1.3.1) (2016-07-24) + + + +# [1.3.0](https://github.com/nextcloud/calendar/compare/v1.2.2...v1.3.0) (2016-07-24) + + + +## [1.2.2](https://github.com/nextcloud/calendar/compare/v1.2.1...v1.2.2) (2016-05-20) + + + +## [1.2.1](https://github.com/nextcloud/calendar/compare/4854f3b5ce16bf442bc7cc1729349dd92851af7f...v1.2.1) (2016-05-17) + + +### Reverts + +* Revert "Increment version number" ([4854f3b](https://github.com/nextcloud/calendar/commit/4854f3b5ce16bf442bc7cc1729349dd92851af7f)) + + -# Changelog - -## 3.5.0 - 2022-08-25 -### Added -- Option to copy calendar events -- Config setting to disable appointments -### Changed -- Moved icons to material design -- Settings name -### Fixed -- White space on calendar title -- Trashbin layout - -## 3.4.3 - 2022-08-23 -### Fixed -- Missing events in week view -- Invitee and resource name wrapping -- Relying on guessed mime type on import - -## 3.4.2 - 2022-07-07 -### Fixed -- Performance issues with Vue Event Rendering -- Settings modal closing when using import - -## 3.4.1 - 2022-06-28 -### Fixed -- Calendar not loading in month view - -## 3.4.0 - 2022-06-21 -### Added -- Visually distinguish events with attendees from ones without -- Visually distinguish events with reminders from ones without -- More key events on the simple editor -### Changed -- Drop PHP7.3 support (EOL) -- Drop Nextcloud 21 support (EOL) -- Event rendering now uses Vue -- Appointment booking message -### Fixed -- Logic to extract avatar link from inivitees list -- Missing stylelint -- Hide 3-dot menu button -- Attendee search -- Color dot and event alignment - -## 3.3.2 – 2022-06-02 -### Fixed -- Squished settings checkbox label - -## 3.3.1 – 2022-05-19 -### Fixed -- Free/busy view rendering -- Switching view modes -- Search term casing -- Sidebar scrolling - -## 3.3.0 - 2022-05-05 -### Added -- PHP8.1 compatability -- More uses for the popover modal -### Changed -- Rename "Download" to "Export" -### Fixed -- Crash on Chrome / Chromium for Simple Editor URL -- Invitation response button for readonly events - -## 3.2.2 - 2022-03-16 -### Fixed -- Email Validation for appointment booking -- Calendar resource attendance state display -- Alarm type selection - -## 3.2.1 - 2022-03-14 -### Fixed -- Public Calendar Link -- Disabled Calendar Icon -- Missing Translations - -## 3.2.0 - 2022-03-09 -### Changed -- Allow admins to force an event type -- Allow admins to hide event exports -- Rename 'Download' to 'Export' -### Fixed -- Navigation icon bullet -- Remove dot in plural string -- Remove blurriness from event participation indicator - -## 3.1.0 - 2022-02-28 -### Added -- Accept & decline invitations from web -- Conflict calendars for appointments -- Limit how far in the future appointments can be booked -### Changed -- Time-insensitive background jobs are now run at off-peak times -- Illustrations for Voting, BBQ, Weddings, etc. -- Calendar monthly and weekly view now grey out days of other months -- Full calendar week view now highlights "Today" -- Date & time picker enhancements - end time now influences start time, lets you choose a time first -- Show the whole title of an event if the display field is large enough -- Metadata for appointments config prep- and followup time -### Removed -- Nextcloud 20 support -- PHP7.2 support -### Fixed -- Accessibility -- Broken appointment modal if destination calendar was deleted -- Fix vertical scrolling issues on mobile devices - -## 3.0.6 – 2022-02-16 -### Fixed -- Invalid X-APPLE-STRUCTURED-LOCATION on location update -- Trashbin being unavaliable -- Previously ignored DESCRIPTION;ALTREP property - -## 3.0.5 – 2022-01-18 -### Fixed -- Events being editable locally by attendees reenabled -- Fix reminder time zone picker and formatting - -## 3.0.4 – 2021-12-28 -### Fixed -- Calendar picker in the editor sidebar - -## 3.0.3 – 2021-12-21 -### Fixed -- Events editable by anyone -- Time display for short events -- Event title cut off even for long events with enough display space - -## 3.0.2 – 2021-12-15 -### Fixed -- Previous/next month buttons -- Cancelled and free events cause appointment slot conflicts -- User deletion SQL error -- User doc URL -- Outdated screenshots -- Appointments booking page with mobile browsers - -## 3.0.1 - 2021-12-01 -### Fixed -- PHP7.2 syntax errors -- Usage of Nextcloud 21+ API on Nextcloud 20 -- Vertical padding of the appointments booking page -- White space handling of appointments description - -## 3.0.0 – 2021-11-29 -### Added -- Appointments - configure your appointment configuration, send out the link or show it on your profile, and let other people book an appointment with you -### Fixed -- Empty calendar widget on dashboard - -## 2.4.0 – 2021-11-25 -### Added -- Advanced Search for Rooms and Resources -- Room Auto Suggestions for events that will fit all attendees -### Changed -- Design Polishing of Right Sidebar - - Merged Alarm, Detail and Repeat tab in right sidebar - - Moved Resources to separate tab - - Placeholder Text and field heights - - Timepicker - - Simplified Simple Editor - - ... -- Event recurrences - - Calendar can't be edited any longer -- Dependencies -- Translations -### Fixed -- Sharing: Groups and Principal URIs with spaces and other special characters -- Trashbin timestamp - -## 2.3.4 – 2021-09-28 -### Fixed -- Event height in weekly view -- Events disappearing from grid -- Movnig calendars on Android -- Missing default status -- Simple editor size -- Sidebar datepicker rendering - -## 2.3.3 – 2021-08-30 -### Fixed -- Development dependencies shipped with production build -- Missing email address in attendee search - -## 2.3.2 – 2021-08-18 -### Changed -- Details of editor design -- Make save buttons sticky -- Sort objects in trash bin by newest first -- Size of text fields in event pop-up -### Fixed -- Settings design regressions -- Scrolling for trash bin -- Unusable sidebar on mobile -- List table issues -- Month view issues -- Week view issues -- Rendering of vobject in trash bin -- Missing loading view for trash bin -- Task restoring error handling - -## 2.3.1 – 2021-07-14 -### Fixed -- Create Talk room for event -- Searching for sharees when resources exist on the back-end -- Removing recurrence rule -- 'Add reminder' dropdown position -- Event repeat multiselect and position on low resolutions -- Timestamps in trash bin view -- Vue prop validation error - -## 2.3.0 – 2021-06-29 -### Added -- Trash bin for calendars and their events -- Default reminder setting -### Changed -- Event now have a minimum display height -- Rendering of attendees and their state -- Show organizer in free-busy view -- Illustrations -- Show shared calendars by default -- Dropped webcals support (not webcal !) -- Dependencies -- Translations -### Fixed -- Missing right border in month and week view -- Missing date picker -- Principal encoding for sharing with groups with spaces in their name - -## 2.2.2 – 2021-05-26 -### Fixed -- Unable to pick date in monthly view - -## 2.2.1 – 2021-04-27 -### Changed -- Updated dependencies - -## 2.2.0 – 2021-03-24 -### Added -- Datepicker in free/busy view -- Grey background for all attendees in free/busy when at least one person is busy -- Free/busy view shows day of the week -- Nextcloud 22 (dev) support -### Changed -- Improved dashboard widget styling -- Updated translations -- Updated dependencies -- Vary event illustrations when multiple illustrations match -### Fixed -- Hide cancelled events on dashboard -- Styling of free/busy slots -- Browser compatibility issues -- Search DAV principal as display name or email -- Handling of invalid calendar objects when rending a calendar -- Sorting of free/busy resources -- Hover background in list view with Nextcloud's dark theme - -## 2.1.3 - 2021-01-04 -### Fixed -- Let apps handle clicks on todo entries #2478 -- Fix calendar rendering with complex locale #2741 -- Fix encoded display of names that contain a special character #2726 -- Fix blank page on browsers without support for ResizeObserver #2620 -- Fix broken link #2715 -- RRULE UNTIL must be in UTC if DTSTART is timezone-aware #2709 -- Add some margin for organizer hint in attendee list #2683 -- Updated translations -- Updated dependencies - -## 2.1.2 - 2020-09-24 -### Added -- 21 compatibility -- Fixed reminder editing - [#2605](https://github.com/nextcloud/calendar/pull/2605) - [#2606](https://github.com/nextcloud/calendar/pull/2606) - -## 2.1.1 - 2020-09-11 -### Fixed -- Dashboard fixes - [#2574](https://github.com/nextcloud/calendar/pull/2574) - [#2575](https://github.com/nextcloud/calendar/pull/2575) - [#2579](https://github.com/nextcloud/calendar/pull/2579) -- Fix opening an event from search - [#2578](https://github.com/nextcloud/calendar/pull/2578) -- Updated dependencies -- Updated translations - -## 2.1.0 - 2020-09-02 -### Added -- Dashboard integration - [#2414](https://github.com/nextcloud/calendar/pull/2414) -- Better routes to link to calendar from outside - [#2483](https://github.com/nextcloud/calendar/pull/2483) -- Different style for all-day / timed events - [#30](https://github.com/nextcloud/calendar/issues/30) -- List view - [#402](https://github.com/nextcloud/calendar/issues/402) -- Search - [#8](https://github.com/nextcloud/calendar/issues/8) - -### Fixed -- Better localization of calendar-grid - [#1844](https://github.com/nextcloud/calendar/issues/1844) -- Remove double scrollbars in Firefox - [#1815](https://github.com/nextcloud/calendar/issues/1815) -- Better error handling for missing events - [#2459](https://github.com/nextcloud/calendar/issues/2459) -- Long description box - [#2187](https://github.com/nextcloud/calendar/issues/2187) - -## 2.0.4 - 2020-08-27 -### Added -- Center date in month view cell - [#2451](https://github.com/nextcloud/calendar/pull/2451) -- Sortable calendar list - [#9](https://github.com/nextcloud/calendar/issues/9) -- Display tasks with a due-date in calendar app - [#28](https://github.com/nextcloud/calendar/issues/28) -- Keyboard support - [#157](https://github.com/nextcloud/calendar/issues/157) -- Add illustration to videoconference - [#2217](https://github.com/nextcloud/calendar/issues/2217) -- Change Illustration for Lunch - [#2218](https://github.com/nextcloud/calendar/issues/2218) -- Convert URLs into links inside description - [#674](https://github.com/nextcloud/calendar/issues/674) -- Picking a date in date-time-picker does not open time-picker - [#2198](https://github.com/nextcloud/calendar/issues/2198) - -### Fixed -- Sharing Calendar public links via email sends only a link to the cloud - [#2471](https://github.com/nextcloud/calendar/issues/2471) -- Also mark tasks as done when STATUS is set to COMPLETED - [#2339](https://github.com/nextcloud/calendar/pull/2339) -- Long calendar names overflowing in calendar-picker - [#2324](https://github.com/nextcloud/calendar/issues/2324) -- Datepicker not localized - [#2174](https://github.com/nextcloud/calendar/issues/2174) -- Hide submit button in editor sidebar - [#2291](https://github.com/nextcloud/calendar/issues/2291) -- Fix timezone names - [#2292](https://github.com/nextcloud/calendar/pull/2292) -- Fixes warning about duplicate ids - [#2287](https://github.com/nextcloud/calendar/pull/2287) -- Make calendar-picker more prominent - [#2007](https://github.com/nextcloud/calendar/issues/2007) -- Circle not found when full name is given - [#2220](https://github.com/nextcloud/calendar/issues/2220) - -## 2.0.3 - 2020-04-09 -### Added -- Show week number in Datepicker - [#2060](https://github.com/nextcloud/calendar/pull/2060) -- Support am/pm in Datepicker - [#2060](https://github.com/nextcloud/calendar/pull/2060) -- Allow to jump to timepicker, without reselecting the date - [#2060](https://github.com/nextcloud/calendar/pull/2060) - -### Fixed -- Calendar list has trouble loading when shared from account or group with non-latin characters. - [#1894](https://github.com/nextcloud/calendar/issues/1894) -- CSP Issue when embedding calendar - [#13627](https://github.com/nextcloud/server/issues/13627) - [#169](https://github.com/nextcloud/calendar/issues/169) -- Alarm trigger was a date in all-day event - [#2128](https://github.com/nextcloud/calendar/issues/2128) -- Blank screen when create new date by opened editor - [#2051](https://github.com/nextcloud/calendar/issues/2051) -- Popover outside viewport when double-clicking event - [#1925](https://github.com/nextcloud/calendar/issues/1925) -- Popover outside viewport when event is hidden behind "More" - [#1934](https://github.com/nextcloud/calendar/issues/1934) -- Popover outside viewport in day-view - [#2109](https://github.com/nextcloud/calendar/issues/2109) -- Optimized view icons - [#2154](https://github.com/nextcloud/calendar/pull/2154) -- Always allow editing an alarm when it is absolute - [#2001](https://github.com/nextcloud/calendar/issues/2001) -- Fix opening animation of sidebar editor - [#2089](https://github.com/nextcloud/calendar/pull/2089) -- Long repeating events not correctly shown on web-calender under certain conditions - [#2048](https://github.com/nextcloud/calendar/issues/2048) -- Repeating events not displayed on first day of monthly calendar - [#1913](https://github.com/nextcloud/calendar/issues/1913) - -## 2.0.2 - 2020-03-02 -### Added -- Recognize Gym as event title for illustrations - [#1888](https://github.com/nextcloud/calendar/issues/1888) -- Improve illustration matching for less false positives - [#1916](https://github.com/nextcloud/calendar/issues/1916) -- Add illustrations keywords related to agile development - [#1873](https://github.com/nextcloud/calendar/pull/1873) -- Add hint to new calendar dropdown that subscriptions are read-only - [#1938](https://github.com/nextcloud/calendar/pull/1938) -- Move navigation to appinfo - [#1979](https://github.com/nextcloud/calendar/pull/1979) -- Use InitialState API - [#1759](https://github.com/nextcloud/calendar/issues/1759) -- Monthly-mode: scroll-bar instead of "more" - [#1889](https://github.com/nextcloud/calendar/issues/1889) -- Adds a minimum height for fullcalendar-events - [#2020](https://github.com/nextcloud/calendar/pull/2020) -- Better feedback for import failures - [#1920](https://github.com/nextcloud/calendar/issues/1920) -- Custom color per event - [#71](https://github.com/nextcloud/calendar/issues/71) -- Allow to configure slotDuration - [#2042](https://github.com/nextcloud/calendar/pull/2042) - -### Fixed -- Undefined color variable - [#1905](https://github.com/nextcloud/calendar/issues/1905) -- Localization of sub-title in AppSidebar - [#1912](https://github.com/nextcloud/calendar/issues/1912) -- Localization of tab-title - [#1871](https://github.com/nextcloud/calendar/issues/1871) -- Next month button skips one month the first time - [#1936](https://github.com/nextcloud/calendar/issues/1936) -- Issue with background-color for icon in datepicker - [#1939](https://github.com/nextcloud/calendar/pull/1939) -- Calendar color generator doesn't handle undefined calendar displayname - [#1941](https://github.com/nextcloud/calendar/issues/1941) -- Sharing with users and groups with spaces - [#1985](https://github.com/nextcloud/calendar/pull/1985) -- Birthday calender entries in wrong date format (in sidebar) - [#1923](https://github.com/nextcloud/calendar/issues/1923) -- Stop hardcoding saturday and sunday as weekend, change it based on locale - [#2016](https://github.com/nextcloud/calendar/issues/2016) -- Duration display issue with entries having a duration of a minute or less - [#1963](https://github.com/nextcloud/calendar/issues/1963) -- Navigation and Display issue in day view - [#1944](https://github.com/nextcloud/calendar/issues/1944) -- Handle files_sharing app being disabled - [#1967](https://github.com/nextcloud/calendar/issues/1967) -- No calendar import (in Firefox and Edge on Windows) - [#1898](https://github.com/nextcloud/calendar/issues/1898) -- Issue setting the end-timezone of an event - [#1914](https://github.com/nextcloud/calendar/issues/1914) -- Calendar app cannot add repeats to an event after the event is created - [#2013](https://github.com/nextcloud/calendar/issues/2013) -- Preserve duration when editing start time - [#1929](https://github.com/nextcloud/calendar/issues/1929) -- Changes inside subcomponents not properly tracked - [#1891](https://github.com/nextcloud/calendar/issues/1891) - -## 2.0.1 - 2020-01-20 -### Fixed -- Sort categories alphabetically - [#1827](https://github.com/nextcloud/calendar/issues/1827) -- Missing styles of "more events" popover - [#1865](https://github.com/nextcloud/calendar/pull/1865) -- Resolving timezone aliases not working - [#1841](https://github.com/nextcloud/calendar/issues/1841) -- Generated embed code for public calendar contains wrong link - [#1861](https://github.com/nextcloud/calendar/issues/1861) -- Add sanity check for route name in case migration didn't run - [#1831](https://github.com/nextcloud/calendar/issues/1831) -- Positioning of new-event popover in day and week view - [#1818](https://github.com/nextcloud/calendar/issues/1818) -- Display self-added categories in list, making it easier to remove them again - [#1819](https://github.com/nextcloud/calendar/issues/1819) - -## 2.0.0 - 2020-01-17 -### Fixed -- Do not include index.php in the url of sharing links if url rewrite is enabled - [#1821](https://github.com/nextcloud/calendar/pull/1821) -- Fix PHP warning when accessing public / embedded routes - [#1822](https://github.com/nextcloud/calendar/pull/1822) -- Include index.php in router base if necessary despite url rewrite enabled - [#1823](https://github.com/nextcloud/calendar/pull/1823) - -## 2.0.0 RC1 - 2020-01-15 -### Fixed -- Hide horizontal scrollbar in Firefox - [#1809](https://github.com/nextcloud/calendar/pull/1809) -- Cannot enter minutes off slot - [#1756](https://github.com/nextcloud/calendar/issues/1756) -- Fix downsizing calendar-grid when making window smaller - [#1806](https://github.com/nextcloud/calendar/pull/1806) -- Always make all-day DTEND exclusive - [#1810](https://github.com/nextcloud/calendar/pull/1810) -- Convert eventRenderer from event to property - [#1807](https://github.com/nextcloud/calendar/pull/1807) -- Fix opening calendar when not logged in - [#1803](https://github.com/nextcloud/calendar/pull/1803) -- Style of today indicator in agendaDay and agendaWeek - [#1804](https://github.com/nextcloud/calendar/issues/1804) -- Fix double-escape of ampersand of settings title - [#1760](https://github.com/nextcloud/calendar/pull/1760) - -### Added -- Editing event-time without punctuation - [#1621](https://github.com/nextcloud/calendar/issues/1621) -- Allow entering incomplete time-values - [#1144](https://github.com/nextcloud/calendar/issues/1144) -- Add reminder icon to events with an alarm - [#1197](https://github.com/nextcloud/calendar/issues/1197) -- Free/Busy UI - [#1731](https://github.com/nextcloud/calendar/pull/1731) -- Event-limit in calendar-grid - [#1800](https://github.com/nextcloud/calendar/pull/1800) -- Add more illustration keywords - [#1780](https://github.com/nextcloud/calendar/pull/1780) -- Create talk rooms from event editor - [#1732](https://github.com/nextcloud/calendar/pull/1732) -- Allow to provide defaults for user-settings - [#1787](https://github.com/nextcloud/calendar/issues/1787) - -## 2.0.0 beta3 - 2019-12-09 -### Fixed -- Hide the resize handler of textareas, whenever we use autosize - [#1629](https://github.com/nextcloud/calendar/pull/1629) -- Give the description field a default height of two rows - [#1630](https://github.com/nextcloud/calendar/pull/1630) -- Hide calendar-picker if user has only one writable calendar - [#1631](https://github.com/nextcloud/calendar/pull/1631) -- Do not show recurrence-summary, when the event is not repeating - [#1632](https://github.com/nextcloud/calendar/pull/1632) -- Update timezone-database to 2019c - [#1635](https://github.com/nextcloud/calendar/pull/1635) -- Replace with @babel/polyfill with core-js - [#1634](https://github.com/nextcloud/calendar/pull/1634) -- Fix delay when toggling the all-day checkbox - [#1637](https://github.com/nextcloud/calendar/pull/1637) -- Fixed missing translatable strings - [#1639](https://github.com/nextcloud/calendar/pull/1639) -- Promise-related error in Firefox (catch is not a function) - [#1633](https://github.com/nextcloud/calendar/issues/1633) -- Shared calendar entry to crowded in the navigation - [#1655](https://github.com/nextcloud/calendar/issues/1655) -- Sharing published link via email doesn't work - [#1640](https://github.com/nextcloud/calendar/issues/1640) -- Order All-day events by calendar - [#760](https://github.com/nextcloud/calendar/issues/769) -- Restructure menu for reminders - [#1638](https://github.com/nextcloud/calendar/pull/1638) -- Do not show Empty message when clicking the search attendee multiselect - [#1699](https://github.com/nextcloud/calendar/pull/1699) -- use FullCalendar navLinks - [#796](https://github.com/nextcloud/calendar/issues/796) -- Replace New Reminder button with Multiselect to allow easier selection of alarm - [#1701](https://github.com/nextcloud/calendar/pull/1701) - -## 2.0.0 beta2 - 2019-11-04 -### Added -- Consider categories for illustrations if title doesn't match any illustration - [#1509](https://github.com/nextcloud/calendar/issues/1509) -- Update Today in calendar-view on day-change - [#678](https://github.com/nextcloud/calendar/issues/678) -- Show warning when detected timezone is UTC - [#711](https://github.com/nextcloud/calendar/issues/711) -- Allow to edit location and description in popover editor, if already set - [#680](https://github.com/nextcloud/calendar/issues/680) -- Better default times when switching from all-day to timed event - [#532](https://github.com/nextcloud/calendar/issues/532) -- Nicer integration of week-number into calendar-view - [#1571](https://github.com/nextcloud/calendar/issues/1571) -- Simpler design for upper part of app navigation - [#1021](https://github.com/nextcloud/calendar/issues/1021) -- Merged calendar-list and subscription list -- Categories - [#107](https://github.com/nextcloud/calendar/issues/107) -- Hide property info in read-only mode - [#1585](https://github.com/nextcloud/calendar/issues/1585) -- Do not show all-day checkbox in read-only mode - [#1589](https://github.com/nextcloud/calendar/issues/1589) -- Add timezone at creation of calendar - [#223](https://github.com/nextcloud/calendar/issues/223) -- Allow to link to event - [#21](https://github.com/nextcloud/calendar/issues/21) - -### Fixed -- Respect the user's locale - [#1569](https://github.com/nextcloud/calendar/issues/1569) -- Mixup of locale and language - [#920](https://github.com/nextcloud/calendar/issues/920) -- Error when selecting visibility in Editor - [#1591](https://github.com/nextcloud/calendar/issues/1591) -- Show private calendars by default if no visibility is set - [#1588](https://github.com/nextcloud/calendar/issues/1588) -- Remove title tag from illustration svg - [#1593](https://github.com/nextcloud/calendar/issues/1593) -- Show more button in upper right corner in popover for read-only events - [#1592](https://github.com/nextcloud/calendar/issues/1592) -- Event details are not transferred from popover to sidebar - [#1590](https://github.com/nextcloud/calendar/issues/1590) - -## 2.0.0 beta1 - 2019-10-21 - -Version 2.0 of the calendar has been fully rewritten with a different technology, switching from the legacy AngularJS framework to Vue.js. Nextcloud is using more and more Vue.js throughout apps and server, which makes it easy to use common components everywhere. This allows faster development and a more coherent experience in all of Nextcloud. - -Even though all features present on the 1.x calendar app versions have been reimplemented, new bugs might have been introduced. Please report them if you find some. - -### Added -- Improved compatibility with dark mode - [#1152](https://github.com/nextcloud/calendar/issues/1152) - [#985](https://github.com/nextcloud/calendar/issues/985) -- Assign random UIDs on import if events don't have one - [#857](https://github.com/nextcloud/calendar/issues/857) -- Use Popper.JS for more reliable positioning of event popover - [#18](https://github.com/nextcloud/calendar/issues/18) -- New design for embedding shared calendars - [#741](https://github.com/nextcloud/calendar/issues/741) -- Share multiple public calendars in one link - [#708](https://github.com/nextcloud/calendar/issues/708) -- Completely rewritten interface for entering recurrence-rules - [#10](https://github.com/nextcloud/calendar/issues/10) -- Improved discoverability of upper-left date-picker - [#881](https://github.com/nextcloud/calendar/issues/881) -- Do not send invites on import - [#576](https://github.com/nextcloud/calendar/issues/576) -- Automatically adjust the start time when user picks new end earlier than start - [#497](https://github.com/nextcloud/calendar/issues/497) -- Prioritize user-addressbook over system users when inviting attendees - [#168](https://github.com/nextcloud/calendar/issues/168) -- Add option to mark user as non-participant - [#570](https://github.com/nextcloud/calendar/issues/570) -- Add subscribe and download button to public sharing menu - [#1263](https://github.com/nextcloud/calendar/issues/1263) -- Make embedded public calendars stylable - [#318](https://github.com/nextcloud/calendar/issues/318) -- Send email notifications on change of location, summary, or description - [#848](https://github.com/nextcloud/calendar/issues/848) -- Add checkbox for birthday calendar in settings, allowing to restore it - [#277](https://github.com/nextcloud/calendar/issues/277) -- Allow to edit only this or this and all future occurrences of an event - [#7](https://github.com/nextcloud/calendar/issues/7) -- Add next/previous month button in top-left datepicker - [#554](https://github.com/nextcloud/calendar/issues/554) -- Show invitation response of attendee - [#879](https://github.com/nextcloud/calendar/issues/879) -- Top-left datepicker allows navigating between years - [#703](https://github.com/nextcloud/calendar/issues/703) -- Limit number of concurrent requests while import - [#445](https://github.com/nextcloud/calendar/issues/445) -- Cleanup VTimezones after editing events - [#37](https://github.com/nextcloud/calendar/issues/37) -- Improved validation of attendee field - [#569](https://github.com/nextcloud/calendar/issues/560) -- Show organizer of event - [#486](https://github.com/nextcloud/calendar/issues/486) -- Improved legibility in read-only mode of editor - [#555](https://github.com/nextcloud/calendar/issues/555) -- Allow to disable weekends - [#536](https://github.com/nextcloud/calendar/issues/536) -- Add button to copy caldav link to clipboard - [#22](https://github.com/nextcloud/calendar/issues/22) -- Show the current date in the browser title - [#280](https://github.com/nextcloud/calendar/issues/280) -- Updated design of sharing mechanism for calendars - [#377](https://github.com/nextcloud/calendar/issues/377) -- Ability to handle multiple VCALENDAR blocks in one ics - [#336](https://github.com/nextcloud/calendar/issues/336) -- Allow to change color of contact birthdays calendar - [#313](https://github.com/nextcloud/calendar/issues/313) -- Use webcals when accessing calendar via https - [#748](https://github.com/nextcloud/calendar/issues/748) -- Use illustrations for events - [#968](https://github.com/nextcloud/calendar/issues/968) - -### Fixed -- User session expiration exceptions - [#1215](https://github.com/nextcloud/calendar/issues/1215) -- Files_sharing app is required as dependency for Sharing - [#608](https://github.com/nextcloud/calendar/issues/608) -- Show original color of publicly shared calendars - [#619](https://github.com/nextcloud/calendar/issues/619) -- Allow events with start time equal to end time - [#790](https://github.com/nextcloud/calendar/issues/790) -- Missing interaction of import-button - [#1374](https://github.com/nextcloud/calendar/issues/1374) -- Sharing list takes too long to show - [#1297](https://github.com/nextcloud/calendar/issues/1297) -- Wrong profile picture when searching for user in share dialog - [#861](https://github.com/nextcloud/calendar/issues/861) -- Properly update LAST-MODIFIED and SEQUENCE on update of calendar - [#976](https://github.com/nextcloud/calendar/issues/976) -- Drag and Drop failed after viewing event details - [#914](https://github.com/nextcloud/calendar/issues/914) -- Selected view was not sticky - [#809](https://github.com/nextcloud/calendar/issues/809) -- Non-unique Id in HTML - [#860](https://github.com/nextcloud/calendar/issues/860) -- X-NC-GROUP-ID was not properly removed - [#342](https://github.com/nextcloud/calendar/issues/342) -- Fields in repeat area are not disabled in read-only in Edge - [#420](https://github.com/nextcloud/calendar/issues/420) -- Store CREATED, DTSTAMP, and LAST-MODIFIED as UTC - [#33](https://github.com/nextcloud/calendar/issues/33) -- Same attendee could be added multiple times - [#575](https://github.com/nextcloud/calendar/issues/575) -- Impossible to scroll down to save event on certain mobile devices - [#1079](https://github.com/nextcloud/calendar/issues/1079) - -### Changes -- New calendars only support VEvent from now on - [#1316](https://github.com/nextcloud/calendar/issues/1316) - - -## 1.7.1 - 2019-09-05 -### Fixed -- Falses positives for local access rules [#1277](https://github.com/nextcloud/calendar/issues/1277) -- Always show border on calendar item [#1298](https://github.com/nextcloud/calendar/pull/1298) -- Update link to documentation [#1409](https://github.com/nextcloud/calendar/pull/1409) -- Don’t ship special build for IE anymore [#1447](https://github.com/nextcloud/calendar/pull/1447) - -## 1.7.0 - 2019-03-25 -### Added -- Share calendars with circles - [#602](https://github.com/nextcloud/calendar/pull/602) - -### Fixed -- compatibility with Nextcloud 16 -- Buttons not visible in dark theme - [#1042](https://github.com/nextcloud/calendar/issues/1042) -- Fix datepicker alignment - [#1085](https://github.com/nextcloud/calendar/pull/1085) - -## 1.6.4 - 2018-11-23 -### Fixed -- Use clearer color to easier locate today - [#850](https://github.com/nextcloud/calendar/pull/850) -- Styling broken with Nextcloud 14 using Dark theme - [#938](https://github.com/nextcloud/calendar/issues/938) -- Missing name when using the dropdown for location -> contacts - [#776](https://github.com/nextcloud/calendar/issues/776) -- Public calendar iframe has issues on some browser (requires Nextcloud 15+) - [#169](https://github.com/nextcloud/calendar/issues/169) -- Broken positioning of New calendar button in Internet explorer 11 - [#949](https://github.com/nextcloud/calendar/pull/949) -- Provide autocompletion addresses as a single line - [#933](https://github.com/nextcloud/calendar/issues/933) - -## 1.6.3 - 2018-10-16 -### Fixed -- Incorrect creation of attendees that led to duplicate entries after invitation response -- updated translations - -## 1.6.2 - 2018-09-05 -### Fixed -- compatibility with Nextcloud 14 -- updated translations - -## 1.6.1 - 2018-03-06 -### Fixed -- Double the height of the description textarea - [#675](https://github.com/nextcloud/calendar/issues/675) -- Fix parsing for all-day VEvents that - [#692](https://github.com/nextcloud/calendar/issues/692) -- Manual override for timezone - [#586](https://github.com/nextcloud/calendar/issues/586) -- Improved error handling for parsing of events when importing - [#598](https://github.com/nextcloud/calendar/issues/598) -- Fix correct highlighting of today on weekends - [#726](https://github.com/nextcloud/calendar/issues/726) -- Fix handling of VEvents that contain only Recurrence-IDs - [#722](https://github.com/nextcloud/calendar/issues/722) - -## 1.6.0 - 2018-02-05 -### Fixed -- Compatibility with 13 -- Enter in new attendee field closes sidebar - [#502](https://github.com/nextcloud/calendar/issues/502) -- Displayname is missing on public sharing site - [#596](https://github.com/nextcloud/calendar/issues/596) -- Small / short dates not usable in any agenda view - [#221](https://github.com/nextcloud/calendar/issues/221) -- Missing 'Nextcloud' logo when accessing shared calendar - [#571](https://github.com/nextcloud/calendar/issues/571) - -### Informational: -- Shortcut changed: The events editor can be closed with CTRL / CMD + Enter now -- 1.6.0 does not support Nextcloud 12 and below, the 1.5 tree will be maintained till Nextcloud 12 is end of life - -## 1.5.7 - 2017-12-08 -### Fixed -- Issue with displaying wrong year in upper left corner for certain cases - [#434](https://github.com/nextcloud/calendar/issues/434) -- Don't allow importing events with the same UID in a calendar - [#589](https://github.com/nextcloud/calendar/issues/589) -- Show warning about email reminders not being implemented in the server yet - [#676](https://github.com/nextcloud/calendar/pull/676) -- Double escaping of alarm types in the event editor - [#269](https://github.com/nextcloud/calendar/issues/269) - -## 1.5.6 - 2017-10-18 -### Fixed -- Issue with sharing read-write with users - [#606](https://github.com/nextcloud/calendar/issues/606) - -## 1.5.5 - 2017-09-19 -### Fixed -- Remove invalid signed signature from release - -## 1.5.4 - 2017-09-12 -### Fixed -- Wrong timezone for Europe/Moscow - [#82](https://github.com/nextcloud/calendar/issues/82) -- Double scrollbar in advanced event editor - [#468](https://github.com/nextcloud/calendar/pull/468) -- Show displayname when creating a new calendar share - [#459](https://github.com/nextcloud/calendar/issues/459) -- Better looking public-share notification emails on Nextcloud 12 - [#427](https://github.com/nextcloud/calendar/issues/427) -- Readable public sharing links - [#239](https://github.com/nextcloud/calendar/issues/239) -- Today button overlapped with new calendar button in some localizations - [#312](https://github.com/nextcloud/calendar/issues/312) -- Respect admin option to disable public sharing - [#525](https://github.com/nextcloud/calendar/issues/525) -- Highlight current day in left sidebar datepicker - [#513](https://github.com/nextcloud/calendar/issues/513) -- mispositioned buttons on public sharing site (only affected Nextcloud 11) - [#509](https://github.com/nextcloud/calendar/issues/509) -- Fix checkbox style for attendee input - [#580](https://github.com/nextcloud/calendar/pull/580) -- Spelling fixes - [#469](https://github.com/nextcloud/calendar/pull/469) - [#473](https://github.com/nextcloud/calendar/pull/473) - [#474](https://github.com/nextcloud/calendar/pull/474) - -## 1.5.3 - 2017-05-21 -### Added -- allow editing props of shared calendars (Nextcloud 12 and above only) - [#406](https://github.com/nextcloud/calendar/issues/406) -- add avatar to sharing list - [#207](https://github.com/nextcloud/calendar/issues/207) -- effort to get rid of adblocker issues - [#417](https://github.com/nextcloud/calendar/pull/417) -- color weekends slightly darker - [#430](https://github.com/nextcloud/calendar/pull/430) - -### Fixed -- fix visual deletion of user shares - [#378](https://github.com/nextcloud/calendar/issues/378) -- make sure the user can not set the end to something earlier than the start - [#11](https://github.com/nextcloud/calendar/issues/11) -- increased font-size of calendar-view - [#166](https://github.com/nextcloud/calendar/issues/166) -- sanitize missing VALUE=DATE when parsing ics data - [#376](https://github.com/nextcloud/calendar/issues/376) -- fix visibility of import progressbar - [#423](https://github.com/nextcloud/calendar/issues/423) -- properly display errors when querying events failed - [#359](https://github.com/nextcloud/calendar/issues/359) -- increase ending time by an hour also when clicking on disabled time-input - [#438](https://github.com/nextcloud/calendar/issues/438) -- improve visibility of vertical calendar grid - [#314](https://github.com/nextcloud/calendar/issues/314) -- hide sharing actions for sharees (Nextcloud 12 and above only) - [#432](https://github.com/nextcloud/calendar/issues/432) -- allow clicking on disabled time-input in sidebar (only affected Firefox) - [#388](https://github.com/nextcloud/calendar/issues/388) -- fixed issue with chinese characters showing up in estonian language - [#264](https://github.com/nextcloud/calendar/issues/264) -- fixed handling of Recurrence-ID - [#142](https://github.com/nextcloud/calendar/issues/142) -- fixed and unified timepicker layout in editor popover and editor sidebar - [#72](https://github.com/nextcloud/calendar/issues/72) -- improved visibility of current-day color - [#395](https://github.com/nextcloud/calendar/pull/395) -- fix issue with too long webcal urls - [#325](https://github.com/nextcloud/calendar/issues/325) -- show proper empty content view for non-existing public calendar links - [#240](https://github.com/nextcloud/calendar/issues/240) -- refactored public calendar links page - [#243](https://github.com/nextcloud/calendar/issues/243) -- fixed position of mobile menu on public calendar link page - [#248](https://github.com/nextcloud/calendar/issues/248) - -## 1.5.2 - 2017-03-21 -### Fixed -- fixed issue with "three-part-timezone" like America/Argentina/Buenos_Aires - [#358](https://github.com/nextcloud/calendar/issues/358) - -## 1.5.1 - 2017-02-28 -### Added -- advanced color-picker - [#4](https://github.com/nextcloud/calendar/issues/4) -- support for Internet Explorer 11 - [#329](https://github.com/nextcloud/calendar/pull/329) -- added second step for deleting calendars - [#341](https://github.com/nextcloud/calendar/issues/341) - -### Fixed -- debounce vertical window resize - [#23](https://github.com/nextcloud/calendar/issues/23) -- fix phrasing on public sharing site - [#233](https://github.com/nextcloud/calendar/issues/233) -- fix missing am/pm label in timepicker - [#345](https://github.com/nextcloud/calendar/issues/345) - -## 1.5.0 - 2017-01-17 -### Added -- enable calendar when selecting it in editor - [#24](https://github.com/nextcloud/calendar/issues/24) -- autoresize input for title, description and location - [#72](https://github.com/nextcloud/calendar/issues/72) -- disable all-day when clicking on time-input - [#72](https://github.com/nextcloud/calendar/issues/72) -- save 301 responses from webcal subscriptions - [#42](https://github.com/nextcloud/calendar/issues/42) -- add web-based protocol handlers for WebCAL - [#41](https://github.com/nextcloud/calendar/issues/41) -- better tabindex for event editors - [#25](https://github.com/nextcloud/calendar/issues/25) -- lazy load timezones when rendering events - [#14](https://github.com/nextcloud/calendar/issues/14) -- hide sidepanel on print view -- replace TRIGGER:P with TRIGGER:P0D - [#251](https://github.com/nextcloud/calendar/issues/251) - -### Fixed -- Require sharing api for creating new shares - [#205](https://github.com/nextcloud/calendar/issues/205) -- Importing empty calendars - [#194](https://github.com/nextcloud/calendar/issues/194) -- List app in office category -- fix sending the RSVP parameter for attendees - [#102](https://github.com/nextcloud/calendar/issues/102) -- fix styling issue with too long group names / too long translations - [#99](https://github.com/nextcloud/calendar/issues/99) -- fix capitalization of Settings & import -- fix icon share padding -- fix glitchy looking whitespace in event details - [#242](https://github.com/nextcloud/calendar/issues/242) - -## 1.4.1 - 2016-11-22 -### Fixed -- more consistent styles with Nextcloud -- fixed scrolling of calendar-list -- added details tab in sidebar -- improved ARIA support -- publishing calendars (requires Nextcloud 11) -- removed eventLimit, all events will be displayed in month view -- better border styles for calendar grid to enhance usability -- fixed drag and drop between grid and allday area -- fixed issue that prevented users from creating events in UTC -- fixed issue with expanding repeating events on first day of week -- expand settings area on first run -- sanitize malformed dates, fixes compatibility with FB birthday webcal -- attendee: show email address when user has multiple email addresses - -## 1.4.0 - 2016-09-19 -### Added -- WebCal -- Random color picker -- Display week numbers - -### Fixed -- Delete alarms from events -- Adjusted colors to Nextcloud -- Properly display line breaks in agenda views diff --git a/CHANGELOG.md.license b/CHANGELOG.md.license new file mode 100644 index 0000000000000000000000000000000000000000..0707742139cf66e7ddf2093327bb47fd1874e02e --- /dev/null +++ b/CHANGELOG.md.license @@ -0,0 +1,3 @@ +SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors +SPDX-FileCopyrightText: 2014-2026 ownCloud, Inc. +SPDX-License-Identifier: AGPL-3.0-or-later diff --git a/LICENSES/AGPL-3.0-or-later.txt b/LICENSES/AGPL-3.0-or-later.txt new file mode 100644 index 0000000000000000000000000000000000000000..0c97efd25b5974b974ed9a8a18207bc4f55bb338 --- /dev/null +++ b/LICENSES/AGPL-3.0-or-later.txt @@ -0,0 +1,235 @@ +GNU AFFERO GENERAL PUBLIC LICENSE +Version 3, 19 November 2007 + +Copyright (C) 2007 Free Software Foundation, Inc. + +Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. + + Preamble + +The GNU Affero General Public License is a free, copyleft license for software and other kinds of works, specifically designed to ensure cooperation with the community in the case of network server software. + +The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, our General Public Licenses are intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. + +When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. + +Developers that use our General Public Licenses protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License which gives you legal permission to copy, distribute and/or modify the software. + +A secondary benefit of defending all users' freedom is that improvements made in alternate versions of the program, if they receive widespread use, become available for other developers to incorporate. Many developers of free software are heartened and encouraged by the resulting cooperation. However, in the case of software used on network servers, this result may fail to come about. The GNU General Public License permits making a modified version and letting the public access it on a server without ever releasing its source code to the public. + +The GNU Affero General Public License is designed specifically to ensure that, in such cases, the modified source code becomes available to the community. It requires the operator of a network server to provide the source code of the modified version running there to the users of that server. Therefore, public use of a modified version, on a publicly accessible server, gives the public access to the source code of the modified version. + +An older license, called the Affero General Public License and published by Affero, was designed to accomplish similar goals. This is a different license, not a version of the Affero GPL, but Affero has released a new version of the Affero GPL which permits relicensing under this license. + +The precise terms and conditions for copying, distribution and modification follow. + + TERMS AND CONDITIONS + +0. Definitions. + +"This License" refers to version 3 of the GNU Affero General Public License. + +"Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. + +"The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. + +To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. + +A "covered work" means either the unmodified Program or a work based on the Program. + +To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. + +To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. + +An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. + +1. Source Code. +The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. + +A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. + +The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. + +The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those +subprograms and other parts of the work. + +The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. + +The Corresponding Source for a work in source code form is that same work. + +2. Basic Permissions. +All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. + +You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. + +Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. + +3. Protecting Users' Legal Rights From Anti-Circumvention Law. +No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. + +When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. + +4. Conveying Verbatim Copies. +You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. + +You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. + +5. Conveying Modified Source Versions. +You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". + + c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. + +A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. + +6. Conveying Non-Source Forms. +You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: + + a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. + + d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. + +A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. + +A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. + +"Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. + +If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). + +The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. + +Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. + +7. Additional Terms. +"Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. + +When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. + +Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or authors of the material; or + + e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. + +All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. + +If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. + +Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. + +8. Termination. + +You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). + +However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. + +Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. + +Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. + +9. Acceptance Not Required for Having Copies. + +You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. + +10. Automatic Licensing of Downstream Recipients. + +Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. + +An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. + +You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. + +11. Patents. + +A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". + +A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. + +Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. + +In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. + +If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. + +If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. + +A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. + +Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. + +12. No Surrender of Others' Freedom. + +If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. + +13. Remote Network Interaction; Use with the GNU General Public License. + +Notwithstanding any other provision of this License, if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network (if your version supports such interaction) an opportunity to receive the Corresponding Source of your version by providing access to the Corresponding Source from a network server at no charge, through some standard or customary means of facilitating copying of software. This Corresponding Source shall include the Corresponding Source for any work covered by version 3 of the GNU General Public License that is incorporated pursuant to the following paragraph. + +Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the work with which it is combined will remain governed by version 3 of the GNU General Public License. + +14. Revised Versions of this License. + +The Free Software Foundation may publish revised and/or new versions of the GNU Affero General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU Affero General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU Affero General Public License, you may choose any version ever published by the Free Software Foundation. + +If the Program specifies that a proxy can decide which future versions of the GNU Affero General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. + +Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. + +15. Disclaimer of Warranty. + +THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +16. Limitation of Liability. + +IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +17. Interpretation of Sections 15 and 16. + +If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. + +END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + +If your software can interact with users remotely through a computer network, you should also make sure that it provides a way for users to get its source. For example, if your program is a web application, its interface could display a "Source" link that leads users to an archive of the code. There are many ways you could offer source, and different solutions will be better for different programs; see section 13 for the specific requirements. + +You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU AGPL, see . diff --git a/LICENSES/Apache-2.0.txt b/LICENSES/Apache-2.0.txt new file mode 100644 index 0000000000000000000000000000000000000000..137069b823873b8bcf42979bcf8e9371052d26a2 --- /dev/null +++ b/LICENSES/Apache-2.0.txt @@ -0,0 +1,73 @@ +Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + +"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. + +"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. + +"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. + +"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. + +"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. + +"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. + +"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). + +"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. + +"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." + +"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: + + (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. + + You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + +To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/LICENSES/CC-BY-SA-4.0.txt b/LICENSES/CC-BY-SA-4.0.txt new file mode 100644 index 0000000000000000000000000000000000000000..835a6836b385fa068fdd625685548845cda60c2f --- /dev/null +++ b/LICENSES/CC-BY-SA-4.0.txt @@ -0,0 +1,170 @@ +Creative Commons Attribution-ShareAlike 4.0 International + + Creative Commons Corporation (“Creative Commons”) is not a law firm and does not provide legal services or legal advice. Distribution of Creative Commons public licenses does not create a lawyer-client or other relationship. Creative Commons makes its licenses and related information available on an “as-is” basis. Creative Commons gives no warranties regarding its licenses, any material licensed under their terms and conditions, or any related information. Creative Commons disclaims all liability for damages resulting from their use to the fullest extent possible. + +Using Creative Commons Public Licenses + +Creative Commons public licenses provide a standard set of terms and conditions that creators and other rights holders may use to share original works of authorship and other material subject to copyright and certain other rights specified in the public license below. The following considerations are for informational purposes only, are not exhaustive, and do not form part of our licenses. + +Considerations for licensors: Our public licenses are intended for use by those authorized to give the public permission to use material in ways otherwise restricted by copyright and certain other rights. Our licenses are irrevocable. Licensors should read and understand the terms and conditions of the license they choose before applying it. Licensors should also secure all rights necessary before applying our licenses so that the public can reuse the material as expected. Licensors should clearly mark any material not subject to the license. This includes other CC-licensed material, or material used under an exception or limitation to copyright. More considerations for licensors. + +Considerations for the public: By using one of our public licenses, a licensor grants the public permission to use the licensed material under specified terms and conditions. If the licensor’s permission is not necessary for any reason–for example, because of any applicable exception or limitation to copyright–then that use is not regulated by the license. Our licenses grant only permissions under copyright and certain other rights that a licensor has authority to grant. Use of the licensed material may still be restricted for other reasons, including because others have copyright or other rights in the material. A licensor may make special requests, such as asking that all changes be marked or described. + +Although not required by our licenses, you are encouraged to respect those requests where reasonable. More considerations for the public. + +Creative Commons Attribution-ShareAlike 4.0 International Public License + +By exercising the Licensed Rights (defined below), You accept and agree to be bound by the terms and conditions of this Creative Commons Attribution-ShareAlike 4.0 International Public License ("Public License"). To the extent this Public License may be interpreted as a contract, You are granted the Licensed Rights in consideration of Your acceptance of these terms and conditions, and the Licensor grants You such rights in consideration of benefits the Licensor receives from making the Licensed Material available under these terms and conditions. + +Section 1 – Definitions. + + a. Adapted Material means material subject to Copyright and Similar Rights that is derived from or based upon the Licensed Material and in which the Licensed Material is translated, altered, arranged, transformed, or otherwise modified in a manner requiring permission under the Copyright and Similar Rights held by the Licensor. For purposes of this Public License, where the Licensed Material is a musical work, performance, or sound recording, Adapted Material is always produced where the Licensed Material is synched in timed relation with a moving image. + + b. Adapter's License means the license You apply to Your Copyright and Similar Rights in Your contributions to Adapted Material in accordance with the terms and conditions of this Public License. + + c. BY-SA Compatible License means a license listed at creativecommons.org/compatiblelicenses, approved by Creative Commons as essentially the equivalent of this Public License. + + d. Copyright and Similar Rights means copyright and/or similar rights closely related to copyright including, without limitation, performance, broadcast, sound recording, and Sui Generis Database Rights, without regard to how the rights are labeled or categorized. For purposes of this Public License, the rights specified in Section 2(b)(1)-(2) are not Copyright and Similar Rights. + + e. Effective Technological Measures means those measures that, in the absence of proper authority, may not be circumvented under laws fulfilling obligations under Article 11 of the WIPO Copyright Treaty adopted on December 20, 1996, and/or similar international agreements. + + f. Exceptions and Limitations means fair use, fair dealing, and/or any other exception or limitation to Copyright and Similar Rights that applies to Your use of the Licensed Material. + + g. License Elements means the license attributes listed in the name of a Creative Commons Public License. The License Elements of this Public License are Attribution and ShareAlike. + + h. Licensed Material means the artistic or literary work, database, or other material to which the Licensor applied this Public License. + + i. Licensed Rights means the rights granted to You subject to the terms and conditions of this Public License, which are limited to all Copyright and Similar Rights that apply to Your use of the Licensed Material and that the Licensor has authority to license. + + j. Licensor means the individual(s) or entity(ies) granting rights under this Public License. + + k. Share means to provide material to the public by any means or process that requires permission under the Licensed Rights, such as reproduction, public display, public performance, distribution, dissemination, communication, or importation, and to make material available to the public including in ways that members of the public may access the material from a place and at a time individually chosen by them. + + l. Sui Generis Database Rights means rights other than copyright resulting from Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, as amended and/or succeeded, as well as other essentially equivalent rights anywhere in the world. + + m. You means the individual or entity exercising the Licensed Rights under this Public License. Your has a corresponding meaning. + +Section 2 – Scope. + + a. License grant. + + 1. Subject to the terms and conditions of this Public License, the Licensor hereby grants You a worldwide, royalty-free, non-sublicensable, non-exclusive, irrevocable license to exercise the Licensed Rights in the Licensed Material to: + + A. reproduce and Share the Licensed Material, in whole or in part; and + + B. produce, reproduce, and Share Adapted Material. + + 2. Exceptions and Limitations. For the avoidance of doubt, where Exceptions and Limitations apply to Your use, this Public License does not apply, and You do not need to comply with its terms and conditions. + + 3. Term. The term of this Public License is specified in Section 6(a). + + 4. Media and formats; technical modifications allowed. The Licensor authorizes You to exercise the Licensed Rights in all media and formats whether now known or hereafter created, and to make technical modifications necessary to do so. The Licensor waives and/or agrees not to assert any right or authority to forbid You from making technical modifications necessary to exercise the Licensed Rights, including technical modifications necessary to circumvent Effective Technological Measures. For purposes of this Public License, simply making modifications authorized by this Section 2(a)(4) never produces Adapted Material. + + 5. Downstream recipients. + + A. Offer from the Licensor – Licensed Material. Every recipient of the Licensed Material automatically receives an offer from the Licensor to exercise the Licensed Rights under the terms and conditions of this Public License. + + B. Additional offer from the Licensor – Adapted Material. Every recipient of Adapted Material from You automatically receives an offer from the Licensor to exercise the Licensed Rights in the Adapted Material under the conditions of the Adapter’s License You apply. + + C. No downstream restrictions. You may not offer or impose any additional or different terms or conditions on, or apply any Effective Technological Measures to, the Licensed Material if doing so restricts exercise of the Licensed Rights by any recipient of the Licensed Material. + + 6. No endorsement. Nothing in this Public License constitutes or may be construed as permission to assert or imply that You are, or that Your use of the Licensed Material is, connected with, or sponsored, endorsed, or granted official status by, the Licensor or others designated to receive attribution as provided in Section 3(a)(1)(A)(i). + + b. Other rights. + + 1. Moral rights, such as the right of integrity, are not licensed under this Public License, nor are publicity, privacy, and/or other similar personality rights; however, to the extent possible, the Licensor waives and/or agrees not to assert any such rights held by the Licensor to the limited extent necessary to allow You to exercise the Licensed Rights, but not otherwise. + + 2. Patent and trademark rights are not licensed under this Public License. + + 3. To the extent possible, the Licensor waives any right to collect royalties from You for the exercise of the Licensed Rights, whether directly or through a collecting society under any voluntary or waivable statutory or compulsory licensing scheme. In all other cases the Licensor expressly reserves any right to collect such royalties. + +Section 3 – License Conditions. + +Your exercise of the Licensed Rights is expressly made subject to the following conditions. + + a. Attribution. + + 1. If You Share the Licensed Material (including in modified form), You must: + + A. retain the following if it is supplied by the Licensor with the Licensed Material: + + i. identification of the creator(s) of the Licensed Material and any others designated to receive attribution, in any reasonable manner requested by the Licensor (including by pseudonym if designated); + + ii. a copyright notice; + + iii. a notice that refers to this Public License; + + iv. a notice that refers to the disclaimer of warranties; + + v. a URI or hyperlink to the Licensed Material to the extent reasonably practicable; + + B. indicate if You modified the Licensed Material and retain an indication of any previous modifications; and + + C. indicate the Licensed Material is licensed under this Public License, and include the text of, or the URI or hyperlink to, this Public License. + + 2. You may satisfy the conditions in Section 3(a)(1) in any reasonable manner based on the medium, means, and context in which You Share the Licensed Material. For example, it may be reasonable to satisfy the conditions by providing a URI or hyperlink to a resource that includes the required information. + + 3. If requested by the Licensor, You must remove any of the information required by Section 3(a)(1)(A) to the extent reasonably practicable. + + b. ShareAlike.In addition to the conditions in Section 3(a), if You Share Adapted Material You produce, the following conditions also apply. + + 1. The Adapter’s License You apply must be a Creative Commons license with the same License Elements, this version or later, or a BY-SA Compatible License. + + 2. You must include the text of, or the URI or hyperlink to, the Adapter's License You apply. You may satisfy this condition in any reasonable manner based on the medium, means, and context in which You Share Adapted Material. + + 3. You may not offer or impose any additional or different terms or conditions on, or apply any Effective Technological Measures to, Adapted Material that restrict exercise of the rights granted under the Adapter's License You apply. + +Section 4 – Sui Generis Database Rights. + +Where the Licensed Rights include Sui Generis Database Rights that apply to Your use of the Licensed Material: + + a. for the avoidance of doubt, Section 2(a)(1) grants You the right to extract, reuse, reproduce, and Share all or a substantial portion of the contents of the database; + + b. if You include all or a substantial portion of the database contents in a database in which You have Sui Generis Database Rights, then the database in which You have Sui Generis Database Rights (but not its individual contents) is Adapted Material, including for purposes of Section 3(b); and + + c. You must comply with the conditions in Section 3(a) if You Share all or a substantial portion of the contents of the database. +For the avoidance of doubt, this Section 4 supplements and does not replace Your obligations under this Public License where the Licensed Rights include other Copyright and Similar Rights. + +Section 5 – Disclaimer of Warranties and Limitation of Liability. + + a. Unless otherwise separately undertaken by the Licensor, to the extent possible, the Licensor offers the Licensed Material as-is and as-available, and makes no representations or warranties of any kind concerning the Licensed Material, whether express, implied, statutory, or other. This includes, without limitation, warranties of title, merchantability, fitness for a particular purpose, non-infringement, absence of latent or other defects, accuracy, or the presence or absence of errors, whether or not known or discoverable. Where disclaimers of warranties are not allowed in full or in part, this disclaimer may not apply to You. + + b. To the extent possible, in no event will the Licensor be liable to You on any legal theory (including, without limitation, negligence) or otherwise for any direct, special, indirect, incidental, consequential, punitive, exemplary, or other losses, costs, expenses, or damages arising out of this Public License or use of the Licensed Material, even if the Licensor has been advised of the possibility of such losses, costs, expenses, or damages. Where a limitation of liability is not allowed in full or in part, this limitation may not apply to You. + + c. The disclaimer of warranties and limitation of liability provided above shall be interpreted in a manner that, to the extent possible, most closely approximates an absolute disclaimer and waiver of all liability. + +Section 6 – Term and Termination. + + a. This Public License applies for the term of the Copyright and Similar Rights licensed here. However, if You fail to comply with this Public License, then Your rights under this Public License terminate automatically. + + b. Where Your right to use the Licensed Material has terminated under Section 6(a), it reinstates: + + 1. automatically as of the date the violation is cured, provided it is cured within 30 days of Your discovery of the violation; or + + 2. upon express reinstatement by the Licensor. + + c. For the avoidance of doubt, this Section 6(b) does not affect any right the Licensor may have to seek remedies for Your violations of this Public License. + + d. For the avoidance of doubt, the Licensor may also offer the Licensed Material under separate terms or conditions or stop distributing the Licensed Material at any time; however, doing so will not terminate this Public License. + + e. Sections 1, 5, 6, 7, and 8 survive termination of this Public License. + +Section 7 – Other Terms and Conditions. + + a. The Licensor shall not be bound by any additional or different terms or conditions communicated by You unless expressly agreed. + + b. Any arrangements, understandings, or agreements regarding the Licensed Material not stated herein are separate from and independent of the terms and conditions of this Public License. + +Section 8 – Interpretation. + + a. For the avoidance of doubt, this Public License does not, and shall not be interpreted to, reduce, limit, restrict, or impose conditions on any use of the Licensed Material that could lawfully be made without permission under this Public License. + + b. To the extent possible, if any provision of this Public License is deemed unenforceable, it shall be automatically reformed to the minimum extent necessary to make it enforceable. If the provision cannot be reformed, it shall be severed from this Public License without affecting the enforceability of the remaining terms and conditions. + + c. No term or condition of this Public License will be waived and no failure to comply consented to unless expressly agreed to by the Licensor. + + d. Nothing in this Public License constitutes or may be interpreted as a limitation upon, or waiver of, any privileges and immunities that apply to the Licensor or You, including from the legal processes of any jurisdiction or authority. + +Creative Commons is not a party to its public licenses. Notwithstanding, Creative Commons may elect to apply one of its public licenses to material it publishes and in those instances will be considered the “Licensor.” Except for the limited purpose of indicating that material is shared under a Creative Commons public license or as otherwise permitted by the Creative Commons policies published at creativecommons.org/policies, Creative Commons does not authorize the use of the trademark “Creative Commons” or any other trademark or logo of Creative Commons without its prior written consent including, without limitation, in connection with any unauthorized modifications to any of its public licenses or any other arrangements, understandings, or agreements concerning use of licensed material. For the avoidance of doubt, this paragraph does not form part of the public licenses. + +Creative Commons may be contacted at creativecommons.org. diff --git a/LICENSES/CC0-1.0.txt b/LICENSES/CC0-1.0.txt new file mode 100644 index 0000000000000000000000000000000000000000..0e259d42c996742e9e3cba14c677129b2c1b6311 --- /dev/null +++ b/LICENSES/CC0-1.0.txt @@ -0,0 +1,121 @@ +Creative Commons Legal Code + +CC0 1.0 Universal + + CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE + LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN + ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS + INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES + REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS + PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM + THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED + HEREUNDER. + +Statement of Purpose + +The laws of most jurisdictions throughout the world automatically confer +exclusive Copyright and Related Rights (defined below) upon the creator +and subsequent owner(s) (each and all, an "owner") of an original work of +authorship and/or a database (each, a "Work"). + +Certain owners wish to permanently relinquish those rights to a Work for +the purpose of contributing to a commons of creative, cultural and +scientific works ("Commons") that the public can reliably and without fear +of later claims of infringement build upon, modify, incorporate in other +works, reuse and redistribute as freely as possible in any form whatsoever +and for any purposes, including without limitation commercial purposes. +These owners may contribute to the Commons to promote the ideal of a free +culture and the further production of creative, cultural and scientific +works, or to gain reputation or greater distribution for their Work in +part through the use and efforts of others. + +For these and/or other purposes and motivations, and without any +expectation of additional consideration or compensation, the person +associating CC0 with a Work (the "Affirmer"), to the extent that he or she +is an owner of Copyright and Related Rights in the Work, voluntarily +elects to apply CC0 to the Work and publicly distribute the Work under its +terms, with knowledge of his or her Copyright and Related Rights in the +Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be +protected by copyright and related or neighboring rights ("Copyright and +Related Rights"). Copyright and Related Rights include, but are not +limited to, the following: + + i. the right to reproduce, adapt, distribute, perform, display, + communicate, and translate a Work; + ii. moral rights retained by the original author(s) and/or performer(s); +iii. publicity and privacy rights pertaining to a person's image or + likeness depicted in a Work; + iv. rights protecting against unfair competition in regards to a Work, + subject to the limitations in paragraph 4(a), below; + v. rights protecting the extraction, dissemination, use and reuse of data + in a Work; + vi. database rights (such as those arising under Directive 96/9/EC of the + European Parliament and of the Council of 11 March 1996 on the legal + protection of databases, and under any national implementation + thereof, including any amended or successor version of such + directive); and +vii. other similar, equivalent or corresponding rights throughout the + world based on applicable law or treaty, and any national + implementations thereof. + +2. Waiver. To the greatest extent permitted by, but not in contravention +of, applicable law, Affirmer hereby overtly, fully, permanently, +irrevocably and unconditionally waives, abandons, and surrenders all of +Affirmer's Copyright and Related Rights and associated claims and causes +of action, whether now known or unknown (including existing as well as +future claims and causes of action), in the Work (i) in all territories +worldwide, (ii) for the maximum duration provided by applicable law or +treaty (including future time extensions), (iii) in any current or future +medium and for any number of copies, and (iv) for any purpose whatsoever, +including without limitation commercial, advertising or promotional +purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each +member of the public at large and to the detriment of Affirmer's heirs and +successors, fully intending that such Waiver shall not be subject to +revocation, rescission, cancellation, termination, or any other legal or +equitable action to disrupt the quiet enjoyment of the Work by the public +as contemplated by Affirmer's express Statement of Purpose. + +3. Public License Fallback. Should any part of the Waiver for any reason +be judged legally invalid or ineffective under applicable law, then the +Waiver shall be preserved to the maximum extent permitted taking into +account Affirmer's express Statement of Purpose. In addition, to the +extent the Waiver is so judged Affirmer hereby grants to each affected +person a royalty-free, non transferable, non sublicensable, non exclusive, +irrevocable and unconditional license to exercise Affirmer's Copyright and +Related Rights in the Work (i) in all territories worldwide, (ii) for the +maximum duration provided by applicable law or treaty (including future +time extensions), (iii) in any current or future medium and for any number +of copies, and (iv) for any purpose whatsoever, including without +limitation commercial, advertising or promotional purposes (the +"License"). The License shall be deemed effective as of the date CC0 was +applied by Affirmer to the Work. Should any part of the License for any +reason be judged legally invalid or ineffective under applicable law, such +partial invalidity or ineffectiveness shall not invalidate the remainder +of the License, and in such case Affirmer hereby affirms that he or she +will not (i) exercise any of his or her remaining Copyright and Related +Rights in the Work or (ii) assert any associated claims and causes of +action with respect to the Work, in either case contrary to Affirmer's +express Statement of Purpose. + +4. Limitations and Disclaimers. + + a. No trademark or patent rights held by Affirmer are waived, abandoned, + surrendered, licensed or otherwise affected by this document. + b. Affirmer offers the Work as-is and makes no representations or + warranties of any kind concerning the Work, express, implied, + statutory or otherwise, including without limitation warranties of + title, merchantability, fitness for a particular purpose, non + infringement, or the absence of latent or other defects, accuracy, or + the present or absence of errors, whether or not discoverable, all to + the greatest extent permissible under applicable law. + c. Affirmer disclaims responsibility for clearing rights of other persons + that may apply to the Work or any use thereof, including without + limitation any person's Copyright and Related Rights in the Work. + Further, Affirmer disclaims responsibility for obtaining any necessary + consents, permissions or other rights required for any use of the + Work. + d. Affirmer understands and acknowledges that Creative Commons is not a + party to this document and has no duty or obligation with respect to + this CC0 or use of the Work. diff --git a/LICENSES/MIT.txt b/LICENSES/MIT.txt new file mode 100644 index 0000000000000000000000000000000000000000..2071b23b0e08594ea6bc99ac71129ef992abf498 --- /dev/null +++ b/LICENSES/MIT.txt @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/Makefile b/Makefile deleted file mode 100644 index 7cc29e20d7c385ccd1fc385a9db7b029dc9aa86f..0000000000000000000000000000000000000000 --- a/Makefile +++ /dev/null @@ -1,67 +0,0 @@ -# This file is licensed under the Affero General Public License version 3 or -# later. See the COPYING file. - -all: dev-setup lint build-js-production test test-php - -# Dev env management -dev-setup: clean npm-init - -npm-init: - npm ci - -composer-init: - composer install --prefer-dist - composer update --prefer-dist - -npm-update: - npm update - -# Building -build-js: - npm run dev - -build-js-production: - npm run build - -watch-js: - npm run watch - -# Testing -test: - npm run test - -test-watch: - npm run test:watch - -test-coverage: - npm run test:coverage - -test-php: - phpunit -c phpunit.xml - phpunit -c phpunit.integration.xml - -test-php-coverage: - phpunit -c phpunit.xml --coverage-clover=coverage-unit.xml - phpunit -c phpunit.integration.xml --coverage-clover=coverage-integration.xml - -# Linting -lint: - npm run lint - -lint-fix: - npm run lint:fix - -# Style linting -stylelint: - npm run stylelint - -stylelint-fix: - npm run stylelint:fix - -# Cleaning -clean: - rm -rf js - -# Builds the source package for the app store, ignores php and js tests -appstore: - krankerl package diff --git a/README.md b/README.md index 1044bfd98c3fe4f6428afaa93dced9040a3e4714..29234debc2eaa8813229d4c9df89864f76fcd2a6 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,16 @@ + # Nextcloud Calendar - +[![REUSE status](https://api.reuse.software/badge/github.com/nextcloud/calendar)](https://api.reuse.software/info/github.com/nextcloud/calendar) ![GitHub Workflow Status](https://img.shields.io/github/workflow/status/nextcloud/calendar/Build) ![Codecov](https://img.shields.io/codecov/c/github/nextcloud/calendar) **A calendar app for [Nextcloud](http://nextcloud.com). Easily sync events from various devices with your Nextcloud and edit them online.** -![](https://raw.githubusercontent.com/nextcloud/screenshots/master/apps/Calendar/view_week.png) +![](https://raw.githubusercontent.com/nextcloud/documentation/master/user_manual/groupware/images/calendar_application.png) ## :blue_heart: :tada: Why is this so awesome? @@ -18,9 +23,9 @@ * :ballot_box_with_check: **Tasks!** See tasks or Deck cards with a due date directly in the calendar * :speaker: **Talk rooms!** Create an associated Talk room when booking a meeting with just one click * :calendar: **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments) +* :paperclip: **Attachments!** Add, upload and view event attachments * :see_no_evil: **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries. - ## :hammer_and_wrench: Installation The app is distributed through the [app store](https://apps.nextcloud.com/apps/calendar) and you can install it [right from your Nextcloud installation](https://docs.nextcloud.com/server/stable/admin_manual/apps_management.html). @@ -47,28 +52,26 @@ If you find bugs or have problems with the CalDAV-Backend, you should ask the te ## Build the app -``` bash -# set up and build for production -make - -# install dependencies -make dev-setup +To build you will need to have [Node.js](https://nodejs.org/en/) and +[Composer](https://getcomposer.org/) installed. -# build for dev and watch changes -make watch-js +- Install PHP dependencies: `composer install` +- Install JS dependencies: `npm ci` +- Build JavaScript for the frontend + - `npm run dev` development build + - `npm run watch` watch for changes + - `npm run build` production build -# build for dev -make build-js +Read more about [necessary prerequisites](https://docs.nextcloud.com/server/latest/admin_manual/installation/source_installation.html#prerequisites-for-manual-installation) for manual installs. -# build for production with minification -make build-js-production -``` ## Running tests -You can use the provided Makefile to run all tests by using: + +You can run the following back-end and front-end tests by using: ``` -make test +composer test +npm run test ``` ## :v: Code of conduct @@ -81,3 +84,5 @@ If you contribute, participate or interact with this community, please respect [ This guide will help you get started: - :dancer: :smile: [Opening a pull request](https://opensource.guide/how-to-contribute/#opening-a-pull-request) + +Commits in this repository follow the [Conventional Commits specification](https://www.conventionalcommits.org/en/v1.0.0/#summary). diff --git a/REUSE.toml b/REUSE.toml new file mode 100644 index 0000000000000000000000000000000000000000..a35cb198a5a3addbf9099ace0d8b81f6cddd4a49 --- /dev/null +++ b/REUSE.toml @@ -0,0 +1,72 @@ +# SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: AGPL-3.0-or-later +version = 1 +SPDX-PackageName = "calendar" +SPDX-PackageSupplier = "Nextcloud " +SPDX-PackageDownloadLocation = "https://github.com/nextcloud/calendar" + +[[annotations]] +path = ["l10n/**.js", "l10n/**.json", "js/**.js.map", "js/**.js"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2016 Nextcloud GmbH and Nextcloud contributors" +SPDX-License-Identifier = "AGPL-3.0-or-later" + +[[annotations]] +path = [".tx/config", ".tx/backport", "package-lock.json", "package.json"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2018 Nextcloud GmbH and Nextcloud contributors" +SPDX-License-Identifier = "AGPL-3.0-or-later" + +[[annotations]] +path = ["composer.json", "composer.lock"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2014-2016 ownCloud, Inc., 2016-2024 Nextcloud GmbH and Nextcloud contributors" +SPDX-License-Identifier = "AGPL-3.0-or-later" + +[[annotations]] +path = ["tests/assets/ics/alarms/absoluteAlarm.ics", "tests/assets/ics/alarms/relativeAlarmAfter.ics", "tests/assets/ics/alarms/relativeAlarmAfterWithin24hours.ics", "tests/assets/ics/alarms/relativeAlarmBefore.ics", "tests/assets/ics/alarms/relativeAlarmRelatedEnd.ics", "tests/assets/ics/alarms/relativeAlarmWeekBefore.ics", "tests/assets/ics/attendees/attendee1.ics", "tests/assets/ics/attendees/attendee2.ics", "tests/assets/ics/attendees/attendee3.ics", "tests/assets/ics/attendees/attendee4.ics", "tests/assets/ics/attendees/attendee5.ics", "tests/assets/ics/attendees/attendee6.ics", "tests/assets/ics/attendees/attendee7.ics", "tests/assets/ics/rrules/rrule-count-and-until.ics", "tests/assets/ics/rrules/rrule-count.ics", "tests/assets/ics/rrules/rrule-until.ics", "tests/assets/ics/rrules/rrules1.ics", "tests/assets/ics/rrules/rrules10.ics", "tests/assets/ics/rrules/rrules11.ics", "tests/assets/ics/rrules/rrules12.ics", "tests/assets/ics/rrules/rrules13.ics", "tests/assets/ics/rrules/rrules14.ics", "tests/assets/ics/rrules/rrules15.ics", "tests/assets/ics/rrules/rrules16.ics", "tests/assets/ics/rrules/rrules17.ics", "tests/assets/ics/rrules/rrules18.ics", "tests/assets/ics/rrules/rrules19.ics", "tests/assets/ics/rrules/rrules2.ics", "tests/assets/ics/rrules/rrules21.ics", "tests/assets/ics/rrules/rrules22.ics", "tests/assets/ics/rrules/rrules23.ics", "tests/assets/ics/rrules/rrules24.ics", "tests/assets/ics/rrules/rrules25.ics", "tests/assets/ics/rrules/rrules26.ics", "tests/assets/ics/rrules/rrules27.ics", "tests/assets/ics/rrules/rrules28.ics", "tests/assets/ics/rrules/rrules29.ics", "tests/assets/ics/rrules/rrules3.ics", "tests/assets/ics/rrules/rrules30.ics", "tests/assets/ics/rrules/rrules31.ics", "tests/assets/ics/rrules/rrules32.ics", "tests/assets/ics/rrules/rrules4.ics", "tests/assets/ics/rrules/rrules5.ics", "tests/assets/ics/rrules/rrules6.ics", "tests/assets/ics/rrules/rrules7.ics", "tests/assets/ics/rrules/rrules8.ics", "tests/assets/ics/rrules/rrules9.ics", "tests/assets/ics/vcalendars/vcalendar-empty.ics", "tests/assets/ics/vcalendars/vcalendar-event-alarms.ics", "tests/assets/ics/vcalendars/vcalendar-event-allday.ics", "tests/assets/ics/vcalendars/vcalendar-event-attendees.ics", "tests/assets/ics/vcalendars/vcalendar-event-categories.ics", "tests/assets/ics/vcalendars/vcalendar-event-custom-color.ics", "tests/assets/ics/vcalendars/vcalendar-event-floating-time.ics", "tests/assets/ics/vcalendars/vcalendar-event-multiple-rrules.ics", "tests/assets/ics/vcalendars/vcalendar-event-recurring-allday.ics", "tests/assets/ics/vcalendars/vcalendar-event-recurring.ics", "tests/assets/ics/vcalendars/vcalendar-event-timed.ics", "tests/assets/ics/vcalendars/vcalendar-event-utc-time.ics", "tests/assets/ics/vcalendars/vcalendar-journal.ics", "tests/assets/ics/vcalendars/vcalendar-todo.ics", "tests/assets/ics/vcalendars/vcalendar-without-vobjects.ics", "tests/assets/ics/vcalendars-scheduling/add.ics", "tests/assets/ics/vcalendars-scheduling/cancel.ics", "tests/assets/ics/vcalendars-scheduling/counter.ics", "tests/assets/ics/vcalendars-scheduling/declinecounter.ics", "tests/assets/ics/vcalendars-scheduling/freebusy-reply.ics", "tests/assets/ics/vcalendars-scheduling/freebusy-request.ics", "tests/assets/ics/vcalendars-scheduling/publish.ics", "tests/assets/ics/vcalendars-scheduling/refresh.ics", "tests/assets/ics/vcalendars-scheduling/reply.ics", "tests/assets/ics/vcalendars-scheduling/request.ics"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2020 Nextcloud GmbH and Nextcloud contributors" +SPDX-License-Identifier = "AGPL-3.0-or-later" + +[[annotations]] +path = ["screenshots/2.0/change-view.png", "screenshots/2.0/date-picker.png", "screenshots/2.0/edit-calendar-properties.png", "screenshots/2.0/event-editor-attendees.png", "screenshots/2.0/event-editor-details-categories.jpg", "screenshots/2.0/event-editor-details.png", "screenshots/2.0/event-editor-reminders.png", "screenshots/2.0/event-editor-repeat-day-of-month.png", "screenshots/2.0/event-editor-repeat-last-thursday.png", "screenshots/2.0/freebusy.png", "screenshots/2.0/month-view.png", "screenshots/2.0/new-calendar-selector.png", "screenshots/2.0/public-sharing-embed.png", "screenshots/2.0/public-sharing.png", "screenshots/2.0/share-calendar-publicly-embed-link.png", "screenshots/2.0/share-calendar-user.png", "screenshots/2.0/simple-event-popover.png", "screenshots/2.0/week-view.png"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2020 Nextcloud GmbH and Nextcloud contributors" +SPDX-License-Identifier = "CC-BY-SA-4.0" + +[[annotations]] +path = ["screenshots/week_new_event.png", "screenshots/week_room_suggestion.png", "screenshots/week_sidebar.png"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2021 Nextcloud GmbH and Nextcloud contributors" +SPDX-License-Identifier = "CC-BY-SA-4.0" + +[[annotations]] +path = ["tests/assets/ics/alarms/absoluteAlarmWithTimezone.ics", "tests/assets/ics/freebusy/explicitFreeSlot.ics", "tests/assets/ics/freebusy/multipleAttendees.ics"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2021 Nextcloud GmbH and Nextcloud contributors" +SPDX-License-Identifier = "AGPL-3.0-or-later" + +[[annotations]] +path = ["src/resources/holiday_calendars.json", "vendor-bin/cs-fixer/composer.json", "vendor-bin/cs-fixer/composer.lock", "vendor-bin/phpunit/composer.json", "vendor-bin/phpunit/composer.lock", "vendor-bin/psalm/composer.json", "vendor-bin/psalm/composer.lock"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2023 Nextcloud GmbH and Nextcloud contributors" +SPDX-License-Identifier = "AGPL-3.0-or-later" + +[[annotations]] +path = "renovate.json" +precedence = "aggregate" +SPDX-FileCopyrightText = "2024 Nextcloud GmbH and Nextcloud contributors" +SPDX-License-Identifier = "AGPL-3.0-or-later" + +[[annotations]] +path = ["img/calendar-dark.svg", "img/calendar.png", "img/calendar.svg", "img/favicon-mask.svg", "img/favicon-touch.png", "img/favicon-touch.svg", "img/favicon.ico", "img/favicon.png", "img/favicon.svg"] +precedence = "aggregate" +SPDX-FileCopyrightText = "2018-2024 Google LLC, 2016-2024 Nextcloud GmbH and Nextcloud contributors" +SPDX-License-Identifier = "Apache-2.0" + +[[annotations]] +path = "composer/autoload.php" +precedence = "aggregate" +SPDX-FileCopyrightText = "Nils Adermann, Jordi Boggiano" +SPDX-License-Identifier = "MIT" diff --git a/__mocks__/css.js b/__mocks__/css.js new file mode 100644 index 0000000000000000000000000000000000000000..69fddbc368247cbdeb58373a7867a2304c4f3de1 --- /dev/null +++ b/__mocks__/css.js @@ -0,0 +1,5 @@ +/** + * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ +export default {} diff --git a/appinfo/info.xml b/appinfo/info.xml index a2a3151b837c6c92f1371e37b199d93407859d20..e8c371e19bf40c1ef23c53d6551b078f1003d316 100644 --- a/appinfo/info.xml +++ b/appinfo/info.xml @@ -1,27 +1,38 @@ + calendar Calendar A Calendar app for Nextcloud - - 3.5.0-rc.1 + 5.3.5 agpl - Anna Larch - Nextcloud Groupware Team + Richard Steinmetz + Sebastian Krupinski + Thomas Citharel Calendar https://docs.nextcloud.com/server/latest/user_manual/en/groupware/calendar.html + https://docs.nextcloud.com/server/latest/admin_manual/groupware/calendar.html + https://github.com/nextcloud/calendar/wiki office organization @@ -32,17 +43,13 @@ https://raw.githubusercontent.com/nextcloud/calendar/main/screenshots/week_room_suggestion.png https://raw.githubusercontent.com/nextcloud/calendar/main/screenshots/week_sidebar.png - - + + + caldav OCA\Calendar\BackgroundJob\CleanUpOutdatedBookingsJob - - - OCA\Calendar\RepairSteps\CurrentViewNameRepairStep - - calendar diff --git a/appinfo/routes.php b/appinfo/routes.php index cd7665b2f0517429302fb300502dbe10dfdd5dfa..cb2d87cca00336166b8a98a828505f0d47ac7df2 100644 --- a/appinfo/routes.php +++ b/appinfo/routes.php @@ -2,38 +2,24 @@ declare(strict_types=1); /** - * Calendar App - * - * @author Georg Ehrke - * @copyright 2018 Georg Ehrke - * @author Thomas Müller - * @copyright 2016 Thomas Müller - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors + * SPDX-FileCopyrightText: 2014-2016 ownCloud, Inc. + * SPDX-License-Identifier: AGPL-3.0-or-later */ return [ 'routes' => [ + //Maybe invitiation + ['name' => 'invitation_maybe#tentative', 'url' => '/invitation/tentative/{token}', 'verb' => 'GET'], // User views ['name' => 'view#index', 'url' => '/', 'verb' => 'GET'], ['name' => 'view#index', 'url' => '/new', 'verb' => 'GET', 'postfix' => 'direct.new'], ['name' => 'view#index', 'url' => '/new/{isAllDay}/{dtStart}/{dtEnd}', 'verb' => 'GET', 'postfix' => 'direct.new.timerange'], ['name' => 'view#index', 'url' => '/edit/{objectId}', 'verb' => 'GET', 'postfix' => 'direct.edit'], ['name' => 'view#index', 'url' => '/edit/{objectId}/{recurrenceId}', 'verb' => 'GET', 'postfix' => 'direct.edit.recurrenceId'], - ['name' => 'view#index', 'url' => '/{view}/{timeRange}', 'verb' => 'GET', 'requirements' => ['view' => 'timeGridDay|timeGridWeek|dayGridMonth|listMonth'], 'postfix' => 'view.timerange'], - ['name' => 'view#index', 'url' => '/{view}/{timeRange}/new/{mode}/{isAllDay}/{dtStart}/{dtEnd}', 'verb' => 'GET', 'requirements' => ['view' => 'timeGridDay|timeGridWeek|dayGridMonth|listMonth'], 'postfix' => 'view.timerange.new'], - ['name' => 'view#index', 'url' => '/{view}/{timeRange}/edit/{mode}/{objectId}/{recurrenceId}', 'verb' => 'GET', 'requirements' => ['view' => 'timeGridDay|timeGridWeek|dayGridMonth|listMonth'], 'postfix' => 'view.timerange.edit'], + ['name' => 'view#index', 'url' => '/{view}/{timeRange}', 'verb' => 'GET', 'requirements' => ['view' => 'timeGridDay|timeGridWeek|dayGridMonth|multiMonthYear|listMonth'], 'postfix' => 'view.timerange'], + ['name' => 'view#index', 'url' => '/{view}/{timeRange}/new/{mode}/{isAllDay}/{dtStart}/{dtEnd}', 'verb' => 'GET', 'requirements' => ['view' => 'timeGridDay|timeGridWeek|dayGridMonth|multiMonthYear|listMonth'], 'postfix' => 'view.timerange.new'], + ['name' => 'view#index', 'url' => '/{view}/{timeRange}/edit/{mode}/{objectId}/{recurrenceId}', 'verb' => 'GET', 'requirements' => ['view' => 'timeGridDay|timeGridWeek|dayGridMonth|multiMonthYear|listMonth'], 'postfix' => 'view.timerange.edit'], + ['name' => 'view#getCalendarDotSvg', 'url' => '/public/getCalendarDotSvg/{color}.svg', 'verb' => 'GET'], // Appointments ['name' => 'appointment#index', 'url' => '/appointments/{userId}', 'verb' => 'GET'], ['name' => 'appointment#show', 'url' => '/appointment/{token}', 'verb' => 'GET'], @@ -53,6 +39,10 @@ return [ ['name' => 'contact#searchAttendee', 'url' => '/v1/autocompletion/attendee', 'verb' => 'POST'], ['name' => 'contact#searchLocation', 'url' => '/v1/autocompletion/location', 'verb' => 'POST'], ['name' => 'contact#searchPhoto', 'url' => '/v1/autocompletion/photo', 'verb' => 'POST'], + // Circles + ['name' => 'contact#getCircleMembers', 'url' => '/v1/circles/getmembers', 'verb' => 'GET'], + // Contact Groups + ['name' => 'contact#getContactGroupMembers', 'url' => '/v1/autocompletion/groupmembers', 'verb' => 'POST'], // Settings ['name' => 'settings#setConfig', 'url' => '/v1/config/{key}', 'verb' => 'POST'], // Tools diff --git a/babel.config.js b/babel.config.js index 8be4fc38bb87bf887ec8ddcd4d26f51e42f2a26a..66514aa67827bb037649bfd0e544527a6c4644f7 100644 --- a/babel.config.js +++ b/babel.config.js @@ -1,3 +1,7 @@ +/** + * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ const babelConfig = require('@nextcloud/babel-config') module.exports = babelConfig diff --git a/build/pre-commit.js b/build/pre-commit.js new file mode 100644 index 0000000000000000000000000000000000000000..225f757d068784d0a40931ec122e28f6cc4d836e --- /dev/null +++ b/build/pre-commit.js @@ -0,0 +1,14 @@ +/** + * SPDX-FileCopyrightText: 2016-2024 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ + +const fs = require('fs') + +exports.preCommit = (props) => { + const old = fs.readFileSync('appinfo/info.xml').toString('utf-8') + + const updated = old.replace(/(.+?)<\/version>/, '' + props.version + '') + + fs.writeFileSync('appinfo/info.xml', updated) +} diff --git a/composer.json b/composer.json index 040c0765e2ae09ce6ecd1724593c5311751d0655..c90d19ce10fb6014e67228a7996162fd303a6a52 100644 --- a/composer.json +++ b/composer.json @@ -1,22 +1,44 @@ { "config": { "platform": { - "php": "7.4" + "php": "8.1" }, - "sort-packages": true + "sort-packages": true, + "optimize-autoloader": true, + "autoloader-suffix": "Calendar", + "allow-plugins": { + "bamarni/composer-bin-plugin": true + } }, - "require": { - "php": ">=7.4 <=8.1" + "autoload": { + "psr-4": { + "OCA\\Calendar\\": "lib/" + } }, - "require-dev": { - "christophwurst/nextcloud_testing": "0.12.4", - "nextcloud/coding-standard": "^1.0.0" + "require": { + "php": ">= 8.1 <=8.3", + "bamarni/composer-bin-plugin": "^1.8.2" }, "scripts": { "cs:fix": "php-cs-fixer fix", "cs:check": "php-cs-fixer fix --dry-run --diff", "lint": "find . -name \\*.php -not -path './vendor/*' -not -path './tests/*' -print0 | xargs -0 -n1 php -l", + "psalm": "psalm", "test": "phpunit --configuration phpunit.unit.xml --fail-on-warning", - "test:dev": "phpunit --configuration phpunit.unit.xml --fail-on-warning --stop-on-error --stop-on-failure" + "test:dev": "phpunit --configuration phpunit.unit.xml --fail-on-warning --stop-on-error --stop-on-failure", + "test:integration": "phpunit -c phpunit.integration.xml --fail-on-warning", + "test:integration:dev": "phpunit -c phpunit.integration.xml --no-coverage --order-by=defects --stop-on-defect --fail-on-warning --stop-on-error --stop-on-failure", + "post-install-cmd": [ + "@composer bin all install --ansi" + ], + "post-update-cmd": [ + "@composer bin all update --ansi" + ] + }, + "extra": { + "bamarni-bin": { + "bin-links": true, + "forward-command": false + } } } diff --git a/composer.lock b/composer.lock index c77011b5253ac91e840f9eb412a8e3ef0b0b6e45..a4acd8080857281fa42c7d67a9b5b80740807702 100644 --- a/composer.lock +++ b/composer.lock @@ -4,4281 +4,78 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "149e54df9f9575bc166a66a37b5e4786", - "packages": [], - "packages-dev": [ + "content-hash": "492b5cfee734ba356e1be314ca01accb", + "packages": [ { - "name": "christophwurst/nextcloud_testing", - "version": "v0.12.4", + "name": "bamarni/composer-bin-plugin", + "version": "1.8.2", "source": { "type": "git", - "url": "https://github.com/ChristophWurst/nextcloud_testing.git", - "reference": "9c189b01dbcc3508108f08c417de6aaea7005fb0" + "url": "https://github.com/bamarni/composer-bin-plugin.git", + "reference": "92fd7b1e6e9cdae19b0d57369d8ad31a37b6a880" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ChristophWurst/nextcloud_testing/zipball/9c189b01dbcc3508108f08c417de6aaea7005fb0", - "reference": "9c189b01dbcc3508108f08c417de6aaea7005fb0", + "url": "https://api.github.com/repos/bamarni/composer-bin-plugin/zipball/92fd7b1e6e9cdae19b0d57369d8ad31a37b6a880", + "reference": "92fd7b1e6e9cdae19b0d57369d8ad31a37b6a880", "shasum": "" }, "require": { - "php": "^7.2|^8.0", - "php-webdriver/webdriver": "^1.9", - "phpunit/phpunit": "^8.0|^9.0" + "composer-plugin-api": "^2.0", + "php": "^7.2.5 || ^8.0" }, "require-dev": { - "christophwurst/nextcloud": "^17.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "ChristophWurst\\Nextcloud\\Testing\\": "/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Christoph Wurst", - "email": "christoph@winzerhof-wurst.at" - } - ], - "description": "Simple and fast unit and integration testing framework for Nextcloud, based on PHPUnit", - "support": { - "issues": "https://github.com/ChristophWurst/nextcloud_testing/issues", - "source": "https://github.com/ChristophWurst/nextcloud_testing/tree/v0.12.4" - }, - "time": "2021-02-18T08:41:09+00:00" - }, - { - "name": "composer/pcre", - "version": "3.0.0", - "source": { - "type": "git", - "url": "https://github.com/composer/pcre.git", - "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/composer/pcre/zipball/e300eb6c535192decd27a85bc72a9290f0d6b3bd", - "reference": "e300eb6c535192decd27a85bc72a9290f0d6b3bd", - "shasum": "" - }, - "require": { - "php": "^7.4 || ^8.0" - }, - "require-dev": { - "phpstan/phpstan": "^1.3", - "phpstan/phpstan-strict-rules": "^1.1", - "symfony/phpunit-bridge": "^5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Composer\\Pcre\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be", - "homepage": "http://seld.be" - } - ], - "description": "PCRE wrapping library that offers type-safe preg_* replacements.", - "keywords": [ - "PCRE", - "preg", - "regex", - "regular expression" - ], - "support": { - "issues": "https://github.com/composer/pcre/issues", - "source": "https://github.com/composer/pcre/tree/3.0.0" - }, - "funding": [ - { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" - } - ], - "time": "2022-02-25T20:21:48+00:00" - }, - { - "name": "composer/semver", - "version": "3.3.2", - "source": { - "type": "git", - "url": "https://github.com/composer/semver.git", - "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/composer/semver/zipball/3953f23262f2bff1919fc82183ad9acb13ff62c9", - "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9", - "shasum": "" - }, - "require": { - "php": "^5.3.2 || ^7.0 || ^8.0" - }, - "require-dev": { - "phpstan/phpstan": "^1.4", - "symfony/phpunit-bridge": "^4.2 || ^5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "3.x-dev" - } - }, - "autoload": { - "psr-4": { - "Composer\\Semver\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nils Adermann", - "email": "naderman@naderman.de", - "homepage": "http://www.naderman.de" - }, - { - "name": "Jordi Boggiano", - "email": "j.boggiano@seld.be", - "homepage": "http://seld.be" - }, - { - "name": "Rob Bast", - "email": "rob.bast@gmail.com", - "homepage": "http://robbast.nl" - } - ], - "description": "Semver library that offers utilities, version constraint parsing and validation.", - "keywords": [ - "semantic", - "semver", - "validation", - "versioning" - ], - "support": { - "irc": "irc://irc.freenode.org/composer", - "issues": "https://github.com/composer/semver/issues", - "source": "https://github.com/composer/semver/tree/3.3.2" - }, - "funding": [ - { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" - } - ], - "time": "2022-04-01T19:23:25+00:00" - }, - { - "name": "composer/xdebug-handler", - "version": "3.0.3", - "source": { - "type": "git", - "url": "https://github.com/composer/xdebug-handler.git", - "reference": "ced299686f41dce890debac69273b47ffe98a40c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/ced299686f41dce890debac69273b47ffe98a40c", - "reference": "ced299686f41dce890debac69273b47ffe98a40c", - "shasum": "" - }, - "require": { - "composer/pcre": "^1 || ^2 || ^3", - "php": "^7.2.5 || ^8.0", - "psr/log": "^1 || ^2 || ^3" - }, - "require-dev": { - "phpstan/phpstan": "^1.0", - "phpstan/phpstan-strict-rules": "^1.1", - "symfony/phpunit-bridge": "^6.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Composer\\XdebugHandler\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "John Stevenson", - "email": "john-stevenson@blueyonder.co.uk" - } - ], - "description": "Restarts a process without Xdebug.", - "keywords": [ - "Xdebug", - "performance" - ], - "support": { - "irc": "irc://irc.freenode.org/composer", - "issues": "https://github.com/composer/xdebug-handler/issues", - "source": "https://github.com/composer/xdebug-handler/tree/3.0.3" - }, - "funding": [ - { - "url": "https://packagist.com", - "type": "custom" - }, - { - "url": "https://github.com/composer", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" - } - ], - "time": "2022-02-25T21:32:43+00:00" - }, - { - "name": "doctrine/annotations", - "version": "1.13.2", - "source": { - "type": "git", - "url": "https://github.com/doctrine/annotations.git", - "reference": "5b668aef16090008790395c02c893b1ba13f7e08" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/annotations/zipball/5b668aef16090008790395c02c893b1ba13f7e08", - "reference": "5b668aef16090008790395c02c893b1ba13f7e08", - "shasum": "" - }, - "require": { - "doctrine/lexer": "1.*", - "ext-tokenizer": "*", - "php": "^7.1 || ^8.0", - "psr/cache": "^1 || ^2 || ^3" - }, - "require-dev": { - "doctrine/cache": "^1.11 || ^2.0", - "doctrine/coding-standard": "^6.0 || ^8.1", - "phpstan/phpstan": "^0.12.20", - "phpunit/phpunit": "^7.5 || ^8.0 || ^9.1.5", - "symfony/cache": "^4.4 || ^5.2" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Common\\Annotations\\": "lib/Doctrine/Common/Annotations" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Benjamin Eberlei", - "email": "kontakt@beberlei.de" - }, - { - "name": "Jonathan Wage", - "email": "jonwage@gmail.com" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "Docblock Annotations Parser", - "homepage": "https://www.doctrine-project.org/projects/annotations.html", - "keywords": [ - "annotations", - "docblock", - "parser" - ], - "support": { - "issues": "https://github.com/doctrine/annotations/issues", - "source": "https://github.com/doctrine/annotations/tree/1.13.2" - }, - "time": "2021-08-05T19:00:23+00:00" - }, - { - "name": "doctrine/instantiator", - "version": "1.4.0", - "source": { - "type": "git", - "url": "https://github.com/doctrine/instantiator.git", - "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/d56bf6102915de5702778fe20f2de3b2fe570b5b", - "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^8.0", - "ext-pdo": "*", - "ext-phar": "*", - "phpbench/phpbench": "^0.13 || 1.0.0-alpha2", - "phpstan/phpstan": "^0.12", - "phpstan/phpstan-phpunit": "^0.12", - "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Marco Pivetta", - "email": "ocramius@gmail.com", - "homepage": "https://ocramius.github.io/" - } - ], - "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", - "homepage": "https://www.doctrine-project.org/projects/instantiator.html", - "keywords": [ - "constructor", - "instantiate" - ], - "support": { - "issues": "https://github.com/doctrine/instantiator/issues", - "source": "https://github.com/doctrine/instantiator/tree/1.4.0" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", - "type": "tidelift" - } - ], - "time": "2020-11-10T18:47:58+00:00" - }, - { - "name": "doctrine/lexer", - "version": "1.2.3", - "source": { - "type": "git", - "url": "https://github.com/doctrine/lexer.git", - "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/c268e882d4dbdd85e36e4ad69e02dc284f89d229", - "reference": "c268e882d4dbdd85e36e4ad69e02dc284f89d229", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "require-dev": { - "doctrine/coding-standard": "^9.0", - "phpstan/phpstan": "^1.3", - "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", - "vimeo/psalm": "^4.11" - }, - "type": "library", - "autoload": { - "psr-4": { - "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Guilherme Blanco", - "email": "guilhermeblanco@gmail.com" - }, - { - "name": "Roman Borschel", - "email": "roman@code-factory.org" - }, - { - "name": "Johannes Schmitt", - "email": "schmittjoh@gmail.com" - } - ], - "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", - "homepage": "https://www.doctrine-project.org/projects/lexer.html", - "keywords": [ - "annotations", - "docblock", - "lexer", - "parser", - "php" - ], - "support": { - "issues": "https://github.com/doctrine/lexer/issues", - "source": "https://github.com/doctrine/lexer/tree/1.2.3" - }, - "funding": [ - { - "url": "https://www.doctrine-project.org/sponsorship.html", - "type": "custom" - }, - { - "url": "https://www.patreon.com/phpdoctrine", - "type": "patreon" - }, - { - "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer", - "type": "tidelift" - } - ], - "time": "2022-02-28T11:07:21+00:00" - }, - { - "name": "friendsofphp/php-cs-fixer", - "version": "v3.8.0", - "source": { - "type": "git", - "url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git", - "reference": "cbad1115aac4b5c3c5540e7210d3c9fba2f81fa3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/cbad1115aac4b5c3c5540e7210d3c9fba2f81fa3", - "reference": "cbad1115aac4b5c3c5540e7210d3c9fba2f81fa3", - "shasum": "" - }, - "require": { - "composer/semver": "^3.2", - "composer/xdebug-handler": "^3.0.3", - "doctrine/annotations": "^1.13", - "ext-json": "*", - "ext-tokenizer": "*", - "php": "^7.4 || ^8.0", - "php-cs-fixer/diff": "^2.0", - "symfony/console": "^5.4 || ^6.0", - "symfony/event-dispatcher": "^5.4 || ^6.0", - "symfony/filesystem": "^5.4 || ^6.0", - "symfony/finder": "^5.4 || ^6.0", - "symfony/options-resolver": "^5.4 || ^6.0", - "symfony/polyfill-mbstring": "^1.23", - "symfony/polyfill-php80": "^1.25", - "symfony/polyfill-php81": "^1.25", - "symfony/process": "^5.4 || ^6.0", - "symfony/stopwatch": "^5.4 || ^6.0" - }, - "require-dev": { - "justinrainbow/json-schema": "^5.2", - "keradus/cli-executor": "^1.5", - "mikey179/vfsstream": "^1.6.10", - "php-coveralls/php-coveralls": "^2.5.2", - "php-cs-fixer/accessible-object": "^1.1", - "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.2", - "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.2.1", - "phpspec/prophecy": "^1.15", - "phpspec/prophecy-phpunit": "^2.0", - "phpunit/phpunit": "^9.5", - "phpunitgoodpractices/polyfill": "^1.5", - "phpunitgoodpractices/traits": "^1.9.1", - "symfony/phpunit-bridge": "^6.0", - "symfony/yaml": "^5.4 || ^6.0" - }, - "suggest": { - "ext-dom": "For handling output formats in XML", - "ext-mbstring": "For handling non-UTF8 characters." - }, - "bin": [ - "php-cs-fixer" - ], - "type": "application", - "autoload": { - "psr-4": { - "PhpCsFixer\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Dariusz Rumiński", - "email": "dariusz.ruminski@gmail.com" - } - ], - "description": "A tool to automatically fix PHP code style", - "support": { - "issues": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/issues", - "source": "https://github.com/FriendsOfPHP/PHP-CS-Fixer/tree/v3.8.0" - }, - "funding": [ - { - "url": "https://github.com/keradus", - "type": "github" - } - ], - "time": "2022-03-18T17:20:59+00:00" - }, - { - "name": "myclabs/deep-copy", - "version": "1.10.2", - "source": { - "type": "git", - "url": "https://github.com/myclabs/DeepCopy.git", - "reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/776f831124e9c62e1a2c601ecc52e776d8bb7220", - "reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220", - "shasum": "" - }, - "require": { - "php": "^7.1 || ^8.0" - }, - "replace": { - "myclabs/deep-copy": "self.version" - }, - "require-dev": { - "doctrine/collections": "^1.0", - "doctrine/common": "^2.6", - "phpunit/phpunit": "^7.1" - }, - "type": "library", - "autoload": { - "psr-4": { - "DeepCopy\\": "src/DeepCopy/" - }, - "files": [ - "src/DeepCopy/deep_copy.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "Create deep copies (clones) of your objects", - "keywords": [ - "clone", - "copy", - "duplicate", - "object", - "object graph" - ], - "support": { - "issues": "https://github.com/myclabs/DeepCopy/issues", - "source": "https://github.com/myclabs/DeepCopy/tree/1.10.2" - }, - "funding": [ - { - "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy", - "type": "tidelift" - } - ], - "time": "2020-11-13T09:40:50+00:00" - }, - { - "name": "nextcloud/coding-standard", - "version": "v1.0.0", - "source": { - "type": "git", - "url": "https://github.com/nextcloud/coding-standard.git", - "reference": "f3d1f9375e89c605deb1734f59a9f51ecbe80578" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nextcloud/coding-standard/zipball/f3d1f9375e89c605deb1734f59a9f51ecbe80578", - "reference": "f3d1f9375e89c605deb1734f59a9f51ecbe80578", - "shasum": "" - }, - "require": { - "friendsofphp/php-cs-fixer": "^3.2", - "php": "^7.3|^8.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Nextcloud\\CodingStandard\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Christoph Wurst", - "email": "christoph@winzerhof-wurst.at" - } - ], - "description": "Nextcloud coding standards for the php cs fixer", - "support": { - "issues": "https://github.com/nextcloud/coding-standard/issues", - "source": "https://github.com/nextcloud/coding-standard/tree/v1.0.0" - }, - "time": "2021-11-10T08:44:10+00:00" - }, - { - "name": "nikic/php-parser", - "version": "v4.13.1", - "source": { - "type": "git", - "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "63a79e8daa781cac14e5195e63ed8ae231dd10fd" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/63a79e8daa781cac14e5195e63ed8ae231dd10fd", - "reference": "63a79e8daa781cac14e5195e63ed8ae231dd10fd", - "shasum": "" - }, - "require": { - "ext-tokenizer": "*", - "php": ">=7.0" - }, - "require-dev": { - "ircmaxell/php-yacc": "^0.0.7", - "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0" - }, - "bin": [ - "bin/php-parse" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.9-dev" - } - }, - "autoload": { - "psr-4": { - "PhpParser\\": "lib/PhpParser" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Nikita Popov" - } - ], - "description": "A PHP parser written in PHP", - "keywords": [ - "parser", - "php" - ], - "support": { - "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.13.1" - }, - "time": "2021-11-03T20:52:16+00:00" - }, - { - "name": "phar-io/manifest", - "version": "2.0.3", - "source": { - "type": "git", - "url": "https://github.com/phar-io/manifest.git", - "reference": "97803eca37d319dfa7826cc2437fc020857acb53" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53", - "reference": "97803eca37d319dfa7826cc2437fc020857acb53", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-phar": "*", - "ext-xmlwriter": "*", - "phar-io/version": "^3.0.1", - "php": "^7.2 || ^8.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0.x-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - }, - { - "name": "Sebastian Heuer", - "email": "sebastian@phpeople.de", - "role": "Developer" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "Developer" - } - ], - "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", - "support": { - "issues": "https://github.com/phar-io/manifest/issues", - "source": "https://github.com/phar-io/manifest/tree/2.0.3" - }, - "time": "2021-07-20T11:28:43+00:00" - }, - { - "name": "phar-io/version", - "version": "3.1.0", - "source": { - "type": "git", - "url": "https://github.com/phar-io/version.git", - "reference": "bae7c545bef187884426f042434e561ab1ddb182" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phar-io/version/zipball/bae7c545bef187884426f042434e561ab1ddb182", - "reference": "bae7c545bef187884426f042434e561ab1ddb182", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - }, - { - "name": "Sebastian Heuer", - "email": "sebastian@phpeople.de", - "role": "Developer" - }, - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "Developer" - } - ], - "description": "Library for handling version information and constraints", - "support": { - "issues": "https://github.com/phar-io/version/issues", - "source": "https://github.com/phar-io/version/tree/3.1.0" - }, - "time": "2021-02-23T14:00:09+00:00" - }, - { - "name": "php-cs-fixer/diff", - "version": "v2.0.2", - "source": { - "type": "git", - "url": "https://github.com/PHP-CS-Fixer/diff.git", - "reference": "29dc0d507e838c4580d018bd8b5cb412474f7ec3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/PHP-CS-Fixer/diff/zipball/29dc0d507e838c4580d018bd8b5cb412474f7ec3", - "reference": "29dc0d507e838c4580d018bd8b5cb412474f7ec3", - "shasum": "" - }, - "require": { - "php": "^5.6 || ^7.0 || ^8.0" - }, - "require-dev": { - "phpunit/phpunit": "^5.7.23 || ^6.4.3 || ^7.0", - "symfony/process": "^3.3" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - } - ], - "description": "sebastian/diff v3 backport support for PHP 5.6+", - "homepage": "https://github.com/PHP-CS-Fixer", - "keywords": [ - "diff" - ], - "support": { - "issues": "https://github.com/PHP-CS-Fixer/diff/issues", - "source": "https://github.com/PHP-CS-Fixer/diff/tree/v2.0.2" - }, - "time": "2020-10-14T08:32:19+00:00" - }, - { - "name": "php-webdriver/webdriver", - "version": "1.12.0", - "source": { - "type": "git", - "url": "https://github.com/php-webdriver/php-webdriver.git", - "reference": "99d4856ed7dffcdf6a52eccd6551e83d8d557ceb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-webdriver/php-webdriver/zipball/99d4856ed7dffcdf6a52eccd6551e83d8d557ceb", - "reference": "99d4856ed7dffcdf6a52eccd6551e83d8d557ceb", - "shasum": "" - }, - "require": { - "ext-curl": "*", - "ext-json": "*", - "ext-zip": "*", - "php": "^5.6 || ~7.0 || ^8.0", - "symfony/polyfill-mbstring": "^1.12", - "symfony/process": "^2.8 || ^3.1 || ^4.0 || ^5.0 || ^6.0" - }, - "replace": { - "facebook/webdriver": "*" - }, - "require-dev": { - "ondram/ci-detector": "^2.1 || ^3.5 || ^4.0", - "php-coveralls/php-coveralls": "^2.4", - "php-mock/php-mock-phpunit": "^1.1 || ^2.0", - "php-parallel-lint/php-parallel-lint": "^1.2", - "phpunit/phpunit": "^5.7 || ^7 || ^8 || ^9", - "squizlabs/php_codesniffer": "^3.5", - "symfony/var-dumper": "^3.3 || ^4.0 || ^5.0 || ^6.0" - }, - "suggest": { - "ext-SimpleXML": "For Firefox profile creation" - }, - "type": "library", - "autoload": { - "psr-4": { - "Facebook\\WebDriver\\": "lib/" - }, - "files": [ - "lib/Exception/TimeoutException.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "description": "A PHP client for Selenium WebDriver. Previously facebook/webdriver.", - "homepage": "https://github.com/php-webdriver/php-webdriver", - "keywords": [ - "Chromedriver", - "geckodriver", - "php", - "selenium", - "webdriver" - ], - "support": { - "issues": "https://github.com/php-webdriver/php-webdriver/issues", - "source": "https://github.com/php-webdriver/php-webdriver/tree/1.12.0" - }, - "time": "2021-10-14T09:30:02+00:00" - }, - { - "name": "phpdocumentor/reflection-common", - "version": "2.2.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionCommon.git", - "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b", - "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-2.x": "2.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jaap van Otterdijk", - "email": "opensource@ijaap.nl" - } - ], - "description": "Common reflection classes used by phpdocumentor to reflect the code structure", - "homepage": "http://www.phpdoc.org", - "keywords": [ - "FQSEN", - "phpDocumentor", - "phpdoc", - "reflection", - "static analysis" - ], - "support": { - "issues": "https://github.com/phpDocumentor/ReflectionCommon/issues", - "source": "https://github.com/phpDocumentor/ReflectionCommon/tree/2.x" - }, - "time": "2020-06-27T09:03:43+00:00" - }, - { - "name": "phpdocumentor/reflection-docblock", - "version": "5.3.0", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", - "reference": "622548b623e81ca6d78b721c5e029f4ce664f170" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/622548b623e81ca6d78b721c5e029f4ce664f170", - "reference": "622548b623e81ca6d78b721c5e029f4ce664f170", - "shasum": "" - }, - "require": { - "ext-filter": "*", - "php": "^7.2 || ^8.0", - "phpdocumentor/reflection-common": "^2.2", - "phpdocumentor/type-resolver": "^1.3", - "webmozart/assert": "^1.9.1" - }, - "require-dev": { - "mockery/mockery": "~1.3.2", - "psalm/phar": "^4.8" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mike van Riel", - "email": "me@mikevanriel.com" - }, - { - "name": "Jaap van Otterdijk", - "email": "account@ijaap.nl" - } - ], - "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", - "support": { - "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", - "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.3.0" - }, - "time": "2021-10-19T17:43:47+00:00" - }, - { - "name": "phpdocumentor/type-resolver", - "version": "1.5.1", - "source": { - "type": "git", - "url": "https://github.com/phpDocumentor/TypeResolver.git", - "reference": "a12f7e301eb7258bb68acd89d4aefa05c2906cae" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/a12f7e301eb7258bb68acd89d4aefa05c2906cae", - "reference": "a12f7e301eb7258bb68acd89d4aefa05c2906cae", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0", - "phpdocumentor/reflection-common": "^2.0" - }, - "require-dev": { - "ext-tokenizer": "*", - "psalm/phar": "^4.8" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-1.x": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "phpDocumentor\\Reflection\\": "src" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Mike van Riel", - "email": "me@mikevanriel.com" - } - ], - "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", - "support": { - "issues": "https://github.com/phpDocumentor/TypeResolver/issues", - "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.5.1" - }, - "time": "2021-10-02T14:08:47+00:00" - }, - { - "name": "phpspec/prophecy", - "version": "1.14.0", - "source": { - "type": "git", - "url": "https://github.com/phpspec/prophecy.git", - "reference": "d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/phpspec/prophecy/zipball/d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e", - "reference": "d86dfc2e2a3cd366cee475e52c6bb3bbc371aa0e", - "shasum": "" - }, - "require": { - "doctrine/instantiator": "^1.2", - "php": "^7.2 || ~8.0, <8.2", - "phpdocumentor/reflection-docblock": "^5.2", - "sebastian/comparator": "^3.0 || ^4.0", - "sebastian/recursion-context": "^3.0 || ^4.0" - }, - "require-dev": { - "phpspec/phpspec": "^6.0 || ^7.0", - "phpunit/phpunit": "^8.0 || ^9.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.x-dev" - } - }, - "autoload": { - "psr-4": { - "Prophecy\\": "src/Prophecy" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Konstantin Kudryashov", - "email": "ever.zet@gmail.com", - "homepage": "http://everzet.com" - }, - { - "name": "Marcello Duarte", - "email": "marcello.duarte@gmail.com" - } - ], - "description": "Highly opinionated mocking framework for PHP 5.3+", - "homepage": "https://github.com/phpspec/prophecy", - "keywords": [ - "Double", - "Dummy", - "fake", - "mock", - "spy", - "stub" - ], - "support": { - "issues": "https://github.com/phpspec/prophecy/issues", - "source": "https://github.com/phpspec/prophecy/tree/1.14.0" - }, - "time": "2021-09-10T09:02:12+00:00" - }, - { - "name": "phpunit/php-code-coverage", - "version": "9.2.9", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "f301eb1453c9e7a1bc912ee8b0ea9db22c60223b" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f301eb1453c9e7a1bc912ee8b0ea9db22c60223b", - "reference": "f301eb1453c9e7a1bc912ee8b0ea9db22c60223b", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-libxml": "*", - "ext-xmlwriter": "*", - "nikic/php-parser": "^4.13.0", - "php": ">=7.3", - "phpunit/php-file-iterator": "^3.0.3", - "phpunit/php-text-template": "^2.0.2", - "sebastian/code-unit-reverse-lookup": "^2.0.2", - "sebastian/complexity": "^2.0", - "sebastian/environment": "^5.1.2", - "sebastian/lines-of-code": "^1.0.3", - "sebastian/version": "^3.0.1", - "theseer/tokenizer": "^1.2.0" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-pcov": "*", - "ext-xdebug": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.2-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.", - "homepage": "https://github.com/sebastianbergmann/php-code-coverage", - "keywords": [ - "coverage", - "testing", - "xunit" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.9" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2021-11-19T15:21:02+00:00" - }, - { - "name": "phpunit/php-file-iterator", - "version": "3.0.5", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/aa4be8575f26070b100fccb67faabb28f21f66f8", - "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "FilterIterator implementation that filters files based on a list of suffixes.", - "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", - "keywords": [ - "filesystem", - "iterator" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", - "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.5" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:57:25+00:00" - }, - { - "name": "phpunit/php-invoker", - "version": "3.1.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-invoker.git", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67", - "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "ext-pcntl": "*", - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-pcntl": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.1-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Invoke callables with a timeout", - "homepage": "https://github.com/sebastianbergmann/php-invoker/", - "keywords": [ - "process" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-invoker/issues", - "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:58:55+00:00" - }, - { - "name": "phpunit/php-text-template", - "version": "2.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", - "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Simple template engine.", - "homepage": "https://github.com/sebastianbergmann/php-text-template/", - "keywords": [ - "template" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-text-template/issues", - "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T05:33:50+00:00" - }, - { - "name": "phpunit/php-timer", - "version": "5.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", - "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Utility class for timing", - "homepage": "https://github.com/sebastianbergmann/php-timer/", - "keywords": [ - "timer" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/php-timer/issues", - "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:16:10+00:00" - }, - { - "name": "phpunit/phpunit", - "version": "9.5.10", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "c814a05837f2edb0d1471d6e3f4ab3501ca3899a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/c814a05837f2edb0d1471d6e3f4ab3501ca3899a", - "reference": "c814a05837f2edb0d1471d6e3f4ab3501ca3899a", - "shasum": "" - }, - "require": { - "doctrine/instantiator": "^1.3.1", - "ext-dom": "*", - "ext-json": "*", - "ext-libxml": "*", - "ext-mbstring": "*", - "ext-xml": "*", - "ext-xmlwriter": "*", - "myclabs/deep-copy": "^1.10.1", - "phar-io/manifest": "^2.0.3", - "phar-io/version": "^3.0.2", - "php": ">=7.3", - "phpspec/prophecy": "^1.12.1", - "phpunit/php-code-coverage": "^9.2.7", - "phpunit/php-file-iterator": "^3.0.5", - "phpunit/php-invoker": "^3.1.1", - "phpunit/php-text-template": "^2.0.3", - "phpunit/php-timer": "^5.0.2", - "sebastian/cli-parser": "^1.0.1", - "sebastian/code-unit": "^1.0.6", - "sebastian/comparator": "^4.0.5", - "sebastian/diff": "^4.0.3", - "sebastian/environment": "^5.1.3", - "sebastian/exporter": "^4.0.3", - "sebastian/global-state": "^5.0.1", - "sebastian/object-enumerator": "^4.0.3", - "sebastian/resource-operations": "^3.0.3", - "sebastian/type": "^2.3.4", - "sebastian/version": "^3.0.2" - }, - "require-dev": { - "ext-pdo": "*", - "phpspec/prophecy-phpunit": "^2.0.1" - }, - "suggest": { - "ext-soap": "*", - "ext-xdebug": "*" - }, - "bin": [ - "phpunit" - ], - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "9.5-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ], - "files": [ - "src/Framework/Assert/Functions.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "The PHP Unit Testing framework.", - "homepage": "https://phpunit.de/", - "keywords": [ - "phpunit", - "testing", - "xunit" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/phpunit/issues", - "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.10" - }, - "funding": [ - { - "url": "https://phpunit.de/donate.html", - "type": "custom" - }, - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2021-09-25T07:38:51+00:00" - }, - { - "name": "psr/cache", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/php-fig/cache.git", - "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8", - "reference": "d11b50ad223250cf17b86e38383413f5a6764bf8", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Cache\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Common interface for caching libraries", - "keywords": [ - "cache", - "psr", - "psr-6" - ], - "support": { - "source": "https://github.com/php-fig/cache/tree/master" - }, - "time": "2016-08-06T20:24:11+00:00" - }, - { - "name": "psr/container", - "version": "1.1.2", - "source": { - "type": "git", - "url": "https://github.com/php-fig/container.git", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", - "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", - "shasum": "" - }, - "require": { - "php": ">=7.4.0" - }, - "type": "library", - "autoload": { - "psr-4": { - "Psr\\Container\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common Container Interface (PHP FIG PSR-11)", - "homepage": "https://github.com/php-fig/container", - "keywords": [ - "PSR-11", - "container", - "container-interface", - "container-interop", - "psr" - ], - "support": { - "issues": "https://github.com/php-fig/container/issues", - "source": "https://github.com/php-fig/container/tree/1.1.2" - }, - "time": "2021-11-05T16:50:12+00:00" - }, - { - "name": "psr/event-dispatcher", - "version": "1.0.0", - "source": { - "type": "git", - "url": "https://github.com/php-fig/event-dispatcher.git", - "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", - "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", - "shasum": "" - }, - "require": { - "php": ">=7.2.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\EventDispatcher\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "http://www.php-fig.org/" - } - ], - "description": "Standard interfaces for event handling.", - "keywords": [ - "events", - "psr", - "psr-14" - ], - "support": { - "issues": "https://github.com/php-fig/event-dispatcher/issues", - "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" - }, - "time": "2019-01-08T18:20:26+00:00" - }, - { - "name": "psr/log", - "version": "1.1.4", - "source": { - "type": "git", - "url": "https://github.com/php-fig/log.git", - "reference": "d49695b909c3b7628b6289db5479a1c204601f11" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/php-fig/log/zipball/d49695b909c3b7628b6289db5479a1c204601f11", - "reference": "d49695b909c3b7628b6289db5479a1c204601f11", - "shasum": "" - }, - "require": { - "php": ">=5.3.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.1.x-dev" - } - }, - "autoload": { - "psr-4": { - "Psr\\Log\\": "Psr/Log/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "PHP-FIG", - "homepage": "https://www.php-fig.org/" - } - ], - "description": "Common interface for logging libraries", - "homepage": "https://github.com/php-fig/log", - "keywords": [ - "log", - "psr", - "psr-3" - ], - "support": { - "source": "https://github.com/php-fig/log/tree/1.1.4" - }, - "time": "2021-05-03T11:20:27+00:00" - }, - { - "name": "sebastian/cli-parser", - "version": "1.0.1", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/cli-parser.git", - "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2", - "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for parsing CLI options", - "homepage": "https://github.com/sebastianbergmann/cli-parser", - "support": { - "issues": "https://github.com/sebastianbergmann/cli-parser/issues", - "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.1" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T06:08:49+00:00" - }, - { - "name": "sebastian/code-unit", - "version": "1.0.8", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit.git", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120", - "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Collection of value objects that represent the PHP code units", - "homepage": "https://github.com/sebastianbergmann/code-unit", - "support": { - "issues": "https://github.com/sebastianbergmann/code-unit/issues", - "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:08:54+00:00" - }, - { - "name": "sebastian/code-unit-reverse-lookup", - "version": "2.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", - "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Looks up which function or method a line of code belongs to", - "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", - "support": { - "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues", - "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:30:19+00:00" - }, - { - "name": "sebastian/comparator", - "version": "4.0.6", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "55f4261989e546dc112258c7a75935a81a7ce382" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/55f4261989e546dc112258c7a75935a81a7ce382", - "reference": "55f4261989e546dc112258c7a75935a81a7ce382", - "shasum": "" - }, - "require": { - "php": ">=7.3", - "sebastian/diff": "^4.0", - "sebastian/exporter": "^4.0" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@2bepublished.at" - } - ], - "description": "Provides the functionality to compare PHP values for equality", - "homepage": "https://github.com/sebastianbergmann/comparator", - "keywords": [ - "comparator", - "compare", - "equality" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/comparator/issues", - "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.6" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T15:49:45+00:00" - }, - { - "name": "sebastian/complexity", - "version": "2.0.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/complexity.git", - "reference": "739b35e53379900cc9ac327b2147867b8b6efd88" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88", - "reference": "739b35e53379900cc9ac327b2147867b8b6efd88", - "shasum": "" - }, - "require": { - "nikic/php-parser": "^4.7", - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for calculating the complexity of PHP code units", - "homepage": "https://github.com/sebastianbergmann/complexity", - "support": { - "issues": "https://github.com/sebastianbergmann/complexity/issues", - "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.2" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T15:52:27+00:00" - }, - { - "name": "sebastian/diff", - "version": "4.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d", - "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3", - "symfony/process": "^4.2 || ^5" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Kore Nordmann", - "email": "mail@kore-nordmann.de" - } - ], - "description": "Diff implementation", - "homepage": "https://github.com/sebastianbergmann/diff", - "keywords": [ - "diff", - "udiff", - "unidiff", - "unified diff" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/diff/issues", - "source": "https://github.com/sebastianbergmann/diff/tree/4.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:10:38+00:00" - }, - { - "name": "sebastian/environment", - "version": "5.1.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "388b6ced16caa751030f6a69e588299fa09200ac" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/388b6ced16caa751030f6a69e588299fa09200ac", - "reference": "388b6ced16caa751030f6a69e588299fa09200ac", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-posix": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides functionality to handle HHVM/PHP environments", - "homepage": "http://www.github.com/sebastianbergmann/environment", - "keywords": [ - "Xdebug", - "environment", - "hhvm" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/environment/issues", - "source": "https://github.com/sebastianbergmann/environment/tree/5.1.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T05:52:38+00:00" - }, - { - "name": "sebastian/exporter", - "version": "4.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/65e8b7db476c5dd267e65eea9cab77584d3cfff9", - "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9", - "shasum": "" - }, - "require": { - "php": ">=7.3", - "sebastian/recursion-context": "^4.0" - }, - "require-dev": { - "ext-mbstring": "*", - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Volker Dusch", - "email": "github@wallbash.com" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - }, - { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" - } - ], - "description": "Provides the functionality to export PHP variables for visualization", - "homepage": "https://www.github.com/sebastianbergmann/exporter", - "keywords": [ - "export", - "exporter" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/exporter/issues", - "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2021-11-11T14:18:36+00:00" - }, - { - "name": "sebastian/global-state", - "version": "5.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "23bd5951f7ff26f12d4e3242864df3e08dec4e49" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/23bd5951f7ff26f12d4e3242864df3e08dec4e49", - "reference": "23bd5951f7ff26f12d4e3242864df3e08dec4e49", - "shasum": "" - }, - "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" - }, - "require-dev": { - "ext-dom": "*", - "phpunit/phpunit": "^9.3" - }, - "suggest": { - "ext-uopz": "*" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Snapshotting of global state", - "homepage": "http://www.github.com/sebastianbergmann/global-state", - "keywords": [ - "global state" - ], - "support": { - "issues": "https://github.com/sebastianbergmann/global-state/issues", - "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2021-06-11T13:31:12+00:00" - }, - { - "name": "sebastian/lines-of-code", - "version": "1.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/lines-of-code.git", - "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/c1c2e997aa3146983ed888ad08b15470a2e22ecc", - "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc", - "shasum": "" - }, - "require": { - "nikic/php-parser": "^4.6", - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library for counting the lines of code in PHP source code", - "homepage": "https://github.com/sebastianbergmann/lines-of-code", - "support": { - "issues": "https://github.com/sebastianbergmann/lines-of-code/issues", - "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-11-28T06:42:11+00:00" - }, - { - "name": "sebastian/object-enumerator", - "version": "4.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71", - "reference": "5c9eeac41b290a3712d88851518825ad78f45c71", - "shasum": "" - }, - "require": { - "php": ">=7.3", - "sebastian/object-reflector": "^2.0", - "sebastian/recursion-context": "^4.0" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Traverses array structures and object graphs to enumerate all referenced objects", - "homepage": "https://github.com/sebastianbergmann/object-enumerator/", - "support": { - "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", - "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:12:34+00:00" - }, - { - "name": "sebastian/object-reflector", - "version": "2.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/object-reflector.git", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", - "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Allows reflection of object attributes, including inherited and non-public ones", - "homepage": "https://github.com/sebastianbergmann/object-reflector/", - "support": { - "issues": "https://github.com/sebastianbergmann/object-reflector/issues", - "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:14:26+00:00" - }, - { - "name": "sebastian/recursion-context", - "version": "4.0.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172", - "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "4.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - }, - { - "name": "Jeff Welch", - "email": "whatthejeff@gmail.com" - }, - { - "name": "Adam Harvey", - "email": "aharvey@php.net" - } - ], - "description": "Provides functionality to recursively process PHP variables", - "homepage": "http://www.github.com/sebastianbergmann/recursion-context", - "support": { - "issues": "https://github.com/sebastianbergmann/recursion-context/issues", - "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-10-26T13:17:30+00:00" - }, - { - "name": "sebastian/resource-operations", - "version": "3.0.3", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/resource-operations.git", - "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", - "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de" - } - ], - "description": "Provides a list of PHP built-in functions that operate on resources", - "homepage": "https://www.github.com/sebastianbergmann/resource-operations", - "support": { - "issues": "https://github.com/sebastianbergmann/resource-operations/issues", - "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.3" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "abandoned": true, - "time": "2020-09-28T06:45:17+00:00" - }, - { - "name": "sebastian/type", - "version": "2.3.4", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/type.git", - "reference": "b8cd8a1c753c90bc1a0f5372170e3e489136f914" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/b8cd8a1c753c90bc1a0f5372170e3e489136f914", - "reference": "b8cd8a1c753c90bc1a0f5372170e3e489136f914", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "require-dev": { - "phpunit/phpunit": "^9.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "2.3-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Collection of value objects that represent the types of the PHP type system", - "homepage": "https://github.com/sebastianbergmann/type", - "support": { - "issues": "https://github.com/sebastianbergmann/type/issues", - "source": "https://github.com/sebastianbergmann/type/tree/2.3.4" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2021-06-15T12:49:02+00:00" - }, - { - "name": "sebastian/version", - "version": "3.0.2", - "source": { - "type": "git", - "url": "https://github.com/sebastianbergmann/version.git", - "reference": "c6c1022351a901512170118436c764e473f6de8c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c", - "reference": "c6c1022351a901512170118436c764e473f6de8c", - "shasum": "" - }, - "require": { - "php": ">=7.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.0-dev" - } - }, - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Sebastian Bergmann", - "email": "sebastian@phpunit.de", - "role": "lead" - } - ], - "description": "Library that helps with managing the version number of Git-hosted PHP projects", - "homepage": "https://github.com/sebastianbergmann/version", - "support": { - "issues": "https://github.com/sebastianbergmann/version/issues", - "source": "https://github.com/sebastianbergmann/version/tree/3.0.2" - }, - "funding": [ - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - } - ], - "time": "2020-09-28T06:39:44+00:00" - }, - { - "name": "symfony/console", - "version": "v5.4.9", - "source": { - "type": "git", - "url": "https://github.com/symfony/console.git", - "reference": "829d5d1bf60b2efeb0887b7436873becc71a45eb" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/829d5d1bf60b2efeb0887b7436873becc71a45eb", - "reference": "829d5d1bf60b2efeb0887b7436873becc71a45eb", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php73": "^1.9", - "symfony/polyfill-php80": "^1.16", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/string": "^5.1|^6.0" - }, - "conflict": { - "psr/log": ">=3", - "symfony/dependency-injection": "<4.4", - "symfony/dotenv": "<5.1", - "symfony/event-dispatcher": "<4.4", - "symfony/lock": "<4.4", - "symfony/process": "<4.4" - }, - "provide": { - "psr/log-implementation": "1.0|2.0" - }, - "require-dev": { - "psr/log": "^1|^2", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/event-dispatcher": "^4.4|^5.0|^6.0", - "symfony/lock": "^4.4|^5.0|^6.0", - "symfony/process": "^4.4|^5.0|^6.0", - "symfony/var-dumper": "^4.4|^5.0|^6.0" - }, - "suggest": { - "psr/log": "For using the console logger", - "symfony/event-dispatcher": "", - "symfony/lock": "", - "symfony/process": "" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Console\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Eases the creation of beautiful and testable command line interfaces", - "homepage": "https://symfony.com", - "keywords": [ - "cli", - "command line", - "console", - "terminal" - ], - "support": { - "source": "https://github.com/symfony/console/tree/v5.4.9" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-05-18T06:17:34+00:00" - }, - { - "name": "symfony/deprecation-contracts", - "version": "v2.5.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/deprecation-contracts.git", - "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/e8b495ea28c1d97b5e0c121748d6f9b53d075c66", - "reference": "e8b495ea28c1d97b5e0c121748d6f9b53d075c66", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "2.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "files": [ - "function.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "A generic function and convention to trigger deprecation notices", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/deprecation-contracts/tree/v2.5.1" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-01-02T09:53:40+00:00" - }, - { - "name": "symfony/event-dispatcher", - "version": "v5.4.9", - "source": { - "type": "git", - "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "8e6ce1cc0279e3ff3c8ff0f43813bc88d21ca1bc" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/8e6ce1cc0279e3ff3c8ff0f43813bc88d21ca1bc", - "reference": "8e6ce1cc0279e3ff3c8ff0f43813bc88d21ca1bc", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/event-dispatcher-contracts": "^2|^3", - "symfony/polyfill-php80": "^1.16" - }, - "conflict": { - "symfony/dependency-injection": "<4.4" - }, - "provide": { - "psr/event-dispatcher-implementation": "1.0", - "symfony/event-dispatcher-implementation": "2.0" - }, - "require-dev": { - "psr/log": "^1|^2|^3", - "symfony/config": "^4.4|^5.0|^6.0", - "symfony/dependency-injection": "^4.4|^5.0|^6.0", - "symfony/error-handler": "^4.4|^5.0|^6.0", - "symfony/expression-language": "^4.4|^5.0|^6.0", - "symfony/http-foundation": "^4.4|^5.0|^6.0", - "symfony/service-contracts": "^1.1|^2|^3", - "symfony/stopwatch": "^4.4|^5.0|^6.0" - }, - "suggest": { - "symfony/dependency-injection": "", - "symfony/http-kernel": "" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\EventDispatcher\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v5.4.9" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-05-05T16:45:39+00:00" - }, - { - "name": "symfony/event-dispatcher-contracts", - "version": "v2.5.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/event-dispatcher-contracts.git", - "reference": "f98b54df6ad059855739db6fcbc2d36995283fe1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/f98b54df6ad059855739db6fcbc2d36995283fe1", - "reference": "f98b54df6ad059855739db6fcbc2d36995283fe1", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "psr/event-dispatcher": "^1" - }, - "suggest": { - "symfony/event-dispatcher-implementation": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "2.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\EventDispatcher\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Generic abstractions related to dispatching event", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "support": { - "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v2.5.1" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-01-02T09:53:40+00:00" - }, - { - "name": "symfony/filesystem", - "version": "v5.4.9", - "source": { - "type": "git", - "url": "https://github.com/symfony/filesystem.git", - "reference": "36a017fa4cce1eff1b8e8129ff53513abcef05ba" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/36a017fa4cce1eff1b8e8129ff53513abcef05ba", - "reference": "36a017fa4cce1eff1b8e8129ff53513abcef05ba", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-mbstring": "~1.8", - "symfony/polyfill-php80": "^1.16" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Filesystem\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides basic utilities for the filesystem", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.4.9" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-05-20T13:55:35+00:00" - }, - { - "name": "symfony/finder", - "version": "v5.4.8", - "source": { - "type": "git", - "url": "https://github.com/symfony/finder.git", - "reference": "9b630f3427f3ebe7cd346c277a1408b00249dad9" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/9b630f3427f3ebe7cd346c277a1408b00249dad9", - "reference": "9b630f3427f3ebe7cd346c277a1408b00249dad9", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php80": "^1.16" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Finder\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Finds files and directories via an intuitive fluent interface", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/finder/tree/v5.4.8" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-04-15T08:07:45+00:00" - }, - { - "name": "symfony/options-resolver", - "version": "v5.4.3", - "source": { - "type": "git", - "url": "https://github.com/symfony/options-resolver.git", - "reference": "cc1147cb11af1b43f503ac18f31aa3bec213aba8" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/cc1147cb11af1b43f503ac18f31aa3bec213aba8", - "reference": "cc1147cb11af1b43f503ac18f31aa3bec213aba8", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/deprecation-contracts": "^2.1|^3", - "symfony/polyfill-php73": "~1.0", - "symfony/polyfill-php80": "^1.16" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\OptionsResolver\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides an improved replacement for the array_replace PHP function", - "homepage": "https://symfony.com", - "keywords": [ - "config", - "configuration", - "options" - ], - "support": { - "source": "https://github.com/symfony/options-resolver/tree/v5.4.3" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-01-02T09:53:40+00:00" - }, - { - "name": "symfony/polyfill-ctype", - "version": "v1.26.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4", - "reference": "6fd1b9a79f6e3cf65f9e679b23af304cd9e010d4", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "provide": { - "ext-ctype": "*" - }, - "suggest": { - "ext-ctype": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.26-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Ctype\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Gert de Pagter", - "email": "BackEndTea@gmail.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for ctype functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "ctype", - "polyfill", - "portable" - ], - "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.26.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-05-24T11:49:31+00:00" - }, - { - "name": "symfony/polyfill-intl-grapheme", - "version": "v1.26.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "433d05519ce6990bf3530fba6957499d327395c2" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/433d05519ce6990bf3530fba6957499d327395c2", - "reference": "433d05519ce6990bf3530fba6957499d327395c2", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "suggest": { - "ext-intl": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.26-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Intl\\Grapheme\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for intl's grapheme_* functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "grapheme", - "intl", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.26.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-05-24T11:49:31+00:00" - }, - { - "name": "symfony/polyfill-intl-normalizer", - "version": "v1.26.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "219aa369ceff116e673852dce47c3a41794c14bd" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/219aa369ceff116e673852dce47c3a41794c14bd", - "reference": "219aa369ceff116e673852dce47c3a41794c14bd", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "suggest": { - "ext-intl": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.26-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Intl\\Normalizer\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for intl's Normalizer class and related functions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "intl", - "normalizer", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.26.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-05-24T11:49:31+00:00" - }, - { - "name": "symfony/polyfill-mbstring", - "version": "v1.26.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e", - "reference": "9344f9cb97f3b19424af1a21a3b0e75b0a7d8d7e", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "provide": { - "ext-mbstring": "*" - }, - "suggest": { - "ext-mbstring": "For best performance" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.26-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Mbstring\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill for the Mbstring extension", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "mbstring", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.26.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-05-24T11:49:31+00:00" - }, - { - "name": "symfony/polyfill-php73", - "version": "v1.26.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "e440d35fa0286f77fb45b79a03fedbeda9307e85" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/e440d35fa0286f77fb45b79a03fedbeda9307e85", - "reference": "e440d35fa0286f77fb45b79a03fedbeda9307e85", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.26-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php73\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.26.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-05-24T11:49:31+00:00" - }, - { - "name": "symfony/polyfill-php80", - "version": "v1.26.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "cfa0ae98841b9e461207c13ab093d76b0fa7bace" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/cfa0ae98841b9e461207c13ab093d76b0fa7bace", - "reference": "cfa0ae98841b9e461207c13ab093d76b0fa7bace", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.26-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php80\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Ion Bazan", - "email": "ion.bazan@gmail.com" - }, - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.26.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-05-10T07:21:04+00:00" - }, - { - "name": "symfony/polyfill-php81", - "version": "v1.26.0", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "13f6d1271c663dc5ae9fb843a8f16521db7687a1" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/13f6d1271c663dc5ae9fb843a8f16521db7687a1", - "reference": "13f6d1271c663dc5ae9fb843a8f16521db7687a1", - "shasum": "" - }, - "require": { - "php": ">=7.1" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "1.26-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "files": [ - "bootstrap.php" - ], - "psr-4": { - "Symfony\\Polyfill\\Php81\\": "" - }, - "classmap": [ - "Resources/stubs" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.26.0" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-05-24T11:49:31+00:00" - }, - { - "name": "symfony/process", - "version": "v5.4.8", - "source": { - "type": "git", - "url": "https://github.com/symfony/process.git", - "reference": "597f3fff8e3e91836bb0bd38f5718b56ddbde2f3" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/597f3fff8e3e91836bb0bd38f5718b56ddbde2f3", - "reference": "597f3fff8e3e91836bb0bd38f5718b56ddbde2f3", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/polyfill-php80": "^1.16" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Process\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Executes commands in sub-processes", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/process/tree/v5.4.8" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-04-08T05:07:18+00:00" - }, - { - "name": "symfony/service-contracts", - "version": "v2.5.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/service-contracts.git", - "reference": "24d9dc654b83e91aa59f9d167b131bc3b5bea24c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/24d9dc654b83e91aa59f9d167b131bc3b5bea24c", - "reference": "24d9dc654b83e91aa59f9d167b131bc3b5bea24c", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "psr/container": "^1.1", - "symfony/deprecation-contracts": "^2.1|^3" - }, - "conflict": { - "ext-psr": "<1.1|>=2" - }, - "suggest": { - "symfony/service-implementation": "" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-main": "2.5-dev" - }, - "thanks": { - "name": "symfony/contracts", - "url": "https://github.com/symfony/contracts" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Contracts\\Service\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Generic abstractions related to writing services", - "homepage": "https://symfony.com", - "keywords": [ - "abstractions", - "contracts", - "decoupling", - "interfaces", - "interoperability", - "standards" - ], - "support": { - "source": "https://github.com/symfony/service-contracts/tree/v2.5.1" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-03-13T20:07:29+00:00" - }, - { - "name": "symfony/stopwatch", - "version": "v5.4.5", - "source": { - "type": "git", - "url": "https://github.com/symfony/stopwatch.git", - "reference": "4d04b5c24f3c9a1a168a131f6cbe297155bc0d30" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/4d04b5c24f3c9a1a168a131f6cbe297155bc0d30", - "reference": "4d04b5c24f3c9a1a168a131f6cbe297155bc0d30", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/service-contracts": "^1|^2|^3" - }, - "type": "library", - "autoload": { - "psr-4": { - "Symfony\\Component\\Stopwatch\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Fabien Potencier", - "email": "fabien@symfony.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides a way to profile code", - "homepage": "https://symfony.com", - "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.4.5" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-02-18T16:06:09+00:00" - }, - { - "name": "symfony/string", - "version": "v5.4.9", - "source": { - "type": "git", - "url": "https://github.com/symfony/string.git", - "reference": "985e6a9703ef5ce32ba617c9c7d97873bb7b2a99" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/985e6a9703ef5ce32ba617c9c7d97873bb7b2a99", - "reference": "985e6a9703ef5ce32ba617c9c7d97873bb7b2a99", - "shasum": "" - }, - "require": { - "php": ">=7.2.5", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-intl-grapheme": "~1.0", - "symfony/polyfill-intl-normalizer": "~1.0", - "symfony/polyfill-mbstring": "~1.0", - "symfony/polyfill-php80": "~1.15" - }, - "conflict": { - "symfony/translation-contracts": ">=3.0" - }, - "require-dev": { - "symfony/error-handler": "^4.4|^5.0|^6.0", - "symfony/http-client": "^4.4|^5.0|^6.0", - "symfony/translation-contracts": "^1.1|^2", - "symfony/var-exporter": "^4.4|^5.0|^6.0" - }, - "type": "library", - "autoload": { - "files": [ - "Resources/functions.php" - ], - "psr-4": { - "Symfony\\Component\\String\\": "" - }, - "exclude-from-classmap": [ - "/Tests/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way", - "homepage": "https://symfony.com", - "keywords": [ - "grapheme", - "i18n", - "string", - "unicode", - "utf-8", - "utf8" - ], - "support": { - "source": "https://github.com/symfony/string/tree/v5.4.9" - }, - "funding": [ - { - "url": "https://symfony.com/sponsor", - "type": "custom" - }, - { - "url": "https://github.com/fabpot", - "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", - "type": "tidelift" - } - ], - "time": "2022-04-19T10:40:37+00:00" - }, - { - "name": "theseer/tokenizer", - "version": "1.2.1", - "source": { - "type": "git", - "url": "https://github.com/theseer/tokenizer.git", - "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/theseer/tokenizer/zipball/34a41e998c2183e22995f158c581e7b5e755ab9e", - "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e", - "shasum": "" - }, - "require": { - "ext-dom": "*", - "ext-tokenizer": "*", - "ext-xmlwriter": "*", - "php": "^7.2 || ^8.0" - }, - "type": "library", - "autoload": { - "classmap": [ - "src/" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Arne Blankerts", - "email": "arne@blankerts.de", - "role": "Developer" - } - ], - "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", - "support": { - "issues": "https://github.com/theseer/tokenizer/issues", - "source": "https://github.com/theseer/tokenizer/tree/1.2.1" - }, - "funding": [ - { - "url": "https://github.com/theseer", - "type": "github" - } - ], - "time": "2021-07-28T10:34:58+00:00" - }, - { - "name": "webmozart/assert", - "version": "1.10.0", - "source": { - "type": "git", - "url": "https://github.com/webmozarts/assert.git", - "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/webmozarts/assert/zipball/6964c76c7804814a842473e0c8fd15bab0f18e25", - "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25", - "shasum": "" - }, - "require": { - "php": "^7.2 || ^8.0", - "symfony/polyfill-ctype": "^1.8" - }, - "conflict": { - "phpstan/phpstan": "<0.12.20", - "vimeo/psalm": "<4.6.1 || 4.6.2" - }, - "require-dev": { - "phpunit/phpunit": "^8.5.13" + "composer/composer": "^2.0", + "ext-json": "*", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-phpunit": "^1.1", + "phpunit/phpunit": "^8.5 || ^9.5", + "symfony/console": "^2.8.52 || ^3.4.35 || ^4.4 || ^5.0 || ^6.0", + "symfony/finder": "^2.8.52 || ^3.4.35 || ^4.4 || ^5.0 || ^6.0", + "symfony/process": "^2.8.52 || ^3.4.35 || ^4.4 || ^5.0 || ^6.0" }, - "type": "library", + "type": "composer-plugin", "extra": { - "branch-alias": { - "dev-master": "1.10-dev" - } + "class": "Bamarni\\Composer\\Bin\\BamarniBinPlugin" }, "autoload": { "psr-4": { - "Webmozart\\Assert\\": "src/" + "Bamarni\\Composer\\Bin\\": "src" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" ], - "authors": [ - { - "name": "Bernhard Schussek", - "email": "bschussek@gmail.com" - } - ], - "description": "Assertions to validate method input/output with nice error messages.", + "description": "No conflicts for your bin dependencies", "keywords": [ - "assert", - "check", - "validate" + "composer", + "conflict", + "dependency", + "executable", + "isolation", + "tool" ], "support": { - "issues": "https://github.com/webmozarts/assert/issues", - "source": "https://github.com/webmozarts/assert/tree/1.10.0" + "issues": "https://github.com/bamarni/composer-bin-plugin/issues", + "source": "https://github.com/bamarni/composer-bin-plugin/tree/1.8.2" }, - "time": "2021-03-09T10:59:23+00:00" + "time": "2022-10-31T08:38:03+00:00" } ], + "packages-dev": [], "aliases": [], "minimum-stability": "stable", "stability-flags": [], "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": ">=7.4 <=8.1" + "php": ">= 8.1 <=8.3" }, "platform-dev": [], "platform-overrides": { - "php": "7.4" + "php": "8.1" }, "plugin-api-version": "2.3.0" } diff --git a/composer/autoload.php b/composer/autoload.php new file mode 100644 index 0000000000000000000000000000000000000000..a075e1e880a3392036b7ffef25c73ce7b929ea33 --- /dev/null +++ b/composer/autoload.php @@ -0,0 +1,5 @@ + - * - * @author Richard Steinmetz - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * +/*! + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ .appointment-config-modal { diff --git a/css/app-navigation.scss b/css/app-navigation.scss index ede0733ced910499a621715757b822419a944da1..1f24ce3a7cee83788b0ff9098f8e0ee7370b4c85 100644 --- a/css/app-navigation.scss +++ b/css/app-navigation.scss @@ -1,309 +1,309 @@ -/** - * Calendar App - * - * @copyright 2016 Raghu Nayyar - * @copyright 2018 Georg Ehrke - * @copyright 2017 John Molakvoæ - * - * @author Raghu Nayyar - * @author Georg Ehrke - * @author John Molakvoæ - * @author Richard Steinmetz - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * +/*! + * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ -.datepicker-button-section, -.today-button-section, -.view-button-section { - display: flex; - margin-left: 3px; - margin-right: 3px; - - .button { - // this border-radius affects the button in the middle of the group - // for the rounded corner buttons on the sides, see further below - border-radius: 0; - font-weight: normal; - margin: 3px -1px 3px 0; - flex-grow: 1; - } +.app-calendar { + .datepicker-button-section, + .today-button-section, + .view-button-section { + display: flex; + + .button { + // this border-radius affects the button in the middle of the group + // for the rounded corner buttons on the sides, see further below + border-radius: 0; + font-weight: normal; + margin: 0 0 var(--default-grid-baseline) 0; + flex-grow: 1; + } - .button:first-child:not(:only-of-type) { - border-radius: var(--border-radius-pill) 0 0 var(--border-radius-pill); - } + .button:first-child:not(:only-of-type) { + border-radius: var(--border-radius-element) 0 0 var(--border-radius-element); + } - .button:last-child:not(:only-of-type) { - border-radius: 0 var(--border-radius-pill) var(--border-radius-pill) 0; - } + .button:last-child:not(:only-of-type) { + border-radius: 0 var(--border-radius-element) var(--border-radius-element) 0; + } - .button:not(:only-of-type):not(:first-child):not(:last-child) { - border-radius: 0; - } + .button:not(:only-of-type):not(:first-child):not(:last-child) { + border-radius: 0; + } - .button:only-child { - border-radius: var(--border-radius-pill); - } + .button:only-child { + border-radius: var(--border-radius-element); + } - .button:hover, - .button:focus, - .button.active { - z-index: 50; + .button:hover, + .button:focus, + .button.active { + z-index: 50; + } } -} -.datepicker-button-section { - &__datepicker-label { - flex-grow: 4 !important; - text-align: center; - } + .datepicker-button-section { + &__datepicker-label { + flex-grow: 4 !important; + text-align: center; + } - &__datepicker { - margin-left: 26px; - margin-top: 48px; - position: absolute !important; - width: 0 !important; + &__datepicker { + margin-left: 26px; + margin-top: 48px; + position: absolute !important; + width: 0 !important; - .mx-input-wrapper { - display: none !important; + .mx-input-wrapper { + display: none !important; + } } - } - &__previous, - &__next { - background-size: 10px; - flex-grow: 0 !important; - width: 34px; - padding: 0 6px !important; + &__left, + &__right { + background-size: 10px; + flex-grow: 0 !important; + width: 34px; + padding: 0 6px !important; + } + &__left{ + border-radius: var(--border-radius-element) 0 0 var(--border-radius-element) !important; + } + &__right{ + border-radius: 0 var(--border-radius-element) var(--border-radius-element) 0 !important; + } } -} -.app-navigation-header { - padding: 3px 3px 0 3px; -} + .app-navigation__body { + overflow-y: unset !important; -.new-event-today-view-section { - display: flex; - margin-left: 3px; - margin-right: 3px; - - .new-event { - flex-grow: 5; - text-overflow: ellipsis; - white-space: nowrap; - overflow: hidden; + .app-navigation-header { + padding: calc(var(--default-grid-baseline, 4px) * 2); + } } - .today { - flex-grow: 1; - font-weight: normal !important; - } -} + .new-event-today-view-section { + display: flex; -.app-navigation { - button.icon-share { - opacity: 0.3 !important; - } + // Fix margins from core + .button { + margin: 0 var(--default-grid-baseline) 0 0; + } - button.icon-shared, - button.icon-public { - opacity: 0.7 !important; - } + .new-event { + flex-grow: 5; + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; + } - button.icon-share:active, - button.icon-share:focus, - button.icon-share:hover, - button.icon-shared:active, - button.icon-shared:focus, - button.icon-shared:hover, - button.icon-public:active, - button.icon-public:focus, - button.icon-public:hover { - opacity: 1 !important; + .today { + flex-grow: 1; + font-weight: normal !important; + } } - #calendars-list { - display: block !important; + // Add background to navigation toggle to fix overlap with calendar elements + .app-navigation-toggle { + background-color: var(--color-main-background) !important; + border: 1px solid var(--color-background-dark) !important; } - li.app-navigation-loading-placeholder-entry { - div.icon.icon-loading { - min-height: 44px; + .app-navigation { + button.icon-share { + opacity: 0.3 !important; } - } - .app-navigation-entry.deleted { - .app-navigation-entry__title { - text-decoration: line-through; + button.icon-shared, + button.icon-public { + opacity: 0.7 !important; } - } - .app-navigation-entry.open-sharing { - box-shadow: inset 4px 0 var(--color-primary) !important; - } + button.icon-share:active, + button.icon-share:focus, + button.icon-share:hover, + button.icon-shared:active, + button.icon-shared:focus, + button.icon-shared:hover, + button.icon-public:active, + button.icon-public:focus, + button.icon-public:hover { + opacity: 1 !important; + } - .app-navigation-entry.disabled { - .app-navigation-entry__title { - color: var(--color-text-lighter) !important; + #calendars-list { + display: block !important; } - } - .app-navigation-entry .app-navigation-entry__children .app-navigation-entry { - padding-left: 0 !important; + li.app-navigation-loading-placeholder-entry { + div.icon.icon-loading { + min-height: 44px; + } + } - .avatar { - width: 32px; - height: 32px; - background-color: var(--color-border-dark); - background-size: 16px; + .app-navigation-entry-wrapper.deleted { + .app-navigation-entry__name { + text-decoration: line-through; + } } - .avatar.published { - background-color: var(--color-primary); - color: white; + .app-navigation-entry-wrapper.open-sharing { + box-shadow: inset 4px 0 var(--color-primary-element) !important; + margin-left: -6px; + padding-left: 6px; } - } - .app-navigation-entry__multiselect { - padding: 0 8px; + .app-navigation-entry-wrapper.disabled { + .app-navigation-entry__name { + color: var(--color-text-lighter) !important; + } + } - .multiselect { - width: 100%; + .app-navigation-entry-wrapper .app-navigation-entry__children .app-navigation-entry { + padding-left: 0 !important; - &__content-wrapper { - z-index: 200 !important; + .avatar { + width: 32px; + height: 32px; + background-color: var(--color-border-dark); + background-size: 16px; } - } - } - .app-navigation-entry__utils { - .action-checkbox__label { - padding-right: 0 !important; + .avatar.published { + background-color: var(--color-primary-element); + color: white; + } } - .action-checkbox__label::before { - margin: 0 4px 0 !important; - } - } + .app-navigation-entry__multiselect { + padding: 0 8px; - .app-navigation-entry-new-calendar { - .app-navigation-entry__title { - color: var(--color-text-maxcontrast) !important; - } + .multiselect { + width: 100%; + border-radius: var(--border-radius-large); - &:hover, - &--open { - .app-navigation-entry__title { - color: var(--color-text-light) !important; + &__content-wrapper { + z-index: 200 !important; + } } } - .action-item:not(.action-item--open) { - .action-item__menutoggle:not(:hover):not(:focus):not(:active) { - opacity: .5; + .app-navigation-entry__utils { + .action-checkbox__label { + padding-right: 0 !important; + } + + .action-checkbox__label::before { + margin: 0 4px 0 !important; } } - } + .app-navigation-entry-new-calendar { + .app-navigation-entry__name { + color: var(--color-text-maxcontrast) !important; + } + &:hover, + &--open { + .app-navigation-entry__name{ + color: var(--color-text-light) !important; + } + } - ul { + .action-item:not(.action-item--open) { + .action-item__menutoggle:not(:hover):not(:focus):not(:active) { + opacity: .5; + } + } - // Calendar list items / Subscription list items - > li.app-navigation-entry { + } - div.sharing-section { - //box-shadow: inset 4px 0 var(--color-primary); - //padding-left: 12px; - //padding-right: 12px; - //width: 100%; - div.multiselect { - width: calc(100% - 14px); - max-width: none; - z-index: 105; - } + ul { - .oneline { - white-space: nowrap; - position: relative; - } + // Calendar list items / Subscription list items + > li.app-navigation-entry-wrapper { + + div.sharing-section { + //box-shadow: inset 4px 0 var(--color-primary-element); + //padding-left: 12px; + //padding-right: 12px; + //width: 100%; - .shareWithList { - list-style-type: none; - display: flex; - flex-direction: column; + div.multiselect { + width: calc(100% - 14px); + max-width: none; + z-index: 105; + } - > li { - height: 44px; - white-space: normal; - display: inline-flex; - align-items: center; + .oneline { + white-space: nowrap; position: relative; + } + .shareWithList { + list-style-type: none; + display: flex; + flex-direction: column; + > li { + height: 44px; + white-space: normal; + display: inline-flex; + align-items: center; + position: relative; - .username { - padding: 0 8px; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; - } - > .sharingOptionsGroup { - margin-left: auto; - display: flex; - align-items: center; - white-space: nowrap; - - > a:hover, - > a:focus, - > .share-menu > a:hover, - > .share-menu > a:focus { - box-shadow: none !important; - opacity: 1 !important; - } - > .icon:not(.hidden), - > .share-menu .icon:not(.hidden){ - padding: 14px; - height: 44px; - width: 44px; - opacity: 0.5; - display: block; - cursor: pointer; + .username { + padding: 0 8px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; } - > .share-menu { - position: relative; - display: block; + > .sharingOptionsGroup { + margin-left: auto; + display: flex; + align-items: center; + white-space: nowrap; + + > a:hover, + > a:focus, + > .share-menu > a:hover, + > .share-menu > a:focus { + box-shadow: none !important; + opacity: 1 !important; + } + + > .icon:not(.hidden), + > .share-menu .icon:not(.hidden){ + padding: 14px; + height: 44px; + width: 44px; + opacity: 0.5; + display: block; + cursor: pointer; + } + + > .share-menu { + position: relative; + display: block; + } } } } } } - } - .appointment-config-list { - .app-navigation-caption { - margin-top: 22px; - } + .appointment-config-list { + .app-navigation-caption { + margin-top: 22px; + } - .app-navigation-entry-link, - .app-navigation-entry-link * { - cursor: default; + .app-navigation-entry-link, + .app-navigation-entry-link * { + cursor: default; + } } } } diff --git a/css/app-settings.scss b/css/app-settings.scss index cb36c2301d7c00747ea06c4b86ce5ce5b2ed31c3..f4ee21a9dcc14d31cd9df1fb54ba8f6a3c3d2e87 100644 --- a/css/app-settings.scss +++ b/css/app-settings.scss @@ -1,23 +1,6 @@ -/** - * Calendar App - * - * @copyright 2019 Georg Ehrke - * - * @author Georg Ehrke - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * +/*! + * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ #app-settings { @@ -50,34 +33,21 @@ } } - &__import-button { - display: block; - text-align: center; - background-position-x: 8px; - position: relative; - - .material-design-icon { - position: absolute; - } - } - &--slotDuration, &--defaultReminder { display: table; label { - display: table-cell; - min-width: 50%; - vertical-align: middle; + display: block; } .multiselect { - display: table-cell; - width: 50%; + display: block; } } - - &--timezone { + + &--timezone, + &--default-calendar { width: 100%; .multiselect { @@ -87,51 +57,6 @@ } } -.shortcut-overview-modal { - .modal-container { - display: flex !important; - flex-wrap: wrap; - padding: 0 12px 12px 12px !important; - - * { - box-sizing: border-box; - } - - .shortcut-section { - width: 50%; - flex-grow: 0; - flex-shrink: 0; - padding: 10px; - - .shortcut-section-item { - width: 100%; - display: grid; - grid-template-columns: 33% 67%; - column-gap: 10px; - - &:not(:first-child) { - margin-top: 10px; - } - - &__keys { - display: block; - text-align: right; - } - - &__label { - display: block; - text-align: left; - padding-top: 5px; - } - - &__spacer { - margin: 0 3px; - } - } - } - } -} - // Fix the shortcut overview on smaller screens @media screen and (max-width: 800px) { .shortcut-overview-modal .modal-container .shortcut-section { diff --git a/css/app-sidebar.scss b/css/app-sidebar.scss index b3243085b35aa10a81cef2c0986039c2b6c5bf81..e0cbae707d9ec3ed0a19fa843e6f7e9bfa21ce29 100644 --- a/css/app-sidebar.scss +++ b/css/app-sidebar.scss @@ -1,24 +1,6 @@ -/** - * Calendar App - * - * @copyright 2019 Georg Ehrke - * - * @author Georg Ehrke - * @author Richard Steinmetz - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * +/*! + * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ .app-sidebar, @@ -27,6 +9,29 @@ height: unset !important; } + .property-text-location { + align-items: stretch !important; + position:relative; + textarea { + border-right: 0px; + padding-right:27px; + } + .icon-externallink { + background-image: var(--icon-calendar-openlink-0075E0); + opacity: 1; + position: absolute; + top: 0; + right: 0; + z-index: 2; + display: block; + width: 34px; + height: 100%; + line-height: 34px; + text-align: center; + cursor:pointer; + } + } + .app-sidebar-header__action { margin-top: 0 !important; max-height: none !important; @@ -56,7 +61,7 @@ height: 50px; width: 50px; margin: 0 auto; - opacity: .5; + opacity: 0.5; } &__caption { @@ -74,31 +79,63 @@ } } + &__header { + display: flex; + width: 100%; + } + .editor-reminders-list-new-button { width: 100%; background-position-x: 8px; } + .app-sidebar-header { + &__action { + margin-top: 0 !important; + max-height: none !important; + flex-wrap: wrap; + + div { + flex-shrink: 0; + } + } + + &__desc { + // We use our custom header layout for the sidebar editor + height: 0 !important; + padding: 0 !important; + margin: 0 !important; + + // But keep the three-dot menu in the front + .app-sidebar-header__menu { + z-index: 1; + } + } + + &__description { + flex-direction: column; + + // Close button should be aligned with calendar picker (header) + padding-top: 5px; + } + } + .app-sidebar-tab { - display: flex; - flex-direction: column; - justify-content: space-between; + // Make the whole sidebar scrollable instead of just the active tab overflow: unset !important; max-height: unset !important; height: auto !important; &__buttons { - padding-top: 14px; position: fixed; - bottom: 0px; + bottom: var(--body-container-margin);; z-index: 2; width: calc(27vw - 11px); min-width: 300px - 11px; max-width: 500px - 11px; - right: 10px; background-color: var(--color-main-background); - padding-left: 22px; - padding-right: 22px; + border-radius: 0 0 var(--body-container-radius) 0; + padding: 0 8px 6px 0; button { width: 100%; @@ -110,6 +147,14 @@ } } + .app-sidebar-tabs { + // Fix empty content in case of invalid event URLs + .empty-content { + height: 100vh; + padding: 0 20px; + } + } + .property-title-time-picker-loading-placeholder { width: 100%; @@ -134,16 +179,42 @@ } .repeat-option-set { + flex-wrap: nowrap; + align-items: baseline; + + .repeat-option-set__repeat { + flex-wrap: nowrap; + gap: 10px; + } + .repeat-option-set__repeat-field { + flex: 1 1 150px; + min-width: 150px; + } + .repeat-option-set__end-repeat { + display: flex; + flex-wrap: wrap; + align-items: center; + gap: 10px; + + .repeat-option-set__end-repeat-field { + flex: 1 1 150px; + min-width: 350px; + } + } .repeat-option-set-section { &:not(:first-of-type) { - margin-top: 20px + margin-top: 10px; + display: flex; + flex-wrap: wrap; + flex-direction: column; + gap: calc(var(--default-grid-baseline) * 2); } &--on-the-select { display: flex; - align-items: center; - .multiselect { + + .v-select { width: 100%; min-width: 100px !important; // Set a lower min-width } @@ -156,13 +227,19 @@ &__grid { display: grid; grid-gap: 0; - + .primary{ + background-color:var(--color-primary-element) !important; + color:var(--color-primary-text)!important; + } .repeat-option-set-section-grid-item { - padding: 8px; + padding: 5px; + width: 100%; border: 1px solid var(--color-border-dark); text-align: center; margin: 0; border-radius: 0; + background-color:#ffffff; + color:var(--color-primary-element); } } } @@ -179,46 +256,62 @@ &--yearly { .repeat-option-set-section { &__grid { - grid-template-columns: repeat(4, auto); + grid-template-columns: repeat(7, auto); } } } &--interval-freq { display: flex; - align-items: center; - .multiselect, - input[type=number] { + .multiselect { min-width: 100px; width: 25%; } } &--end { - margin-top: 20px; - display: flex; - align-items: center; - + margin-top: 10px; .repeat-option-end { - &__label, - &__end-type-select { - display: block; - min-width: 75px; - width: 25%; - } + width: 100%; + display: flex; + flex-wrap: wrap; + align-items: center; + &__label, + &__end-type-select, + &__until, + &__count { + flex: 1 1 auto; + min-width: 0; + margin-right: 10px; + } + &__label{ + display: block; + min-width: 60px; + } + &__end-type-select { + min-width: 90px; + width: 100%; + } - &__until { - min-width: 75px; - width: 50% - } + &__until { + min-width: 90px; + width: 100%; + display: inline-block; + } - &__count { - min-width: 75px; - width: 25%; - } + &__count { + min-width: 90px; + width: 100%; + } } } + .end-repeat-container .end-repeat-dropdown, + .end-repeat-container .end-repeat-date { + flex: 0 1 auto; + min-width: 150px; + width: auto; + } &__label { margin-right: auto; @@ -232,6 +325,22 @@ .property-title-time-picker { width: 100%; + &--readonly { + display: flex; + align-items: flex-start; + + & > *:not([align-self="center"]) { + align-self: flex-start !important; + } + } + + &__icon { + width: 34px; + height: 34px; + margin-left: -5px; + margin-right: 5px; + } + &__time-pickers, &__all-day { display: flex; @@ -239,10 +348,12 @@ } &__time-pickers { + flex-wrap: wrap; justify-content: space-between; + gap: 5px; .mx-datepicker { - width: 49%; + flex: 1 auto; .mx-input-append { background-color: transparent !important; @@ -250,24 +361,35 @@ } &--readonly { + justify-content: start; + margin-top: var(--default-grid-baseline); + .property-title-time-picker-read-only-wrapper { display: flex; align-items: center; - width: 50%; - margin: 3px 3px 3px 0; - padding: 8px 7px; + padding-left: 8px !important; background-color: var(--color-main-background); color: var(--color-main-text); outline: none; + gap: var(--default-grid-baseline); + margin-bottom: var(--default-grid-baseline); + + &--start-date { + padding: 0; + } + + &--end-date { + padding: 0; + } &__icon { margin-left: 8px; height: 16px; width: 16px; - opacity: .3; + opacity: 0.3; &--highlighted { - opacity: .7; + opacity: 0.7; } &:focus, @@ -279,34 +401,26 @@ } } - @media screen and (max-width: 1500px) { - &__time-pickers { - display: block; - } - - .mx-datepicker { - width: 100%; - } + &__all-day { + padding-left: 3px; + margin-top: 5px; - .property-title-time-picker-read-only-wrapper { - width: 100%; + // Reduce the height just a little bit (from 44px) to save some space + .checkbox-radio-switch__label { + min-height: 32px; } } - &__all-day { - justify-content: flex-start; - } - .datetime-picker-inline-icon { margin-top: 17px; - opacity: .3; + opacity: 0.3; border: none; background-color: transparent; border-radius: 0; padding: 6px !important; &--highlighted { - opacity: .7; + opacity: 0.7; } &:focus, @@ -325,6 +439,14 @@ align-items: center; min-height: 44px; + .v-select { + margin: 0; + } + + .vs__dropdown-toggle { + width: 200px; + } + &__icon { align-self: flex-start; @@ -365,7 +487,7 @@ padding-right: 8px; input[type=number] { - width: 3em; + width: 4em; } .multiselect { @@ -425,7 +547,6 @@ &__summary { display: flex; align-items: center; - margin-bottom: 5px; &__icon { width: 34px; @@ -436,7 +557,7 @@ &__content { flex: 1 auto; - padding: 0 7px; + padding: 8px 7px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; @@ -448,45 +569,6 @@ } } - .resource-search__multiselect, - .invitees-search__multiselect { - width: 100%; - - .resource-search-list-item, - .invitees-search-list-item { - display: flex; - align-items: center; - width: 100%; - - // Account for avatar width (because it is position: relative) - padding-right: 32px; - - &__label { - width: 100%; - padding: 0 8px; - - &__availability { - color: var(--color-text-maxcontrast); - } - - div { - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - } - - div:nth-child(1) { - color: var(--color-main-text) - } - - div:nth-child(2) { - color: var(--color-text-lighter); - line-height: 1; - } - } - } - } - .resource-list-item, .invitees-list-item { display: flex; @@ -551,8 +633,8 @@ background-color: grey; } } - .property-text, + .property-text-location, .property-select, .property-color, .property-select-multiple, @@ -562,7 +644,6 @@ display: flex; width: 100%; align-items: flex-start; - margin-bottom: 5px; &__icon, &__info { @@ -579,6 +660,7 @@ &__info { display: flex; justify-content: center; + flex-shrink: 0; opacity: .5; } @@ -587,6 +669,7 @@ } &__icon { + flex-shrink: 0; margin-left: -5px; margin-right: 5px; } @@ -596,12 +679,12 @@ textarea, input, - div.multiselect { + div.v-select { width: 100%; } textarea { - max-height: calc(100vh - 600px); + max-height: 120px; vertical-align: top; margin: 0; } @@ -610,7 +693,6 @@ div { width: calc(100% - 8px); /* for typical (thin) scrollbar size */ white-space: pre-line; - margin: 3px 3px 3px 0; padding: 8px 7px; background-color: var(--color-main-background); color: var(--color-main-text); @@ -619,42 +701,85 @@ word-break: break-word; /* allows breaking on long URLs */ max-height: 30vh; } - - a.linkified { - text-decoration: underline; - - &::after { - content: ' ↗'; - } - } } &--readonly-calendar-picker { - div.calendar-picker-option { - margin: 3px 3px 3px 0; padding: 8px 7px; } } } } - .property-color { + .property-text, + .property-select, + .property-color, + .property-select-multiple, + .property-title, + .property-repeat, + .resource-capacity, + .resource-room-type { + margin-bottom: 5px; + + &--readonly { + margin-bottom: 0; + align-content: center; + + & > *:not([align-self="flex-start"]) { + align-self: center !important; + } + } + } + .property-select, + .property-select-multiple { + align-items: center; + + .v-select { + min-width: unset !important; + } + } + + .property-color { &__input { display: flex; + gap: 5px; + margin-bottom: 5px; + + &--readonly { + // Align with other (text based) fields + margin: 3px 0 3px 7px; + } } &__color-preview { - border-radius: var(--border-radius); - height: 34px !important; - width: 34px !important; - margin: 0; + width:var(--default-clickable-area) !important; + height: var(--default-clickable-area) !important; + border-radius: var(--default-clickable-area); } } .property-text { + &__icon { + // Prevent icon misalignment on vertically growing inputs + height: unset; + align-self: flex-start; + padding-top: 12px; + } + + &--readonly { + .property-text__icon { + padding-top: 0; + } + } + &__input { + &--readonly { + // Reduce line height but still keep first row aligned to the icon + line-height: 1; + padding-top: calc(var(--default-line-height) / 2 - 0.5lh); + } + textarea { resize: none; } @@ -687,9 +812,24 @@ } .property-title { - &__input, - &__input input { - font-size: 20px; + &__input, input { + font-weight: bold; + &__rtl{ + text-align: right; + } + } + + &__input--readonly { + font-size: 18px; + } + } + + // Normalize gaps between all properties. We use outer margins between each row so a padding + // around inputs (from core) is not required. + .property-title, + .property-title-time-picker { + input { + margin: 0; } } @@ -697,16 +837,19 @@ margin-bottom: 5px; } - .illustration-header { - max-height: 150px; - height: 150px; - width: 100%; +} + +.event-popover .event-popover__inner { + .event-popover__response-buttons { + margin-top: 8px; + margin-bottom: 0; } - .illustration-header svg { - width: 100%; - height: 150px; - padding: 8px 8px 0 8px; + .property-text, + .property-title-time-picker { + &__icon { + margin: 0 !important; + } } } @@ -724,55 +867,60 @@ } } +.warning-text{ + padding: 5px; +} + .event-popover { - .popover__inner { + // Don't cut popovers above popovers (e.g. date time picker) + .v-popper__inner { + overflow: unset !important; + } + + .event-popover__inner { text-align: left; - max-width: 450px; - width: 450px; - padding: 5px 8px; + max-width: 480px; + width: 480px; + padding: 5px 10px 10px 10px; + + .property-text-location { + align-items: stretch !important; + position: relative; + textarea { + border-right: 0px; + } + } .empty-content { margin-top: 0 !important; padding: 50px 0; } - .illustration-header { - height: 100px; - overflow: hidden; - margin-bottom: 5px; - background-color: var(--color-background-dark); - // There is probably a more elegant solution for this - margin-top: -5px; - margin-left: -8px; - width: 466px; - border-top-left-radius: var(--border-radius); - border-top-right-radius: var(--border-radius); - } - - .popover__inner { - max-width: unset !important; + .property-title-time-picker:not(.property-title-time-picker--readonly) { + margin-bottom: 12px; } - .property-title-time-picker { - margin-bottom: 12px; + .event-popover__invitees { + .avatar-participation-status__text { + bottom: 22px; + } } .event-popover__buttons { margin-top: 8px; - display: flex; - - button { - width: 100%; - } } - .event-popover__top-right-actions { + .event-popover__top-actions { + display: flex; + gap: var(--default-grid-baseline); position: absolute !important; - top: 0 !important; - right: 0 !important; + top: var(--default-grid-baseline) !important; z-index: 100 !important; - opacity: .7 !important; + opacity: 0.7 !important; border-radius: 22px !important; + align-items: center; + inset-inline-end : var(--default-grid-baseline) !important; + .action-item.action-item--single { width: 44px !important; @@ -797,7 +945,7 @@ } } -.event-popover[x-placement^='bottom'] { +.event-popover[x-placement^="bottom"] { .popover__arrow { border-bottom-color: var(--color-background-dark); } @@ -806,6 +954,7 @@ .calendar-picker-option { display: flex; align-items: center; + overflow: hidden; &__color-indicator { width: 12px; @@ -820,6 +969,7 @@ &__label { overflow: hidden; text-overflow: ellipsis; + white-space: nowrap; flex-grow: 1; } @@ -840,6 +990,12 @@ border-radius: 50%; border: none; margin-right: 8px; + flex-shrink: 0; + } + + .icon { + margin-left: 4px; + scale: 0.8; } } @@ -849,5 +1005,55 @@ display: flex; justify-content: space-between; align-items: center; - margin-top: 20px; + + // Only apply the margin if at least one button is being rendered + &:not(:empty) { + margin-top: 20px; + } +} + +.vs__dropdown-option span { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.resource-search-list-item, +.invitees-search-list-item { + display: flex; + align-items: center; + width: 100%; + text-align: start; + // Account for avatar width (because it is position: relative) + + padding-inline-end: 32px; + + &__label { + width: 100%; + padding: 0 8px; + + &__availability { + color: var(--color-text-maxcontrast); + } + + div { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + + div:nth-child(1) { + color: var(--color-main-text) + } + + div:nth-child(2) { + color: var(--color-text-lighter); + line-height: 1; + } + } +} + +.resource-search__multiselect, +.invitees-search__multiselect { + width: 100%; } diff --git a/css/calendar.scss b/css/calendar.scss index ae201473505e1265aebca6b40579f3998ade69c1..49cd9749aabb6df6107eedc946be15ffc9578a16 100644 --- a/css/calendar.scss +++ b/css/calendar.scss @@ -1,23 +1,6 @@ -/** - * Calendar App - * - * @copyright 2019 Georg Ehrke - * - * @author Georg Ehrke - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * +/*! + * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ @import 'app-navigation.scss'; @import 'app-sidebar.scss'; @@ -29,3 +12,4 @@ @import 'import.scss'; @import 'print.scss'; @import 'public.scss'; +@import 'props-linkify-links.scss'; diff --git a/css/dashboard.css b/css/dashboard.css new file mode 100644 index 0000000000000000000000000000000000000000..fc01bc030fa2440b43a9d1d3a338a997a7879163 --- /dev/null +++ b/css/dashboard.css @@ -0,0 +1,8 @@ +/*! + * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ +.app-icon-calendar { + background-image: url('../img/calendar-dark.svg'); + filter: var(--background-invert-if-dark); +} diff --git a/css/freebusy.scss b/css/freebusy.scss index 270ab06b031d91cb50069f3fe6a5a6a3b1c44d83..1d5f6a173a5bb40a1005a2399f089827a39af627 100644 --- a/css/freebusy.scss +++ b/css/freebusy.scss @@ -1,23 +1,6 @@ -/** - * Calendar App - * - * @copyright 2019 Georg Ehrke - * - * @author Georg Ehrke - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * +/*! + * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ .modal--scheduler { @@ -28,7 +11,7 @@ } .blocking-event-free-busy { - border-color: red; + border-color: var(--color-primary-element); border-style: solid; border-left-width: 2px; border-right-width: 2px; @@ -38,10 +21,12 @@ } .blocking-event-free-busy.blocking-event-free-busy--first-row { + border-radius: var(--border-radius) var(--border-radius) 0 0; border-top-width: 2px; } .blocking-event-free-busy.blocking-event-free-busy--last-row { + border-radius: 0 0 var(--border-radius) var(--border-radius) ; border-bottom-width: 2px; } @@ -55,7 +40,6 @@ } .freebusy-caption { - display: flex; margin-top: 10px; &__calendar-user-types, @@ -65,12 +49,14 @@ } &__colors { - display: flex; - justify-content: space-between; - + width: 100%; + display:flex; + flex-direction: column; + padding: 5px; .freebusy-caption-item { display: flex; align-items: center; + margin-right: 30px; &__color { height: 1em; diff --git a/css/fullcalendar.scss b/css/fullcalendar.scss index 9061b73776b13cb92fc57dda5f97e50ebd85dd21..7d260ec10db86c838483af4e62aea7c71db6b3c2 100644 --- a/css/fullcalendar.scss +++ b/css/fullcalendar.scss @@ -1,28 +1,10 @@ -/** - * Calendar App - * - * @copyright 2020 Georg Ehrke - * - * @author Georg Ehrke - * @author René Gieling - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * +/*! + * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ /** Override some FullCalendar CSS vars: */ -:root { +.fc { --fc-small-font-size: 0.875em; --fc-page-bg-color: var(--color-main-background) !important; --fc-neutral-bg-color: var(--color-background-dark) !important; @@ -31,9 +13,9 @@ --fc-daygrid-event-dot-width: 10px !important; - --fc-event-bg-color: var(--color-primary); - --fc-event-border-color: var(--color-primary-text); - --fc-event-text-color: var(--color-primary-text); + --fc-event-bg-color: var(--color-primary-element); + --fc-event-border-color: var(--color-primary-element-text); + --fc-event-text-color: var(--color-primary-element-text); --fc-event-selected-overlay-color: var(--color-box-shadow); --fc-event-resizer-thickness: 8px; @@ -41,7 +23,7 @@ --fc-event-resizer-dot-border-width: 1px; --fc-non-business-color: var(--color-background-dark); - --fc-bg-event-color: var(--color-primary); + --fc-bg-event-color: var(--color-primary-element); --fc-bg-event-opacity: 0.3; --fc-highlight-color: rgba(188, 232, 241, 0.3); // TODO - use some color css var from us? --fc-today-bg-color: var(--color-main-background) !important; @@ -82,30 +64,32 @@ // Today highlighting .fc-day-today { &.fc-col-header-cell { - background-color: var(--color-primary-light); a, span { - background-color: var(--color-primary); - color: var(--color-primary-text) !important; - border-radius: var(--border-radius-pill); padding: 2px 6px; font-weight: bold; + background-color: var(--color-primary-element); + color: var(--color-primary-element-text) !important; + border-radius: var(--border-radius-small); } } .fc-event { - box-shadow: 0px 0px 0px 1px var(--color-primary-light) !important; + box-shadow: 0px 0px 0px 1px var(--color-primary-element-light) !important; + margin-top: 0px; } - .fc-daygrid-day-number { - background: var(--color-primary); - color: var(--color-primary-text); - border-radius: 50%; - margin: 4px; - width: 24px; - height: 24px; - text-align: center; - font-weight: bold !important; - padding: 0 !important; + .fc-daygrid-day-top { + .fc-daygrid-day-number { + margin: 4px; + width: 24px; + height: 24px; + text-align: center; + font-weight: bold !important; + padding: 0 !important; + background: var(--color-primary-element); + color: var(--color-primary-element-text); + border-radius: var(--border-radius-small); + } } } @@ -115,18 +99,30 @@ word-break: break-word; } -// highlight current day -.fc .fc-daygrid-day.fc-day-today, -.fc .fc-timegrid-col.fc-day-today { - background-color: var(--color-primary-light) !important; - background-clip: padding-box; +// Prevent events overlapping over day header +.fc .fc-list-sticky .fc-list-day > * { + z-index: 1; +} + +// Padding to account for left navigation toggle +.fc-list-table .fc-list-day-cushion { + padding-left: calc(var(--default-clickable-area) + var(--default-grid-baseline) * 2); +} + +// highlight current day (exclude day view) +.fc-timeGridWeek-view, +.fc-dayGridMonth-view { + .fc-col-header-cell.fc-day-today, + .fc-daygrid-day.fc-day-today, + .fc-timegrid-col.fc-day-today { + background-color: var(--color-primary-element-light) !important; + } } // emphasize current month in month view .fc-daygrid-day.fc-day.fc-day-other, .fc .fc-daygrid-day.fc-day-today.fc-day-other { background-color: var(--color-background-dark) !important; - background-clip: padding-box; border: 1px solid var(--color-background-darker); .fc-daygrid-day-top { opacity: 0.6; @@ -136,9 +132,11 @@ // ### FullCalendar Event adjustments .fc-event { padding-left: 3px; + border-width: 2px; &.fc-event-nc-task-completed, &.fc-event-nc-tentative, + &.fc-event-past, &.fc-event-nc-cancelled { opacity: .5; } @@ -153,6 +151,7 @@ .fc-event-title { text-overflow: ellipsis; + font-weight: 700; } // Reminder icon on events with alarms set @@ -178,7 +177,7 @@ align-content: center; .fc-event-title-checkbox { - margin: 6px 4px 0 0; + margin: 4px 4px 0 0; line-height: 1; } } @@ -204,6 +203,10 @@ max-width: 25vw; } + svg { + margin-right: 2px; + } + @media only screen and (max-width: 767px) { .fc-list-event-location, .fc-list-event-description { @@ -239,9 +242,11 @@ } } -.fc-v-event { - min-height: 4em; +.fc-timegrid-col-events{ + margin: 0 !important; +} +.fc-v-event { &.fc-timegrid-event-short { min-height: 2em; } @@ -264,3 +269,42 @@ .fc-daygrid-day-events { position:relative !important; } + +// Fix week button overlapping with the toggle +.fc-col-header-cell { + padding-top: 10px !important; +} +.fc-timegrid-axis-cushion { + margin-top: 44px; +} +// Additional workaround for Firefox +.fc-timegrid-axis.fc-scrollgrid-shrink { + height: 65px; +} + +.fc-timegrid-event-harness, .fc-timegrid-event { + // previously was 1px for no apparent reason + margin-bottom: 0; +} + +// Leave some space for dragging +.fc-timeGridDay-view, .fc-timeGridWeek-view { + .fc-event { + margin-right: 1vw; + } + + .fc-event-mirror { + border: none !important; + } + + .fc-highlight { + background: none !important; + } + +} + +.fc-timeGridDay-view { + .fc-event { + margin-right: 2vw; + } +} diff --git a/css/global.scss b/css/global.scss index 3eaee745a78215dafd902572ab0342b7f34ff044..4f49d9e13dfc43c5844e027a434255890751c0be 100644 --- a/css/global.scss +++ b/css/global.scss @@ -1,23 +1,6 @@ -/** - * Calendar App - * - * @copyright 2019 Georg Ehrke - * - * @author Georg Ehrke - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * +/*! + * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ .toast-calendar-multiline { @@ -29,3 +12,7 @@ overflow-x: hidden; } } + +.app-navigation-spacer { + list-style-type: none; +} diff --git a/css/icons.scss b/css/icons.scss index 0cbfefe80822039db83b7790521c1af7b40e52a5..dfc0e47e47e06de12ca4f33f6ddbd3d3efd22e8f 100644 --- a/css/icons.scss +++ b/css/icons.scss @@ -45,3 +45,4 @@ @include icon-black-white('view-week', 'calendar', 1); @include icon-color('reminder', 'calendar', '#fffffe', 1); @include icon-color('reminder', 'calendar', '#000001', 1); +@include icon-color('openlink', 'calendar', '#0075E0', 1); \ No newline at end of file diff --git a/css/import.scss b/css/import.scss index 290b52a2ac7d5dfa483a4441d7c3d0755491e650..3fc8c9a2f04dfe889fb2924b282b10d4ecda6e69 100644 --- a/css/import.scss +++ b/css/import.scss @@ -1,23 +1,6 @@ -/** - * Calendar App - * - * @copyright 2019 Georg Ehrke - * - * @author Georg Ehrke - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * +/*! + * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ .import-modal { @@ -31,6 +14,11 @@ text-align: center; } + .import-modal__actions { + display: flex; + gap: 5px; + } + .import-modal-file-item { display: flex; padding-top: 10px; diff --git a/css/print.scss b/css/print.scss index 4e1e3737fc2f6bedccb0f722da1d16bb660562e3..1c097c59ceed2a795453f6fc8c5095c1024259de 100644 --- a/css/print.scss +++ b/css/print.scss @@ -1,23 +1,6 @@ -/** - * Calendar App - * - * @copyright 2019 Georg Ehrke - * - * @author Georg Ehrke - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * +/*! + * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ @media print { diff --git a/css/props-linkify-links.scss b/css/props-linkify-links.scss new file mode 100644 index 0000000000000000000000000000000000000000..31fe8e58d2a47d5d766cd3b95d7c55cec2908faf --- /dev/null +++ b/css/props-linkify-links.scss @@ -0,0 +1,35 @@ +/*! + * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ +.property-text__input--linkify { + flex-basis: min-content; +} + +.linkify-links { + border: 2px solid var(--color-border-maxcontrast); + border-radius: var(--border-radius-large); + cursor: text; + width: 100% !important; + box-sizing: border-box; + padding: 12px; + white-space: pre-line; + overflow: auto; + line-height: normal; + word-break: break-word; + display: inline-block; + vertical-align: top; + max-height: 16em; + max-height: calc(100vh - 500px); + + a.linkified { + text-decoration: underline; + + // Prevent misalignment when a linkified line starts with a link, e.g. in the location field + margin: 0; + + &::after { + content: ' ↗'; + } + } +} diff --git a/css/public.scss b/css/public.scss index b1521518805d2d77e57b5533b9d610ed7a81ea16..03b19ee00d72a79b09723cc1a6e54b3e80cd257b 100644 --- a/css/public.scss +++ b/css/public.scss @@ -1,51 +1,32 @@ -/** - * Calendar App - * - * @copyright 2019 Georg Ehrke - * - * @author Georg Ehrke - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * +/*! + * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ #emptycontent-container #emptycontent { color: #a9a9a9 !important; } -#body-public .content { - min-height: 100% !important; -} - .content.app-calendar.app-calendar-public-embedded { + flex-direction: column; + #embed-header { - position: fixed; - top: 0; - left: 0; - height: 44px; + height: 50px; width: 100%; + padding: calc(var(--default-grid-baseline) * 2); box-sizing: border-box; background-color: var(--color-main-background); border-bottom: 1px solid var(--color-border); overflow: visible; z-index: 2000; display: flex; + align-items: center; justify-content: space-between; .embed-header__date-section, .embed-header__share-section { display: flex; + gap: 5px; } .view-button-section { @@ -59,15 +40,35 @@ min-width: 150px; } } + + .datepicker-button-section, + .today-button-section, + .view-button-section { + button { + // Header has only one row so the built-in spacing is not needed + margin: 0; + } + } } .app-content { - margin-top: 44px - //position: absolute !important; - //top: 44px; - //left: 0; - //right: 0; - //bottom: 0; - //min-height: unset !important; + // Expand to full height (need to overwrite this because a flex column layout is used here) + flex-basis: auto; + } +} + +#body-public { + input#initial-state-calendar-is_embed ~ header#header { + display: none; + } + .app-calendar-public { + & + footer { + // Only show bottom rounded corners + border-radius: 0 0 var(--border-radius-large) var(--border-radius-large); + } + + .app-content { + height: calc(100% - 65px) !important; // $footer-height is hardcoded to 65px in core/css/public.scss + } } } diff --git a/img/LICENSES.md b/img/LICENSES.md deleted file mode 100644 index 751bae4f66ba2a970700e6a4f366546800bc3f04..0000000000000000000000000000000000000000 --- a/img/LICENSES.md +++ /dev/null @@ -1,51 +0,0 @@ -# Licenses - -## briefcase.svg -- Created by: [Oriza Creative](https://thenounproject.com/orizacreativa) -- License: CC-BY -- Link: https://thenounproject.com/search/?q=briefcase&i=2834945 - -## eye.svg -- Created by: [David](https://thenounproject.com/kaxgyatso) -- License: CC-BY -- Link: https://thenounproject.com/search/?q=eye&i=428971 - -# invitees-no-response.svg -- Created by: [Alena](https://thenounproject.com/joyeyes) -- License: CC-BY -- Link: https://thenounproject.com/search/?q=question%20mark&i=1156193 - -## repeat.svg -- Created by: [Brandy Bora](https://thenounproject.com/brandy.bora/) -- License: CC-BY -- Link: https://thenounproject.com/search/?q=repeat&i=1555394 - -## view-day.svg -- Created by: Google -- License: Apache License version 2.0 -- Link: https://material.io/resources/icons/?search=view_&icon=view_day&style=baseline - -## view-list.svg -- Created by: Google -- License: Apache License version 2.0 -- Link: https://material.io/resources/icons/?search=view_&icon=view_list&style=baseline - -## view-module.svg -- Created by: Google -- License: Apache License version 2.0 -- Link: https://material.io/resources/icons/?search=view_&icon=view_module&style=baseline - -## view-week.svg -- Created by: Google -- License: Apache License version 2.0 -- Link: https://material.io/resources/icons/?search=view_&icon=view_week&style=baseline - -## new-calendar.svg -- Created by: Austin Andrews -- License: Apache License version 2.0 -- Link: https://materialdesignicons.com/icon/calendar-blank - -## new-calendar-with-task-list.svg -- Created by: Google -- License: Apache License version 2.0 -- Link: https://materialdesignicons.com/icon/calendar-check diff --git a/img/briefcase.svg b/img/briefcase.svg deleted file mode 100644 index aecda4e4dee2eeffd3db9dbe2c77f0b57b42110a..0000000000000000000000000000000000000000 --- a/img/briefcase.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/calendar-dark.svg b/img/calendar-dark.svg new file mode 100644 index 0000000000000000000000000000000000000000..7c71b24fba8b9db5ce9bcd43d0c6c62de03ef769 --- /dev/null +++ b/img/calendar-dark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/calendar.png b/img/calendar.png index 7704257725f2f4ecca0f920f4c01f2fa09e4fce2..06f91d1f31be218099baa9e9b15acd89a94437da 100644 Binary files a/img/calendar.png and b/img/calendar.png differ diff --git a/img/calendar.svg b/img/calendar.svg index 74d810cb7f1b5a88937de16a5163c42ab5b3bc72..d5e7166aa0069176d6a0f02f2ba5a4f364e7d001 100644 --- a/img/calendar.svg +++ b/img/calendar.svg @@ -1,6 +1 @@ - - - - - - + \ No newline at end of file diff --git a/img/circle.svg b/img/circle.svg deleted file mode 100644 index 0ebe00d475bcac42f4a1af242b534419b48f043e..0000000000000000000000000000000000000000 --- a/img/circle.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/color-picker.svg b/img/color-picker.svg deleted file mode 100644 index 776b7e7df3110943bf0d07df6cd1b7aa4f1b6eef..0000000000000000000000000000000000000000 --- a/img/color-picker.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/img/embed.svg b/img/embed.svg deleted file mode 100644 index 30ac39eb97e738a6acb2378b62a01d9c509c0732..0000000000000000000000000000000000000000 --- a/img/embed.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/eye.svg b/img/eye.svg deleted file mode 100644 index 850c576e0a824d83e5adacbbe81df303800df4a3..0000000000000000000000000000000000000000 --- a/img/eye.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/favicon-mask.svg b/img/favicon-mask.svg index ec7ebc6654ae882d66f885a571b835a7a978a6a3..3a7e53778c530ab7bafa45fed928dda47661b7bf 100644 --- a/img/favicon-mask.svg +++ b/img/favicon-mask.svg @@ -1,2 +1 @@ - - + \ No newline at end of file diff --git a/img/favicon-touch.png b/img/favicon-touch.png index d3af79cccba87eb90be4d5f986329f5455edcc83..897fc451af6cddc2aba4de3e2fdcdafed79839d4 100644 Binary files a/img/favicon-touch.png and b/img/favicon-touch.png differ diff --git a/img/favicon-touch.svg b/img/favicon-touch.svg index 35804d0277be4e65a8adf505bd40193c35112783..8ad328f05e725bbeeae08ec1dc2efcebcbb2df05 100644 --- a/img/favicon-touch.svg +++ b/img/favicon-touch.svg @@ -1,2 +1 @@ - - + \ No newline at end of file diff --git a/img/favicon.ico b/img/favicon.ico index f890f830965141ed7daea53848c539dd27ae0229..cfd572eaaa4d726ec74cf9e698ac3b5035a8b720 100644 Binary files a/img/favicon.ico and b/img/favicon.ico differ diff --git a/img/favicon.png b/img/favicon.png index c83fcaa70ab0e9b9983f5dc342702d8acceab118..92c98e46e9f4729a3f01aea592df37f758afe920 100644 Binary files a/img/favicon.png and b/img/favicon.png differ diff --git a/img/favicon.svg b/img/favicon.svg index 51f6ac34847662ef4e1b59743982b71ed548dc73..8f3fac3a5f6efa10a7652b7f6f8caaef6b1a68d6 100644 --- a/img/favicon.svg +++ b/img/favicon.svg @@ -1,2 +1 @@ - - + \ No newline at end of file diff --git a/img/illustrations/a_day_at_the_park.svg b/img/illustrations/a_day_at_the_park.svg deleted file mode 100644 index 8e1c7a16bfaa424f7a9b0dd3663fe39b005c7ca3..0000000000000000000000000000000000000000 --- a/img/illustrations/a_day_at_the_park.svg +++ /dev/null @@ -1 +0,0 @@ -a day at the park \ No newline at end of file diff --git a/img/illustrations/a_moment_to_relax.svg b/img/illustrations/a_moment_to_relax.svg deleted file mode 100644 index 2f36d92e353d37a69c07d5f40b319f81afad6de4..0000000000000000000000000000000000000000 --- a/img/illustrations/a_moment_to_relax.svg +++ /dev/null @@ -1 +0,0 @@ -a_moment_to_relax \ No newline at end of file diff --git a/img/illustrations/adventure.svg b/img/illustrations/adventure.svg deleted file mode 100644 index d9eda74504dac3081fe808cebfc3d93fe3c43d97..0000000000000000000000000000000000000000 --- a/img/illustrations/adventure.svg +++ /dev/null @@ -1 +0,0 @@ -adventure \ No newline at end of file diff --git a/img/illustrations/art_lover.svg b/img/illustrations/art_lover.svg deleted file mode 100644 index 90bf26c6fe918bbfb6ae1bd97da23699bca0217e..0000000000000000000000000000000000000000 --- a/img/illustrations/art_lover.svg +++ /dev/null @@ -1 +0,0 @@ -art lover \ No newline at end of file diff --git a/img/illustrations/art_museum.svg b/img/illustrations/art_museum.svg deleted file mode 100644 index 25077fce14b0145c77f68389a34489036391f383..0000000000000000000000000000000000000000 --- a/img/illustrations/art_museum.svg +++ /dev/null @@ -1 +0,0 @@ -ready_to_print \ No newline at end of file diff --git a/img/illustrations/awards.svg b/img/illustrations/awards.svg deleted file mode 100644 index 280335f1f13573f4ff618139fa230b0eee5c6dbb..0000000000000000000000000000000000000000 --- a/img/illustrations/awards.svg +++ /dev/null @@ -1 +0,0 @@ -awards \ No newline at end of file diff --git a/img/illustrations/barbecue.svg b/img/illustrations/barbecue.svg deleted file mode 100644 index c7b1c03a425e8b23a584d92b181946bff7f5a563..0000000000000000000000000000000000000000 --- a/img/illustrations/barbecue.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/img/illustrations/barber.svg b/img/illustrations/barber.svg deleted file mode 100644 index 8c211fc76ffe97078f0864ec88baf6198fc6ad40..0000000000000000000000000000000000000000 --- a/img/illustrations/barber.svg +++ /dev/null @@ -1 +0,0 @@ -barber \ No newline at end of file diff --git a/img/illustrations/basketball.svg b/img/illustrations/basketball.svg deleted file mode 100644 index 975cfd3a37e4165df84eb5e702f0cd76718668aa..0000000000000000000000000000000000000000 --- a/img/illustrations/basketball.svg +++ /dev/null @@ -1 +0,0 @@ -basketball \ No newline at end of file diff --git a/img/illustrations/bicycle.svg b/img/illustrations/bicycle.svg deleted file mode 100644 index 2fb3927a0f7f082e2d1ef4fb3205f58deaac07ea..0000000000000000000000000000000000000000 --- a/img/illustrations/bicycle.svg +++ /dev/null @@ -1 +0,0 @@ -Ride a bicycle \ No newline at end of file diff --git a/img/illustrations/biking.svg b/img/illustrations/biking.svg deleted file mode 100644 index e59dd7b5c3fcb14512cca68527d8ebb0071c192c..0000000000000000000000000000000000000000 --- a/img/illustrations/biking.svg +++ /dev/null @@ -1 +0,0 @@ -biking \ No newline at end of file diff --git a/img/illustrations/birthday_cake.svg b/img/illustrations/birthday_cake.svg deleted file mode 100644 index 71841b509b13c575c44d332a59de34b41809c90c..0000000000000000000000000000000000000000 --- a/img/illustrations/birthday_cake.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/img/illustrations/business_plan.svg b/img/illustrations/business_plan.svg deleted file mode 100644 index fd9a9fc9879f373227f97f04f7730160374ef190..0000000000000000000000000000000000000000 --- a/img/illustrations/business_plan.svg +++ /dev/null @@ -1 +0,0 @@ -business plan \ No newline at end of file diff --git a/img/illustrations/calendar.svg b/img/illustrations/calendar.svg deleted file mode 100644 index 69e73896e3fcd31715d9709e2b9386a05e58df85..0000000000000000000000000000000000000000 --- a/img/illustrations/calendar.svg +++ /dev/null @@ -1 +0,0 @@ -calendar \ No newline at end of file diff --git a/img/illustrations/calling.svg b/img/illustrations/calling.svg deleted file mode 100644 index 5b34585e7617eb9fa90624062f050ebb0574b220..0000000000000000000000000000000000000000 --- a/img/illustrations/calling.svg +++ /dev/null @@ -1 +0,0 @@ -calling \ No newline at end of file diff --git a/img/illustrations/camera.svg b/img/illustrations/camera.svg deleted file mode 100644 index 8a815bbba5a4bba8f7c3ac7cb8efa3e18362e4b2..0000000000000000000000000000000000000000 --- a/img/illustrations/camera.svg +++ /dev/null @@ -1 +0,0 @@ -camera \ No newline at end of file diff --git a/img/illustrations/camping.svg b/img/illustrations/camping.svg deleted file mode 100644 index 2cc9d0e6efacc474c2d92606b1fea03900fc4b4f..0000000000000000000000000000000000000000 --- a/img/illustrations/camping.svg +++ /dev/null @@ -1 +0,0 @@ -Camping \ No newline at end of file diff --git a/img/illustrations/candidate.svg b/img/illustrations/candidate.svg deleted file mode 100644 index 22305edf603f6acaa3aa90731f0d4a181ce37369..0000000000000000000000000000000000000000 --- a/img/illustrations/candidate.svg +++ /dev/null @@ -1 +0,0 @@ -candidate \ No newline at end of file diff --git a/img/illustrations/celebration.svg b/img/illustrations/celebration.svg deleted file mode 100644 index f0fcc804ad56d0ccba230df3b229cc3b5b9523b0..0000000000000000000000000000000000000000 --- a/img/illustrations/celebration.svg +++ /dev/null @@ -1 +0,0 @@ -celebration \ No newline at end of file diff --git a/img/illustrations/certification.svg b/img/illustrations/certification.svg deleted file mode 100644 index 93cc8481f58901152770108198fd61e5ad39b776..0000000000000000000000000000000000000000 --- a/img/illustrations/certification.svg +++ /dev/null @@ -1 +0,0 @@ -certification \ No newline at end of file diff --git a/img/illustrations/charts.svg b/img/illustrations/charts.svg deleted file mode 100644 index cada5e9071f5ca628da87b220ed593d909177175..0000000000000000000000000000000000000000 --- a/img/illustrations/charts.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/img/illustrations/christmas_tree.svg b/img/illustrations/christmas_tree.svg deleted file mode 100644 index b65ac709b13557ef861533b8373acf3b107c7b8a..0000000000000000000000000000000000000000 --- a/img/illustrations/christmas_tree.svg +++ /dev/null @@ -1 +0,0 @@ -christmas tree \ No newline at end of file diff --git a/img/illustrations/city_driver.svg b/img/illustrations/city_driver.svg deleted file mode 100644 index df0984e9cbd478df6f4975fb78417b07cb45872c..0000000000000000000000000000000000000000 --- a/img/illustrations/city_driver.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/img/illustrations/collab.svg b/img/illustrations/collab.svg deleted file mode 100644 index ea442bd3c3207cb3b24641f91e0bdc30491d6a47..0000000000000000000000000000000000000000 --- a/img/illustrations/collab.svg +++ /dev/null @@ -1 +0,0 @@ -collab \ No newline at end of file diff --git a/img/illustrations/compose_music.svg b/img/illustrations/compose_music.svg deleted file mode 100644 index bd519efba0026993fa097b5400b75415d24d982d..0000000000000000000000000000000000000000 --- a/img/illustrations/compose_music.svg +++ /dev/null @@ -1 +0,0 @@ -compose music \ No newline at end of file diff --git a/img/illustrations/conference_call.svg b/img/illustrations/conference_call.svg deleted file mode 100644 index 3ffa168befaf4d2dcbde9c40e3f1fa35817ae06c..0000000000000000000000000000000000000000 --- a/img/illustrations/conference_call.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/img/illustrations/conference_speaker.svg b/img/illustrations/conference_speaker.svg deleted file mode 100644 index 243dcc1e8f7365015ef50b92f743960ce59a27e1..0000000000000000000000000000000000000000 --- a/img/illustrations/conference_speaker.svg +++ /dev/null @@ -1 +0,0 @@ -conference speaker \ No newline at end of file diff --git a/img/illustrations/creation_process.svg b/img/illustrations/creation_process.svg deleted file mode 100644 index 5ac5d1612228d01fd259856f9dedb3d61ab24720..0000000000000000000000000000000000000000 --- a/img/illustrations/creation_process.svg +++ /dev/null @@ -1 +0,0 @@ -Creation process \ No newline at end of file diff --git a/img/illustrations/dinner.svg b/img/illustrations/dinner.svg deleted file mode 100644 index 2d8b1f46cfdfef0fa2d43e87614b4c1444c4ee7d..0000000000000000000000000000000000000000 --- a/img/illustrations/dinner.svg +++ /dev/null @@ -1 +0,0 @@ -special_event \ No newline at end of file diff --git a/img/illustrations/doctors.svg b/img/illustrations/doctors.svg deleted file mode 100644 index a95573e25a29d2ddede5e99068d7ff10c7944d40..0000000000000000000000000000000000000000 --- a/img/illustrations/doctors.svg +++ /dev/null @@ -1 +0,0 @@ -doctors \ No newline at end of file diff --git a/img/illustrations/dog_walking.svg b/img/illustrations/dog_walking.svg deleted file mode 100644 index 278040b5ed0f2766a4f7c06f04209fbd8b03071c..0000000000000000000000000000000000000000 --- a/img/illustrations/dog_walking.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/img/illustrations/eating_together.svg b/img/illustrations/eating_together.svg deleted file mode 100644 index f7ef6ff8cbe002152b2737713cb95678f000b83d..0000000000000000000000000000000000000000 --- a/img/illustrations/eating_together.svg +++ /dev/null @@ -1 +0,0 @@ -eating_together \ No newline at end of file diff --git a/img/illustrations/electric_car.svg b/img/illustrations/electric_car.svg deleted file mode 100644 index a025c6f5942f143adac9be3097473404c206fa92..0000000000000000000000000000000000000000 --- a/img/illustrations/electric_car.svg +++ /dev/null @@ -1 +0,0 @@ -electric_car \ No newline at end of file diff --git a/img/illustrations/empty_cart.svg b/img/illustrations/empty_cart.svg deleted file mode 100644 index 243ab0ce0a35e2baffda161d37d576f490db2051..0000000000000000000000000000000000000000 --- a/img/illustrations/empty_cart.svg +++ /dev/null @@ -1 +0,0 @@ -empty_cart \ No newline at end of file diff --git a/img/illustrations/exams.svg b/img/illustrations/exams.svg deleted file mode 100644 index 0ebe66bcb80f95e1da873f3309892cc413e1375f..0000000000000000000000000000000000000000 --- a/img/illustrations/exams.svg +++ /dev/null @@ -1 +0,0 @@ -exams \ No newline at end of file diff --git a/img/illustrations/exploring.svg b/img/illustrations/exploring.svg deleted file mode 100644 index 316f39fdb825e2e2e7be985db59c0ea12b50a2fd..0000000000000000000000000000000000000000 --- a/img/illustrations/exploring.svg +++ /dev/null @@ -1 +0,0 @@ -exploring \ No newline at end of file diff --git a/img/illustrations/farm_girl.svg b/img/illustrations/farm_girl.svg deleted file mode 100644 index 10d11772f88966ba85e19d2d8bffc6255606002c..0000000000000000000000000000000000000000 --- a/img/illustrations/farm_girl.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/img/illustrations/finish_line_katerina_limpitsouni.svg b/img/illustrations/finish_line_katerina_limpitsouni.svg deleted file mode 100644 index 424af49a5bdf3ad6cb12edd98e2f7ceac017203b..0000000000000000000000000000000000000000 --- a/img/illustrations/finish_line_katerina_limpitsouni.svg +++ /dev/null @@ -1 +0,0 @@ -finish line_katerina_limpitsouni \ No newline at end of file diff --git a/img/illustrations/fireworks.svg b/img/illustrations/fireworks.svg deleted file mode 100644 index 1e92b7146aef409ba57618a3b03d294136c0bf24..0000000000000000000000000000000000000000 --- a/img/illustrations/fireworks.svg +++ /dev/null @@ -1 +0,0 @@ -fireworks \ No newline at end of file diff --git a/img/illustrations/fishing.svg b/img/illustrations/fishing.svg deleted file mode 100644 index ee0eece49925bc97aea99435fe4b8b28795e3985..0000000000000000000000000000000000000000 --- a/img/illustrations/fishing.svg +++ /dev/null @@ -1 +0,0 @@ -fishing \ No newline at end of file diff --git a/img/illustrations/gaming.svg b/img/illustrations/gaming.svg deleted file mode 100644 index 2d5741007c1ebea06be34fcca4fffb63e1b95435..0000000000000000000000000000000000000000 --- a/img/illustrations/gaming.svg +++ /dev/null @@ -1 +0,0 @@ -gaming \ No newline at end of file diff --git a/img/illustrations/gardening.svg b/img/illustrations/gardening.svg deleted file mode 100644 index 06500219bb8cd4a1623f89843d212ecd6cd0909e..0000000000000000000000000000000000000000 --- a/img/illustrations/gardening.svg +++ /dev/null @@ -1 +0,0 @@ -Gardening \ No newline at end of file diff --git a/img/illustrations/gift.svg b/img/illustrations/gift.svg deleted file mode 100644 index 05f0bb506a04923eeda0d4768ea717707f85a74a..0000000000000000000000000000000000000000 --- a/img/illustrations/gift.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/img/illustrations/goal.svg b/img/illustrations/goal.svg deleted file mode 100644 index 23bd5798224fe5a28a86760bb29bd9059a3b5ff2..0000000000000000000000000000000000000000 --- a/img/illustrations/goal.svg +++ /dev/null @@ -1 +0,0 @@ -goal \ No newline at end of file diff --git a/img/illustrations/golf.svg b/img/illustrations/golf.svg deleted file mode 100644 index 274a2d03aa08c669077f9286c94df5f4db1f2abf..0000000000000000000000000000000000000000 --- a/img/illustrations/golf.svg +++ /dev/null @@ -1 +0,0 @@ -golf \ No newline at end of file diff --git a/img/illustrations/graduation.svg b/img/illustrations/graduation.svg deleted file mode 100644 index 3f7deee2675e88f01c8d9a1d6d6778247aeb770a..0000000000000000000000000000000000000000 --- a/img/illustrations/graduation.svg +++ /dev/null @@ -1 +0,0 @@ -Graduation \ No newline at end of file diff --git a/img/illustrations/greek_freak.svg b/img/illustrations/greek_freak.svg deleted file mode 100644 index ca7ed0206291f135682c8b04a06e1fadeb9c4861..0000000000000000000000000000000000000000 --- a/img/illustrations/greek_freak.svg +++ /dev/null @@ -1 +0,0 @@ -greek_freak \ No newline at end of file diff --git a/img/illustrations/hiking.svg b/img/illustrations/hiking.svg deleted file mode 100644 index 832b08e7ff0f77f941b0a6eaaa21f571e6cf755d..0000000000000000000000000000000000000000 --- a/img/illustrations/hiking.svg +++ /dev/null @@ -1 +0,0 @@ -hiking \ No newline at end of file diff --git a/img/illustrations/home_run.svg b/img/illustrations/home_run.svg deleted file mode 100644 index 3fa49ca921df13a374dd3d950bbdba0bf541d2c8..0000000000000000000000000000000000000000 --- a/img/illustrations/home_run.svg +++ /dev/null @@ -1 +0,0 @@ -home run \ No newline at end of file diff --git a/img/illustrations/in_the_office.svg b/img/illustrations/in_the_office.svg deleted file mode 100644 index bcf774002e361506c4418e0db1bee5edc1502461..0000000000000000000000000000000000000000 --- a/img/illustrations/in_the_office.svg +++ /dev/null @@ -1 +0,0 @@ -in_the_office \ No newline at end of file diff --git a/img/illustrations/interview.svg b/img/illustrations/interview.svg deleted file mode 100644 index ac685505e758aea6335f14c40c5c794dd2777d2f..0000000000000000000000000000000000000000 --- a/img/illustrations/interview.svg +++ /dev/null @@ -1 +0,0 @@ -interview \ No newline at end of file diff --git a/img/illustrations/into_the_night.svg b/img/illustrations/into_the_night.svg deleted file mode 100644 index 66559eabc4d5d7315997b1feeab4d17d66698c9b..0000000000000000000000000000000000000000 --- a/img/illustrations/into_the_night.svg +++ /dev/null @@ -1 +0,0 @@ -into the night \ No newline at end of file diff --git a/img/illustrations/journey.svg b/img/illustrations/journey.svg deleted file mode 100644 index 84eabfdc861aa59b327e96fee146f5933035ff20..0000000000000000000000000000000000000000 --- a/img/illustrations/journey.svg +++ /dev/null @@ -1 +0,0 @@ -journey \ No newline at end of file diff --git a/img/illustrations/medicine.svg b/img/illustrations/medicine.svg deleted file mode 100644 index fd92d7fdd45554f3d958c6053fbf8ec8de7e8693..0000000000000000000000000000000000000000 --- a/img/illustrations/medicine.svg +++ /dev/null @@ -1 +0,0 @@ -medicine \ No newline at end of file diff --git a/img/illustrations/medidation.svg b/img/illustrations/medidation.svg deleted file mode 100644 index 603d354ee6cf932ff480f15e944e1e464dc528f1..0000000000000000000000000000000000000000 --- a/img/illustrations/medidation.svg +++ /dev/null @@ -1 +0,0 @@ -Meditation \ No newline at end of file diff --git a/img/illustrations/meeting.svg b/img/illustrations/meeting.svg deleted file mode 100644 index bbb5cb6fb5d08181283aafa379b8ce8be5291a83..0000000000000000000000000000000000000000 --- a/img/illustrations/meeting.svg +++ /dev/null @@ -1 +0,0 @@ -Meeting \ No newline at end of file diff --git a/img/illustrations/movie_night.svg b/img/illustrations/movie_night.svg deleted file mode 100644 index 70e458cabbc4e6e55cce167a613ea0e359bf0ab7..0000000000000000000000000000000000000000 --- a/img/illustrations/movie_night.svg +++ /dev/null @@ -1 +0,0 @@ -movie night \ No newline at end of file diff --git a/img/illustrations/newsletter.svg b/img/illustrations/newsletter.svg deleted file mode 100644 index 7a8332c399c454916987e31146b332d6bd06aee2..0000000000000000000000000000000000000000 --- a/img/illustrations/newsletter.svg +++ /dev/null @@ -1 +0,0 @@ -newsletter \ No newline at end of file diff --git a/img/illustrations/no_data.svg b/img/illustrations/no_data.svg deleted file mode 100644 index eba7afa902a1222676dec667100339db286ec11f..0000000000000000000000000000000000000000 --- a/img/illustrations/no_data.svg +++ /dev/null @@ -1 +0,0 @@ -no data \ No newline at end of file diff --git a/img/illustrations/old_day.svg b/img/illustrations/old_day.svg deleted file mode 100644 index ef3a4ff7a286a7f2817613003950221b50fd3123..0000000000000000000000000000000000000000 --- a/img/illustrations/old_day.svg +++ /dev/null @@ -1 +0,0 @@ -old_day \ No newline at end of file diff --git a/img/illustrations/outdoor_adventure.svg b/img/illustrations/outdoor_adventure.svg deleted file mode 100644 index 5a42d3aa2882e43467aa55b03fa061040fb368c4..0000000000000000000000000000000000000000 --- a/img/illustrations/outdoor_adventure.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/img/illustrations/party.svg b/img/illustrations/party.svg deleted file mode 100644 index 14c63a130e8d4944f002183473fc2eb8b3c0b039..0000000000000000000000000000000000000000 --- a/img/illustrations/party.svg +++ /dev/null @@ -1 +0,0 @@ -party \ No newline at end of file diff --git a/img/illustrations/pay_online.svg b/img/illustrations/pay_online.svg deleted file mode 100644 index 162e816a5d09a1a0d3ec3627cde94fc111b7eec3..0000000000000000000000000000000000000000 --- a/img/illustrations/pay_online.svg +++ /dev/null @@ -1 +0,0 @@ -pay_online \ No newline at end of file diff --git a/img/illustrations/personal_finance.svg b/img/illustrations/personal_finance.svg deleted file mode 100644 index 48f6b4f2fa5a720a63163e0494956f4a0a37fa5b..0000000000000000000000000000000000000000 --- a/img/illustrations/personal_finance.svg +++ /dev/null @@ -1 +0,0 @@ -personal_finance \ No newline at end of file diff --git a/img/illustrations/personal_trainer.svg b/img/illustrations/personal_trainer.svg deleted file mode 100644 index a569fc5554bfe68fbd7527e5209217abb26a2afe..0000000000000000000000000000000000000000 --- a/img/illustrations/personal_trainer.svg +++ /dev/null @@ -1 +0,0 @@ -personal trainer \ No newline at end of file diff --git a/img/illustrations/photo_session.svg b/img/illustrations/photo_session.svg deleted file mode 100644 index 74fb30d00ce8e6824a742d7ad42939ccf17a9c30..0000000000000000000000000000000000000000 --- a/img/illustrations/photo_session.svg +++ /dev/null @@ -1 +0,0 @@ -photo_session \ No newline at end of file diff --git a/img/illustrations/pilates.svg b/img/illustrations/pilates.svg deleted file mode 100644 index 6679d81064f81aa851bcb7fb50dacb74b05fafb0..0000000000000000000000000000000000000000 --- a/img/illustrations/pilates.svg +++ /dev/null @@ -1 +0,0 @@ -pilates \ No newline at end of file diff --git a/img/illustrations/pizza_sharing.svg b/img/illustrations/pizza_sharing.svg deleted file mode 100644 index 3b8546e99d73d5c66a1f2741964111320dd193ff..0000000000000000000000000000000000000000 --- a/img/illustrations/pizza_sharing.svg +++ /dev/null @@ -1 +0,0 @@ -pizza sharing \ No newline at end of file diff --git a/img/illustrations/podcast.svg b/img/illustrations/podcast.svg deleted file mode 100644 index c2ecf94ef4d68b2f156e644617fdd3467da7e8fb..0000000000000000000000000000000000000000 --- a/img/illustrations/podcast.svg +++ /dev/null @@ -1 +0,0 @@ -podcast \ No newline at end of file diff --git a/img/illustrations/presentation.svg b/img/illustrations/presentation.svg deleted file mode 100644 index c4859f4c651a94d6b2bc590e3644fa502791ce62..0000000000000000000000000000000000000000 --- a/img/illustrations/presentation.svg +++ /dev/null @@ -1 +0,0 @@ -Presentation \ No newline at end of file diff --git a/img/illustrations/professor.svg b/img/illustrations/professor.svg deleted file mode 100644 index 6676cbbdcd77af7b5de4b7d408e9150df4ee9074..0000000000000000000000000000000000000000 --- a/img/illustrations/professor.svg +++ /dev/null @@ -1 +0,0 @@ -professor \ No newline at end of file diff --git a/img/illustrations/relaxation.svg b/img/illustrations/relaxation.svg deleted file mode 100644 index 597ed0bde384dab88373dbeb107fe5dcaf1413e6..0000000000000000000000000000000000000000 --- a/img/illustrations/relaxation.svg +++ /dev/null @@ -1 +0,0 @@ -relaxation_1 \ No newline at end of file diff --git a/img/illustrations/reviewed_docs.svg b/img/illustrations/reviewed_docs.svg deleted file mode 100644 index 1025f9681ba9c15daba533b6f6ba2ac8cc4dd57d..0000000000000000000000000000000000000000 --- a/img/illustrations/reviewed_docs.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/img/illustrations/skateboard.svg b/img/illustrations/skateboard.svg deleted file mode 100644 index b5c203dc54156a105903e3e9fbef910d594dbd94..0000000000000000000000000000000000000000 --- a/img/illustrations/skateboard.svg +++ /dev/null @@ -1 +0,0 @@ -skateboard \ No newline at end of file diff --git a/img/illustrations/studying.svg b/img/illustrations/studying.svg deleted file mode 100644 index b6019add60390737d222055198fec3331485a32c..0000000000000000000000000000000000000000 --- a/img/illustrations/studying.svg +++ /dev/null @@ -1 +0,0 @@ -studying \ No newline at end of file diff --git a/img/illustrations/subway.svg b/img/illustrations/subway.svg deleted file mode 100644 index 1f46d9907faf0e56ceb3d07bffb2148618f15ff7..0000000000000000000000000000000000000000 --- a/img/illustrations/subway.svg +++ /dev/null @@ -1 +0,0 @@ -subway \ No newline at end of file diff --git a/img/illustrations/sunlight.svg b/img/illustrations/sunlight.svg deleted file mode 100644 index bb694b18c5b08146d3677f30b2cc9f539e93b250..0000000000000000000000000000000000000000 --- a/img/illustrations/sunlight.svg +++ /dev/null @@ -1 +0,0 @@ -sunlight \ No newline at end of file diff --git a/img/illustrations/teaching.svg b/img/illustrations/teaching.svg deleted file mode 100644 index 7d896561d34cef9df408cdedec67b6b9c676d46a..0000000000000000000000000000000000000000 --- a/img/illustrations/teaching.svg +++ /dev/null @@ -1 +0,0 @@ -teaching \ No newline at end of file diff --git a/img/illustrations/travel_plans.svg b/img/illustrations/travel_plans.svg deleted file mode 100644 index a38f3d420adcff52c38a2a245ecb9f5cdb364bd2..0000000000000000000000000000000000000000 --- a/img/illustrations/travel_plans.svg +++ /dev/null @@ -1 +0,0 @@ -travel_plans \ No newline at end of file diff --git a/img/illustrations/travelers.svg b/img/illustrations/travelers.svg deleted file mode 100644 index 51ce8dfa2b4aab685d5e4b55e743a9e5529459d2..0000000000000000000000000000000000000000 --- a/img/illustrations/travelers.svg +++ /dev/null @@ -1 +0,0 @@ -travelers \ No newline at end of file diff --git a/img/illustrations/voting.svg b/img/illustrations/voting.svg deleted file mode 100644 index 05a940b963fa4f98f5dbb3388859af62ae4e311d..0000000000000000000000000000000000000000 --- a/img/illustrations/voting.svg +++ /dev/null @@ -1 +0,0 @@ -voting \ No newline at end of file diff --git a/img/illustrations/wedding.svg b/img/illustrations/wedding.svg deleted file mode 100644 index 9aed8ea55210d7494e1bf6544c6eff2ba922cf5d..0000000000000000000000000000000000000000 --- a/img/illustrations/wedding.svg +++ /dev/null @@ -1 +0,0 @@ -wedding \ No newline at end of file diff --git a/img/illustrations/window_shopping.svg b/img/illustrations/window_shopping.svg deleted file mode 100644 index 21e5e26bc34b9e15169a58473aa0a856f0289bbc..0000000000000000000000000000000000000000 --- a/img/illustrations/window_shopping.svg +++ /dev/null @@ -1 +0,0 @@ -window_shopping \ No newline at end of file diff --git a/img/illustrations/wine_tasting.svg b/img/illustrations/wine_tasting.svg deleted file mode 100644 index 46acb67117fb99147706fe088b487b472e85eb7d..0000000000000000000000000000000000000000 --- a/img/illustrations/wine_tasting.svg +++ /dev/null @@ -1 +0,0 @@ -wine_tasting \ No newline at end of file diff --git a/img/illustrations/working_out.svg b/img/illustrations/working_out.svg deleted file mode 100644 index 298f9d64310fd4638f2301af90868480c929e402..0000000000000000000000000000000000000000 --- a/img/illustrations/working_out.svg +++ /dev/null @@ -1 +0,0 @@ -working_out \ No newline at end of file diff --git a/img/illustrations/working_remotely.svg b/img/illustrations/working_remotely.svg deleted file mode 100644 index d3727f52546f24c60760a65a0a67ddf6a8279d3a..0000000000000000000000000000000000000000 --- a/img/illustrations/working_remotely.svg +++ /dev/null @@ -1 +0,0 @@ -working remotely \ No newline at end of file diff --git a/img/invitees-no-response.svg b/img/invitees-no-response.svg deleted file mode 100644 index 1c2d30720e193f16971bba90067eb1341ae0a952..0000000000000000000000000000000000000000 --- a/img/invitees-no-response.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/leftarrow.svg b/img/leftarrow.svg deleted file mode 100644 index 440204a00d3231ee08d755eca7522ccee30ac6d2..0000000000000000000000000000000000000000 --- a/img/leftarrow.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/new-calendar-with-task-list.svg b/img/new-calendar-with-task-list.svg deleted file mode 100644 index 676c3dfb5a200bce429b2da6d175953b3c082f0a..0000000000000000000000000000000000000000 --- a/img/new-calendar-with-task-list.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/new-calendar.svg b/img/new-calendar.svg deleted file mode 100644 index 307d35c687d730ffa8ebd47e42e22c400c43f12f..0000000000000000000000000000000000000000 --- a/img/new-calendar.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/openlink.svg b/img/openlink.svg new file mode 100644 index 0000000000000000000000000000000000000000..c48ee5df583b1c5fce9efa0d63a331dc6f77addd --- /dev/null +++ b/img/openlink.svg @@ -0,0 +1 @@ + diff --git a/img/random.svg b/img/random.svg deleted file mode 100644 index d24181b80b0d772fdc0fac2c2973b952a60fe2ef..0000000000000000000000000000000000000000 --- a/img/random.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/reminder-audio.svg b/img/reminder-audio.svg deleted file mode 100644 index 7c0f981fd50fc23bcf6cf6ebbbccd7fc49cdc029..0000000000000000000000000000000000000000 --- a/img/reminder-audio.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/reminder-mail.svg b/img/reminder-mail.svg deleted file mode 100644 index 14148ecc7910a6c417b7905aecb65319d71ff38e..0000000000000000000000000000000000000000 --- a/img/reminder-mail.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/reminder.svg b/img/reminder.svg deleted file mode 100644 index 108eb4fc93185071e098cbf72432a23419e507ad..0000000000000000000000000000000000000000 --- a/img/reminder.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/repeat.svg b/img/repeat.svg deleted file mode 100644 index 2ed9c37dba6109d07e7446815efca67b10c7ad5a..0000000000000000000000000000000000000000 --- a/img/repeat.svg +++ /dev/null @@ -1 +0,0 @@ -Loop \ No newline at end of file diff --git a/img/rightarrow.svg b/img/rightarrow.svg deleted file mode 100644 index 0a872604393e84617cdacf60cbe53aeeba71241b..0000000000000000000000000000000000000000 --- a/img/rightarrow.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/timezone.svg b/img/timezone.svg deleted file mode 100644 index 86f7b0eae4a86528e911e17bfb488639d0621f3f..0000000000000000000000000000000000000000 --- a/img/timezone.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/img/view-day.svg b/img/view-day.svg deleted file mode 100644 index 14545700efa5716124ffcb08606ada8eec140169..0000000000000000000000000000000000000000 --- a/img/view-day.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/img/view-list.svg b/img/view-list.svg deleted file mode 100644 index 8f4a0410b416626c800661230931ba23786943e1..0000000000000000000000000000000000000000 --- a/img/view-list.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/img/view-module.svg b/img/view-module.svg deleted file mode 100644 index f175a89d429bf82e91c0b978682d995f76bc752e..0000000000000000000000000000000000000000 --- a/img/view-module.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/img/view-week.svg b/img/view-week.svg deleted file mode 100644 index 7eada6b5349a09588e96ada5eed5d0d718e47ce7..0000000000000000000000000000000000000000 --- a/img/view-week.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/krankerl.toml b/krankerl.toml index d0fb6c7d9b520374c3a22102a6db96e826bd8ee7..69cd4830e7b403d8809ce4648b1d9fe0ed210d34 100644 --- a/krankerl.toml +++ b/krankerl.toml @@ -1,3 +1,5 @@ +# SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors +# SPDX-License-Identifier: AGPL-3.0-or-later [package] before_cmds = [ "composer install --no-dev -o", diff --git a/l10n/af.js b/l10n/af.js index adf3913e83d522cde058b1002f0ad2082e2b8e44..23db249f5e13d903c81a62ab2ca86cb406b76f99 100644 --- a/l10n/af.js +++ b/l10n/af.js @@ -6,10 +6,9 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Ons wil u graag inlig dat %s die kalender »%s« gepubliseer het.", "Open »%s«" : "Open »%s«", "Cheers!" : "Geluk!", - "Confirm" : "Bevestig", "Calendar" : "Kalender", + "Confirm" : "Bevestig", "A Calendar app for Nextcloud" : "'n Kalendertoep vir Nextcloud", - "New event" : "Nuwe geleentheid", "Today" : "Vandag", "Day" : "Dag", "Week" : "Week", @@ -19,22 +18,25 @@ OC.L10N.register( "Copy link" : "Kopieer skakel", "Edit" : "Wysig", "Delete" : "Skrap", - "Export" : "Voer uit", - "Share link" : "Deel skakel", - "Share with users or groups" : "Deel met gebruikers of groepe", - "No users or groups" : "Geen gebruikers of groepe", - "can edit" : "kan wysig", "New calendar" : "Nuwe kalender", + "Export" : "Voer uit", "Name" : "Naam", "Deleted" : "Geskrap", "Restore" : "Herstel", "Delete permanently" : "Skrap permanent", + "Hidden" : "Versteek", + "Share link" : "Deel skakel", + "can edit" : "kan wysig", + "Share with users or groups" : "Deel met gebruikers of groepe", + "No users or groups" : "Geen gebruikers of groepe", + "Save" : "Stoor", "Filename" : "Lêernaam", "Cancel" : "Kanselleer", "Automatic" : "Outomaties", "List view" : "Lysaansig", "Actions" : "Aksies", "Show week numbers" : "Toon weeknommers", + "Update" : "Werk by", "Location" : "Ligging", "Description" : "Beskrywing", "Duration" : "Duur", @@ -47,40 +49,42 @@ OC.L10N.register( "Friday" : "Vrydag", "Saturday" : "Saterdag", "Sunday" : "Sondag", - "Save" : "Stoor", - "Update" : "Werk by", "Your email address" : "U e-posadres", "Notification" : "Kennisgewing", "Email" : "E-pos", + "seconds" : "sekondes", + "minutes" : "minute", + "hours" : "uur", + "days" : "dae", + "weeks" : "weke", + "Delete file" : "Skrap lêer", "Available" : "Beskikbaar", "Not available" : "Onbeskikbaar", "Unknown" : "Onbekend", "Accept" : "Aanvaar", "Tentative" : "Tentatief", - "All day" : "Heeldag", + "Attendees" : "Bywoners", + "From" : "Van", + "To" : "Aan", "Repeat" : "Herhaal", "never" : "nooit", "after" : "na", + "Resources" : "Hulpbronne", "available" : "beskikbaar", - "More" : "Nog", "Global" : "Globaal", + "Subscribe" : "Teken in", "Personal" : "Persoonlik", - "Details" : "Details", - "Attendees" : "Bywoners", - "Resources" : "Hulpbronne", + "All day" : "Heeldag", "Close" : "Sluit", "Anniversary" : "Herdenking", "Week {number} of {year}" : "Week {number} van {year}", "Daily" : "Daagliks", "Weekly" : "Weekliks", - "Prev" : "Vorige", - "Next" : "Volgende", + "second" : "sekonde", "Other" : "Ander", "Status" : "Status", "Confirmed" : "Bevestig", "Categories" : "Kategorieë", - "Commuting" : "In die verkeer", - "Mail" : "Pos", - "Birthday" : "Verjaardag" + "Details" : "Details" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/af.json b/l10n/af.json index acef5140d9ff9941aa676853be5bbf391c95f03d..15af0a25077cfe2b75f0953eb7e9e9b7180cf9e4 100644 --- a/l10n/af.json +++ b/l10n/af.json @@ -4,10 +4,9 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Ons wil u graag inlig dat %s die kalender »%s« gepubliseer het.", "Open »%s«" : "Open »%s«", "Cheers!" : "Geluk!", - "Confirm" : "Bevestig", "Calendar" : "Kalender", + "Confirm" : "Bevestig", "A Calendar app for Nextcloud" : "'n Kalendertoep vir Nextcloud", - "New event" : "Nuwe geleentheid", "Today" : "Vandag", "Day" : "Dag", "Week" : "Week", @@ -17,22 +16,25 @@ "Copy link" : "Kopieer skakel", "Edit" : "Wysig", "Delete" : "Skrap", - "Export" : "Voer uit", - "Share link" : "Deel skakel", - "Share with users or groups" : "Deel met gebruikers of groepe", - "No users or groups" : "Geen gebruikers of groepe", - "can edit" : "kan wysig", "New calendar" : "Nuwe kalender", + "Export" : "Voer uit", "Name" : "Naam", "Deleted" : "Geskrap", "Restore" : "Herstel", "Delete permanently" : "Skrap permanent", + "Hidden" : "Versteek", + "Share link" : "Deel skakel", + "can edit" : "kan wysig", + "Share with users or groups" : "Deel met gebruikers of groepe", + "No users or groups" : "Geen gebruikers of groepe", + "Save" : "Stoor", "Filename" : "Lêernaam", "Cancel" : "Kanselleer", "Automatic" : "Outomaties", "List view" : "Lysaansig", "Actions" : "Aksies", "Show week numbers" : "Toon weeknommers", + "Update" : "Werk by", "Location" : "Ligging", "Description" : "Beskrywing", "Duration" : "Duur", @@ -45,40 +47,42 @@ "Friday" : "Vrydag", "Saturday" : "Saterdag", "Sunday" : "Sondag", - "Save" : "Stoor", - "Update" : "Werk by", "Your email address" : "U e-posadres", "Notification" : "Kennisgewing", "Email" : "E-pos", + "seconds" : "sekondes", + "minutes" : "minute", + "hours" : "uur", + "days" : "dae", + "weeks" : "weke", + "Delete file" : "Skrap lêer", "Available" : "Beskikbaar", "Not available" : "Onbeskikbaar", "Unknown" : "Onbekend", "Accept" : "Aanvaar", "Tentative" : "Tentatief", - "All day" : "Heeldag", + "Attendees" : "Bywoners", + "From" : "Van", + "To" : "Aan", "Repeat" : "Herhaal", "never" : "nooit", "after" : "na", + "Resources" : "Hulpbronne", "available" : "beskikbaar", - "More" : "Nog", "Global" : "Globaal", + "Subscribe" : "Teken in", "Personal" : "Persoonlik", - "Details" : "Details", - "Attendees" : "Bywoners", - "Resources" : "Hulpbronne", + "All day" : "Heeldag", "Close" : "Sluit", "Anniversary" : "Herdenking", "Week {number} of {year}" : "Week {number} van {year}", "Daily" : "Daagliks", "Weekly" : "Weekliks", - "Prev" : "Vorige", - "Next" : "Volgende", + "second" : "sekonde", "Other" : "Ander", "Status" : "Status", "Confirmed" : "Bevestig", "Categories" : "Kategorieë", - "Commuting" : "In die verkeer", - "Mail" : "Pos", - "Birthday" : "Verjaardag" + "Details" : "Details" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/ar.js b/l10n/ar.js index 4170b79074184bcc4df2cff0b3665208a57ab6b2..ae9c9ba0805df5cb73aec5513950a82e0a17d1d7 100644 --- a/l10n/ar.js +++ b/l10n/ar.js @@ -1,105 +1,171 @@ OC.L10N.register( "calendar", { - "User-Session unexpectedly expired" : "جلسة المستخدم انتهت", - "Provided email-address is not valid" : "البريد المدخل غير صحيح", + "Provided email-address is too long" : "عنوان البريد طويل جداً", + "User-Session unexpectedly expired" : "إنتهت صلاحية جلسة المستخدم بشكل غير متوقع", + "Provided email-address is not valid" : "عنوان البريد الإلكتروني غير صالح", "%s has published the calendar »%s«" : "%s نشر التقويم »%s«", - "Unexpected error sending email. Please contact your administrator." : "حدث خطأ اثناء إرسال البريد، تحقق من اعدادات البريد او تواصل مع مسؤول النظام.", - "Hello," : "مرحبا %s،", + "Unexpected error sending email. Please contact your administrator." : "حدث خطأ اثناء إرسال البريد. تحقّق من إعدادات البريد او تواصل مع مسؤول النظام.", + "Successfully sent email to %1$s" : "تم إرسال الإيميل إلى %1$s بنجاح.", + "Hello," : "مرحباً،", "We wanted to inform you that %s has published the calendar »%s«." : "المستخدم %s قام بنشر تقويم »%s«.", "Open »%s«" : "فتح »%s«", "Cheers!" : "تحياتي!", - "Upcoming events" : "الفعاليات القادمة", + "Upcoming events" : "الأحداث القادمة", + "No more events today" : "لا يوجد المزيد من الفعاليات اليوم", + "No upcoming events" : "ليست هناك أحداث قادمة", + "More events" : "أحداث أخرى", + "%1$s with %2$s" : "%1$s مع %2$s", + "Calendar" : "التقويم", + "New booking {booking}" : "حجز جديد {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) قام بحجز الموعد \"{config_display_name}\" في {date_time}.", "Appointments" : "المواعيد", + "Schedule appointment \"%s\"" : "جدولة الموعد \"%s\"", + "Schedule an appointment" : "جدولة موعد", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "تحضير لـ %s", + "Follow up for %s" : "متابعة لـ %s", + "Your appointment \"%s\" with %s needs confirmation" : "موعدك \"%s\" مع %s يحتاج إلى توكيد.", + "Dear %s, please confirm your booking" : "السيد/السيدة %s؛ رجاءً، قم بتأكيد حجز موعدك.", "Confirm" : "تأكيد", + "Appointment with:" : "موعد مع: ", + "Description:" : "الوصف:", + "This confirmation link expires in %s hours." : "رابط التأكيد هذا تنتهي صلاحيته بعد%s ساعات..", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "إذا كنت ترغب في إلغاء الموعد، فيُرجى الاتصال بمُنظّم الحدث عن طريق الرّد على هذا البريد الإلكتروني أو عن طريق زيارة صفحة ملفه الشخصي.", + "Your appointment \"%s\" with %s has been accepted" : "موعدك \"%s\" مع %s تمّ قبوله", + "Dear %s, your booking has been accepted." : "السيد/السيدة %s, حجزك ثم قبوله.", + "Appointment for:" : "موعد لـ :", "Date:" : "التاريخ:", - "Calendar" : "التقويم", + "You will receive a link with the confirmation email" : "سوف تستلم رابطاً في رسالة التأكيد عبر البريد الإلكتروني", + "Where:" : "المكان:", + "Comment:" : "ملاحظات:", + "You have a new appointment booking \"%s\" from %s" : "لديك حجز موعدٍ جديدٍ \"%s\" من %s", + "Dear %s, %s (%s) booked an appointment with you." : "السيد/السيدة %s, %s (%s) حجز موعداً معك.", "A Calendar app for Nextcloud" : "تطبيق التقويم لـ نكست كلاود", - "Previous day" : "اليوم الماضي", - "Previous week" : "الاسبوع الماضي", + "Previous day" : "أمس", + "Previous week" : "الأسبوع الماضي", + "Previous year" : "العام الماضى", "Previous month" : "الشهر الماضي", - "Next day" : "اليوم القادم", - "Next week" : "الاسبوع القادم", + "Next day" : "غداً", + "Next week" : "الأسبوع القادم", + "Next year" : "العام القادم", "Next month" : "الشهر القادم", - "New event" : "حدث جديد", + "Create new event" : "إنشاء حدث جديد", + "Event" : "حدث", "Today" : "اليوم", "Day" : "يوم", "Week" : "أسبوع", "Month" : "شهر", + "Year" : "السنة", "List" : "قائمة", + "Appointment link was copied to clipboard" : "تمّ نسخ رابط الموعد في الحافظة", + "Appointment link could not be copied to clipboard" : "تعذّر نسخ رابط الموعد في الحافظة", "Preview" : "معاينة", - "Copy link" : "انسخ الرابط", + "Copy link" : "نسخ الرابط", "Edit" : "تعديل", "Delete" : "حذف ", + "Appointment schedules" : "جداول المواعيد", + "Create new" : "إنشاء جديد", + "Disable calendar \"{calendar}\"" : "إيقاف التقويم \"{calendar}\"", + "Disable untitled calendar" : "إيقاف تقويم بدون اسم", + "Enable calendar \"{calendar}\"" : "تمكين التقويم \"{calendar}\"", + "Enable untitled calendar" : "تمكين التقويم بدون اسم", + "An error occurred, unable to change visibility of the calendar." : "حدث خطأ، لا يمكن تعديل وضعية ظهور التقويم.", "Untitled calendar" : "تقويم بدون اسم", - "Edit name" : "تعديل الاسم", - "Saving name …" : "جاري حفظ الاسم   …", - "Edit color" : "تعديل اللون", - "Saving color …" : "جاري حفظ اللون    …", - "Copy private link" : "نسخ الرابط الخاص", + "Shared with you by" : "مشاركة معك من قِبَل", + "Edit and share calendar" : "تعديل ومشاركة التقويم", + "Edit calendar" : "تعديل التقويم", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["إلغاء مشاركة التقويم في {countdown} ثواني","إلغاء مشاركة التقويم في {countdown} ثانية","إلغاء مشاركة التقويم في {countdown} ثواني","إلغاء مشاركة التقويم في {countdown} ثواني","إلغاء مشاركة التقويم في {countdown} ثواني","إلغاء مشاركة التقويم في {countdown} ثواني"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["حذف التقويم في {countdown} ثواني","حذف التقويم في {countdown} ثانية","حذف التقويم في {countdown} ثواني","حذف التقويم في {countdown} ثواني","حذف التقويم في {countdown} ثواني","حذف التقويم في {countdown} ثواني"], + "An error occurred, unable to create the calendar." : "حدث خطأ، يتعذّر إنشاء التقويم.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "يرجى ادخال رابطٍ صحيحٍ (يبدأ بـ https://, http://, webcals://, webcal://)", + "Calendars" : "التقاويم", + "Add new" : "إضافة جديد", + "New calendar" : "تقويم جديد", + "Name for new calendar" : "اسم التقويم الجديد", + "Creating calendar …" : "جارٍ إنشاء التقويم…", + "New calendar with task list" : "تقويم جديد مع قائمة مهام", + "New subscription from link (read-only)" : "إشتراك جديد عن طريق رابط (للقراءة فقط)", + "Creating subscription …" : "جارٍ إنشاء اشتراك…", + "Add public holiday calendar" : "أضف تقويم العطلات العامة", + "Add custom public calendar" : "إضافة تقويم عام مخصّص", + "Calendar link copied to clipboard." : "تم نسخ رابط التقويم إلى الحافظة.", + "Calendar link could not be copied to clipboard." : "تعذّر نسخ رابط التقويم إلى الحافظة.", + "Copy subscription link" : "نسخ رابط الاشتراك", + "Copying link …" : "جارٍ نسخ رابط  …", + "Copied link" : "تمّ نسخ الرابط", + "Could not copy link" : "تعذّر نسخ الرابط", "Export" : "تصدير", - "Unshare from me" : "أنت ألغيت المشاركة", - "An error occurred, unable to change visibility of the calendar." : "حدث خطأ، لا يمكن تعديل وضعية ظهور التقويم.", - "An error occurred, unable to delete the calendar." : "حدث خطأ، لا يمكن حذف التقويم.", - "Calendar link copied to clipboard." : "تم نسخ رابط التقويم.", - "Calendar link could not be copied to clipboard." : "لم نتمكن من نسخ رابط التقويم.", - "An error occurred, unable to rename the calendar." : "حدث خطأ، لا يمكن تعديل اسم التقويم.", - "An error occurred, unable to change the calendar's color." : "حدث خطأ، لا يمكن تعديل لون التقويم.", - "Share link" : "رابط المشاركة", - "Publish calendar" : "نشر التقويم", - "Publishing calendar" : "جاري نشر التقويم", + "Untitled item" : "عنصر بلا اسم", + "Unknown calendar" : "تقويم غير معروف", + "Could not load deleted calendars and objects" : "تعذّر تحميل التقاويم و الأشياء المحذوفة ", + "Could not delete calendar or event" : "تعذّر حذف التقويم أو الحدث", + "Could not restore calendar or event" : "تعذرت استعادة تقويم أو حدث", + "Do you really want to empty the trash bin?" : "هل ترغب بالفعل في تفريغ سلة المهملات؟", + "Empty trash bin" : "تفريغ سلة المهملات", + "Trash bin" : "سلة المهملات", + "Loading deleted items." : "تحميل العناصر المحذوفة", + "You do not have any deleted items." : "لا توجد أي عناصر محذوفة", + "Name" : "الاسم", + "Deleted" : "تمّ حذفه", + "Restore" : "استعادة ", + "Delete permanently" : "حذف نهائي", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["حذف العناصر الموجودة في سلة المهملات بعد {numDays} أيام","حذف العناصر الموجودة في سلة المهملات بعد {numDays} يوم","حذف العناصر الموجودة في سلة المهملات بعد {numDays} أيام","حذف العناصر الموجودة في سلة المهملات بعد {numDays} أيام","حذف العناصر الموجودة في سلة المهملات بعد {numDays} أيام","حذف العناصر الموجودة في سلة المهملات بعد {numDays} أيام"], + "Could not update calendar order." : "لا يمكن تعديل ترتيب التقويم.", + "Shared calendars" : "تقاويم مشتركة", + "Deck" : "البطاقات", + "Hidden" : "مخفي", + "Internal link" : "رابط داخلي", + "A private link that can be used with external clients" : "رابط خاص يمكن استخدامه مع العملاء الخارجيين", + "Copy internal link" : "إنسخ الرابط الداخلي", + "An error occurred, unable to publish calendar." : "حدث خطأ، لا يمكن نشر التقويم", + "An error occurred, unable to send email." : "حدث خطأ، لا يُمكن إرسال البريد.", + "Embed code copied to clipboard." : "الكود المُضمّن تمّ نسخه إلى الحافظة", + "Embed code could not be copied to clipboard." : "الكود المُضمّن تعذّر نسخه إلى الحافظة", + "Unpublishing calendar failed" : "محاولة إلغاء نشر التقويم أخفقت", + "Share link" : "رابط مشاركة", "Copy public link" : "نسخ الرابط العام", - "Send link to calendar via email" : "ارسال رابط التقويم عبر البريد", - "Enter one address" : "ادخل عنوان بريدي واحد", - "Sending email …" : "جاري ارسال البريد  …", - "Copy subscription link" : "نسخ رابط الاشتراك", - "Copying link …" : "جاري نسخ رابط  …", - "Copied link" : "تم نسخ الرابط", - "Could not copy link" : "لا يمكن نسخ الرابط", - "Copy embedding code" : "نسخ الكود المرفق", + "Send link to calendar via email" : "إرسال رابط التقويم عبر الإيمل", + "Enter one address" : "أدخِل عنواناً بريدياً واحداً", + "Sending email …" : "جارٍ إرسال البريد  …", + "Copy embedding code" : "نسخ كود التضمين", "Copying code …" : "نسخ الكود  …", - "Copied code" : "تم نسخ الكود", - "Could not copy code" : "لا يمكن نسخ الكود", - "Delete share link" : "حذف ارتباط المشاركة", + "Copied code" : "تمّ نسخ الكود", + "Could not copy code" : "تعذّر نسخ الكود", + "Delete share link" : "حذف رابط المشاركة", "Deleting share link …" : "حذف رابط المشاركة  …", - "An error occurred, unable to publish calendar." : "حصل خطأ، لا يمكن نشر التقويم", - "An error occurred, unable to send email." : "حدث خطأ، لا يمكن ارسال البريد.", - "Embed code copied to clipboard." : "تم نسخ الكود المرفق.", - "Embed code could not be copied to clipboard." : "لا يمكن نسخ الكود المرفق", - "Unpublishing calendar failed" : "فشل في الغاء نشر التقويم", + "{teamDisplayName} (Team)" : "{teamDisplayName} (فريق)", + "An error occurred while unsharing the calendar." : "حدث خطأ أثناء إلغاء مشاركة التقويم", + "An error occurred, unable to change the permission of the share." : "حدث خطأ، لا يمكن تعديل صلاحيات نشر التقويم.", + "can edit" : "يمكن التحرير", + "Unshare with {displayName}" : "إلغاء المشاركة مع {displayName}", "Share with users or groups" : "شارك مع مستخدمين او مجموعات", "No users or groups" : "لا يوجد مستخدمين أو مجموعات", - "can edit" : "يمكن التحرير", - "Unshare with {displayName}" : "الغاء المشاركة مع {displayName}", - "An error occurred, unable to change the unshare the calendar." : "حدث خطأ، لا يمكن تعديل نشر التقويم", - "An error occurred, unable to change the permission of the share." : "حدث خطأ، لا يمكن تعديل صلاحيات نشر التقويم.", - "+ New calendar" : "+ تقويم جديد", - "New calendar" : "تقويم جديد", - "Creating calendar …" : "جاري انشاء تقويم  …", - "New calendar with task list" : "تقويم جديد مع قائمة مهام", - "New subscription from link (read-only)" : "مشتركين جدد عن طريق رابط (للقراءة فقط)", - "Creating subscription …" : "جاري انشاء اشتراك  …", - "An error occurred, unable to create the calendar." : "حدث خطأ، لا يمكن انشاء التقويم.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "يرجى ادخال رابط صحيح (يبدأ بـ https://, http://, webcals://, webcal://)", - "Trash bin" : "المهملات", - "Name" : "الاسم", - "Deleted" : "تم حذفه", - "Restore" : "استعادة ", - "Delete permanently" : "حذف بشكل دائم", - "Empty trash bin" : "تفريغ سلة المهملات", - "Unknown calendar" : "تقويم غير معروف", - "Could not update calendar order." : "لا يمكن تحديث ترتيب التقويم.", + "Failed to save calendar name and color" : "تعذّر حفظ اسم و لون التقويم", + "Calendar name …" : "اسم التقويم ...", + "Never show me as busy (set this calendar to transparent)" : "لا تُظهرني مطلقًا مشغولاً (اضبط هذا التقويم على شفاف)", + "Share calendar" : "مُشاركة التقويم", + "Unshare from me" : "أنت ألغيت المشاركة", + "Save" : "حفظ", "Import calendars" : "استيراد التقويم", "Please select a calendar to import into …" : "يرجى اختيار تقويم للاستيراد اليه  …", "Filename" : "اسم الملف", "Calendar to import into" : "تقويم للاستيراد اليه", "Cancel" : "إلغاء", "_Import calendar_::_Import calendars_" : ["استيراد التقويم","استيراد التقويم","استيراد التقويم","استيراد التقويم","استيراد التقويم","استيراد التقويم"], + "Select the default location for attachments" : "عيّن موقع المُرفقات التلقائي", + "Pick" : "إختر", + "Invalid location selected" : "الموقع المُختار غير صحيح", + "Attachments folder successfully saved." : "تمّ بنجاح حفظ مُجلّد المُرفقات", + "Error on saving attachments folder." : "خطأ في حفظ مُجلّد المُرفقات", + "Default attachments location" : "موقع المُرفقات التلقائي", + "{filename} could not be parsed" : "{filename} لم يُمكن تحليله", + "No valid files found, aborting import" : "لم يٌمكن إيجاد ملفّاتٍ صحيحة. إنهاءُ عملية الاستيراد", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["تم استيراد %n أحداث بنجاح","تم استيراد %n حدث بنجاح","تم استيراد %n أحداث بنجاح","تم استيراد %n أحداث بنجاح","تم استيراد %n أحداث بنجاح","تم استيراد %n أحداث بنجاح"], + "Import partially failed. Imported {accepted} out of {total}." : "الاستيراد فشل جزئيّاً. تمّ استيراد {accepted} من مجموع {total}.", "Automatic" : "تلقائي", "Automatic ({detected})" : "تلقائي ({detected})", "New setting was not saved successfully." : "لم يتم حفظ الاعدادات الجديدة.", - "Shortcut overview" : "نظرة عامة للاختصارات", - "or" : "او", "Navigation" : "التنقل", "Previous period" : "الفترة السابقة", "Next period" : "الفترة القادمة", @@ -107,26 +173,66 @@ OC.L10N.register( "Day view" : "مشاهدات يومية", "Week view" : "مشاهدات اسبوعية", "Month view" : "مشاهدات شهرية", + "Year view" : "عرض السنة", "List view" : "عرض على شكل قائمة", "Actions" : "الإجراءات", "Create event" : "انشاء فعالية", "Show shortcuts" : "انشاء اختصارات", + "Editor" : "المحرر", + "Close editor" : "إغلاق المحرر", + "Save edited event" : "حفظ تعديلات الأحداث", + "Delete edited event" : "حذف الأحداث المحررة", + "Duplicate event" : "تكرار الحدث", + "Shortcut overview" : "نظرة عامة للاختصارات", + "or" : "او", + "Calendar settings" : "إعدادات التقويم", + "At event start" : "في بداية الحدث", + "No reminder" : "لا يوجد تذكير ", + "Failed to save default calendar" : "تعذّر حفظ التقويم التلقائي", + "CalDAV link copied to clipboard." : "تم نسخ CalDAV.", + "CalDAV link could not be copied to clipboard." : "لا يمكن نسخ CalDAV.", "Enable birthday calendar" : "تفعيل تقويم عيد الميلاد", - "Show tasks in calendar" : "اظهار المهام في التقويم", + "Show tasks in calendar" : "إظهار المهام في التقويم", "Enable simplified editor" : "تفعيل المحرر البسيط", - "Limit visible events per view" : "حصر رؤية الفعاليات بالمشاهدة", - "Show weekends" : "اظهار ايام نهاية الاسبوع", - "Show week numbers" : "اظهار ارقام الأسابيع", + "Limit the number of events displayed in the monthly view" : "تقييد عدد الأحداث التي تُعرض في العرض الشهري", + "Show weekends" : "إظهار أيام نهاية الاسبوع", + "Show week numbers" : "إظهار أرقام الأسابيع", + "Time increments" : "زيادات الوقت", + "Default calendar for incoming invitations" : "التقويم التلقائي للدعوات الواردة", + "Default reminder" : "التذكير الافتراضي", "Copy primary CalDAV address" : "نسخ عنوان CalDAV الرئيسي", "Copy iOS/macOS CalDAV address" : "نسخ عنوان CalDAV لأجهزة الماك/الأيفون", - "Show keyboard shortcuts" : "اظهار اختصارات لوحة المفاتيح", - "No reminder" : "لا يوجد تذكير ", - "CalDAV link copied to clipboard." : "تم نسخ CalDAV.", - "CalDAV link could not be copied to clipboard." : "لا يمكن نسخ CalDAV.", + "Personal availability settings" : "إعدادات التواجد الشخصي", + "Show keyboard shortcuts" : "إظهار اختصارات لوحة المفاتيح", + "Appointment schedule successfully created" : "تمّ إنشاء جدول المواعيد بنجاح", + "Appointment schedule successfully updated" : "تمّ تحديث جدول المواعيد بنجاح", + "_{duration} minute_::_{duration} minutes_" : ["{duration} دقائق","{duration} دقيقة","{duration} دقائق","{duration} دقائق","{duration} دقائق","{duration} دقائق"], + "0 minutes" : "0 دقيقة", + "_{duration} hour_::_{duration} hours_" : ["{duration} ساعات","{duration} ساعة","{duration} ساعات","{duration} ساعات","{duration} ساعات","{duration} ساعات"], + "_{duration} day_::_{duration} days_" : ["{duration} أيام","{duration} يوم","{duration} أيام","{duration} أيام","{duration} أيام","{duration} أيام"], + "_{duration} week_::_{duration} weeks_" : ["{duration} أسابيع","{duration} أسبوع","{duration} أسابيع","{duration} أسابيع","{duration} أسابيع","{duration} أسابيع"], + "_{duration} month_::_{duration} months_" : ["{duration} شهور","{duration} شهر","{duration} شهور","{duration} شهور","{duration} شهور","{duration} شهور"], + "_{duration} year_::_{duration} years_" : ["{duration} سنوات","{duration} سنة","{duration} سنوات","{duration} سنوات","{duration} سنوات","{duration} سنوات"], + "To configure appointments, add your email address in personal settings." : "ليُمكنك إعداد المواعيد، يتوجب إضافة عنوان إيميلك الشخصي في إعداداتك الشخصية.", + "Public – shown on the profile page" : "عمومي - أعرض في صفحة الملف الشخصي", + "Private – only accessible via secret link" : "خصوصي - يُمكن فقط الوصول إليه عن طريق رابط سرّي", + "Appointment schedule saved" : "تمّ حفظ جدول المواعيد", + "Create appointment schedule" : "إنشاء جدول مواعيد", + "Edit appointment schedule" : "تعديل جدول المواعيد", + "Update" : "حدث", + "Appointment name" : "اسم الموعد", "Location" : "الموقع", + "Create a Talk room" : "إنشاء غرفة محادثة", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "سيتم إنشاء رابط خاص بكل موعد محجوز و سيتم إرساله عبر البريد الإلكتروني للتأكيد", "Description" : "الوصف", + "Visibility" : "الرؤية", "Duration" : "المدة الزمنية", + "Increments" : "الزيادات", + "Additional calendars to check for conflicts" : "تقاويم إضافية للتحقّق من وجود تعارضات", + "Pick time ranges where appointments are allowed" : "إختر النطاقات الزمنية التي يُسمح فيها بالمواعيد", "to" : "إلى", + "Delete slot" : "حذف الخانة الزمنية", + "No times set" : "لم يتم تحديد أي أوقات", "Add" : "إضافة", "Monday" : "الإثنين", "Tuesday" : "الثلاثاء", @@ -135,9 +241,37 @@ OC.L10N.register( "Friday" : "الجمعة", "Saturday" : "السبت", "Sunday" : "الأحد", - "Save" : "حفظ", - "Update" : "حدث", - "Your email address" : "عنوان بريديك الإلكتروني", + "Weekdays" : "أيام الأسبوع", + "Add time before and after the event" : "أضف مُهلة زمنية قبل وبعد الحدث", + "Before the event" : "قبل الحدث", + "After the event" : "بعد الحدث", + "Planning restrictions" : "قيود التخطيط", + "Minimum time before next available slot" : "أقل مدة قبل الخانة الزمنية التالية", + "Max slots per day" : "أقصى عدد من الخانات الزمنية في اليوم", + "Limit how far in the future appointments can be booked" : "تقييد أبعد تاريخ في المستقبل يمكن حجز مواعيد فيه ", + "It seems a rate limit has been reached. Please try again later." : "يبدو أن معدل قبول الوصول للنظام قد وصل حدّه الأقصى. يُرجى إعادة المحاولة في وقت لاحقٍ.", + "Please confirm your reservation" : "رجاء، قم بتأكيد حجزك", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "لقد أرسلنا لك بريدًا إلكترونيًا يحتوي على التفاصيل. يرجى تأكيد موعدك باستخدام الرابط الموجود في البريد الإلكتروني. يمكنك إغلاق هذه الصفحة الآن.", + "Your name" : "اسمك", + "Your email address" : "عنوان البريد الإلكتروني الخاص بك", + "Please share anything that will help prepare for our meeting" : "رجاءً، شارك ما يمكن أن يساعد في التحضير لاجتماعنا", + "Could not book the appointment. Please try again later or contact the organizer." : "تعذّر حجز الموعد. حاول مرة أخرى في وقتٍ لاحق من فضلك أو اتصل بالمُنظِّم.", + "Back" : "عودة", + "Book appointment" : "إحجِز موعداً", + "Error fetching Talk conversations." : "خطأ في جلب محادثات Talk.", + "Conversation does not have a valid URL." : "عنوان URL للمحادثة غير صحيح.", + "Successfully added Talk conversation link to location." : "تمت إضافة رابط المحادثة إلى الموقع بنجاح.", + "Successfully added Talk conversation link to description." : "تمت إضافة رابط المحادثة إلى الوصف بنجاح.", + "Failed to apply Talk room." : "تعذّر تطبيق غرفة المحادثة.", + "Error creating Talk conversation" : "خطأ في إنشاء رابط المحادثة", + "Select a Talk Room" : "إختَر غرفة المحادثة", + "Add Talk conversation" : "إضِف محادثة Talk", + "Fetching Talk rooms…" : "جلب معلومات غرف المحادثة ...", + "No Talk room available" : "لاتوجد غرف محادثة متاحة", + "Create a new conversation" : "إنشاء محادثة جديدة", + "Select conversation" : "اختر محادثة", + "on" : "في", + "at" : "عند", "before at" : "قبل", "Notification" : "تنبيه", "Email" : "البريد الإلكتروني", @@ -148,99 +282,210 @@ OC.L10N.register( "Edit time" : "تعديل الوقت", "Save time" : "حفظ الوقت", "Remove reminder" : "حذف التذكير", - "on" : "في", - "at" : "في", - "+ Add reminder" : "+ اضافة تذكير", - "_second_::_seconds_" : ["ثانية","ثانية","ثانية","ثواني","ثواني","ثواني"], - "Available" : "متوفر", + "Add reminder" : "أضف تذكيراً", + "seconds" : "ثوانٍ", + "minutes" : "دقائق", + "hours" : "ساعات", + "days" : "أيام", + "weeks" : "أسابيع", + "Choose a file to add as attachment" : "إختر ملفّاً لإضافته كمرفق", + "Choose a file to share as a link" : "إختر ملفاً لمشاركته كرابط", + "Attachment {name} already exist!" : "المُرفَق {name} موجودٌ سلفاً!", + "Could not upload attachment(s)" : "تعذر رفع المرفق/المرفقات", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "يمكنك الانتقال إلى {host}. هل أنت متأكد أنك ترغب في المتابعة؟ الرابط: {link}", + "Proceed" : "مواصلة", + "No attachments" : "لا توجد مرفقات", + "Add from Files" : "إضافة من الملفات", + "Upload from device" : "رفع من الجهاز", + "Delete file" : "حذف الملف", + "Confirmation" : "تأكيد", + "_{count} attachment_::_{count} attachments_" : ["{count} مرفقات","{count} مرفق","{count} مرفقات","{count} مرفقات","{count} مرفقات","{count} مرفقات"], + "Suggested" : "مُقترح", + "Available" : "مُتوفر", + "Invitation accepted" : "تمّ قبول الدعوة", + "Accepted {organizerName}'s invitation" : "قَبِلَ دعوة {organizerName}", + "Participation marked as tentative" : "المُشاركة مبدئية", + "Invitation is delegated" : "الدعوة تمّ تفويضها", "Not available" : "غير متوفر", - "Availability of attendees, resources and rooms" : "متوفرين من الحضور والموارد والغرف", - "Free" : "متوفر", - "Busy (tentative)" : "مشغول (حاليا)", - "Busy" : "مشغول", + "Invitation declined" : "الدعوة لم تُقبل", + "Declined {organizerName}'s invitation" : "رفض دعوة {organizerName}", + "Availability will be checked" : "سوف يتم اختبار التوافر", + "Invitation will be sent" : "سوف يتم إرسال الدعوة", + "Failed to check availability" : "تعذّر اختبار التوافر", + "Failed to deliver invitation" : "تعذّر تسليم الدعوة", + "Awaiting response" : "في انتظار الرّد", + "Checking availability" : "تحقّق من التواجد", + "Has not responded to {organizerName}'s invitation yet" : "لم يَرُدَّ على دعوة {organizerName} بعدُ", + "chairperson" : "الرئيس", + "required participant" : "المُشارِك المطلوب", + "non-participant" : "غير مُشارِك", + "optional participant" : "مُشارِك اختياري", + "{organizer} (organizer)" : "{organizer} (مُنظِّم)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "توافر الحضور والموارد والغرف", + "Suggestion accepted" : "تمّ قبول الاقتراح", + "Legend" : "مفتاح تفسيري", "Out of office" : "خارج المكتب", + "Attendees:" : "الحُضُور:", + "Done" : "تمّ", + "Search room" : "البحث في الغرفة", + "Room name" : "اسم الغرفة", + "Check room availability" : "تحقَّق من توافر الغرفة", + "Free" : "مُتاحٌ", + "Busy (tentative)" : "مشغولٌ (حاليّاً)", + "Busy" : "مشغول", "Unknown" : "غير معروف", + "Find a time" : "إيجاد وقت", + "The invitation has been accepted successfully." : "تمّ قبول الدعوة بنجاح.", + "Failed to accept the invitation." : "فشل في قبول الدعوة.", + "The invitation has been declined successfully." : "تمّ رفض الدعوة بنجاح.", + "Failed to decline the invitation." : "فشل في رفض الدعوة.", + "Your participation has been marked as tentative." : "تمّ وضع علامة \"مبدئية\" على مشاركتك.", + "Failed to set the participation status to tentative." : "فشل في تعيين حالة المشاركة إلى مؤقتة.", "Accept" : "قبول", "Decline" : "رفض", "Tentative" : "مؤقت", - "Create Talk room for this event" : "انشاء غرفة تحدث لهذه الفعالية.", - "Show busy times" : "اظهار الاوقات الممتلئة", - "No attendees yet" : "لا يوجد حضور بعد", - "Successfully appended link to talk room to description." : "تم اضافة الرابط في وصف غرفة التحدث بنجاح.", - "Error creating Talk room" : "خطأ في انشاء غرفة تحدث", - "Send email" : "إرسال بريد", + "No attendees yet" : "لا يوجد حضور حتى الآن", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} مدعو, {confirmedCount} مؤكد", + "Successfully appended link to talk room to location." : "تمّ إلحاق رابط غرفة المحادثة بالموقع بنجاح.", + "Successfully appended link to talk room to description." : "تمّ إلحاق الرابط بوصف غرفة المحادثة بنجاح.", + "Error creating Talk room" : "خطأ في انشاء غرفة محادثة", + "Attendees" : "المشاركون", + "_%n more guest_::_%n more guests_" : ["%n ضيفاً آخر","%n ضيفاً آخر","%n ضيفاً آخر","%n ضيوف آخرين","%n ضيفاً آخر","%n ضيفاً آخر"], + "Remove group" : "حذف مجموعة", + "Remove attendee" : "إلغاء شخص من قائمة الحضور", + "Request reply" : "طلب الرّد", "Chairperson" : "الرئيس", "Required participant" : "مشارك مطلوب", "Optional participant" : "مشارك اختياري", "Non-participant" : "غير مشارك", - "Remove attendee" : "طرد الحاضر", - "No match found" : "لا يوجد تطابق", - "(organizer)" : "(منظم)", - "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "لإرسال الدعوات والتعامل مع الاستجابات [linkopen]اضف بريدك الالكتروني في ملفك الشخصي[linkclose].", - "Remove color" : "حذف اللون", - "Event title" : "عنوان الفعالية", - "All day" : "اليوم بأكمله", - "from {startDate}" : "منذ تاريخ {startDate}", - "from {startDate} at {startTime}" : "منذ تاريخ {startDate} في {startTime}", - "to {endDate}" : "إلى تاريخ {endDate}", - "to {endDate} at {endTime}" : "إلى {endDate} في {endTime}", - "Repeat" : "التكرار", - "End repeat" : "نهاية التكرار", - "Select to end repeat" : "اختر نهاية التكرار", - "never" : "بتاتاً", + "_%n member_::_%n members_" : ["%n عضواً","%n عضواً","%n عضواً","%n عضواً","%n عضواً","%n عضواً"], + "Search for emails, users, contacts, contact groups or teams" : "البحث عن إيميلات، أو مستخدِمين، أو جهات اتصال، أو مجموعات، أو فِرَق", + "No match found" : "لم يٌمكن إيجاد تطابق", + "Note that members of circles get invited but are not synced yet." : "لاحظ أن أعضاء دوائر الاتصال تمّت دعوتهم لكن لم تتمّ مزامنتهم بعدُ.", + "Note that members of contact groups get invited but are not synced yet." : "لاحظ أن أعضاء مجموعات الاتصال تتم تدعوتهم لكن لا تمكن مزامنهم بعدُ.", + "(organizer)" : "(مُنظِّم)", + "Make {label} the organizer" : "إجعَل {label} هو المُنظِّم", + "Make {label} the organizer and attend" : "إجغعَل {label} هو المنظم و أحد الحضور", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "لإرسال الدعوات والتعامل مع الاستجابات [linkopen]، أضف بريدك الالكتروني في الإعدادات الشخصية [linkclose].", + "Remove color" : "حذف لون", + "Event title" : "عنوان الحدث", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "لم يُمكن تغيير إعداد \"كامل اليوم\" بالنسبة للأحداث التي هي جزء من مجموعة تكرارية. ", + "From" : "مِن :", + "To" : "إلى :", + "Repeat" : "كرّر", + "_time_::_times_" : ["مرات","مرة","مرات","مرات","مرات","مرات"], + "never" : "أبداً", "on date" : "في تاريخ", "after" : "بعد", - "first" : "اول", - "third" : "ثالث", - "fourth" : "رابع", - "fifth" : "خامس", - "second to last" : "الثاني إلى الاخير", - "last" : "الاخير", - "Changes to the recurrence-rule will only apply to this and all future occurrences." : "تغيير قانون التكرار يتم تعيينه لهذا ولظهور المستقبل فقط.", + "End repeat" : "نهاية التكرار", + "Select to end repeat" : "إختر نهاية التكرار", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "هذا الحدث هو استثناء من مجموعة التكرار. لا يمكنك إضافة شرط تكرار إليه.", + "first" : "أول", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "التغيير في قاعدة التكرار سوف يُطبّق فقط على هذا التكرار و على التكرارات المستقبلية.", "Repeat every" : "تكرار كل", - "By day of the month" : "يوم من الشهر", + "By day of the month" : "بحسب اليوم من الشهر", "On the" : "في الـ", + "_day_::_days_" : ["أيام","يوم","أيام","أيام","أيام","أيام"], + "_week_::_weeks_" : ["أسابيع","أسبوع","أسابيع","أسابيع","أسابيع","أسابيع"], + "_month_::_months_" : ["شهور","شهر","شهور","شهور","شهور","شهور"], "_year_::_years_" : ["سنه","سنه","سنه","سنوات","سنوات","سنوات"], - "weekday" : "ايام الاسبوع", + "On specific day" : "في يومٍ مُحدَّد", + "weekday" : "أيام الاسبوع", "weekend day" : "يوم نهاية الاسبوع", - "More" : "المزيد", - "Update this occurrence" : "تغيير هذا الظهور", - "Update this and all future" : "تغيير هذا والمستقبل", + "Does not repeat" : "لا يتكرر", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "لا يدعم نكست كلاود تعريف التكرار لهذا الحدث بشكل كامل. إذا قمت بتحرير خيارات التكرار، فقد تفقد بعض التكرارات.", + "No rooms or resources yet" : "لا توجد غرف يمكن حجزها حتى الآن", + "Resources" : "الموارد", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatCapacity} مقاعد","{seatCapacity} مقعد","{seatCapacity} مقاعد","{seatCapacity} مقاعد","{seatCapacity} مقاعد","{seatCapacity} مقاعد"], + "Add resource" : "إضافة مورِد", + "Has a projector" : "لديه جهاز عرض", + "Has a whiteboard" : "فيها لوحة whiteboard", + "Wheelchair accessible" : "قابل للوصول بكراسي المعاقين", + "Remove resource" : "حذف مورد", + "Search for resources or rooms" : "البحث عن موارد أو غُرَف", + "available" : "متاح", + "unavailable" : "غير متاح", + "Show all rooms" : "إظهار كل الغرف", + "Projector" : "عارض ضوئي projector", + "Whiteboard" : "لوحة Whiteboard", + "Room type" : "نوع الغرفة", + "Any" : "أيّ", + "Minimum seating capacity" : "الحد الأدنى لسعة الجلوس", + "More details" : "تفاصيل أكثر", + "Update this and all future" : "تغيير هذه و المستقبلية الأخرى", + "Update this occurrence" : "تحديث هذا الحدوث", "Public calendar does not exist" : "التقويم العام غير موجود", - "Maybe the share was deleted or has expired?" : "لربما المشاركة محذوفة أو منتهية؟", - "Pick a time" : "اختر وقت", - "Pick a date" : "اختر تاريخ", + "Maybe the share was deleted or has expired?" : "لربما كانت المشاركة محذوفة أو منتهية الصلاحية؟", "from {formattedDate}" : "من {formattedDate}", "to {formattedDate}" : "إلى {formattedDate}", "on {formattedDate}" : "في {formattedDate}", - "from {formattedDate} at {formattedTime}" : "من {formattedDate} في {formattedTime}", - "to {formattedDate} at {formattedTime}" : "إلى {formattedDate} في {formattedTime}", - "on {formattedDate} at {formattedTime}" : "في {formattedDate} في {formattedTime}", - "{formattedDate} at {formattedTime}" : "{formattedDate} في {formattedTime}", - "Please enter a valid date" : "اختر تاريخ صحيح", - "Please enter a valid date and time" : "اختر تاريخ ووقت صحيح", + "from {formattedDate} at {formattedTime}" : "من {formattedDate} عند {formattedTime}", + "to {formattedDate} at {formattedTime}" : "إلى {formattedDate} عند {formattedTime}", + "on {formattedDate} at {formattedTime}" : "في {formattedDate} عند {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} عند {formattedTime}", + "Please enter a valid date" : "إختر تاريخاً صحيحاً", + "Please enter a valid date and time" : "إختر تاريخاً و وقتاً صحيحاً", + "Select a time zone" : "إختر المنطقة الزمنية", + "Please select a time zone:" : "إختر المنطقة الزمنية من فضلك:", + "Pick a time" : "إختر وقتاً", + "Pick a date" : "إختر تاريخاً", + "Type to search time zone" : "أكتب للبحث في المنطقة الزمنية ", "Global" : "عالمي", + "Holidays in {region}" : "العطلات الرسمية في {region}", + "An error occurred, unable to read public calendars." : "حدث خطأ؛ تعذّرت قراءة التقاويم العمومية.", + "An error occurred, unable to subscribe to calendar." : "حدث خطأ؛ تعذّر الاشتراك في التقويم.", + "Public holiday calendars" : "تقاويم العطلات العامة", + "Public calendars" : "التقاويم العمومية", + "No valid public calendars configured" : "لا توجد أيّ تقاويم عمومية مُهيّأة بالشكل الصحيح", + "Speak to the server administrator to resolve this issue." : "تحدّث مع مسؤول النظام لحل هذا الإشكال.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "يتم توفير تقاويم العطلات العامة من موقع ثندربرد Thunderbird. سوف يتم تنزيل بيانات التقويم من {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "يتم اقتراح هذه التقويمات العامة بواسطة مسؤول القسم. سيتم تنزيل بيانات التقويم من موقع الويب المعني.", + "By {authors}" : "من قِبَل {authors}", + "Subscribed" : "مشترك", + "Subscribe" : "إشترك", + "Could not fetch slots" : "تعذر تحميل الخانات الزمنية", + "Select a date" : "إختر تاريخاً", + "Select slot" : "إختر الخانة الزمنية", + "No slots available" : "لا توجد خانة زمنية متاحة", + "The slot for your appointment has been confirmed" : "تم تأكيد الموعد المحدد لك", + "Appointment Details:" : "تفاصيل الموعد:", + "Time:" : "الوقت:", + "Booked for:" : "محجوز لـ :", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "شكراً. حجزك من {startDate} إلى {endDate} تمّ تأكيده.", + "Book another appointment:" : "إحجز موعداً آخر:", + "See all available slots" : "شاهد كل الخانات الزمنية المتاحة", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "موعدك من {startDate} إلى {endDate} غير متاح.", + "Please book a different slot:" : "من فضلك، إختر خانة زمنية أخرى:", + "Book an appointment with {name}" : "إحجز موعداً مع {name}", + "No public appointments found for {name}" : "لم يُمكن إيجاد أي مواعيد عامة لـ {name}", "Personal" : "شخصي", - "No more events today" : "لا يوجد المزيد من الفعاليات اليوم", - "No upcoming events" : "ليس هناك فعاليات قادمة", - "Create a new event" : "انشاء فعالية جديدة", - "[Today]" : "[اليوم]", - "[Tomorrow]" : "[الغد]", - "[Yesterday]" : "[امس]", - "[Last] dddd" : "[اخر] dddd", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "الاكتشاف التلقائي للمنطقة الزمنية يُحدّد منطقتك الزمنية بالنسبة للتوقيت العالمي المُوحّد UTC. هذا على الأرجح نتيجة للتدابير الأمنية لمتصفح الويب الخاص بك. يُرجى ضبط المنطقة الزمنية يدويًا في إعدادات التقويم.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "لم يتم العثور على منطقتك الزمنية التي تمّت تهيئتها ({timezoneId}). تمّ الرجوع إلى التوقيت العالمي المُوحّد UTC. يرجى تغيير منطقتك الزمنية في الإعدادات، والإبلاغ عن هذه المشكلة.", + "Availability of {displayName}" : "توافُر {displayName}", + "Edit event" : "تعديل الحدث", "Event does not exist" : "الفعالية غير موجودة", + "Duplicate" : "تكرار", "Delete this occurrence" : "حذف هذا الظهور", "Delete this and all future" : "حذف هذا الظهور والجميع في الستقبل", - "Details" : "التفاصيل", - "Attendees" : "المشاركون", + "All day" : "كامل اليوم", + "Modifications wont get propagated to the organizer and other attendees" : "التعديلات لن يتم إذاعتها على المنظم والمشاركين الآخرين", + "Managing shared access" : "إدارة الوصول المشترك", + "Deny access" : "منع الوصول", + "Invite" : "دعوة", + "_User requires access to your file_::_Users require access to your file_" : ["يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدم إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["تتطلب المرفقات وصولاً مشتركًا","يتطلب المرفق وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا"], + "Untitled event" : "حدث بدون اسم", "Close" : "إغلاق", - "Show more details" : "اظهار المزيد من التفاصيل", + "Modifications will not get propagated to the organizer and other attendees" : "التعديلات لن يتم إذاعتها على المنظم والمشاركين الآخرين", "Subscribe to {name}" : "اشتراك مع {name}", + "Export {name}" : "تصدير {name}", + "Show availability" : "أعرُض التوافر", "Anniversary" : "ذكرى سنوية", "Appointment" : "موعد", "Business" : "عمل", "Education" : "تعليم", - "Holiday" : "اجازة", + "Holiday" : "عطلة", "Meeting" : "اجتماع", "Miscellaneous" : "متنوع", "Non-working hours" : "ساعات خارج العمل", @@ -251,146 +496,95 @@ OC.L10N.register( "Travel" : "سفر", "Vacation" : "اجازة", "Midnight on the day the event starts" : "منتصف ليل اليوم الذي يبدأ فيه الحدث", - "on the day of the event at {formattedHourMinute}" : "في يوم الفعالية في {formattedHourMinute}", - "at the event's start" : "في بداية الفعالية", - "at the event's end" : "في نهاية الفعالية", - "{time} before the event starts" : "{time} قبل بداية الفعالية", - "{time} before the event ends" : "{time} قبل نهاية الفعالية", - "{time} after the event starts" : "{time} بعد بداية الفعالية", - "{time} after the event ends" : "{time} بعد نهاية الفعالية", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n أيام قبل الحدث في {formattedHourMinute}","%n يوم قبل الحدث في {formattedHourMinute}","%n أيام قبل الحدث في {formattedHourMinute}","%n أيام قبل الحدث في {formattedHourMinute}","%n أيام قبل الحدث في {formattedHourMinute}","%n أيام قبل الحدث في {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n أسابيع قبل الحدث في {formattedHourMinute}","%n أسبوع قبل الحدث في {formattedHourMinute}","%n أسابيع قبل الحدث في {formattedHourMinute}","%n أسابيع قبل الحدث في {formattedHourMinute}","%n أسابيع قبل الحدث في {formattedHourMinute}","%n أسابيع قبل الحدث في {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "في يوم الحدث عند {formattedHourMinute}", + "at the event's start" : "في بداية الحدث", + "at the event's end" : "في نهاية الحدث", + "{time} before the event starts" : "{time} قبل بداية الحدث", + "{time} before the event ends" : "{time} قبل نهاية الحدث", + "{time} after the event starts" : "{time} بعد بداية الحدث", + "{time} after the event ends" : "{time} بعد نهاية الحدث", "on {time}" : "في {time}", "on {time} ({timezoneId})" : "في {time} ({timezoneId})", - "Week {number} of {year}" : "اسبوع {number} من {year}", - "Does not repeat" : "لا يتكرر", + "Week {number} of {year}" : "الأسبوع {number} من {year}", "Daily" : "يومي", "Weekly" : "أسبوعي", "Monthly" : "شهري", "Yearly" : "سنوي", + "_Every %n day_::_Every %n days_" : ["كل %n أيام","كل %n يوم","كل %n أيام","كل %n أيام","كل %nأيام","كل %n أيام"], + "_Every %n week_::_Every %n weeks_" : ["كل%n أسابيع","كل%n أسبوع","كل %n أسابيع","كل %n أسابيع","كل %n أسابيع","كل %n أسابيع"], + "_Every %n month_::_Every %n months_" : ["كل %n شهور","كل %nشهر","كل %n شهور","كل %n شهور","كل %n شهور","كل %n شهور"], + "_Every %n year_::_Every %n years_" : ["كل %n سنوات","كل %n سنة","كل %n سنوات","كل %n سنوات","كل %n سنوات","كل %n سنوات"], + "_on {weekday}_::_on {weekdays}_" : ["في {weekdays}","في {weekday}","في {weekdays}","في {weekdays}","في {weekdays}","في {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["في أيام {dayOfMonthList}","في يوم {dayOfMonthList}","في أيام {dayOfMonthList}","في أيام {dayOfMonthList}","في أيام {dayOfMonthList}","في أيام {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "في الـ {ordinalNumber} {byDaySet}", - "in {monthNames}" : "في {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "في شهر {monthNames} في {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "في {monthNames} في الـ {ordinalNumber} {byDaySet}", "until {untilDate}" : "حتى {untilDate}", - "Untitled event" : "فعالية بدون اسم", + "_%n time_::_%n times_" : ["%n مرات","%n مرة","%n مرات","%n مرات","%n مرات","%n مرات"], + "second" : "ثاني", + "third" : "ثالث", + "fourth" : "رابع", + "fifth" : "خامس", + "second to last" : "الثاني إلى الاخير", + "last" : "الأخير", "Untitled task" : "مهمة بدون اسم", "Please ask your administrator to enable the Tasks App." : "تواصل مع مسؤول النظام لاستخدام تطبيق المهام.", - "Next" : "التالي", + "You are not allowed to edit this event as an attendee." : "أنت غير مسموح لك بتعديل هذا الحدث كأحد الحضور.", + "W" : "W", "%n more" : "%n المزيد", - "No events to display" : "لا يوجد فعاليات", - "No events" : "لا يوجد فعاليات", - "Create a new event or change the visible time-range" : "اصنع فعالية جديدة أو قم بتغيير عامل الوقت", - "It might have been deleted, or there was a typo in a link" : "لربما انحذفت، أو الحروف غير مطابقة في الرابط", - "It might have been deleted, or there was a typo in the link" : "لربما انحذفت، أو الحروف غير مطابقة في الرابط", - "Other" : "آخر", + "No events to display" : "لا توجد أحداث", + "All participants declined" : "رفض جميع المشاركين", + "Please confirm your participation" : "رجاءً، قم بتأكيد مشاركتك", + "You declined this event" : "أنت رفضت هذا الحدث", + "Your participation is tentative" : "مشاركتك مبدئية غير نهائية", + "_+%n more_::_+%n more_" : ["+ %n أكثر","+ %n أكثر","+ %n أكثر","+ %n أكثر","+ %n أكثر","+ %n أكثر"], + "No events" : "لا توجد أحداث", + "Create a new event or change the visible time-range" : "أنشيء حدثاً جديداً أو قم بتغيير المدى الزمني", + "Failed to save event" : "تعذّر حفظ الحدث", + "It might have been deleted, or there was a typo in a link" : "لربما تمّ حذفها، أو كان هناك خطأٌ هجائي في الرابط", + "It might have been deleted, or there was a typo in the link" : "لربما تمّ حذفها، أو كان هناك خطأٌ هجائي في الرابط", + "Meeting room" : "غرفة اجتماعات", + "Lecture hall" : "قاعة محاضرات", + "Seminar room" : "غرفة مناقشة", + "Other" : "آخَر", "When shared show" : "عندما تظهر المشاركة", - "When shared show full event" : "عرض الفعالية كاملة عند مشاركته", - "When shared show only busy" : "عرض الازدحام عند مشاركة الفعالية", - "When shared hide this event" : "إخفاء الحدث عند مشاركته", - "The visibility of this event in shared calendars." : "ظهور الفعالية في التقويم المشارك مع الآخرين.", - "Add a location" : "اضافة موقع", - "Add a description" : "اضافة وصف", + "When shared show full event" : "عرض الحدث كاملاً عند مشاركته", + "When shared show only busy" : "عرض \"مشغول\" فقط عند مشاركته", + "When shared hide this event" : "إخفاء هذا الحدث عند مشاركته", + "The visibility of this event in shared calendars." : "ظهور الحدث في التقاويم المشتركة.", + "Add a location" : "إضافة موقع", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "أضِف وصفاً:\n\n- ماهو موضوع الاجتماع\n- بنود الاجتماع\n- ما يحتاجه المشاركون إلى تحضيره للاجتماع", "Status" : "الحالة", - "Confirmed" : "مؤكَّد", + "Confirmed" : "مؤكد", "Canceled" : "ملغي", - "Confirmation about the overall status of the event." : "التأكيد بخصوص الحالة العامة للفعالية.", + "Confirmation about the overall status of the event." : "التأكيد بخصوص الحالة العامة للحدث.", "Show as" : "أظهر كـ", - "Take this event into account when calculating free-busy information." : "ضع هذه الفعالية في الاعتبار عندما تكون معلومات الحالة متوفر/ مشغول.", + "Take this event into account when calculating free-busy information." : "ضع هذا الحدث في الاعتبار عند احتساب معلومة متوفر/ مشغول.", "Categories" : "التصنيفات", - "Categories help you to structure and organize your events." : "التصنيفات تساعدك للهيكله وتنظيم الفعالية.", - "Search or add categories" : "ابحث او اضف تصنيف", - "Add this as a new category" : "اضف كـ تصنيف جديد", - "Custom color" : "لون خاص", - "Special color of this event. Overrides the calendar-color." : "اللون الخاص للفعالية هذه، يعيد تعيين لون التقويم.", - "Chat room for event" : "غرفة محادثة للفعالية", - "Imported {filename}" : "استيراد {filename}", - "Meditation" : "تفكير", - "Relaxing" : "لحظة راحة", - "Relax" : "راحة", - "Commuting" : "تجوال", - "Presentation" : "عرض تقديمي", - "Talk" : "التحدث", - "Camping" : "تخيم", - "Camp" : "مخيم", - "Movie" : "فلم", - "Cinema" : "سينما", - "Graduation" : "تخرج", - "Brainstorm" : "عصف ذهني", - "Review" : "مراجعة", - "Baseball" : "بيسبول", - "Meet" : "اجتماع", - "Planning" : "تخطيط", - "Pointing" : "تشكيل", - "Retrospective" : "استعادة احداث", - "Office" : "مكتب", - "Contributor week" : "اسبوع المساهم", - "Mail" : "البريد", - "Soccer" : "كرة قدم امريكية", - "Football" : "كرة قدم", - "Gaming" : "العاب", - "Drive" : "سياقه", - "Bicycle" : "ركوب دراجة", - "Cycle" : "دراجة هوائية", - "Biking" : "ركوب الدراجة", - "Podcast" : "تدوين صوتي", - "Basketball" : "كرة سلة", - "Fishing" : "صيد", - "Hiking" : "التنزه", - "Hike" : "نزهه", - "Art" : "فن", - "Exhibition" : "معرض", - "Museum" : "متحف", - "Pilates" : "يوغا", - "Park" : "حديقة", - "Studying" : "دراسة", - "Doctor" : "دكتور", - "Health" : "صحة", - "Dentist" : "طبيب أسنان", - "Hospital" : "مستشفى", - "Interview" : "مقابلة", - "Training" : "تدريب", - "Practice" : "ممارسة", - "Sports" : "رياضة", - "Exercise" : "مناوره", - "Work out" : "تمرين", - "Working out" : "تمرين", - "Gym" : "نادي رياضي", - "Barber" : "صالون الحلاقة", - "Haircut" : "قص شعر", - "Exam" : "اختبار", - "Working" : "جاري العمل", - "New Years Eve" : "بداية السنة", - "NYE" : "حفلة بداية السنة", - "Fireworks" : "العاب نارية", - "Running" : "ركض", - "Go for a run" : "الذهاب للركض", - "Marathon" : "سباق ماراثون", - "Video-conference" : "اجتماع فيديو", - "Conference-call" : "اجتماع صوتي", - "Video-call" : "مكالمة فيديو صوتية", - "Video-chat" : "مكالمة فيديو محادثة", - "Video-meeting" : "اجتماع فيديو", - "Call" : "اتصال", - "Calling" : "جاري الاتصال", - "Christmas" : "حفل ديسمبر", - "Conference" : "مؤتمر", - "Pizza" : "بيتزا", - "Travelling" : "مسافر", - "Journey" : "رحلة", - "Collaborate" : "يتعاون", - "Pair" : "اقتران", - "Lecture" : "محاضرة", - "Seminar" : "ندوة", - "Photograph" : "تصوير", - "Party" : "حفله", - "Celebration" : "احتفال", - "Celebrate" : "احتفال", - "Birthday" : "عيد ميلاد", - "Shopping" : "تسوق", - "Skate" : "تزلج", - "Skateboard" : "لوح تزلج", - "Wine tasting" : "تذوق", - "Golf" : "الجولف", - "Dinner" : "عشاء", - "Lunch" : "غداء", - "User not found" : "لم يتم العثور على المستخدم" + "Categories help you to structure and organize your events." : "التصنيفات تساعدك لهيكله وتنظيم أحداثك.", + "Search or add categories" : "إبحث عن أو أضف تصنيفات", + "Add this as a new category" : "أضفه كتصنيف جديد", + "Custom color" : "لون مخصص", + "Special color of this event. Overrides the calendar-color." : "اللون المخصص لهذا الحدث يغطي لون التقويم.", + "Error while sharing file" : "خطأ اثناء مشاركة ملف", + "Error while sharing file with user" : "حدث خطأ أثناء مُشاركة الملف مع مُستخدِم", + "Attachment {fileName} already exists!" : "المُرفَق {fileName} موجودٌ سلفاً!", + "An error occurred during getting file information" : "حدث خطأ أثناء جلب بيانات الملف", + "Talk conversation for event" : "محادثة الحدث ", + "An error occurred, unable to delete the calendar." : "حدث خطأ، لا يمكن حذف التقويم.", + "Imported {filename}" : "إستيراد {filename}", + "This is an event reminder." : "هذا تذكير بحدث", + "Error while parsing a PROPFIND error" : "حدث خطأ أثناء تحليل PROFIND", + "Appointment not found" : "الموعد غير موجود", + "User not found" : "المستخدم غير موجود", + "Reminder" : "تذكير", + "+ Add reminder" : "+ اضافة تذكير", + "Select automatic slot" : "إختيار الخانة الزمنية التلقائية", + "with" : "مع", + "Available times:" : "الأوقات المتاحة:", + "Suggestions" : "مقترحات", + "Details" : "التفاصيل" }, "nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"); diff --git a/l10n/ar.json b/l10n/ar.json index c70ec02f0edc4f810363c52d46812ae0c8b5adeb..0896cbefc7390d56319ba5db86ea0bb5b13cf788 100644 --- a/l10n/ar.json +++ b/l10n/ar.json @@ -1,103 +1,169 @@ { "translations": { - "User-Session unexpectedly expired" : "جلسة المستخدم انتهت", - "Provided email-address is not valid" : "البريد المدخل غير صحيح", + "Provided email-address is too long" : "عنوان البريد طويل جداً", + "User-Session unexpectedly expired" : "إنتهت صلاحية جلسة المستخدم بشكل غير متوقع", + "Provided email-address is not valid" : "عنوان البريد الإلكتروني غير صالح", "%s has published the calendar »%s«" : "%s نشر التقويم »%s«", - "Unexpected error sending email. Please contact your administrator." : "حدث خطأ اثناء إرسال البريد، تحقق من اعدادات البريد او تواصل مع مسؤول النظام.", - "Hello," : "مرحبا %s،", + "Unexpected error sending email. Please contact your administrator." : "حدث خطأ اثناء إرسال البريد. تحقّق من إعدادات البريد او تواصل مع مسؤول النظام.", + "Successfully sent email to %1$s" : "تم إرسال الإيميل إلى %1$s بنجاح.", + "Hello," : "مرحباً،", "We wanted to inform you that %s has published the calendar »%s«." : "المستخدم %s قام بنشر تقويم »%s«.", "Open »%s«" : "فتح »%s«", "Cheers!" : "تحياتي!", - "Upcoming events" : "الفعاليات القادمة", + "Upcoming events" : "الأحداث القادمة", + "No more events today" : "لا يوجد المزيد من الفعاليات اليوم", + "No upcoming events" : "ليست هناك أحداث قادمة", + "More events" : "أحداث أخرى", + "%1$s with %2$s" : "%1$s مع %2$s", + "Calendar" : "التقويم", + "New booking {booking}" : "حجز جديد {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) قام بحجز الموعد \"{config_display_name}\" في {date_time}.", "Appointments" : "المواعيد", + "Schedule appointment \"%s\"" : "جدولة الموعد \"%s\"", + "Schedule an appointment" : "جدولة موعد", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "تحضير لـ %s", + "Follow up for %s" : "متابعة لـ %s", + "Your appointment \"%s\" with %s needs confirmation" : "موعدك \"%s\" مع %s يحتاج إلى توكيد.", + "Dear %s, please confirm your booking" : "السيد/السيدة %s؛ رجاءً، قم بتأكيد حجز موعدك.", "Confirm" : "تأكيد", + "Appointment with:" : "موعد مع: ", + "Description:" : "الوصف:", + "This confirmation link expires in %s hours." : "رابط التأكيد هذا تنتهي صلاحيته بعد%s ساعات..", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "إذا كنت ترغب في إلغاء الموعد، فيُرجى الاتصال بمُنظّم الحدث عن طريق الرّد على هذا البريد الإلكتروني أو عن طريق زيارة صفحة ملفه الشخصي.", + "Your appointment \"%s\" with %s has been accepted" : "موعدك \"%s\" مع %s تمّ قبوله", + "Dear %s, your booking has been accepted." : "السيد/السيدة %s, حجزك ثم قبوله.", + "Appointment for:" : "موعد لـ :", "Date:" : "التاريخ:", - "Calendar" : "التقويم", + "You will receive a link with the confirmation email" : "سوف تستلم رابطاً في رسالة التأكيد عبر البريد الإلكتروني", + "Where:" : "المكان:", + "Comment:" : "ملاحظات:", + "You have a new appointment booking \"%s\" from %s" : "لديك حجز موعدٍ جديدٍ \"%s\" من %s", + "Dear %s, %s (%s) booked an appointment with you." : "السيد/السيدة %s, %s (%s) حجز موعداً معك.", "A Calendar app for Nextcloud" : "تطبيق التقويم لـ نكست كلاود", - "Previous day" : "اليوم الماضي", - "Previous week" : "الاسبوع الماضي", + "Previous day" : "أمس", + "Previous week" : "الأسبوع الماضي", + "Previous year" : "العام الماضى", "Previous month" : "الشهر الماضي", - "Next day" : "اليوم القادم", - "Next week" : "الاسبوع القادم", + "Next day" : "غداً", + "Next week" : "الأسبوع القادم", + "Next year" : "العام القادم", "Next month" : "الشهر القادم", - "New event" : "حدث جديد", + "Create new event" : "إنشاء حدث جديد", + "Event" : "حدث", "Today" : "اليوم", "Day" : "يوم", "Week" : "أسبوع", "Month" : "شهر", + "Year" : "السنة", "List" : "قائمة", + "Appointment link was copied to clipboard" : "تمّ نسخ رابط الموعد في الحافظة", + "Appointment link could not be copied to clipboard" : "تعذّر نسخ رابط الموعد في الحافظة", "Preview" : "معاينة", - "Copy link" : "انسخ الرابط", + "Copy link" : "نسخ الرابط", "Edit" : "تعديل", "Delete" : "حذف ", + "Appointment schedules" : "جداول المواعيد", + "Create new" : "إنشاء جديد", + "Disable calendar \"{calendar}\"" : "إيقاف التقويم \"{calendar}\"", + "Disable untitled calendar" : "إيقاف تقويم بدون اسم", + "Enable calendar \"{calendar}\"" : "تمكين التقويم \"{calendar}\"", + "Enable untitled calendar" : "تمكين التقويم بدون اسم", + "An error occurred, unable to change visibility of the calendar." : "حدث خطأ، لا يمكن تعديل وضعية ظهور التقويم.", "Untitled calendar" : "تقويم بدون اسم", - "Edit name" : "تعديل الاسم", - "Saving name …" : "جاري حفظ الاسم   …", - "Edit color" : "تعديل اللون", - "Saving color …" : "جاري حفظ اللون    …", - "Copy private link" : "نسخ الرابط الخاص", + "Shared with you by" : "مشاركة معك من قِبَل", + "Edit and share calendar" : "تعديل ومشاركة التقويم", + "Edit calendar" : "تعديل التقويم", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["إلغاء مشاركة التقويم في {countdown} ثواني","إلغاء مشاركة التقويم في {countdown} ثانية","إلغاء مشاركة التقويم في {countdown} ثواني","إلغاء مشاركة التقويم في {countdown} ثواني","إلغاء مشاركة التقويم في {countdown} ثواني","إلغاء مشاركة التقويم في {countdown} ثواني"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["حذف التقويم في {countdown} ثواني","حذف التقويم في {countdown} ثانية","حذف التقويم في {countdown} ثواني","حذف التقويم في {countdown} ثواني","حذف التقويم في {countdown} ثواني","حذف التقويم في {countdown} ثواني"], + "An error occurred, unable to create the calendar." : "حدث خطأ، يتعذّر إنشاء التقويم.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "يرجى ادخال رابطٍ صحيحٍ (يبدأ بـ https://, http://, webcals://, webcal://)", + "Calendars" : "التقاويم", + "Add new" : "إضافة جديد", + "New calendar" : "تقويم جديد", + "Name for new calendar" : "اسم التقويم الجديد", + "Creating calendar …" : "جارٍ إنشاء التقويم…", + "New calendar with task list" : "تقويم جديد مع قائمة مهام", + "New subscription from link (read-only)" : "إشتراك جديد عن طريق رابط (للقراءة فقط)", + "Creating subscription …" : "جارٍ إنشاء اشتراك…", + "Add public holiday calendar" : "أضف تقويم العطلات العامة", + "Add custom public calendar" : "إضافة تقويم عام مخصّص", + "Calendar link copied to clipboard." : "تم نسخ رابط التقويم إلى الحافظة.", + "Calendar link could not be copied to clipboard." : "تعذّر نسخ رابط التقويم إلى الحافظة.", + "Copy subscription link" : "نسخ رابط الاشتراك", + "Copying link …" : "جارٍ نسخ رابط  …", + "Copied link" : "تمّ نسخ الرابط", + "Could not copy link" : "تعذّر نسخ الرابط", "Export" : "تصدير", - "Unshare from me" : "أنت ألغيت المشاركة", - "An error occurred, unable to change visibility of the calendar." : "حدث خطأ، لا يمكن تعديل وضعية ظهور التقويم.", - "An error occurred, unable to delete the calendar." : "حدث خطأ، لا يمكن حذف التقويم.", - "Calendar link copied to clipboard." : "تم نسخ رابط التقويم.", - "Calendar link could not be copied to clipboard." : "لم نتمكن من نسخ رابط التقويم.", - "An error occurred, unable to rename the calendar." : "حدث خطأ، لا يمكن تعديل اسم التقويم.", - "An error occurred, unable to change the calendar's color." : "حدث خطأ، لا يمكن تعديل لون التقويم.", - "Share link" : "رابط المشاركة", - "Publish calendar" : "نشر التقويم", - "Publishing calendar" : "جاري نشر التقويم", + "Untitled item" : "عنصر بلا اسم", + "Unknown calendar" : "تقويم غير معروف", + "Could not load deleted calendars and objects" : "تعذّر تحميل التقاويم و الأشياء المحذوفة ", + "Could not delete calendar or event" : "تعذّر حذف التقويم أو الحدث", + "Could not restore calendar or event" : "تعذرت استعادة تقويم أو حدث", + "Do you really want to empty the trash bin?" : "هل ترغب بالفعل في تفريغ سلة المهملات؟", + "Empty trash bin" : "تفريغ سلة المهملات", + "Trash bin" : "سلة المهملات", + "Loading deleted items." : "تحميل العناصر المحذوفة", + "You do not have any deleted items." : "لا توجد أي عناصر محذوفة", + "Name" : "الاسم", + "Deleted" : "تمّ حذفه", + "Restore" : "استعادة ", + "Delete permanently" : "حذف نهائي", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["حذف العناصر الموجودة في سلة المهملات بعد {numDays} أيام","حذف العناصر الموجودة في سلة المهملات بعد {numDays} يوم","حذف العناصر الموجودة في سلة المهملات بعد {numDays} أيام","حذف العناصر الموجودة في سلة المهملات بعد {numDays} أيام","حذف العناصر الموجودة في سلة المهملات بعد {numDays} أيام","حذف العناصر الموجودة في سلة المهملات بعد {numDays} أيام"], + "Could not update calendar order." : "لا يمكن تعديل ترتيب التقويم.", + "Shared calendars" : "تقاويم مشتركة", + "Deck" : "البطاقات", + "Hidden" : "مخفي", + "Internal link" : "رابط داخلي", + "A private link that can be used with external clients" : "رابط خاص يمكن استخدامه مع العملاء الخارجيين", + "Copy internal link" : "إنسخ الرابط الداخلي", + "An error occurred, unable to publish calendar." : "حدث خطأ، لا يمكن نشر التقويم", + "An error occurred, unable to send email." : "حدث خطأ، لا يُمكن إرسال البريد.", + "Embed code copied to clipboard." : "الكود المُضمّن تمّ نسخه إلى الحافظة", + "Embed code could not be copied to clipboard." : "الكود المُضمّن تعذّر نسخه إلى الحافظة", + "Unpublishing calendar failed" : "محاولة إلغاء نشر التقويم أخفقت", + "Share link" : "رابط مشاركة", "Copy public link" : "نسخ الرابط العام", - "Send link to calendar via email" : "ارسال رابط التقويم عبر البريد", - "Enter one address" : "ادخل عنوان بريدي واحد", - "Sending email …" : "جاري ارسال البريد  …", - "Copy subscription link" : "نسخ رابط الاشتراك", - "Copying link …" : "جاري نسخ رابط  …", - "Copied link" : "تم نسخ الرابط", - "Could not copy link" : "لا يمكن نسخ الرابط", - "Copy embedding code" : "نسخ الكود المرفق", + "Send link to calendar via email" : "إرسال رابط التقويم عبر الإيمل", + "Enter one address" : "أدخِل عنواناً بريدياً واحداً", + "Sending email …" : "جارٍ إرسال البريد  …", + "Copy embedding code" : "نسخ كود التضمين", "Copying code …" : "نسخ الكود  …", - "Copied code" : "تم نسخ الكود", - "Could not copy code" : "لا يمكن نسخ الكود", - "Delete share link" : "حذف ارتباط المشاركة", + "Copied code" : "تمّ نسخ الكود", + "Could not copy code" : "تعذّر نسخ الكود", + "Delete share link" : "حذف رابط المشاركة", "Deleting share link …" : "حذف رابط المشاركة  …", - "An error occurred, unable to publish calendar." : "حصل خطأ، لا يمكن نشر التقويم", - "An error occurred, unable to send email." : "حدث خطأ، لا يمكن ارسال البريد.", - "Embed code copied to clipboard." : "تم نسخ الكود المرفق.", - "Embed code could not be copied to clipboard." : "لا يمكن نسخ الكود المرفق", - "Unpublishing calendar failed" : "فشل في الغاء نشر التقويم", + "{teamDisplayName} (Team)" : "{teamDisplayName} (فريق)", + "An error occurred while unsharing the calendar." : "حدث خطأ أثناء إلغاء مشاركة التقويم", + "An error occurred, unable to change the permission of the share." : "حدث خطأ، لا يمكن تعديل صلاحيات نشر التقويم.", + "can edit" : "يمكن التحرير", + "Unshare with {displayName}" : "إلغاء المشاركة مع {displayName}", "Share with users or groups" : "شارك مع مستخدمين او مجموعات", "No users or groups" : "لا يوجد مستخدمين أو مجموعات", - "can edit" : "يمكن التحرير", - "Unshare with {displayName}" : "الغاء المشاركة مع {displayName}", - "An error occurred, unable to change the unshare the calendar." : "حدث خطأ، لا يمكن تعديل نشر التقويم", - "An error occurred, unable to change the permission of the share." : "حدث خطأ، لا يمكن تعديل صلاحيات نشر التقويم.", - "+ New calendar" : "+ تقويم جديد", - "New calendar" : "تقويم جديد", - "Creating calendar …" : "جاري انشاء تقويم  …", - "New calendar with task list" : "تقويم جديد مع قائمة مهام", - "New subscription from link (read-only)" : "مشتركين جدد عن طريق رابط (للقراءة فقط)", - "Creating subscription …" : "جاري انشاء اشتراك  …", - "An error occurred, unable to create the calendar." : "حدث خطأ، لا يمكن انشاء التقويم.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "يرجى ادخال رابط صحيح (يبدأ بـ https://, http://, webcals://, webcal://)", - "Trash bin" : "المهملات", - "Name" : "الاسم", - "Deleted" : "تم حذفه", - "Restore" : "استعادة ", - "Delete permanently" : "حذف بشكل دائم", - "Empty trash bin" : "تفريغ سلة المهملات", - "Unknown calendar" : "تقويم غير معروف", - "Could not update calendar order." : "لا يمكن تحديث ترتيب التقويم.", + "Failed to save calendar name and color" : "تعذّر حفظ اسم و لون التقويم", + "Calendar name …" : "اسم التقويم ...", + "Never show me as busy (set this calendar to transparent)" : "لا تُظهرني مطلقًا مشغولاً (اضبط هذا التقويم على شفاف)", + "Share calendar" : "مُشاركة التقويم", + "Unshare from me" : "أنت ألغيت المشاركة", + "Save" : "حفظ", "Import calendars" : "استيراد التقويم", "Please select a calendar to import into …" : "يرجى اختيار تقويم للاستيراد اليه  …", "Filename" : "اسم الملف", "Calendar to import into" : "تقويم للاستيراد اليه", "Cancel" : "إلغاء", "_Import calendar_::_Import calendars_" : ["استيراد التقويم","استيراد التقويم","استيراد التقويم","استيراد التقويم","استيراد التقويم","استيراد التقويم"], + "Select the default location for attachments" : "عيّن موقع المُرفقات التلقائي", + "Pick" : "إختر", + "Invalid location selected" : "الموقع المُختار غير صحيح", + "Attachments folder successfully saved." : "تمّ بنجاح حفظ مُجلّد المُرفقات", + "Error on saving attachments folder." : "خطأ في حفظ مُجلّد المُرفقات", + "Default attachments location" : "موقع المُرفقات التلقائي", + "{filename} could not be parsed" : "{filename} لم يُمكن تحليله", + "No valid files found, aborting import" : "لم يٌمكن إيجاد ملفّاتٍ صحيحة. إنهاءُ عملية الاستيراد", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["تم استيراد %n أحداث بنجاح","تم استيراد %n حدث بنجاح","تم استيراد %n أحداث بنجاح","تم استيراد %n أحداث بنجاح","تم استيراد %n أحداث بنجاح","تم استيراد %n أحداث بنجاح"], + "Import partially failed. Imported {accepted} out of {total}." : "الاستيراد فشل جزئيّاً. تمّ استيراد {accepted} من مجموع {total}.", "Automatic" : "تلقائي", "Automatic ({detected})" : "تلقائي ({detected})", "New setting was not saved successfully." : "لم يتم حفظ الاعدادات الجديدة.", - "Shortcut overview" : "نظرة عامة للاختصارات", - "or" : "او", "Navigation" : "التنقل", "Previous period" : "الفترة السابقة", "Next period" : "الفترة القادمة", @@ -105,26 +171,66 @@ "Day view" : "مشاهدات يومية", "Week view" : "مشاهدات اسبوعية", "Month view" : "مشاهدات شهرية", + "Year view" : "عرض السنة", "List view" : "عرض على شكل قائمة", "Actions" : "الإجراءات", "Create event" : "انشاء فعالية", "Show shortcuts" : "انشاء اختصارات", + "Editor" : "المحرر", + "Close editor" : "إغلاق المحرر", + "Save edited event" : "حفظ تعديلات الأحداث", + "Delete edited event" : "حذف الأحداث المحررة", + "Duplicate event" : "تكرار الحدث", + "Shortcut overview" : "نظرة عامة للاختصارات", + "or" : "او", + "Calendar settings" : "إعدادات التقويم", + "At event start" : "في بداية الحدث", + "No reminder" : "لا يوجد تذكير ", + "Failed to save default calendar" : "تعذّر حفظ التقويم التلقائي", + "CalDAV link copied to clipboard." : "تم نسخ CalDAV.", + "CalDAV link could not be copied to clipboard." : "لا يمكن نسخ CalDAV.", "Enable birthday calendar" : "تفعيل تقويم عيد الميلاد", - "Show tasks in calendar" : "اظهار المهام في التقويم", + "Show tasks in calendar" : "إظهار المهام في التقويم", "Enable simplified editor" : "تفعيل المحرر البسيط", - "Limit visible events per view" : "حصر رؤية الفعاليات بالمشاهدة", - "Show weekends" : "اظهار ايام نهاية الاسبوع", - "Show week numbers" : "اظهار ارقام الأسابيع", + "Limit the number of events displayed in the monthly view" : "تقييد عدد الأحداث التي تُعرض في العرض الشهري", + "Show weekends" : "إظهار أيام نهاية الاسبوع", + "Show week numbers" : "إظهار أرقام الأسابيع", + "Time increments" : "زيادات الوقت", + "Default calendar for incoming invitations" : "التقويم التلقائي للدعوات الواردة", + "Default reminder" : "التذكير الافتراضي", "Copy primary CalDAV address" : "نسخ عنوان CalDAV الرئيسي", "Copy iOS/macOS CalDAV address" : "نسخ عنوان CalDAV لأجهزة الماك/الأيفون", - "Show keyboard shortcuts" : "اظهار اختصارات لوحة المفاتيح", - "No reminder" : "لا يوجد تذكير ", - "CalDAV link copied to clipboard." : "تم نسخ CalDAV.", - "CalDAV link could not be copied to clipboard." : "لا يمكن نسخ CalDAV.", + "Personal availability settings" : "إعدادات التواجد الشخصي", + "Show keyboard shortcuts" : "إظهار اختصارات لوحة المفاتيح", + "Appointment schedule successfully created" : "تمّ إنشاء جدول المواعيد بنجاح", + "Appointment schedule successfully updated" : "تمّ تحديث جدول المواعيد بنجاح", + "_{duration} minute_::_{duration} minutes_" : ["{duration} دقائق","{duration} دقيقة","{duration} دقائق","{duration} دقائق","{duration} دقائق","{duration} دقائق"], + "0 minutes" : "0 دقيقة", + "_{duration} hour_::_{duration} hours_" : ["{duration} ساعات","{duration} ساعة","{duration} ساعات","{duration} ساعات","{duration} ساعات","{duration} ساعات"], + "_{duration} day_::_{duration} days_" : ["{duration} أيام","{duration} يوم","{duration} أيام","{duration} أيام","{duration} أيام","{duration} أيام"], + "_{duration} week_::_{duration} weeks_" : ["{duration} أسابيع","{duration} أسبوع","{duration} أسابيع","{duration} أسابيع","{duration} أسابيع","{duration} أسابيع"], + "_{duration} month_::_{duration} months_" : ["{duration} شهور","{duration} شهر","{duration} شهور","{duration} شهور","{duration} شهور","{duration} شهور"], + "_{duration} year_::_{duration} years_" : ["{duration} سنوات","{duration} سنة","{duration} سنوات","{duration} سنوات","{duration} سنوات","{duration} سنوات"], + "To configure appointments, add your email address in personal settings." : "ليُمكنك إعداد المواعيد، يتوجب إضافة عنوان إيميلك الشخصي في إعداداتك الشخصية.", + "Public – shown on the profile page" : "عمومي - أعرض في صفحة الملف الشخصي", + "Private – only accessible via secret link" : "خصوصي - يُمكن فقط الوصول إليه عن طريق رابط سرّي", + "Appointment schedule saved" : "تمّ حفظ جدول المواعيد", + "Create appointment schedule" : "إنشاء جدول مواعيد", + "Edit appointment schedule" : "تعديل جدول المواعيد", + "Update" : "حدث", + "Appointment name" : "اسم الموعد", "Location" : "الموقع", + "Create a Talk room" : "إنشاء غرفة محادثة", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "سيتم إنشاء رابط خاص بكل موعد محجوز و سيتم إرساله عبر البريد الإلكتروني للتأكيد", "Description" : "الوصف", + "Visibility" : "الرؤية", "Duration" : "المدة الزمنية", + "Increments" : "الزيادات", + "Additional calendars to check for conflicts" : "تقاويم إضافية للتحقّق من وجود تعارضات", + "Pick time ranges where appointments are allowed" : "إختر النطاقات الزمنية التي يُسمح فيها بالمواعيد", "to" : "إلى", + "Delete slot" : "حذف الخانة الزمنية", + "No times set" : "لم يتم تحديد أي أوقات", "Add" : "إضافة", "Monday" : "الإثنين", "Tuesday" : "الثلاثاء", @@ -133,9 +239,37 @@ "Friday" : "الجمعة", "Saturday" : "السبت", "Sunday" : "الأحد", - "Save" : "حفظ", - "Update" : "حدث", - "Your email address" : "عنوان بريديك الإلكتروني", + "Weekdays" : "أيام الأسبوع", + "Add time before and after the event" : "أضف مُهلة زمنية قبل وبعد الحدث", + "Before the event" : "قبل الحدث", + "After the event" : "بعد الحدث", + "Planning restrictions" : "قيود التخطيط", + "Minimum time before next available slot" : "أقل مدة قبل الخانة الزمنية التالية", + "Max slots per day" : "أقصى عدد من الخانات الزمنية في اليوم", + "Limit how far in the future appointments can be booked" : "تقييد أبعد تاريخ في المستقبل يمكن حجز مواعيد فيه ", + "It seems a rate limit has been reached. Please try again later." : "يبدو أن معدل قبول الوصول للنظام قد وصل حدّه الأقصى. يُرجى إعادة المحاولة في وقت لاحقٍ.", + "Please confirm your reservation" : "رجاء، قم بتأكيد حجزك", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "لقد أرسلنا لك بريدًا إلكترونيًا يحتوي على التفاصيل. يرجى تأكيد موعدك باستخدام الرابط الموجود في البريد الإلكتروني. يمكنك إغلاق هذه الصفحة الآن.", + "Your name" : "اسمك", + "Your email address" : "عنوان البريد الإلكتروني الخاص بك", + "Please share anything that will help prepare for our meeting" : "رجاءً، شارك ما يمكن أن يساعد في التحضير لاجتماعنا", + "Could not book the appointment. Please try again later or contact the organizer." : "تعذّر حجز الموعد. حاول مرة أخرى في وقتٍ لاحق من فضلك أو اتصل بالمُنظِّم.", + "Back" : "عودة", + "Book appointment" : "إحجِز موعداً", + "Error fetching Talk conversations." : "خطأ في جلب محادثات Talk.", + "Conversation does not have a valid URL." : "عنوان URL للمحادثة غير صحيح.", + "Successfully added Talk conversation link to location." : "تمت إضافة رابط المحادثة إلى الموقع بنجاح.", + "Successfully added Talk conversation link to description." : "تمت إضافة رابط المحادثة إلى الوصف بنجاح.", + "Failed to apply Talk room." : "تعذّر تطبيق غرفة المحادثة.", + "Error creating Talk conversation" : "خطأ في إنشاء رابط المحادثة", + "Select a Talk Room" : "إختَر غرفة المحادثة", + "Add Talk conversation" : "إضِف محادثة Talk", + "Fetching Talk rooms…" : "جلب معلومات غرف المحادثة ...", + "No Talk room available" : "لاتوجد غرف محادثة متاحة", + "Create a new conversation" : "إنشاء محادثة جديدة", + "Select conversation" : "اختر محادثة", + "on" : "في", + "at" : "عند", "before at" : "قبل", "Notification" : "تنبيه", "Email" : "البريد الإلكتروني", @@ -146,99 +280,210 @@ "Edit time" : "تعديل الوقت", "Save time" : "حفظ الوقت", "Remove reminder" : "حذف التذكير", - "on" : "في", - "at" : "في", - "+ Add reminder" : "+ اضافة تذكير", - "_second_::_seconds_" : ["ثانية","ثانية","ثانية","ثواني","ثواني","ثواني"], - "Available" : "متوفر", + "Add reminder" : "أضف تذكيراً", + "seconds" : "ثوانٍ", + "minutes" : "دقائق", + "hours" : "ساعات", + "days" : "أيام", + "weeks" : "أسابيع", + "Choose a file to add as attachment" : "إختر ملفّاً لإضافته كمرفق", + "Choose a file to share as a link" : "إختر ملفاً لمشاركته كرابط", + "Attachment {name} already exist!" : "المُرفَق {name} موجودٌ سلفاً!", + "Could not upload attachment(s)" : "تعذر رفع المرفق/المرفقات", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "يمكنك الانتقال إلى {host}. هل أنت متأكد أنك ترغب في المتابعة؟ الرابط: {link}", + "Proceed" : "مواصلة", + "No attachments" : "لا توجد مرفقات", + "Add from Files" : "إضافة من الملفات", + "Upload from device" : "رفع من الجهاز", + "Delete file" : "حذف الملف", + "Confirmation" : "تأكيد", + "_{count} attachment_::_{count} attachments_" : ["{count} مرفقات","{count} مرفق","{count} مرفقات","{count} مرفقات","{count} مرفقات","{count} مرفقات"], + "Suggested" : "مُقترح", + "Available" : "مُتوفر", + "Invitation accepted" : "تمّ قبول الدعوة", + "Accepted {organizerName}'s invitation" : "قَبِلَ دعوة {organizerName}", + "Participation marked as tentative" : "المُشاركة مبدئية", + "Invitation is delegated" : "الدعوة تمّ تفويضها", "Not available" : "غير متوفر", - "Availability of attendees, resources and rooms" : "متوفرين من الحضور والموارد والغرف", - "Free" : "متوفر", - "Busy (tentative)" : "مشغول (حاليا)", - "Busy" : "مشغول", + "Invitation declined" : "الدعوة لم تُقبل", + "Declined {organizerName}'s invitation" : "رفض دعوة {organizerName}", + "Availability will be checked" : "سوف يتم اختبار التوافر", + "Invitation will be sent" : "سوف يتم إرسال الدعوة", + "Failed to check availability" : "تعذّر اختبار التوافر", + "Failed to deliver invitation" : "تعذّر تسليم الدعوة", + "Awaiting response" : "في انتظار الرّد", + "Checking availability" : "تحقّق من التواجد", + "Has not responded to {organizerName}'s invitation yet" : "لم يَرُدَّ على دعوة {organizerName} بعدُ", + "chairperson" : "الرئيس", + "required participant" : "المُشارِك المطلوب", + "non-participant" : "غير مُشارِك", + "optional participant" : "مُشارِك اختياري", + "{organizer} (organizer)" : "{organizer} (مُنظِّم)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "توافر الحضور والموارد والغرف", + "Suggestion accepted" : "تمّ قبول الاقتراح", + "Legend" : "مفتاح تفسيري", "Out of office" : "خارج المكتب", + "Attendees:" : "الحُضُور:", + "Done" : "تمّ", + "Search room" : "البحث في الغرفة", + "Room name" : "اسم الغرفة", + "Check room availability" : "تحقَّق من توافر الغرفة", + "Free" : "مُتاحٌ", + "Busy (tentative)" : "مشغولٌ (حاليّاً)", + "Busy" : "مشغول", "Unknown" : "غير معروف", + "Find a time" : "إيجاد وقت", + "The invitation has been accepted successfully." : "تمّ قبول الدعوة بنجاح.", + "Failed to accept the invitation." : "فشل في قبول الدعوة.", + "The invitation has been declined successfully." : "تمّ رفض الدعوة بنجاح.", + "Failed to decline the invitation." : "فشل في رفض الدعوة.", + "Your participation has been marked as tentative." : "تمّ وضع علامة \"مبدئية\" على مشاركتك.", + "Failed to set the participation status to tentative." : "فشل في تعيين حالة المشاركة إلى مؤقتة.", "Accept" : "قبول", "Decline" : "رفض", "Tentative" : "مؤقت", - "Create Talk room for this event" : "انشاء غرفة تحدث لهذه الفعالية.", - "Show busy times" : "اظهار الاوقات الممتلئة", - "No attendees yet" : "لا يوجد حضور بعد", - "Successfully appended link to talk room to description." : "تم اضافة الرابط في وصف غرفة التحدث بنجاح.", - "Error creating Talk room" : "خطأ في انشاء غرفة تحدث", - "Send email" : "إرسال بريد", + "No attendees yet" : "لا يوجد حضور حتى الآن", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} مدعو, {confirmedCount} مؤكد", + "Successfully appended link to talk room to location." : "تمّ إلحاق رابط غرفة المحادثة بالموقع بنجاح.", + "Successfully appended link to talk room to description." : "تمّ إلحاق الرابط بوصف غرفة المحادثة بنجاح.", + "Error creating Talk room" : "خطأ في انشاء غرفة محادثة", + "Attendees" : "المشاركون", + "_%n more guest_::_%n more guests_" : ["%n ضيفاً آخر","%n ضيفاً آخر","%n ضيفاً آخر","%n ضيوف آخرين","%n ضيفاً آخر","%n ضيفاً آخر"], + "Remove group" : "حذف مجموعة", + "Remove attendee" : "إلغاء شخص من قائمة الحضور", + "Request reply" : "طلب الرّد", "Chairperson" : "الرئيس", "Required participant" : "مشارك مطلوب", "Optional participant" : "مشارك اختياري", "Non-participant" : "غير مشارك", - "Remove attendee" : "طرد الحاضر", - "No match found" : "لا يوجد تطابق", - "(organizer)" : "(منظم)", - "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "لإرسال الدعوات والتعامل مع الاستجابات [linkopen]اضف بريدك الالكتروني في ملفك الشخصي[linkclose].", - "Remove color" : "حذف اللون", - "Event title" : "عنوان الفعالية", - "All day" : "اليوم بأكمله", - "from {startDate}" : "منذ تاريخ {startDate}", - "from {startDate} at {startTime}" : "منذ تاريخ {startDate} في {startTime}", - "to {endDate}" : "إلى تاريخ {endDate}", - "to {endDate} at {endTime}" : "إلى {endDate} في {endTime}", - "Repeat" : "التكرار", - "End repeat" : "نهاية التكرار", - "Select to end repeat" : "اختر نهاية التكرار", - "never" : "بتاتاً", + "_%n member_::_%n members_" : ["%n عضواً","%n عضواً","%n عضواً","%n عضواً","%n عضواً","%n عضواً"], + "Search for emails, users, contacts, contact groups or teams" : "البحث عن إيميلات، أو مستخدِمين، أو جهات اتصال، أو مجموعات، أو فِرَق", + "No match found" : "لم يٌمكن إيجاد تطابق", + "Note that members of circles get invited but are not synced yet." : "لاحظ أن أعضاء دوائر الاتصال تمّت دعوتهم لكن لم تتمّ مزامنتهم بعدُ.", + "Note that members of contact groups get invited but are not synced yet." : "لاحظ أن أعضاء مجموعات الاتصال تتم تدعوتهم لكن لا تمكن مزامنهم بعدُ.", + "(organizer)" : "(مُنظِّم)", + "Make {label} the organizer" : "إجعَل {label} هو المُنظِّم", + "Make {label} the organizer and attend" : "إجغعَل {label} هو المنظم و أحد الحضور", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "لإرسال الدعوات والتعامل مع الاستجابات [linkopen]، أضف بريدك الالكتروني في الإعدادات الشخصية [linkclose].", + "Remove color" : "حذف لون", + "Event title" : "عنوان الحدث", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "لم يُمكن تغيير إعداد \"كامل اليوم\" بالنسبة للأحداث التي هي جزء من مجموعة تكرارية. ", + "From" : "مِن :", + "To" : "إلى :", + "Repeat" : "كرّر", + "_time_::_times_" : ["مرات","مرة","مرات","مرات","مرات","مرات"], + "never" : "أبداً", "on date" : "في تاريخ", "after" : "بعد", - "first" : "اول", - "third" : "ثالث", - "fourth" : "رابع", - "fifth" : "خامس", - "second to last" : "الثاني إلى الاخير", - "last" : "الاخير", - "Changes to the recurrence-rule will only apply to this and all future occurrences." : "تغيير قانون التكرار يتم تعيينه لهذا ولظهور المستقبل فقط.", + "End repeat" : "نهاية التكرار", + "Select to end repeat" : "إختر نهاية التكرار", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "هذا الحدث هو استثناء من مجموعة التكرار. لا يمكنك إضافة شرط تكرار إليه.", + "first" : "أول", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "التغيير في قاعدة التكرار سوف يُطبّق فقط على هذا التكرار و على التكرارات المستقبلية.", "Repeat every" : "تكرار كل", - "By day of the month" : "يوم من الشهر", + "By day of the month" : "بحسب اليوم من الشهر", "On the" : "في الـ", + "_day_::_days_" : ["أيام","يوم","أيام","أيام","أيام","أيام"], + "_week_::_weeks_" : ["أسابيع","أسبوع","أسابيع","أسابيع","أسابيع","أسابيع"], + "_month_::_months_" : ["شهور","شهر","شهور","شهور","شهور","شهور"], "_year_::_years_" : ["سنه","سنه","سنه","سنوات","سنوات","سنوات"], - "weekday" : "ايام الاسبوع", + "On specific day" : "في يومٍ مُحدَّد", + "weekday" : "أيام الاسبوع", "weekend day" : "يوم نهاية الاسبوع", - "More" : "المزيد", - "Update this occurrence" : "تغيير هذا الظهور", - "Update this and all future" : "تغيير هذا والمستقبل", + "Does not repeat" : "لا يتكرر", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "لا يدعم نكست كلاود تعريف التكرار لهذا الحدث بشكل كامل. إذا قمت بتحرير خيارات التكرار، فقد تفقد بعض التكرارات.", + "No rooms or resources yet" : "لا توجد غرف يمكن حجزها حتى الآن", + "Resources" : "الموارد", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatCapacity} مقاعد","{seatCapacity} مقعد","{seatCapacity} مقاعد","{seatCapacity} مقاعد","{seatCapacity} مقاعد","{seatCapacity} مقاعد"], + "Add resource" : "إضافة مورِد", + "Has a projector" : "لديه جهاز عرض", + "Has a whiteboard" : "فيها لوحة whiteboard", + "Wheelchair accessible" : "قابل للوصول بكراسي المعاقين", + "Remove resource" : "حذف مورد", + "Search for resources or rooms" : "البحث عن موارد أو غُرَف", + "available" : "متاح", + "unavailable" : "غير متاح", + "Show all rooms" : "إظهار كل الغرف", + "Projector" : "عارض ضوئي projector", + "Whiteboard" : "لوحة Whiteboard", + "Room type" : "نوع الغرفة", + "Any" : "أيّ", + "Minimum seating capacity" : "الحد الأدنى لسعة الجلوس", + "More details" : "تفاصيل أكثر", + "Update this and all future" : "تغيير هذه و المستقبلية الأخرى", + "Update this occurrence" : "تحديث هذا الحدوث", "Public calendar does not exist" : "التقويم العام غير موجود", - "Maybe the share was deleted or has expired?" : "لربما المشاركة محذوفة أو منتهية؟", - "Pick a time" : "اختر وقت", - "Pick a date" : "اختر تاريخ", + "Maybe the share was deleted or has expired?" : "لربما كانت المشاركة محذوفة أو منتهية الصلاحية؟", "from {formattedDate}" : "من {formattedDate}", "to {formattedDate}" : "إلى {formattedDate}", "on {formattedDate}" : "في {formattedDate}", - "from {formattedDate} at {formattedTime}" : "من {formattedDate} في {formattedTime}", - "to {formattedDate} at {formattedTime}" : "إلى {formattedDate} في {formattedTime}", - "on {formattedDate} at {formattedTime}" : "في {formattedDate} في {formattedTime}", - "{formattedDate} at {formattedTime}" : "{formattedDate} في {formattedTime}", - "Please enter a valid date" : "اختر تاريخ صحيح", - "Please enter a valid date and time" : "اختر تاريخ ووقت صحيح", + "from {formattedDate} at {formattedTime}" : "من {formattedDate} عند {formattedTime}", + "to {formattedDate} at {formattedTime}" : "إلى {formattedDate} عند {formattedTime}", + "on {formattedDate} at {formattedTime}" : "في {formattedDate} عند {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} عند {formattedTime}", + "Please enter a valid date" : "إختر تاريخاً صحيحاً", + "Please enter a valid date and time" : "إختر تاريخاً و وقتاً صحيحاً", + "Select a time zone" : "إختر المنطقة الزمنية", + "Please select a time zone:" : "إختر المنطقة الزمنية من فضلك:", + "Pick a time" : "إختر وقتاً", + "Pick a date" : "إختر تاريخاً", + "Type to search time zone" : "أكتب للبحث في المنطقة الزمنية ", "Global" : "عالمي", + "Holidays in {region}" : "العطلات الرسمية في {region}", + "An error occurred, unable to read public calendars." : "حدث خطأ؛ تعذّرت قراءة التقاويم العمومية.", + "An error occurred, unable to subscribe to calendar." : "حدث خطأ؛ تعذّر الاشتراك في التقويم.", + "Public holiday calendars" : "تقاويم العطلات العامة", + "Public calendars" : "التقاويم العمومية", + "No valid public calendars configured" : "لا توجد أيّ تقاويم عمومية مُهيّأة بالشكل الصحيح", + "Speak to the server administrator to resolve this issue." : "تحدّث مع مسؤول النظام لحل هذا الإشكال.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "يتم توفير تقاويم العطلات العامة من موقع ثندربرد Thunderbird. سوف يتم تنزيل بيانات التقويم من {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "يتم اقتراح هذه التقويمات العامة بواسطة مسؤول القسم. سيتم تنزيل بيانات التقويم من موقع الويب المعني.", + "By {authors}" : "من قِبَل {authors}", + "Subscribed" : "مشترك", + "Subscribe" : "إشترك", + "Could not fetch slots" : "تعذر تحميل الخانات الزمنية", + "Select a date" : "إختر تاريخاً", + "Select slot" : "إختر الخانة الزمنية", + "No slots available" : "لا توجد خانة زمنية متاحة", + "The slot for your appointment has been confirmed" : "تم تأكيد الموعد المحدد لك", + "Appointment Details:" : "تفاصيل الموعد:", + "Time:" : "الوقت:", + "Booked for:" : "محجوز لـ :", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "شكراً. حجزك من {startDate} إلى {endDate} تمّ تأكيده.", + "Book another appointment:" : "إحجز موعداً آخر:", + "See all available slots" : "شاهد كل الخانات الزمنية المتاحة", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "موعدك من {startDate} إلى {endDate} غير متاح.", + "Please book a different slot:" : "من فضلك، إختر خانة زمنية أخرى:", + "Book an appointment with {name}" : "إحجز موعداً مع {name}", + "No public appointments found for {name}" : "لم يُمكن إيجاد أي مواعيد عامة لـ {name}", "Personal" : "شخصي", - "No more events today" : "لا يوجد المزيد من الفعاليات اليوم", - "No upcoming events" : "ليس هناك فعاليات قادمة", - "Create a new event" : "انشاء فعالية جديدة", - "[Today]" : "[اليوم]", - "[Tomorrow]" : "[الغد]", - "[Yesterday]" : "[امس]", - "[Last] dddd" : "[اخر] dddd", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "الاكتشاف التلقائي للمنطقة الزمنية يُحدّد منطقتك الزمنية بالنسبة للتوقيت العالمي المُوحّد UTC. هذا على الأرجح نتيجة للتدابير الأمنية لمتصفح الويب الخاص بك. يُرجى ضبط المنطقة الزمنية يدويًا في إعدادات التقويم.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "لم يتم العثور على منطقتك الزمنية التي تمّت تهيئتها ({timezoneId}). تمّ الرجوع إلى التوقيت العالمي المُوحّد UTC. يرجى تغيير منطقتك الزمنية في الإعدادات، والإبلاغ عن هذه المشكلة.", + "Availability of {displayName}" : "توافُر {displayName}", + "Edit event" : "تعديل الحدث", "Event does not exist" : "الفعالية غير موجودة", + "Duplicate" : "تكرار", "Delete this occurrence" : "حذف هذا الظهور", "Delete this and all future" : "حذف هذا الظهور والجميع في الستقبل", - "Details" : "التفاصيل", - "Attendees" : "المشاركون", + "All day" : "كامل اليوم", + "Modifications wont get propagated to the organizer and other attendees" : "التعديلات لن يتم إذاعتها على المنظم والمشاركين الآخرين", + "Managing shared access" : "إدارة الوصول المشترك", + "Deny access" : "منع الوصول", + "Invite" : "دعوة", + "_User requires access to your file_::_Users require access to your file_" : ["يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدم إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك","يحتاج المستخدمون إلى الوصول إلى ملفك"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["تتطلب المرفقات وصولاً مشتركًا","يتطلب المرفق وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا","تتطلب المرفقات وصولاً مشتركًا"], + "Untitled event" : "حدث بدون اسم", "Close" : "إغلاق", - "Show more details" : "اظهار المزيد من التفاصيل", + "Modifications will not get propagated to the organizer and other attendees" : "التعديلات لن يتم إذاعتها على المنظم والمشاركين الآخرين", "Subscribe to {name}" : "اشتراك مع {name}", + "Export {name}" : "تصدير {name}", + "Show availability" : "أعرُض التوافر", "Anniversary" : "ذكرى سنوية", "Appointment" : "موعد", "Business" : "عمل", "Education" : "تعليم", - "Holiday" : "اجازة", + "Holiday" : "عطلة", "Meeting" : "اجتماع", "Miscellaneous" : "متنوع", "Non-working hours" : "ساعات خارج العمل", @@ -249,146 +494,95 @@ "Travel" : "سفر", "Vacation" : "اجازة", "Midnight on the day the event starts" : "منتصف ليل اليوم الذي يبدأ فيه الحدث", - "on the day of the event at {formattedHourMinute}" : "في يوم الفعالية في {formattedHourMinute}", - "at the event's start" : "في بداية الفعالية", - "at the event's end" : "في نهاية الفعالية", - "{time} before the event starts" : "{time} قبل بداية الفعالية", - "{time} before the event ends" : "{time} قبل نهاية الفعالية", - "{time} after the event starts" : "{time} بعد بداية الفعالية", - "{time} after the event ends" : "{time} بعد نهاية الفعالية", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n أيام قبل الحدث في {formattedHourMinute}","%n يوم قبل الحدث في {formattedHourMinute}","%n أيام قبل الحدث في {formattedHourMinute}","%n أيام قبل الحدث في {formattedHourMinute}","%n أيام قبل الحدث في {formattedHourMinute}","%n أيام قبل الحدث في {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n أسابيع قبل الحدث في {formattedHourMinute}","%n أسبوع قبل الحدث في {formattedHourMinute}","%n أسابيع قبل الحدث في {formattedHourMinute}","%n أسابيع قبل الحدث في {formattedHourMinute}","%n أسابيع قبل الحدث في {formattedHourMinute}","%n أسابيع قبل الحدث في {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "في يوم الحدث عند {formattedHourMinute}", + "at the event's start" : "في بداية الحدث", + "at the event's end" : "في نهاية الحدث", + "{time} before the event starts" : "{time} قبل بداية الحدث", + "{time} before the event ends" : "{time} قبل نهاية الحدث", + "{time} after the event starts" : "{time} بعد بداية الحدث", + "{time} after the event ends" : "{time} بعد نهاية الحدث", "on {time}" : "في {time}", "on {time} ({timezoneId})" : "في {time} ({timezoneId})", - "Week {number} of {year}" : "اسبوع {number} من {year}", - "Does not repeat" : "لا يتكرر", + "Week {number} of {year}" : "الأسبوع {number} من {year}", "Daily" : "يومي", "Weekly" : "أسبوعي", "Monthly" : "شهري", "Yearly" : "سنوي", + "_Every %n day_::_Every %n days_" : ["كل %n أيام","كل %n يوم","كل %n أيام","كل %n أيام","كل %nأيام","كل %n أيام"], + "_Every %n week_::_Every %n weeks_" : ["كل%n أسابيع","كل%n أسبوع","كل %n أسابيع","كل %n أسابيع","كل %n أسابيع","كل %n أسابيع"], + "_Every %n month_::_Every %n months_" : ["كل %n شهور","كل %nشهر","كل %n شهور","كل %n شهور","كل %n شهور","كل %n شهور"], + "_Every %n year_::_Every %n years_" : ["كل %n سنوات","كل %n سنة","كل %n سنوات","كل %n سنوات","كل %n سنوات","كل %n سنوات"], + "_on {weekday}_::_on {weekdays}_" : ["في {weekdays}","في {weekday}","في {weekdays}","في {weekdays}","في {weekdays}","في {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["في أيام {dayOfMonthList}","في يوم {dayOfMonthList}","في أيام {dayOfMonthList}","في أيام {dayOfMonthList}","في أيام {dayOfMonthList}","في أيام {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "في الـ {ordinalNumber} {byDaySet}", - "in {monthNames}" : "في {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "في شهر {monthNames} في {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "في {monthNames} في الـ {ordinalNumber} {byDaySet}", "until {untilDate}" : "حتى {untilDate}", - "Untitled event" : "فعالية بدون اسم", + "_%n time_::_%n times_" : ["%n مرات","%n مرة","%n مرات","%n مرات","%n مرات","%n مرات"], + "second" : "ثاني", + "third" : "ثالث", + "fourth" : "رابع", + "fifth" : "خامس", + "second to last" : "الثاني إلى الاخير", + "last" : "الأخير", "Untitled task" : "مهمة بدون اسم", "Please ask your administrator to enable the Tasks App." : "تواصل مع مسؤول النظام لاستخدام تطبيق المهام.", - "Next" : "التالي", + "You are not allowed to edit this event as an attendee." : "أنت غير مسموح لك بتعديل هذا الحدث كأحد الحضور.", + "W" : "W", "%n more" : "%n المزيد", - "No events to display" : "لا يوجد فعاليات", - "No events" : "لا يوجد فعاليات", - "Create a new event or change the visible time-range" : "اصنع فعالية جديدة أو قم بتغيير عامل الوقت", - "It might have been deleted, or there was a typo in a link" : "لربما انحذفت، أو الحروف غير مطابقة في الرابط", - "It might have been deleted, or there was a typo in the link" : "لربما انحذفت، أو الحروف غير مطابقة في الرابط", - "Other" : "آخر", + "No events to display" : "لا توجد أحداث", + "All participants declined" : "رفض جميع المشاركين", + "Please confirm your participation" : "رجاءً، قم بتأكيد مشاركتك", + "You declined this event" : "أنت رفضت هذا الحدث", + "Your participation is tentative" : "مشاركتك مبدئية غير نهائية", + "_+%n more_::_+%n more_" : ["+ %n أكثر","+ %n أكثر","+ %n أكثر","+ %n أكثر","+ %n أكثر","+ %n أكثر"], + "No events" : "لا توجد أحداث", + "Create a new event or change the visible time-range" : "أنشيء حدثاً جديداً أو قم بتغيير المدى الزمني", + "Failed to save event" : "تعذّر حفظ الحدث", + "It might have been deleted, or there was a typo in a link" : "لربما تمّ حذفها، أو كان هناك خطأٌ هجائي في الرابط", + "It might have been deleted, or there was a typo in the link" : "لربما تمّ حذفها، أو كان هناك خطأٌ هجائي في الرابط", + "Meeting room" : "غرفة اجتماعات", + "Lecture hall" : "قاعة محاضرات", + "Seminar room" : "غرفة مناقشة", + "Other" : "آخَر", "When shared show" : "عندما تظهر المشاركة", - "When shared show full event" : "عرض الفعالية كاملة عند مشاركته", - "When shared show only busy" : "عرض الازدحام عند مشاركة الفعالية", - "When shared hide this event" : "إخفاء الحدث عند مشاركته", - "The visibility of this event in shared calendars." : "ظهور الفعالية في التقويم المشارك مع الآخرين.", - "Add a location" : "اضافة موقع", - "Add a description" : "اضافة وصف", + "When shared show full event" : "عرض الحدث كاملاً عند مشاركته", + "When shared show only busy" : "عرض \"مشغول\" فقط عند مشاركته", + "When shared hide this event" : "إخفاء هذا الحدث عند مشاركته", + "The visibility of this event in shared calendars." : "ظهور الحدث في التقاويم المشتركة.", + "Add a location" : "إضافة موقع", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "أضِف وصفاً:\n\n- ماهو موضوع الاجتماع\n- بنود الاجتماع\n- ما يحتاجه المشاركون إلى تحضيره للاجتماع", "Status" : "الحالة", - "Confirmed" : "مؤكَّد", + "Confirmed" : "مؤكد", "Canceled" : "ملغي", - "Confirmation about the overall status of the event." : "التأكيد بخصوص الحالة العامة للفعالية.", + "Confirmation about the overall status of the event." : "التأكيد بخصوص الحالة العامة للحدث.", "Show as" : "أظهر كـ", - "Take this event into account when calculating free-busy information." : "ضع هذه الفعالية في الاعتبار عندما تكون معلومات الحالة متوفر/ مشغول.", + "Take this event into account when calculating free-busy information." : "ضع هذا الحدث في الاعتبار عند احتساب معلومة متوفر/ مشغول.", "Categories" : "التصنيفات", - "Categories help you to structure and organize your events." : "التصنيفات تساعدك للهيكله وتنظيم الفعالية.", - "Search or add categories" : "ابحث او اضف تصنيف", - "Add this as a new category" : "اضف كـ تصنيف جديد", - "Custom color" : "لون خاص", - "Special color of this event. Overrides the calendar-color." : "اللون الخاص للفعالية هذه، يعيد تعيين لون التقويم.", - "Chat room for event" : "غرفة محادثة للفعالية", - "Imported {filename}" : "استيراد {filename}", - "Meditation" : "تفكير", - "Relaxing" : "لحظة راحة", - "Relax" : "راحة", - "Commuting" : "تجوال", - "Presentation" : "عرض تقديمي", - "Talk" : "التحدث", - "Camping" : "تخيم", - "Camp" : "مخيم", - "Movie" : "فلم", - "Cinema" : "سينما", - "Graduation" : "تخرج", - "Brainstorm" : "عصف ذهني", - "Review" : "مراجعة", - "Baseball" : "بيسبول", - "Meet" : "اجتماع", - "Planning" : "تخطيط", - "Pointing" : "تشكيل", - "Retrospective" : "استعادة احداث", - "Office" : "مكتب", - "Contributor week" : "اسبوع المساهم", - "Mail" : "البريد", - "Soccer" : "كرة قدم امريكية", - "Football" : "كرة قدم", - "Gaming" : "العاب", - "Drive" : "سياقه", - "Bicycle" : "ركوب دراجة", - "Cycle" : "دراجة هوائية", - "Biking" : "ركوب الدراجة", - "Podcast" : "تدوين صوتي", - "Basketball" : "كرة سلة", - "Fishing" : "صيد", - "Hiking" : "التنزه", - "Hike" : "نزهه", - "Art" : "فن", - "Exhibition" : "معرض", - "Museum" : "متحف", - "Pilates" : "يوغا", - "Park" : "حديقة", - "Studying" : "دراسة", - "Doctor" : "دكتور", - "Health" : "صحة", - "Dentist" : "طبيب أسنان", - "Hospital" : "مستشفى", - "Interview" : "مقابلة", - "Training" : "تدريب", - "Practice" : "ممارسة", - "Sports" : "رياضة", - "Exercise" : "مناوره", - "Work out" : "تمرين", - "Working out" : "تمرين", - "Gym" : "نادي رياضي", - "Barber" : "صالون الحلاقة", - "Haircut" : "قص شعر", - "Exam" : "اختبار", - "Working" : "جاري العمل", - "New Years Eve" : "بداية السنة", - "NYE" : "حفلة بداية السنة", - "Fireworks" : "العاب نارية", - "Running" : "ركض", - "Go for a run" : "الذهاب للركض", - "Marathon" : "سباق ماراثون", - "Video-conference" : "اجتماع فيديو", - "Conference-call" : "اجتماع صوتي", - "Video-call" : "مكالمة فيديو صوتية", - "Video-chat" : "مكالمة فيديو محادثة", - "Video-meeting" : "اجتماع فيديو", - "Call" : "اتصال", - "Calling" : "جاري الاتصال", - "Christmas" : "حفل ديسمبر", - "Conference" : "مؤتمر", - "Pizza" : "بيتزا", - "Travelling" : "مسافر", - "Journey" : "رحلة", - "Collaborate" : "يتعاون", - "Pair" : "اقتران", - "Lecture" : "محاضرة", - "Seminar" : "ندوة", - "Photograph" : "تصوير", - "Party" : "حفله", - "Celebration" : "احتفال", - "Celebrate" : "احتفال", - "Birthday" : "عيد ميلاد", - "Shopping" : "تسوق", - "Skate" : "تزلج", - "Skateboard" : "لوح تزلج", - "Wine tasting" : "تذوق", - "Golf" : "الجولف", - "Dinner" : "عشاء", - "Lunch" : "غداء", - "User not found" : "لم يتم العثور على المستخدم" + "Categories help you to structure and organize your events." : "التصنيفات تساعدك لهيكله وتنظيم أحداثك.", + "Search or add categories" : "إبحث عن أو أضف تصنيفات", + "Add this as a new category" : "أضفه كتصنيف جديد", + "Custom color" : "لون مخصص", + "Special color of this event. Overrides the calendar-color." : "اللون المخصص لهذا الحدث يغطي لون التقويم.", + "Error while sharing file" : "خطأ اثناء مشاركة ملف", + "Error while sharing file with user" : "حدث خطأ أثناء مُشاركة الملف مع مُستخدِم", + "Attachment {fileName} already exists!" : "المُرفَق {fileName} موجودٌ سلفاً!", + "An error occurred during getting file information" : "حدث خطأ أثناء جلب بيانات الملف", + "Talk conversation for event" : "محادثة الحدث ", + "An error occurred, unable to delete the calendar." : "حدث خطأ، لا يمكن حذف التقويم.", + "Imported {filename}" : "إستيراد {filename}", + "This is an event reminder." : "هذا تذكير بحدث", + "Error while parsing a PROPFIND error" : "حدث خطأ أثناء تحليل PROFIND", + "Appointment not found" : "الموعد غير موجود", + "User not found" : "المستخدم غير موجود", + "Reminder" : "تذكير", + "+ Add reminder" : "+ اضافة تذكير", + "Select automatic slot" : "إختيار الخانة الزمنية التلقائية", + "with" : "مع", + "Available times:" : "الأوقات المتاحة:", + "Suggestions" : "مقترحات", + "Details" : "التفاصيل" },"pluralForm" :"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;" } \ No newline at end of file diff --git a/l10n/ast.js b/l10n/ast.js index 6e011df0f116e64d1ee7b609f6d44dc7931fdf38..ea5bb5b884978daec89dc1d59ae80e0d8b45973f 100644 --- a/l10n/ast.js +++ b/l10n/ast.js @@ -1,39 +1,173 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "La direición de corréu electrónicu apurrida ye mui llonga", + "User-Session unexpectedly expired" : "La sesión del usuariu caducó inesperadamente", + "Provided email-address is not valid" : "La direición de corréu electrónicu apurrida nun ye válida", + "%s has published the calendar »%s«" : "%s espublizó'l calendariu «%s»", + "Unexpected error sending email. Please contact your administrator." : "Prodúxose un error inesperáu al unviar el mensaxe. Ponte en contautu col alministrador.", + "Successfully sent email to %1$s" : "El mensaxe unvióse a %1$s correutamente", "Hello," : "Hola,", - "We wanted to inform you that %s has published the calendar »%s«." : "Quiximos informate de que %s espublizó'l calendariu «%s»", + "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informate que %s espublizó'l calendariu «%s».", "Open »%s«" : "Abrir «%s»", - "Cheers!" : "¡Salú!", - "Confirm" : "Confirmar", + "Cheers!" : "¡Saludos!", + "Upcoming events" : "Eventos próximos", + "No more events today" : "Nun hai más eventos pa güei", + "No upcoming events" : "Nun hai eventos próximos", + "More events" : "Más eventos", + "%1$s with %2$s" : "%1$s con %2$s", "Calendar" : "Calendariu", - "New event" : "Eventu nuevu", + "New booking {booking}" : "Reserva nueva «{booking}»", + "Appointments" : "Cites", + "%1$s - %2$s" : "%1$s - %2$s", + "Confirm" : "Confirmar", + "Description:" : "Descripción:", + "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Vas recibir un enllaz col mensaxe de confirmación", + "Where:" : "Ónde:", + "Comment:" : "Comentariu:", + "Previous day" : "Día anterior", + "Previous week" : "Selmana pasada", + "Previous year" : "Añu pasáu", + "Previous month" : "Mes pasáu", + "Next day" : "Día siguiente", + "Next week" : "La selmana que vien", + "Next year" : "Añu siguiente", + "Next month" : "Mes siguiente", + "Create new event" : "Crear un eventu", + "Event" : "Eventu", "Today" : "Güei", "Day" : "Día", "Week" : "Selmana", "Month" : "Mes", + "Year" : "Añu", + "List" : "Llista", "Preview" : "Previsualizar", - "Copy link" : "Copiar enllaz", + "Copy link" : "Copiar l'enllaz", "Edit" : "Editar", "Delete" : "Desaniciar", - "Export" : "Esportar", - "Share link" : "Share link", - "Share with users or groups" : "Compartir con usuarios y grupos", - "can edit" : "pue editar", + "Disable calendar \"{calendar}\"" : "Desactivar el calendariu «{calendar}»", + "Disable untitled calendar" : "Desactivar el calendariu ensin títulu", + "Enable calendar \"{calendar}\"" : "¿Quies activar el calendariu «{calendar}»?", + "Enable untitled calendar" : "Activar el calendariu ensin títulu", + "An error occurred, unable to change visibility of the calendar." : "Prodúxose un error, nun ye posible camudar la visibilidá del calendariu.", + "Untitled calendar" : "Calendariu ensin títulu", + "Edit and share calendar" : "Editar y comaprtir el calendariu", + "Edit calendar" : "Editar el calendariu", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Va dexar de compartise'l calendariu en {countdown} segundu","Va dexar de compartise'l calendariu en {countdown} segundos"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Va desaniciase'l calendariu en {countdown} segundu","Va desaniciase'l calendariu en {countdown} segundos"], + "An error occurred, unable to create the calendar." : "Prodúxose un error, nun ye posible crear el calendariu.", + "Calendars" : "Calendarios", "New calendar" : "Calendariu nuevu", + "Name for new calendar" : "Nome del calendariu nuevu", + "Creating calendar …" : "Creando'l calendariu…", + "Creating subscription …" : "Creando la soscripción…", + "Calendar link copied to clipboard." : "L'enllaz del calendariu copióse nel cartafueyu.", + "Calendar link could not be copied to clipboard." : "L'enllaz del calendariu nun se pudo copiar nel cartafueyu.", + "Copy subscription link" : "Copiar l'enllaz de soscripción", + "Copying link …" : "Copiando l'enllaz …", + "Copied link" : "L'enllaz copióse", + "Could not copy link" : "Nun se pudo copiar l'enllaz", + "Export" : "Esportar", + "Untitled item" : "Elementu ensin nome", + "Unknown calendar" : "Calendariu desconocíu", + "Could not load deleted calendars and objects" : "Nun se pudieron desaniciar los calendarios y los oxetos", + "Could not delete calendar or event" : "Nun se pudo desaniciar el calendariu o l'eventu", + "Could not restore calendar or event" : "Nun se pudo restaurar el calendariu o l'eventu", + "Do you really want to empty the trash bin?" : "¿De xuru que quies balerar la papelera de reciclaxe?", + "Empty trash bin" : "Balerar la papelera", + "Trash bin" : "Papelera", + "Loading deleted items." : "Cargando los elementos desaniciaos.", + "You do not have any deleted items." : "Nun tienes nengún elementu desaniciáu.", "Name" : "Nome", "Deleted" : "Desanicióse", - "Restore" : "Respaldar", - "Delete permanently" : "Desaniciar dafechu", - "Filename" : "Nome de ficheru", + "Restore" : "Restaurar", + "Delete permanently" : "Desaniciar permanentemente", + "Could not update calendar order." : "Nun se pudo anovar l'orde del calendariu.", + "Deck" : "Tarxeteru", + "Hidden" : "Anubrióse", + "Internal link" : "Enllaz internu", + "A private link that can be used with external clients" : "Un enllaz priváu que se pue usar con veceros esternos", + "Copy internal link" : "Copiar l'enllaz internu", + "An error occurred, unable to publish calendar." : "Prodúxose un error, nun ye posible espublizar el calendariu.", + "An error occurred, unable to send email." : "Prodúxose un error, nun ye posible unviar el mensaxe.", + "Embed code copied to clipboard." : "El códigu incrustáu copióse nel cartafueyu.", + "Embed code could not be copied to clipboard." : "El códigu incrustáu nun se pudo copiar nel cartafueyu.", + "Share link" : "Compartir l'enllaz", + "Copy public link" : "Copiar l'enllaz públicu", + "Send link to calendar via email" : "Unviar l'enllaz del calendariu per corréu electrónicu", + "Enter one address" : "Introduz una direción", + "Sending email …" : "Unviando'l mensaxe…", + "Copy embedding code" : "Copiar el códigu pa empotrar", + "Copying code …" : "Copiando'l códigu …", + "Copied code" : "Copióse'l códigu", + "Could not copy code" : "Nun se pudo copiar el códigu", + "Delete share link" : "Desaniciar esti enllaz d'usu compartíu", + "Deleting share link …" : "Desaniciando l'enllaz d'usu compartíu…", + "An error occurred while unsharing the calendar." : "Prodúxose un error mentanto se dexaba de compartir el calendariu.", + "An error occurred, unable to change the permission of the share." : "Prodúxose un error, nun ye posible camudar el permisu del elementu compartíu.", + "Unshare with {displayName}" : "Dexar de compartir con {displayName}", + "Share with users or groups" : "Compartir con usuarios o grupos", + "No users or groups" : "Nun hai nengún usuariu nin grupu", + "Failed to save calendar name and color" : "Nun se pue guardar el nome y el color del calendariu", + "Calendar name …" : "Nome del calendariu…", + "Share calendar" : "Compartir el calendariu", + "Save" : "Guardar", + "Import calendars" : "Importar calendarios", + "Please select a calendar to import into …" : "Seleiciona un calendariu al qu'importar …", + "Filename" : "Nome del ficheru", "Cancel" : "Encaboxar", + "Invalid location selected" : "Seleicionóse una llocalización inválida", "Automatic" : "Automáticu", + "Navigation" : "Navegación", + "Previous period" : "Periodu anterior", + "Next period" : "Periodu siguiente", + "Views" : "Vistes", + "Day view" : "Vista de díes", + "Week view" : "Vista de selmanes", + "Month view" : "Vista de meses", + "Year view" : "Vista d'años", "List view" : "Vista de llista", "Actions" : "Aiciones", - "Show week numbers" : "Amosar númberos de la selmana", + "Create event" : "Crear un eventu", + "Show shortcuts" : "Amosar los atayos", + "Editor" : "Editor", + "Close editor" : "Zarrar l'editor", + "Save edited event" : "Guardar l'eventu editáu", + "Delete edited event" : "Desaniciar l'eventu desaniciáu", + "Duplicate event" : "Duplicar l'eventu", + "or" : "o", + "Calendar settings" : "Configuración del calendariu", + "No reminder" : "Nun hai nengún recordatoriu", + "Failed to save default calendar" : "Nun se pue guardar el calendariu predetermináu", + "CalDAV link copied to clipboard." : "L'enllaz CalDAV copióse nel cartafueyu.", + "CalDAV link could not be copied to clipboard." : "L'enllaz CalDAV nun se pudo copiar nel cartafueyu.", + "Enable birthday calendar" : "Activar el calendariu de los cumpleaños", + "Show tasks in calendar" : "Amosar les xeres nel calendariu", + "Enable simplified editor" : "Activar l'editor simplificáu", + "Limit the number of events displayed in the monthly view" : "Llendar el númberu d'eventos amosaos na vista de meses", + "Show weekends" : "Amosar les fines de selmana", + "Show week numbers" : "Amosar los númberos de selmana", + "Default reminder" : "Recordatoriu predetermináu", + "Copy primary CalDAV address" : "Copiar la direición CalDAV primaria", + "Copy iOS/macOS CalDAV address" : "Copiar la direición CalDAV d'iOS/macOS", + "Personal availability settings" : "Configuración de la disponibilidá personal", + "Show keyboard shortcuts" : "Amosar los atayos del tecáu", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minutu","{duration} minutos"], + "0 minutes" : "0 minutos", + "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} hores"], + "_{duration} day_::_{duration} days_" : ["{duration} día","{duration} díes"], + "_{duration} week_::_{duration} weeks_" : ["{duration} selmana","{duration} selmanes"], + "_{duration} month_::_{duration} months_" : ["{duration} mes","{duration} meses"], + "_{duration} year_::_{duration} years_" : ["{duration} añu","{duration} años"], + "Update" : "Anovar", "Location" : "Llocalización", + "Create a Talk room" : "Crear una sala de Talk", "Description" : "Descripción", - "to" : "hasta", + "Visibility" : "Visibilidá", + "Duration" : "Duración", + "to" : "pa", + "Delete slot" : "Desaniciar la ralura", "Add" : "Amestar", "Monday" : "Llunes", "Tuesday" : "Martes", @@ -42,43 +176,121 @@ OC.L10N.register( "Friday" : "Vienres", "Saturday" : "Sábadu", "Sunday" : "Domingu", - "Save" : "Guardar", - "Update" : "Anovar", - "Your email address" : "Direición de corréu-e", + "Weekdays" : "Díes de la selmana", + "Your email address" : "La to direición de corréu electrónicu", + "Back" : "Atrás", "Notification" : "Avisu", - "Email" : "email", - "Unknown" : "Desconozse", - "Accept" : "Aceutar", + "Email" : "Corréu electrónicu", + "Audio notification" : "Avisu d'audiu", + "Other notification" : "Otru avisu", + "Edit time" : "Editar la hora", + "Save time" : "Guardar la hora", + "Remove reminder" : "Quitar el recordatoriu", + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "Hores", + "days" : "díes", + "weeks" : "selmanes", + "Delete file" : "Desaniciar el ficheru", + "Confirmation" : "Confirmación", + "Available" : "Disponible", + "Invitation accepted" : "Invitación aceptada", + "Not available" : "Nun ta disponible", + "Invitation declined" : "Invitación refugada", + "Awaiting response" : "Esperando pola rempuesta", + "Checking availability" : "Comprobando la disponibilidá", + "Has not responded to {organizerName}'s invitation yet" : "Nun respondió a la invitación de: {organizerName}", + "Suggestion accepted" : "Suxerencia aceptada", + "Legend" : "Lleenda", + "Out of office" : "Fuera de la oficina", + "Attendees:" : "Asistentes:", + "Done" : "Fecho", + "Room name" : "Nome de la sala", + "Busy" : "Ocupáu", + "Find a time" : "Atopar una hora", + "The invitation has been accepted successfully." : "La invitación aceptóse correutamente.", + "Failed to accept the invitation." : "Nun se pue aceptar la invitación", + "The invitation has been declined successfully." : "La invitación refugóse correutamente.", + "Failed to decline the invitation." : "Nun se pue refugar la invitación", + "Your participation has been marked as tentative." : "La to participación marcóse como provisional.", + "Failed to set the participation status to tentative." : "Nun se pudo afitar l'estáu de la participación a provisional", + "Accept" : "Aceptar", "Decline" : "Refugar", - "Tentative" : "Tentativa", - "Send email" : "Unviar mensaxe", - "All day" : "Tol día", + "Tentative" : "Provisional", + "No attendees yet" : "Nun hai nengún asistente", + "Error creating Talk room" : "Hebo un error al crear la sala de Talk", + "Attendees" : "Asistentes", + "_%n more guest_::_%n more guests_" : ["%n convidáu más","%n convidaos más"], + "Remove group" : "Quitar el grupu", + "_%n member_::_%n members_" : ["%n miembru","%n miembros"], + "No match found" : "Nun s'atopó nenguna coincidencia", + "Remove color" : "Quitar el color", + "Event title" : "Títulu del eventu", + "From" : "De", + "To" : "Pa", "Repeat" : "Repitir", "never" : "enxamás", - "after" : "dempués", - "available" : "disponible", - "More" : "Más", + "first" : "primer", + "_day_::_days_" : ["día","díes"], + "_week_::_weeks_" : ["selmana","selmanes"], + "_month_::_months_" : ["mes","meses"], + "_year_::_years_" : ["añu","años"], + "Resources" : "Recursos", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asientu","{seatingCapacity} asientos"], + "Has a projector" : "Tien proyeutor", + "Has a whiteboard" : "Tien pizarra", + "Projector" : "Proyeutor", + "Whiteboard" : "Pizarra", + "More details" : "Mas detalles", + "Please enter a valid date" : "Introduz una data válida", + "Pick a date" : "Escueyi una data", "Global" : "Global", + "An error occurred, unable to read public calendars." : "Prodúxose un error, nun ye posible lleer los calendariu públicos.", + "An error occurred, unable to subscribe to calendar." : "Prodúxose un error, nun ye posible soscribise al calendariu.", + "Subscribe" : "Soscribise", + "Time:" : "Hora:", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar eventu", + "Event does not exist" : "L'eventu nun esiste", + "All day" : "Tol día", + "Invite" : "Convidar", + "Untitled event" : "Eventu ensin títulu", "Close" : "Zarrar", - "Anniversary" : "Aniversariu", - "Week {number} of {year}" : "Selmana {number} del {year}", + "Miscellaneous" : "Miscelanea", "Daily" : "Caldía", "Weekly" : "Selmanalmente", - "Next" : "Siguiente", - "Other" : "Otru", - "When shared show full event" : "Amosar l'eventu completu al compartir", - "When shared show only busy" : "Amosar namás ocupáu al compartir", - "When shared hide this event" : "Anubrir l'eventu al compartir", + "_Every %n day_::_Every %n days_" : ["Cada %n día","Cada %n díes"], + "_Every %n week_::_Every %n weeks_" : ["Cada %n selmana","Cada %n selmanes"], + "_Every %n month_::_Every %n months_" : ["Cada %n mes","Cada %n meses"], + "_Every %n year_::_Every %n years_" : ["Cada %n añu","Cada %n años"], + "_%n time_::_%n times_" : ["%n vegada","%n vegaes"], + "second" : "segundu", + "third" : "tercer", + "fourth" : "cuartu", + "fifth" : "quintu", + "Untitled task" : "Xera ensin títulu", + "Please ask your administrator to enable the Tasks App." : "Pidi al alministrador qu'active l'aplicación Xeres.", + "W" : "S", + "%n more" : "%n más", + "_+%n more_::_+%n more_" : ["+%n más","+%n más"], + "No events" : "Nun hai nengún eventu", + "Failed to save event" : "Nun se pue guardar l'eventu", + "When shared show full event" : "Cuando se comparta amosar l'eventu completu", + "When shared show only busy" : "Cuando se comparta amosar namás si ta ocupáu", + "When shared hide this event" : "Cuando se comparta anubrir l'eventu", "Status" : "Estáu", - "Confirmed" : "Confirmáu", - "Categories" : "Estayes", - "Presentation" : "Presentación", - "Office" : "Oficina", - "Mail" : "Corréu", - "Birthday" : "Data de nacencia" + "Canceled" : "Anulóse", + "Categories" : "Categories", + "Error while sharing file" : "Hebo un error mentanto se compartía'l ficheru", + "Error while sharing file with user" : "Hebo un error mentanto se compartía'l ficheru col usuariu", + "An error occurred during getting file information" : "Prodúxose un error demientres se consiguía la información del ficheru", + "An error occurred, unable to delete the calendar." : "Prodúxose un error, nun ye posible desaniciar el calendariu", + "Imported {filename}" : "Importóse «{filename}»", + "This is an event reminder." : "Esto ye un recordatoriu del eventu.", + "User not found" : "Nun s'atopó l'usuariu", + "with" : "con", + "Available times:" : "Hores disponibles:", + "Suggestions" : "Suxerencies", + "Details" : "Detalles" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/ast.json b/l10n/ast.json index 2eeff5aa5f72fe3f2f52a50b8bad86e180d37713..6a59541b673f4fb3e2e90389781b5f3adab4b997 100644 --- a/l10n/ast.json +++ b/l10n/ast.json @@ -1,37 +1,171 @@ { "translations": { + "Provided email-address is too long" : "La direición de corréu electrónicu apurrida ye mui llonga", + "User-Session unexpectedly expired" : "La sesión del usuariu caducó inesperadamente", + "Provided email-address is not valid" : "La direición de corréu electrónicu apurrida nun ye válida", + "%s has published the calendar »%s«" : "%s espublizó'l calendariu «%s»", + "Unexpected error sending email. Please contact your administrator." : "Prodúxose un error inesperáu al unviar el mensaxe. Ponte en contautu col alministrador.", + "Successfully sent email to %1$s" : "El mensaxe unvióse a %1$s correutamente", "Hello," : "Hola,", - "We wanted to inform you that %s has published the calendar »%s«." : "Quiximos informate de que %s espublizó'l calendariu «%s»", + "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informate que %s espublizó'l calendariu «%s».", "Open »%s«" : "Abrir «%s»", - "Cheers!" : "¡Salú!", - "Confirm" : "Confirmar", + "Cheers!" : "¡Saludos!", + "Upcoming events" : "Eventos próximos", + "No more events today" : "Nun hai más eventos pa güei", + "No upcoming events" : "Nun hai eventos próximos", + "More events" : "Más eventos", + "%1$s with %2$s" : "%1$s con %2$s", "Calendar" : "Calendariu", - "New event" : "Eventu nuevu", + "New booking {booking}" : "Reserva nueva «{booking}»", + "Appointments" : "Cites", + "%1$s - %2$s" : "%1$s - %2$s", + "Confirm" : "Confirmar", + "Description:" : "Descripción:", + "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Vas recibir un enllaz col mensaxe de confirmación", + "Where:" : "Ónde:", + "Comment:" : "Comentariu:", + "Previous day" : "Día anterior", + "Previous week" : "Selmana pasada", + "Previous year" : "Añu pasáu", + "Previous month" : "Mes pasáu", + "Next day" : "Día siguiente", + "Next week" : "La selmana que vien", + "Next year" : "Añu siguiente", + "Next month" : "Mes siguiente", + "Create new event" : "Crear un eventu", + "Event" : "Eventu", "Today" : "Güei", "Day" : "Día", "Week" : "Selmana", "Month" : "Mes", + "Year" : "Añu", + "List" : "Llista", "Preview" : "Previsualizar", - "Copy link" : "Copiar enllaz", + "Copy link" : "Copiar l'enllaz", "Edit" : "Editar", "Delete" : "Desaniciar", - "Export" : "Esportar", - "Share link" : "Share link", - "Share with users or groups" : "Compartir con usuarios y grupos", - "can edit" : "pue editar", + "Disable calendar \"{calendar}\"" : "Desactivar el calendariu «{calendar}»", + "Disable untitled calendar" : "Desactivar el calendariu ensin títulu", + "Enable calendar \"{calendar}\"" : "¿Quies activar el calendariu «{calendar}»?", + "Enable untitled calendar" : "Activar el calendariu ensin títulu", + "An error occurred, unable to change visibility of the calendar." : "Prodúxose un error, nun ye posible camudar la visibilidá del calendariu.", + "Untitled calendar" : "Calendariu ensin títulu", + "Edit and share calendar" : "Editar y comaprtir el calendariu", + "Edit calendar" : "Editar el calendariu", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Va dexar de compartise'l calendariu en {countdown} segundu","Va dexar de compartise'l calendariu en {countdown} segundos"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Va desaniciase'l calendariu en {countdown} segundu","Va desaniciase'l calendariu en {countdown} segundos"], + "An error occurred, unable to create the calendar." : "Prodúxose un error, nun ye posible crear el calendariu.", + "Calendars" : "Calendarios", "New calendar" : "Calendariu nuevu", + "Name for new calendar" : "Nome del calendariu nuevu", + "Creating calendar …" : "Creando'l calendariu…", + "Creating subscription …" : "Creando la soscripción…", + "Calendar link copied to clipboard." : "L'enllaz del calendariu copióse nel cartafueyu.", + "Calendar link could not be copied to clipboard." : "L'enllaz del calendariu nun se pudo copiar nel cartafueyu.", + "Copy subscription link" : "Copiar l'enllaz de soscripción", + "Copying link …" : "Copiando l'enllaz …", + "Copied link" : "L'enllaz copióse", + "Could not copy link" : "Nun se pudo copiar l'enllaz", + "Export" : "Esportar", + "Untitled item" : "Elementu ensin nome", + "Unknown calendar" : "Calendariu desconocíu", + "Could not load deleted calendars and objects" : "Nun se pudieron desaniciar los calendarios y los oxetos", + "Could not delete calendar or event" : "Nun se pudo desaniciar el calendariu o l'eventu", + "Could not restore calendar or event" : "Nun se pudo restaurar el calendariu o l'eventu", + "Do you really want to empty the trash bin?" : "¿De xuru que quies balerar la papelera de reciclaxe?", + "Empty trash bin" : "Balerar la papelera", + "Trash bin" : "Papelera", + "Loading deleted items." : "Cargando los elementos desaniciaos.", + "You do not have any deleted items." : "Nun tienes nengún elementu desaniciáu.", "Name" : "Nome", "Deleted" : "Desanicióse", - "Restore" : "Respaldar", - "Delete permanently" : "Desaniciar dafechu", - "Filename" : "Nome de ficheru", + "Restore" : "Restaurar", + "Delete permanently" : "Desaniciar permanentemente", + "Could not update calendar order." : "Nun se pudo anovar l'orde del calendariu.", + "Deck" : "Tarxeteru", + "Hidden" : "Anubrióse", + "Internal link" : "Enllaz internu", + "A private link that can be used with external clients" : "Un enllaz priváu que se pue usar con veceros esternos", + "Copy internal link" : "Copiar l'enllaz internu", + "An error occurred, unable to publish calendar." : "Prodúxose un error, nun ye posible espublizar el calendariu.", + "An error occurred, unable to send email." : "Prodúxose un error, nun ye posible unviar el mensaxe.", + "Embed code copied to clipboard." : "El códigu incrustáu copióse nel cartafueyu.", + "Embed code could not be copied to clipboard." : "El códigu incrustáu nun se pudo copiar nel cartafueyu.", + "Share link" : "Compartir l'enllaz", + "Copy public link" : "Copiar l'enllaz públicu", + "Send link to calendar via email" : "Unviar l'enllaz del calendariu per corréu electrónicu", + "Enter one address" : "Introduz una direción", + "Sending email …" : "Unviando'l mensaxe…", + "Copy embedding code" : "Copiar el códigu pa empotrar", + "Copying code …" : "Copiando'l códigu …", + "Copied code" : "Copióse'l códigu", + "Could not copy code" : "Nun se pudo copiar el códigu", + "Delete share link" : "Desaniciar esti enllaz d'usu compartíu", + "Deleting share link …" : "Desaniciando l'enllaz d'usu compartíu…", + "An error occurred while unsharing the calendar." : "Prodúxose un error mentanto se dexaba de compartir el calendariu.", + "An error occurred, unable to change the permission of the share." : "Prodúxose un error, nun ye posible camudar el permisu del elementu compartíu.", + "Unshare with {displayName}" : "Dexar de compartir con {displayName}", + "Share with users or groups" : "Compartir con usuarios o grupos", + "No users or groups" : "Nun hai nengún usuariu nin grupu", + "Failed to save calendar name and color" : "Nun se pue guardar el nome y el color del calendariu", + "Calendar name …" : "Nome del calendariu…", + "Share calendar" : "Compartir el calendariu", + "Save" : "Guardar", + "Import calendars" : "Importar calendarios", + "Please select a calendar to import into …" : "Seleiciona un calendariu al qu'importar …", + "Filename" : "Nome del ficheru", "Cancel" : "Encaboxar", + "Invalid location selected" : "Seleicionóse una llocalización inválida", "Automatic" : "Automáticu", + "Navigation" : "Navegación", + "Previous period" : "Periodu anterior", + "Next period" : "Periodu siguiente", + "Views" : "Vistes", + "Day view" : "Vista de díes", + "Week view" : "Vista de selmanes", + "Month view" : "Vista de meses", + "Year view" : "Vista d'años", "List view" : "Vista de llista", "Actions" : "Aiciones", - "Show week numbers" : "Amosar númberos de la selmana", + "Create event" : "Crear un eventu", + "Show shortcuts" : "Amosar los atayos", + "Editor" : "Editor", + "Close editor" : "Zarrar l'editor", + "Save edited event" : "Guardar l'eventu editáu", + "Delete edited event" : "Desaniciar l'eventu desaniciáu", + "Duplicate event" : "Duplicar l'eventu", + "or" : "o", + "Calendar settings" : "Configuración del calendariu", + "No reminder" : "Nun hai nengún recordatoriu", + "Failed to save default calendar" : "Nun se pue guardar el calendariu predetermináu", + "CalDAV link copied to clipboard." : "L'enllaz CalDAV copióse nel cartafueyu.", + "CalDAV link could not be copied to clipboard." : "L'enllaz CalDAV nun se pudo copiar nel cartafueyu.", + "Enable birthday calendar" : "Activar el calendariu de los cumpleaños", + "Show tasks in calendar" : "Amosar les xeres nel calendariu", + "Enable simplified editor" : "Activar l'editor simplificáu", + "Limit the number of events displayed in the monthly view" : "Llendar el númberu d'eventos amosaos na vista de meses", + "Show weekends" : "Amosar les fines de selmana", + "Show week numbers" : "Amosar los númberos de selmana", + "Default reminder" : "Recordatoriu predetermináu", + "Copy primary CalDAV address" : "Copiar la direición CalDAV primaria", + "Copy iOS/macOS CalDAV address" : "Copiar la direición CalDAV d'iOS/macOS", + "Personal availability settings" : "Configuración de la disponibilidá personal", + "Show keyboard shortcuts" : "Amosar los atayos del tecáu", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minutu","{duration} minutos"], + "0 minutes" : "0 minutos", + "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} hores"], + "_{duration} day_::_{duration} days_" : ["{duration} día","{duration} díes"], + "_{duration} week_::_{duration} weeks_" : ["{duration} selmana","{duration} selmanes"], + "_{duration} month_::_{duration} months_" : ["{duration} mes","{duration} meses"], + "_{duration} year_::_{duration} years_" : ["{duration} añu","{duration} años"], + "Update" : "Anovar", "Location" : "Llocalización", + "Create a Talk room" : "Crear una sala de Talk", "Description" : "Descripción", - "to" : "hasta", + "Visibility" : "Visibilidá", + "Duration" : "Duración", + "to" : "pa", + "Delete slot" : "Desaniciar la ralura", "Add" : "Amestar", "Monday" : "Llunes", "Tuesday" : "Martes", @@ -40,43 +174,121 @@ "Friday" : "Vienres", "Saturday" : "Sábadu", "Sunday" : "Domingu", - "Save" : "Guardar", - "Update" : "Anovar", - "Your email address" : "Direición de corréu-e", + "Weekdays" : "Díes de la selmana", + "Your email address" : "La to direición de corréu electrónicu", + "Back" : "Atrás", "Notification" : "Avisu", - "Email" : "email", - "Unknown" : "Desconozse", - "Accept" : "Aceutar", + "Email" : "Corréu electrónicu", + "Audio notification" : "Avisu d'audiu", + "Other notification" : "Otru avisu", + "Edit time" : "Editar la hora", + "Save time" : "Guardar la hora", + "Remove reminder" : "Quitar el recordatoriu", + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "Hores", + "days" : "díes", + "weeks" : "selmanes", + "Delete file" : "Desaniciar el ficheru", + "Confirmation" : "Confirmación", + "Available" : "Disponible", + "Invitation accepted" : "Invitación aceptada", + "Not available" : "Nun ta disponible", + "Invitation declined" : "Invitación refugada", + "Awaiting response" : "Esperando pola rempuesta", + "Checking availability" : "Comprobando la disponibilidá", + "Has not responded to {organizerName}'s invitation yet" : "Nun respondió a la invitación de: {organizerName}", + "Suggestion accepted" : "Suxerencia aceptada", + "Legend" : "Lleenda", + "Out of office" : "Fuera de la oficina", + "Attendees:" : "Asistentes:", + "Done" : "Fecho", + "Room name" : "Nome de la sala", + "Busy" : "Ocupáu", + "Find a time" : "Atopar una hora", + "The invitation has been accepted successfully." : "La invitación aceptóse correutamente.", + "Failed to accept the invitation." : "Nun se pue aceptar la invitación", + "The invitation has been declined successfully." : "La invitación refugóse correutamente.", + "Failed to decline the invitation." : "Nun se pue refugar la invitación", + "Your participation has been marked as tentative." : "La to participación marcóse como provisional.", + "Failed to set the participation status to tentative." : "Nun se pudo afitar l'estáu de la participación a provisional", + "Accept" : "Aceptar", "Decline" : "Refugar", - "Tentative" : "Tentativa", - "Send email" : "Unviar mensaxe", - "All day" : "Tol día", + "Tentative" : "Provisional", + "No attendees yet" : "Nun hai nengún asistente", + "Error creating Talk room" : "Hebo un error al crear la sala de Talk", + "Attendees" : "Asistentes", + "_%n more guest_::_%n more guests_" : ["%n convidáu más","%n convidaos más"], + "Remove group" : "Quitar el grupu", + "_%n member_::_%n members_" : ["%n miembru","%n miembros"], + "No match found" : "Nun s'atopó nenguna coincidencia", + "Remove color" : "Quitar el color", + "Event title" : "Títulu del eventu", + "From" : "De", + "To" : "Pa", "Repeat" : "Repitir", "never" : "enxamás", - "after" : "dempués", - "available" : "disponible", - "More" : "Más", + "first" : "primer", + "_day_::_days_" : ["día","díes"], + "_week_::_weeks_" : ["selmana","selmanes"], + "_month_::_months_" : ["mes","meses"], + "_year_::_years_" : ["añu","años"], + "Resources" : "Recursos", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asientu","{seatingCapacity} asientos"], + "Has a projector" : "Tien proyeutor", + "Has a whiteboard" : "Tien pizarra", + "Projector" : "Proyeutor", + "Whiteboard" : "Pizarra", + "More details" : "Mas detalles", + "Please enter a valid date" : "Introduz una data válida", + "Pick a date" : "Escueyi una data", "Global" : "Global", + "An error occurred, unable to read public calendars." : "Prodúxose un error, nun ye posible lleer los calendariu públicos.", + "An error occurred, unable to subscribe to calendar." : "Prodúxose un error, nun ye posible soscribise al calendariu.", + "Subscribe" : "Soscribise", + "Time:" : "Hora:", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar eventu", + "Event does not exist" : "L'eventu nun esiste", + "All day" : "Tol día", + "Invite" : "Convidar", + "Untitled event" : "Eventu ensin títulu", "Close" : "Zarrar", - "Anniversary" : "Aniversariu", - "Week {number} of {year}" : "Selmana {number} del {year}", + "Miscellaneous" : "Miscelanea", "Daily" : "Caldía", "Weekly" : "Selmanalmente", - "Next" : "Siguiente", - "Other" : "Otru", - "When shared show full event" : "Amosar l'eventu completu al compartir", - "When shared show only busy" : "Amosar namás ocupáu al compartir", - "When shared hide this event" : "Anubrir l'eventu al compartir", + "_Every %n day_::_Every %n days_" : ["Cada %n día","Cada %n díes"], + "_Every %n week_::_Every %n weeks_" : ["Cada %n selmana","Cada %n selmanes"], + "_Every %n month_::_Every %n months_" : ["Cada %n mes","Cada %n meses"], + "_Every %n year_::_Every %n years_" : ["Cada %n añu","Cada %n años"], + "_%n time_::_%n times_" : ["%n vegada","%n vegaes"], + "second" : "segundu", + "third" : "tercer", + "fourth" : "cuartu", + "fifth" : "quintu", + "Untitled task" : "Xera ensin títulu", + "Please ask your administrator to enable the Tasks App." : "Pidi al alministrador qu'active l'aplicación Xeres.", + "W" : "S", + "%n more" : "%n más", + "_+%n more_::_+%n more_" : ["+%n más","+%n más"], + "No events" : "Nun hai nengún eventu", + "Failed to save event" : "Nun se pue guardar l'eventu", + "When shared show full event" : "Cuando se comparta amosar l'eventu completu", + "When shared show only busy" : "Cuando se comparta amosar namás si ta ocupáu", + "When shared hide this event" : "Cuando se comparta anubrir l'eventu", "Status" : "Estáu", - "Confirmed" : "Confirmáu", - "Categories" : "Estayes", - "Presentation" : "Presentación", - "Office" : "Oficina", - "Mail" : "Corréu", - "Birthday" : "Data de nacencia" + "Canceled" : "Anulóse", + "Categories" : "Categories", + "Error while sharing file" : "Hebo un error mentanto se compartía'l ficheru", + "Error while sharing file with user" : "Hebo un error mentanto se compartía'l ficheru col usuariu", + "An error occurred during getting file information" : "Prodúxose un error demientres se consiguía la información del ficheru", + "An error occurred, unable to delete the calendar." : "Prodúxose un error, nun ye posible desaniciar el calendariu", + "Imported {filename}" : "Importóse «{filename}»", + "This is an event reminder." : "Esto ye un recordatoriu del eventu.", + "User not found" : "Nun s'atopó l'usuariu", + "with" : "con", + "Available times:" : "Hores disponibles:", + "Suggestions" : "Suxerencies", + "Details" : "Detalles" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/az.js b/l10n/az.js index 213733898d354bde1d57c8c1e0b80e5b47bd0d06..c71cfb3fbbd3dd86aca732be14297048314dd9ad 100644 --- a/l10n/az.js +++ b/l10n/az.js @@ -1,8 +1,10 @@ OC.L10N.register( "calendar", { + "Hello," : "Salam,", "Cheers!" : "Şərəfə!", "Calendar" : "Təqvim", + "Confirm" : "Təsdiq edin", "Today" : "Bu gün", "Day" : "Gün", "Week" : "Həftə", @@ -10,17 +12,20 @@ OC.L10N.register( "Copy link" : "linki nüsxələ", "Edit" : "Dəyişiklik et", "Delete" : "Sil", - "Export" : "Çıxarış", - "Share link" : "Linki yayımla", - "can edit" : "dəyişmək olar", "New calendar" : "Yeni təqvim", + "Export" : "Çıxarış", "Name" : "Ad", "Deleted" : "Silinib", "Restore" : "Geri qaytar", "Delete permanently" : "Həmişəlik sil", + "Hidden" : "Gizli", + "Share link" : "Linki yayımla", + "can edit" : "dəyişmək olar", + "Save" : "Saxla", "Cancel" : "Dayandır", "Automatic" : "Avtomatik", "Actions" : "İşlər", + "Update" : "Yenilənmə", "Location" : "Yerləşdiyiniz ünvan", "Description" : "Açıqlanma", "to" : "doğru", @@ -32,23 +37,33 @@ OC.L10N.register( "Friday" : "Cümə", "Saturday" : "Şənbə", "Sunday" : "Bazar", - "Save" : "Saxla", - "Update" : "Yenilənmə", "Your email address" : "Sizin email ünvanı", + "Back" : "Geri", "Email" : "Email", - "Send email" : "Email yolla", + "seconds" : "saniyələr", + "minutes" : "dəqiqələr", + "hours" : "saatlar", + "days" : "günlər", + "weeks" : "həftələr", + "Choose a file to add as attachment" : "Əlavə ediləcək faylı seçin", + "Done" : "Edildi", + "Accept" : "Qəbul et", + "Decline" : "İmtina", + "Attendees" : "İştirakçılar", + "Remove group" : "Qrupu sil", "Repeat" : "Təkrar", "never" : "heç vaxt", - "More" : "Daha da", + "Resources" : "Resurslar", + "Subscribe" : "Abunə", "Personal" : "Şəxsi", - "Details" : "Detallar", - "Attendees" : "İştirakçılar", + "Edit event" : "Hadisəni dəyişdir", "Close" : "Bağla", "Daily" : "Günlük", "Weekly" : "Həftəlik", - "Next" : "Növbəti", + "second" : "saniyə", "Other" : "Digər", - "Mail" : "Məktub", - "Birthday" : "Ad günü" + "Status" : "Status", + "Categories" : "Kateqoriyalar", + "Details" : "Detallar" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/az.json b/l10n/az.json index 84c2802e6e92b2f3799960bd0d07bb01c1f2183d..1dd51974aa1ed17fa56ae2d6b3902c7b4a2019be 100644 --- a/l10n/az.json +++ b/l10n/az.json @@ -1,6 +1,8 @@ { "translations": { + "Hello," : "Salam,", "Cheers!" : "Şərəfə!", "Calendar" : "Təqvim", + "Confirm" : "Təsdiq edin", "Today" : "Bu gün", "Day" : "Gün", "Week" : "Həftə", @@ -8,17 +10,20 @@ "Copy link" : "linki nüsxələ", "Edit" : "Dəyişiklik et", "Delete" : "Sil", - "Export" : "Çıxarış", - "Share link" : "Linki yayımla", - "can edit" : "dəyişmək olar", "New calendar" : "Yeni təqvim", + "Export" : "Çıxarış", "Name" : "Ad", "Deleted" : "Silinib", "Restore" : "Geri qaytar", "Delete permanently" : "Həmişəlik sil", + "Hidden" : "Gizli", + "Share link" : "Linki yayımla", + "can edit" : "dəyişmək olar", + "Save" : "Saxla", "Cancel" : "Dayandır", "Automatic" : "Avtomatik", "Actions" : "İşlər", + "Update" : "Yenilənmə", "Location" : "Yerləşdiyiniz ünvan", "Description" : "Açıqlanma", "to" : "doğru", @@ -30,23 +35,33 @@ "Friday" : "Cümə", "Saturday" : "Şənbə", "Sunday" : "Bazar", - "Save" : "Saxla", - "Update" : "Yenilənmə", "Your email address" : "Sizin email ünvanı", + "Back" : "Geri", "Email" : "Email", - "Send email" : "Email yolla", + "seconds" : "saniyələr", + "minutes" : "dəqiqələr", + "hours" : "saatlar", + "days" : "günlər", + "weeks" : "həftələr", + "Choose a file to add as attachment" : "Əlavə ediləcək faylı seçin", + "Done" : "Edildi", + "Accept" : "Qəbul et", + "Decline" : "İmtina", + "Attendees" : "İştirakçılar", + "Remove group" : "Qrupu sil", "Repeat" : "Təkrar", "never" : "heç vaxt", - "More" : "Daha da", + "Resources" : "Resurslar", + "Subscribe" : "Abunə", "Personal" : "Şəxsi", - "Details" : "Detallar", - "Attendees" : "İştirakçılar", + "Edit event" : "Hadisəni dəyişdir", "Close" : "Bağla", "Daily" : "Günlük", "Weekly" : "Həftəlik", - "Next" : "Növbəti", + "second" : "saniyə", "Other" : "Digər", - "Mail" : "Məktub", - "Birthday" : "Ad günü" + "Status" : "Status", + "Categories" : "Kateqoriyalar", + "Details" : "Detallar" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/bg.js b/l10n/bg.js index 317fb0767a297d2ed8b3909e921f31b594c14fe1..7c95f02f16f7f8612be922cf3eea834462679f9d 100644 --- a/l10n/bg.js +++ b/l10n/bg.js @@ -11,129 +11,144 @@ OC.L10N.register( "Open »%s«" : "Отвори »%s«", "Cheers!" : "Поздрави!", "Upcoming events" : "Предстоящи събития", + "No more events today" : " Няма повече събития за днес", + "No upcoming events" : "Няма предстоящи събития", + "More events" : "Повече събития", + "Calendar" : "Календар", + "New booking {booking}" : "Нова резервация {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) резервира срещата „{config_display_name}“ на {date_time}.", "Appointments" : "Срещи", "Schedule appointment \"%s\"" : "Насрочване на среща „%s“", "Schedule an appointment" : "Насрочване на среща", "Prepare for %s" : "Подгответе се за %s", "Follow up for %s" : "Последващо действие за %s", - "Your appointment \"%s\" needs confirmation" : "Вашата среща „%s“ се нуждае от потвърждение", + "Your appointment \"%s\" with %s needs confirmation" : "Вашата среща „%s“ с %s, се нуждае от потвърждение", "Dear %s, please confirm your booking" : "Уважаеми %s, моля, потвърдете резервацията си", "Confirm" : "Потвърдете", + "Description:" : "Описание:", "This confirmation link expires in %s hours." : "Тази връзка за потвърждение изтича след %s часа.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Ако все пак желаете да отмените срещата, моля, свържете се с вашия организатор.", - "Appointment:" : "Среща:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Ако все пак желаете да отмените срещата, моля, свържете се с вашият организатор, като отговорите на този имейл или като посетите страницата на профила му.", + "Your appointment \"%s\" with %s has been accepted" : "Вашата среща „%s“ с %s, беше приета", + "Dear %s, your booking has been accepted." : "Уважаеми %s, резервацията ви е приета.", + "Appointment for:" : "Среща в:", "Date:" : "Дата:", + "You will receive a link with the confirmation email" : "Ще получите връзка с имейла за потвърждение", "Where:" : "Къде:", - "Description:" : "Описание:", - "Calendar" : "Календар", + "Comment:" : "Коментар:", + "You have a new appointment booking \"%s\" from %s" : "Имате нова резервация за среща „%s“ от %s", + "Dear %s, %s (%s) booked an appointment with you." : "Уважаемият/та %s, %s (%s) резервира среща с вас.", "A Calendar app for Nextcloud" : "Календар за Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Приложението Календар е интерфейс в Nextcloud за CalDAV сървър. Чрез него лесно можете да синхронизирате събития от различни устройства към Nextcloud и да ги редактирате онлайн.\n* 🚀 **Интегриране с други Nextcloud приложения!** В момента Контакти - предстои да бъдат добавени и други.\n* 🌐 **Поддръжка на WebCal!** Желаете да следите датите в календара, на които любимият ви отбор играе? Няма проблем!\n*🙋 ** Участници! ** Поканете хора на вашите събития\n* ⌚️ ** Свободни / заети! ** Вижте кога вашите участници са на разположение за среща\n* ⏰ ** Напомняния! ** Получавайте аларми за събития във вашия браузър и по имейл\n* 🔍 Търсене! Намерете лесно събитията си \n* ☑️ Задачи! Следетете задачи с краен срок директно в календара\n* 🙈 ** Ние не преоткриваме колелото! ** Въз основа на страхотната [c-dav библиотека](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", "Previous day" : "Вчера", "Previous week" : "Миналата седмица", "Previous month" : "Предишен месец", "Next day" : "Утре", "Next week" : "Следваща седмица", + "Next year" : "Следващата година", "Next month" : "Следващия месец", - "New event" : "Ново събитие", + "Event" : "Събитие", "Today" : "Днес", "Day" : "Ден", "Week" : "Седмица", "Month" : "Месец", + "Year" : "Година", "List" : "Списък", + "Appointment link was copied to clipboard" : "Връзката за среща е копирана в клипборда", + "Appointment link could not be copied to clipboard" : "Връзката за среща не можа да бъде копирана в клипборда", "Preview" : "Визуализация", "Copy link" : "Копиране на връзката", "Edit" : "Редакция", "Delete" : "Изтриване", - "Appointment link was copied to clipboard" : "Връзката за среща е копирана в клипборда", - "Appointment link could not be copied to clipboard" : "Връзката за среща не можа да бъде копирана в клипборда", - "Add new" : "Добави нов", - "Untitled calendar" : "Нов календар", - "Edit name" : "Редактирай името", - "Saving name …" : "Запазване...", - "Edit color" : "Смени цвета", - "Saving color …" : "Запазване на цвета ...", - "Copy private link" : "Копирай скритата връзка", - "Export" : "Експорт /изнасям/", - "Unshare from me" : "Прекратяване на споделянето от мен", + "Create new" : "Създай нов", "Disable calendar \"{calendar}\"" : "Деактивиране на календар „{calendar}“", "Disable untitled calendar" : "Деактивиране на неозаглавен календар", "Enable calendar \"{calendar}\"" : "Активиране на календар „{calendar}“", "Enable untitled calendar" : "Активиране на неозаглавен календар", "An error occurred, unable to change visibility of the calendar." : "Възникна грешка, невъзможност да се промени видимостта на календара.", - "An error occurred, unable to delete the calendar." : "Възникна грешка, невъзможност да се изтрие календара.", - "Calendar link copied to clipboard." : "Връзка за Календара е копирана в клипборда", - "Calendar link could not be copied to clipboard." : "Връзката за Календара не може да се копира в клипборда", - "An error occurred, unable to rename the calendar." : "Възникна грешка, невъзможност да се промени името на календара.", - "An error occurred, unable to change the calendar's color." : "Възникна грешка, невъзможност да се промени цвета на календара.", + "Untitled calendar" : "Нов календар", + "Shared with you by" : "Споделено с вас от", + "Edit and share calendar" : "Редактиране и споделяне на календар", + "Edit calendar" : "Редактиране на календар", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Прекратяване на споделянето на календара след {countdown} секунди","Прекратяване на споделянето на календара след {countdown} секунди"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["И","Изтриване на календара след {countdown} секундии"], + "An error occurred, unable to create the calendar." : "Възникна грешка, невъзможност да се създаде календар.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Моля, въведете валидна връзка (започваща с http://, https://, webcal://, или webcals://)", + "Calendars" : "Kалендари", + "Add new" : "Добави нов", + "New calendar" : "Нов календар", + "Name for new calendar" : "Име за нов календар", + "Creating calendar …" : "Създаване на календар", + "New calendar with task list" : "Нов календар със списък със задачи", + "New subscription from link (read-only)" : "Нов абонамент от връзка (само за четене)", + "Creating subscription …" : "Създаване на абонамент …", + "Calendar link copied to clipboard." : "Връзка за Календара е копирана в клипборда", + "Calendar link could not be copied to clipboard." : "Връзката за Календара не може да се копира в клипборда", + "Copy subscription link" : "Копиране на връзката за абониране", + "Copying link …" : "Копиране на връзката …", + "Copied link" : "Копирано!", + "Could not copy link" : "Връзката не можа да се копира", + "Export" : "Експорт /изнасям/", + "Untitled item" : "Неозаглавен елемент", + "Unknown calendar" : "Неизвестен календар", + "Could not load deleted calendars and objects" : "Не можаха да се заредят изтритите календари и обекти", + "Could not delete calendar or event" : "Не можа да се изтрие календар или събитие", + "Could not restore calendar or event" : "Не можа да се възстанови календар или събитие", + "Do you really want to empty the trash bin?" : "Наистина ли искате да изпразните кошчето за боклук?", + "Empty trash bin" : "Изпразване на кошчето за боклук", + "Trash bin" : "Кошче", + "Loading deleted items." : "Зареждане на изтрити елементи.", + "You do not have any deleted items." : "Нямате изтрити елементи.", + "Name" : "Име", + "Deleted" : "Изтрито", + "Restore" : "Възстановяне", + "Delete permanently" : "Изтрий завинаги", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Елементите в кошчето за боклук се изтриват след {numDays} дни","Елементите в кошчето се изтриват след {numDays} дни"], + "Could not update calendar order." : " Невъзможност да се актуализира записът в календара", + "Deck" : "Deck", + "Hidden" : "Скрит", + "An error occurred, unable to publish calendar." : "Възникна грешка, невъзможност да се публикува календар.", + "An error occurred, unable to send email." : "Възникна грешка, невъзможност да се изпрати имейл", + "Embed code copied to clipboard." : "Кодът за вграждане е копиран в клипборда", + "Embed code could not be copied to clipboard." : "Кодът за вграждане не можа да се копира в клипборда", + "Unpublishing calendar failed" : "Премахването на публикуването на календара беше неуспешно", "Share link" : "Връзка за споделяне", - "Publish calendar" : "Публикувай календара", - "Publishing calendar" : "Публикуване на календара", "Copy public link" : "Копирай публичната връзка", "Send link to calendar via email" : "Изпрати връзката по имейл", "Enter one address" : "Въведете един адрес", "Sending email …" : "Изпращане на имейл …", - "Copy subscription link" : "Копиране на връзката за абониране", - "Copying link …" : "Копиране на връзката …", - "Copied link" : "Копирано!", - "Could not copy link" : "Връзката не можа да се копира", "Copy embedding code" : "Копиране на кода за вграждане", "Copying code …" : "Копиране на кода …", "Copied code" : "Кодът е копиран", "Could not copy code" : "Кодът не можа да се копира", "Delete share link" : "Изтрий споделената връзка", "Deleting share link …" : "Изтриване на връзката за споделяне  ...", - "An error occurred, unable to publish calendar." : "Възникна грешка, невъзможност да се публикува календар.", - "An error occurred, unable to send email." : "Възникна грешка, невъзможност да се изпрати имейл", - "Embed code copied to clipboard." : "Кодът за вграждане е копиран в клипборда", - "Embed code could not be copied to clipboard." : "Кодът за вграждане не можа да се копира в клипборда", - "Unpublishing calendar failed" : "Премахването на публикуването на календара беше неуспешно", - "Share with users or groups" : "Сподели с потребители или групи", - "No users or groups" : "Няма потребители или групи", + "An error occurred while unsharing the calendar." : "Възникна грешка при прекратяване на споделянето на календар.", + "An error occurred, unable to change the permission of the share." : "Възникна грешка, невъзможност да се промени разрешението за споделяне ", "can edit" : "може да редактира", "Unshare with {displayName}" : "Прекратява споделянето с {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Възникна грешка, невъзможност да се промени прекратяването на споделяне на календара.", - "An error occurred, unable to change the permission of the share." : "Възникна грешка, невъзможност да се промени разрешението за споделяне ", - "+ New calendar" : "Нов календар", - "New calendar" : "Нов календар", - "Name for new calendar" : "Име за нов календар", - "Creating calendar …" : "Създаване на календар", - "New calendar with task list" : "Нов календар със списък със задачи", - "New subscription from link (read-only)" : "Нов абонамент от връзка (само за четене)", - "Creating subscription …" : "Създаване на абонамент …", - "An error occurred, unable to create the calendar." : "Възникна грешка, невъзможност да се създаде календар.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Моля, въведете валидна връзка (започваща с http://, https://, webcal://, или webcals://)", - "Trash bin" : "Кошче за бклук", - "Loading deleted elements." : "Зареждане на изтрити елементи.", - "You do not have any deleted elements." : "Нямате изтрити елементи.", - "Name" : "Име", - "Deleted" : "Изтрито", - "Restore" : "Възстановяне", - "Delete permanently" : "Изтрий завинаги", - "Empty trash bin" : "Изпразване на кошчето за боклук", - "Untitled element" : "Неозаглавен елемент", - "Unknown calendar" : "Неизвестен календар", - "Could not load deleted calendars and objects" : "Не можаха да се заредят изтритите календари и обекти", - "Could not restore calendar or event" : "Не можа да се възстанови календар или събитие", - "Do you really want to empty the trash bin?" : "Наистина ли искате да изпразните кошчето за боклук?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Елементите в кошчето се изтриват след {numDays} дни","Елементите в кошчето се изтриват след {numDays} дни"], - "Could not update calendar order." : " Невъзможност да се актуализира записът в календара", + "Share with users or groups" : "Сподели с потребители или групи", + "No users or groups" : "Няма потребители или групи", + "Calendar name …" : "Име на календар ...", + "Share calendar" : "Споделяне на календар", + "Unshare from me" : "Прекратяване на споделянето от мен", + "Save" : "Запазване", "Import calendars" : "Импортиране на календари", "Please select a calendar to import into …" : "Моля, изберете календар, в който да импортирате", "Filename" : "Име на файла", "Calendar to import into" : "Избран календар за внасяне в", "Cancel" : "Отказ", "_Import calendar_::_Import calendars_" : ["Импортиране на календар","Импортиране на календари"], + "Select the default location for attachments" : "Избор на местоположение на прикачените файлове по подразбиране", + "Invalid location selected" : "Избрано е невалидно местоположение", + "Attachments folder successfully saved." : "Папката с прикачени файлове е записана успешно.", + "Error on saving attachments folder." : "Грешка при запазване на папката с прикачени файлове.", + "Default attachments location" : "Местоположение на прикачените файлове по подразбиране", "{filename} could not be parsed" : "{filename} не можа да бъде анализиран", "No valid files found, aborting import" : "Не са намерени валидни файлове, прекъсване на импортирането", - "Import partially failed. Imported {accepted} out of {total}." : "Импортирането е частично неуспешно. Импортирани {accepted} от {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Успешно импортиране на %n събития","Успешно импортиране на %n събития"], + "Import partially failed. Imported {accepted} out of {total}." : "Импортирането е частично неуспешно. Импортирани {accepted} от {total}.", "Automatic" : "Автоматично", "Automatic ({detected})" : "Автоматично (detected})", "New setting was not saved successfully." : " Неуспешно запазване на новата настройка.", - "Shortcut overview" : "Преглед на пряк път", - "or" : "или", "Navigation" : "Навигация", "Previous period" : "Предишен период", "Next period" : "Следващ период", @@ -150,10 +165,16 @@ OC.L10N.register( "Save edited event" : "Запиши редактираното събитие", "Delete edited event" : "Изтриване на редактираното събитие", "Duplicate event" : "Дублирано събитие", + "Shortcut overview" : "Преглед на пряк път", + "or" : "или", + "Calendar settings" : "Настройки на календар", + "No reminder" : "Без напомняне", + "CalDAV link copied to clipboard." : "Копиране на CalDAV връзка в клипборда", + "CalDAV link could not be copied to clipboard." : "CalDAV връзката не може да бъде копирана в клипборда", "Enable birthday calendar" : "Активиране на календара за рожден ден", "Show tasks in calendar" : "Показване на задачите в календара", "Enable simplified editor" : "Активиране на опростен редактор", - "Limit visible events per view" : "Ограничаване на видимите събития на изгледа", + "Limit the number of events displayed in the monthly view" : "Ограничаване на броя на събитията, показвани в месечния изглед", "Show weekends" : "Покажи събота и неделя", "Show week numbers" : "Показвай номерата на седмиците", "Time increments" : "Времеви стъпки", @@ -162,12 +183,6 @@ OC.L10N.register( "Copy iOS/macOS CalDAV address" : "Копиране iOS/macOS CalDAV адрес", "Personal availability settings" : "Настройки за лична достъпност", "Show keyboard shortcuts" : "Показване на клавишни комбинации", - "Calendar settings" : "Настройки на календар", - "No reminder" : "Без напомняне", - "CalDAV link copied to clipboard." : "Копиране на CalDAV връзка в клипборда", - "CalDAV link could not be copied to clipboard." : "CalDAV връзката не може да бъде копирана в клипборда", - "Appointment was created successfully" : "Срещата е създадена успешно", - "Appointment was updated successfully" : "Срещата е актуализирана успешно", "_{duration} minute_::_{duration} minutes_" : ["{duration} минути","{duration} минути"], "0 minutes" : "0 минути", "_{duration} hour_::_{duration} hours_" : ["{duration} часа","{duration} минути"], @@ -178,7 +193,11 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "За конфигуриране на срещи, добавете своя имейл адрес в личните настройки.", "Public – shown on the profile page" : "Публичен – показва се на страницата на профила", "Private – only accessible via secret link" : "Частен – достъпен само чрез тайна връзка", + "Update" : "Обновяване", + "Appointment name" : "Име на срещата", "Location" : "Местоположение", + "Create a Talk room" : "Създаване на стая за разговори в приложението Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "За всяка резервирана среща ще бъде генерирана уникална връзка, която ще бъде изпратена чрез имейла за потвърждение", "Description" : "Описание", "Visibility" : "Видимост", "Duration" : "Продължителност", @@ -203,18 +222,15 @@ OC.L10N.register( "Minimum time before next available slot" : "Минимално време преди следващия наличен слот", "Max slots per day" : "Максимален брой слотове на ден", "Limit how far in the future appointments can be booked" : "Ограничение, колко далеч в бъдеще могат да бъдат резервирани срещи", - "Create appointment" : "Създаване на среща", - "Edit appointment" : "Редактиране на среща", - "Save" : "Запазване", - "Update" : "Обновяване", "Please confirm your reservation" : "Моля, потвърдете вашата резервация", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Изпратихме ви имейл с подробности. Моля, потвърдете вашата среща, като използвате връзката в имейла. Можете да затворите тази страница сега.", "Your name" : "Вашето име", "Your email address" : "Вашият имейл адрес", "Please share anything that will help prepare for our meeting" : "Моля, споделете всичко, което ще помогне да се подготвим за нашата среща", "Could not book the appointment. Please try again later or contact the organizer." : "Срещата не можа да резервира. Моля, опитайте отново по-късно или се свържете с организатора.", - "Book the appointment" : "Резервиране на срещата", - "Reminder" : "Напомняне", + "Select conversation" : "Избор на разговор", + "on" : "на", + "at" : "в", "before at" : "преди в", "Notification" : "Известие", "Email" : "Имейл", @@ -225,114 +241,112 @@ OC.L10N.register( "Edit time" : "Редакирай времето", "Save time" : "Запазване на времето", "Remove reminder" : "Премахни напомнянето", - "on" : "на", - "at" : "в", - "+ Add reminder" : "+ Добави напомняне", "Add reminder" : "Добавяне на напомняне", - "_second_::_seconds_" : ["секунда","секунди"], - "_minute_::_minutes_" : ["минута","минути"], - "_hour_::_hours_" : ["час","часове"], - "_day_::_days_" : ["ден","дни"], - "_week_::_weeks_" : ["седмица","седмици"], + "seconds" : "секунди", + "minutes" : "минути", + "hours" : "часове", + "days" : "дни", + "weeks" : "седмици", + "Choose a file to add as attachment" : "Избери файл за прикачване", + "Choose a file to share as a link" : "Изберете файл, който да споделите като връзка", + "Attachment {name} already exist!" : " Прикаченият файл {name} вече съществува!", + "No attachments" : "Няма прикачени файлове", + "Add from Files" : "Добавяне от файлове", + "Upload from device" : "Качване от устройство", + "Delete file" : "Изтриване на файл", + "Confirmation" : "Потвърждение", + "_{count} attachment_::_{count} attachments_" : ["{count} прикачени файлове","{count} прикачени файлове"], "Suggested" : "Препоръчан", "Available" : "Наличен.", - "Not available" : "Не е наличен", - "Checking availability" : "Проверка на наличността", "Invitation accepted" : "Поканата е приета", "Accepted {organizerName}'s invitation" : "Поканата на {organizerName} е приета", + "Participation marked as tentative" : "Участието е отбелязано като условно", + "Invitation is delegated" : "Поканата е делегирана", + "Not available" : "Не е наличен", "Invitation declined" : "Поканата е отхвърлена", "Declined {organizerName}'s invitation" : "Поканата на {organizerName} е отхвърлена", - "Invitation is delegated" : "Поканата е делегирана", - "Participation marked as tentative" : "Участието е отбелязано като условно", - "Invitation sent" : "Изпратена е покана", + "Checking availability" : "Проверка на наличността", "Has not responded to {organizerName}'s invitation yet" : "Все още няма отговор на поканата на {organizerName}", - "Availability of attendees, resources and rooms" : "Наличие на присъстващи, ресурси и стаи", "{organizer} (organizer)" : "{organizer} (organizer)", + "Availability of attendees, resources and rooms" : "Наличие на присъстващи, ресурси и стаи", + "Legend" : "Легенда", + "Out of office" : "Извън офиса", + "Attendees:" : "Участници:", + "Done" : "Завършено", + "Room name" : "Име на стаята", "Free" : " Свободни", "Busy (tentative)" : "Зает (временно)", "Busy" : "Зает", - "Out of office" : "Извън офиса", "Unknown" : "Непознат", - "Accept" : "Приемам", - "Decline" : "Отхвърляне", - "Tentative" : "Несигурно", "The invitation has been accepted successfully." : "Поканата е приета успешно.", "Failed to accept the invitation." : "Неуспешно приемане на поканата.", "The invitation has been declined successfully." : "Поканата е отхвърлена успешно.", "Failed to decline the invitation." : "Неуспешно отхвърляне на поканата.", "Your participation has been marked as tentative." : "Участието ви е отбелязано като условно.", "Failed to set the participation status to tentative." : "Неуспешно задаване на състоянието за участие на условно.", - "Create Talk room for this event" : "Създаване на стая за разговори за това събитие", - "Show busy times" : "Показване на натоварените часове", + "Accept" : "Приемам", + "Decline" : "Отхвърляне", + "Tentative" : "Несигурно", "No attendees yet" : "Все още няма участващи", "Successfully appended link to talk room to description." : "Успешно добавена връзка към стаята за разговори от описанието.", "Error creating Talk room" : "Грешка при създаването на Стая за разговори", - "Send email" : "Изпрати е-мейл", + "Attendees" : "Участници", + "Remove group" : "Премахване на групата", + "Remove attendee" : "Премахване на участник", "Chairperson" : "Председател", "Required participant" : "Необходим участник", "Optional participant" : " Участник по желание", "Non-participant" : "Неучастник", - "Remove attendee" : "Премахване на участник", - "Search for emails, users or contacts" : "Търсене на имейли, потребители или контакти", + "Search for emails, users, contacts, contact groups or teams" : "Търси е-мейли, потребители, контакти, групи контакти или екипи.", "No match found" : "Няма намерено съвпадение", "(organizer)" : "(организатор)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "За да изпращате покани и да обработвате отговори, [отваряне на връзка] добавете вашия имейл адрес в личните настройки [затваряне на връзка].", "Remove color" : "Премахване на цвят", "Event title" : "Заглавие на събитие", - "All day" : "Цял ден", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Не може да се променя целодневната настройка за събития, които са част от набор за повторение.", - "from {startDate}" : "от {startDate}", - "from {startDate} at {startTime}" : "от {startDate} в {startTime}", - "to {endDate}" : "до {endDate}", - "to {endDate} at {endTime}" : "до {endDate} в {endTime}", + "From" : "От", + "To" : "До", "Repeat" : "Да се повтаря", - "End repeat" : "Край на повторението", - "Select to end repeat" : "Изберете, за да прекратите повторението", + "_time_::_times_" : ["пъти","пъти"], "never" : "никога", "on date" : "на дата", "after" : "след", - "_time_::_times_" : ["пъти","пъти"], + "End repeat" : "Край на повторението", + "Select to end repeat" : "Изберете, за да прекратите повторението", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Това събитие е изключено за повторение на набор от повторения. Не можете да добавите правило за повторение към него.", "first" : "първи", - "third" : "трети", - "fourth" : "четвърти", - "fifth" : "пети", - "second to last" : "предпоследен", - "last" : "последен", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Промените в правилото за повторение ще се прилагат само за това и за всички бъдещи събития.", "Repeat every" : "Повтаряй всеки", "By day of the month" : "От ден на месеца", "On the" : "На", + "_day_::_days_" : ["ден","дни"], + "_week_::_weeks_" : ["седмица","седмици"], "_month_::_months_" : ["месец","месеци"], "_year_::_years_" : ["година","години"], "weekday" : "делничен ден", "weekend day" : "Почивен ден", - "No recurrence" : "Без повторение", + "Does not repeat" : "Не се повтаря", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Дефиницията за повторение на това събитие не се поддържа изцяло от Nextcloud. Ако се редактират опциите за повторение, някои повторения могат да бъдат загубени.", - "Suggestions" : "Препоръки", "No rooms or resources yet" : "Все още няма стаи или ресурси", + "Resources" : "Ресурси", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} места","{seatingCapacity} места"], "Add resource" : "Добавяне на ресурс", "Has a projector" : "Има проектор", "Has a whiteboard" : "Има табло", "Wheelchair accessible" : "Достъпно за инвалидна количка", "Remove resource" : "Премахване на ресурс", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} места","{seatingCapacity} места"], - "Projector" : "Проектор", - "Whiteboard" : "Табло", "Search for resources or rooms" : "Търсене на ресурси или стаи", "available" : "наличен", "unavailable" : "не е наличен", + "Projector" : "Проектор", + "Whiteboard" : "Табло", "Room type" : "Тип стая", "Any" : "Всяка", "Minimum seating capacity" : "Минимален капацитет за сядане", - "More" : "Още", - "Update this occurrence" : "Актуализиране на това събитие", "Update this and all future" : "Актуализиране на това и на всички бъдещи", + "Update this occurrence" : "Актуализиране на това събитие", "Public calendar does not exist" : "Публичният календар не съществува", "Maybe the share was deleted or has expired?" : "Може би споделянето е изтрито или е изтекло?", - "Please select a time zone:" : "Моля, изберете часова зона:", - "Pick a time" : "Изберете час", - "Pick a date" : "Изберете дата", "from {formattedDate}" : "от {formattedDate}", "to {formattedDate}" : "до {formattedDate}", "on {formattedDate}" : "на {formattedDate}", @@ -342,9 +356,13 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : " {formattedDate} в {formattedTime}", "Please enter a valid date" : "Моля да въведете валидна дата", "Please enter a valid date and time" : "Моля да въведете валидна дата и час", + "Please select a time zone:" : "Моля, изберете часова зона:", + "Pick a time" : "Изберете час", + "Pick a date" : "Изберете дата", "Type to search time zone" : "Въведете, за търсене на часова зона", "Global" : "Глобални", - "Select date" : "Избор на дата", + "Subscribed" : "Абониран", + "Subscribe" : "Абониране", "Select slot" : "Избор на слот", "No slots available" : "Няма налични слотове", "The slot for your appointment has been confirmed" : "Слотът за вашата среща е потвърден", @@ -361,22 +379,19 @@ OC.L10N.register( "Personal" : "Лични", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Автоматичното откриване на часовата зона, определи часовата ви зона като UTC.\nТова най-вероятно е резултат от мерките за сигурност на вашия уеб браузър.\nМоля, задайте часовата си зона ръчно в настройките за календар.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Конфигурираната ви часова зона ({timezoneId}) не е намерена. Връщане към UTC.\nМоля, променете часовата си зона в настройките и докладвайте за този проблем.", - "No more events today" : " Няма повече събития за днес", - "No upcoming events" : "Няма предстоящи събития", - "Create a new event" : "Създай ново събитие", - "[Today]" : "[днес]", - "[Tomorrow]" : "[утре]", - "[Yesterday]" : "[вчера]", - "[Last] dddd" : "[Последен] dddd", + "Edit event" : "Редакция на събитието", "Event does not exist" : "Събитието не съществува", "Duplicate" : "Дубликат", "Delete this occurrence" : "Изтриване на това събитие", "Delete this and all future" : "Изтриване на това и на всички бъдещи ", - "Details" : "Подробности", - "Attendees" : "Участници", - "Resources" : "Ресурси", + "All day" : "Цял ден", + "Managing shared access" : "Управление на споделения достъп", + "Deny access" : "Отказване на достъп", + "Invite" : "Покани", + "_User requires access to your file_::_Users require access to your file_" : ["Потребителите трябва да имат достъп до вашия файл","Потребителите трябва да имат достъп до вашия файл"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Прикачени файлове, изискващи споделен достъп","Прикачени файлове, изискващи споделен достъп"], + "Untitled event" : "Събитие без заглавие", "Close" : "Затвори", - "Show more details" : "Показване на повече подробности", "Subscribe to {name}" : "Абониране за {name}", "Export {name}" : "Експортиране /изнасям/ на {name}", "Anniversary" : "Годишнина", @@ -406,7 +421,6 @@ OC.L10N.register( "on {time}" : "на {time}", "on {time} ({timezoneId})" : "на {time} ({timezoneId})", "Week {number} of {year}" : "Седмица {number} от {year}", - "Does not repeat" : "Не се повтаря", "Daily" : "Всеки ден", "Weekly" : "Всяка седмица", "Monthly" : "Месечно", @@ -418,18 +432,17 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["on {weekdays}","през {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["на дните {dayOfMonthList}","на дните {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "на {ordinalNumber} {byDaySet}", - "in {monthNames}" : "през {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "през {monthNames} на {ordinalNumber} {byDaySet}", "until {untilDate}" : "до {untilDate}", "_%n time_::_%n times_" : ["%n време","%n време"], - "Untitled event" : "Събитие без заглавие", + "second" : "секунда", + "third" : "трети", + "fourth" : "четвърти", + "fifth" : "пети", + "second to last" : "предпоследен", + "last" : "последен", "Untitled task" : "Задача без заглавие", "Please ask your administrator to enable the Tasks App." : "Моля, помолете вашия администратор да активира приложението за Задачи.", - "Prev" : " Предишен", - "Next" : "Следващ", - "Prev year" : "Предишната година", - "Next year" : "Следващата година", - "Year" : "Година", "W" : "W", "%n more" : "%n повече", "No events to display" : "Няма събития за показване", @@ -448,7 +461,6 @@ OC.L10N.register( "When shared hide this event" : "При споделяне, скривай това събитие", "The visibility of this event in shared calendars." : "Видимостта на това събитие в споделени календари.", "Add a location" : "Добавяне на местоположение", - "Add a description" : "Добави описание", "Status" : "Състояние", "Confirmed" : "Потвърдено", "Canceled" : "Отказано", @@ -461,135 +473,19 @@ OC.L10N.register( "Add this as a new category" : "Добави като нова категория", "Custom color" : "Персонализиране на цвят", "Special color of this event. Overrides the calendar-color." : "Специален цвят на това събитие. Сменя цвета на календара.", - "Chat room for event" : "Чат стая за събитие", + "Error while sharing file" : "Грешка при споделяне на файл", + "Error while sharing file with user" : "Грешка при споделянето на файл с потребител", + "Error creating a folder {folder}" : "Грешка при създаването на папка {folder}", + "Attachment {fileName} already exists!" : " Прикаченият файл {fileName} вече съществува!", + "An error occurred during getting file information" : "Възникна грешка при получаването на информация за файла", + "An error occurred, unable to delete the calendar." : "Възникна грешка, невъзможност да се изтрие календара.", "Imported {filename}" : "Импортирано {filename}", - "Meditation" : "Медитация", - "Relaxing" : "Релаксиращ", - "Relax" : "Почивка", - "Break" : "Прекъсване", - "Commute" : "Замяна", - "Commuting" : "Работно пътуване", - "Shuttle" : "Трансфер", - "Invoice" : "Фактура", - "Finance" : "Финанси", - "Bank" : "Банка", - "Money" : "Пари", - "Wedding" : "Сватба", - "Dog" : "Куче", - "Concert" : "Концерт", - "Festival" : "Фестивал", - "Theater" : "Театър", - "Theatre" : "Театър", - "Presentation" : "Презентация", - "Talk" : "Разговор", - "Speech" : "Реч", - "Deadline" : "Краен срок", - "Submission" : " Подаване", - "Reporting" : "Докладване", - "Camping" : "Къмпинг", - "Camp" : "Лагер", - "Election" : "Избори", - "Voting" : "Гласуване", - "Vote" : "Глас", - "Barbecue" : "Барбекю", - "Barbeque" : "Барбекю", - "Garden" : "Градина", - "Farm" : "Ферма", - "Movie" : "Филм", - "Cinema" : "Кино", - "Graduation" : "Дипломиране", - "Brainstorm" : "Мозъчна атака", - "Review" : "Преглед", - "Audit" : "Одит", - "Inspection" : "Проверка", - "Proofreading" : "Корекция", - "Baseball" : "Бейзбол", - "Meet" : "Среща", - "Planning" : "Планиране", - "Pointing" : "Насочване", - "Retrospective" : "Ретроспективен", - "Office" : "Офис", - "Contributor week" : "Седмица на сътрудника", - "Mail" : "Поща", - "Soccer" : "Футбол", - "Football" : "Футбол", - "Gaming" : "Игри", - "Drive" : "Шофиране", - "Driving" : "Шофиране", - "Bicycle" : "Велосипед", - "Cycle" : "Колело", - "Cycling" : "Колоездене", - "Biking" : "Колоездене", - "Bike" : "Велосипед", - "Podcast" : "Подкаст", - "Basketball" : "Баскетбол", - "Fishing" : "Риболов", - "Hiking" : "Туризъм", - "Hike" : "Поход", - "Art" : "Изкуство", - "Exhibition" : "Изложба", - "Museum" : "Музей", - "Pilates" : "Пилатес", - "Park" : "Парк", - "Walk" : "Разходка", - "Studying" : "Изучаване", - "Doctor" : "Доктор", - "Health" : "Здраве", - "Dentist" : "Зъболекар", - "Hospital" : "Болница", - "Interview" : "Интервю", - "Training" : "Обучение", - "Practice" : "Практика", - "Sports" : "Спортове", - "Exercise" : "Упражнение", - "Work out" : "Тренировка", - "Working out" : "Трениране", - "Gym" : "Фитнес", - "Barber" : "Бръснар", - "Haircut" : "Подстрижка", - "Hairdresser" : "Фризьор", - "Exam" : "Изпит", - "Written test" : "Писмен тест", - "Oral test" : "Устен изпит", - "Working" : "Работа", - "New Years Eve" : "Навечерието на Нова Година", - "NYE" : "ННГ", - "Fireworks" : "Фойерверки", - "Running" : "Бягане", - "Go for a run" : "Отивам да потичам", - "Marathon" : "Маратон", - "Video-conference" : "Видео конференция", - "Conference-call" : "Конферентен разговор", - "Video-call" : "Видео разговор", - "Video-chat" : "Видео чат", - "Video-meeting" : "Видео среща", - "Call" : "Позвъняване", - "Calling" : "Обаждане", - "Christmas" : "Коледа", - "Conference" : "Конференция", - "Pizza" : "Пица", - "Travelling" : "Пътуване", - "Trip" : "Пътуване", - "Journey" : "Пътешествие", - "Collaborate" : "Сътрудничество", - "Pair" : "Двойка", - "Lecture" : "Лекция", - "Seminar" : "Семинар", - "Teaching" : "Преподаване", - "Photograph" : "Фотограф", - "Party" : "Купон", - "Celebration" : "Празненство", - "Celebrate" : "Празнуване", - "Birthday" : "Рожден ден", - "Shopping" : "Пазаруване", - "Groceries" : "Бакалия", - "Skate" : "Каране на кънки", - "Skateboard" : "Скейтборд", - "Wine tasting" : "Дегустация на вино", - "Golf" : "Голф", - "Dinner" : "Вечеря", - "Lunch" : "Обяд", + "This is an event reminder." : "Това е напомняне за събитие.", "Appointment not found" : "Срещата не е намерена", - "User not found" : "Потребителят не е намерен " + "User not found" : "Потребителят не е намерен ", + "Reminder" : "Напомняне", + "+ Add reminder" : "+ Добави напомняне", + "Suggestions" : "Препоръки", + "Details" : "Подробности" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/bg.json b/l10n/bg.json index 9dd2802e411063aba6d0100b1264b05c79329fdc..093290c7115f3f24d36b2632b79ba64db476e9a7 100644 --- a/l10n/bg.json +++ b/l10n/bg.json @@ -9,129 +9,144 @@ "Open »%s«" : "Отвори »%s«", "Cheers!" : "Поздрави!", "Upcoming events" : "Предстоящи събития", + "No more events today" : " Няма повече събития за днес", + "No upcoming events" : "Няма предстоящи събития", + "More events" : "Повече събития", + "Calendar" : "Календар", + "New booking {booking}" : "Нова резервация {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) резервира срещата „{config_display_name}“ на {date_time}.", "Appointments" : "Срещи", "Schedule appointment \"%s\"" : "Насрочване на среща „%s“", "Schedule an appointment" : "Насрочване на среща", "Prepare for %s" : "Подгответе се за %s", "Follow up for %s" : "Последващо действие за %s", - "Your appointment \"%s\" needs confirmation" : "Вашата среща „%s“ се нуждае от потвърждение", + "Your appointment \"%s\" with %s needs confirmation" : "Вашата среща „%s“ с %s, се нуждае от потвърждение", "Dear %s, please confirm your booking" : "Уважаеми %s, моля, потвърдете резервацията си", "Confirm" : "Потвърдете", + "Description:" : "Описание:", "This confirmation link expires in %s hours." : "Тази връзка за потвърждение изтича след %s часа.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Ако все пак желаете да отмените срещата, моля, свържете се с вашия организатор.", - "Appointment:" : "Среща:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Ако все пак желаете да отмените срещата, моля, свържете се с вашият организатор, като отговорите на този имейл или като посетите страницата на профила му.", + "Your appointment \"%s\" with %s has been accepted" : "Вашата среща „%s“ с %s, беше приета", + "Dear %s, your booking has been accepted." : "Уважаеми %s, резервацията ви е приета.", + "Appointment for:" : "Среща в:", "Date:" : "Дата:", + "You will receive a link with the confirmation email" : "Ще получите връзка с имейла за потвърждение", "Where:" : "Къде:", - "Description:" : "Описание:", - "Calendar" : "Календар", + "Comment:" : "Коментар:", + "You have a new appointment booking \"%s\" from %s" : "Имате нова резервация за среща „%s“ от %s", + "Dear %s, %s (%s) booked an appointment with you." : "Уважаемият/та %s, %s (%s) резервира среща с вас.", "A Calendar app for Nextcloud" : "Календар за Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Приложението Календар е интерфейс в Nextcloud за CalDAV сървър. Чрез него лесно можете да синхронизирате събития от различни устройства към Nextcloud и да ги редактирате онлайн.\n* 🚀 **Интегриране с други Nextcloud приложения!** В момента Контакти - предстои да бъдат добавени и други.\n* 🌐 **Поддръжка на WebCal!** Желаете да следите датите в календара, на които любимият ви отбор играе? Няма проблем!\n*🙋 ** Участници! ** Поканете хора на вашите събития\n* ⌚️ ** Свободни / заети! ** Вижте кога вашите участници са на разположение за среща\n* ⏰ ** Напомняния! ** Получавайте аларми за събития във вашия браузър и по имейл\n* 🔍 Търсене! Намерете лесно събитията си \n* ☑️ Задачи! Следетете задачи с краен срок директно в календара\n* 🙈 ** Ние не преоткриваме колелото! ** Въз основа на страхотната [c-dav библиотека](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", "Previous day" : "Вчера", "Previous week" : "Миналата седмица", "Previous month" : "Предишен месец", "Next day" : "Утре", "Next week" : "Следваща седмица", + "Next year" : "Следващата година", "Next month" : "Следващия месец", - "New event" : "Ново събитие", + "Event" : "Събитие", "Today" : "Днес", "Day" : "Ден", "Week" : "Седмица", "Month" : "Месец", + "Year" : "Година", "List" : "Списък", + "Appointment link was copied to clipboard" : "Връзката за среща е копирана в клипборда", + "Appointment link could not be copied to clipboard" : "Връзката за среща не можа да бъде копирана в клипборда", "Preview" : "Визуализация", "Copy link" : "Копиране на връзката", "Edit" : "Редакция", "Delete" : "Изтриване", - "Appointment link was copied to clipboard" : "Връзката за среща е копирана в клипборда", - "Appointment link could not be copied to clipboard" : "Връзката за среща не можа да бъде копирана в клипборда", - "Add new" : "Добави нов", - "Untitled calendar" : "Нов календар", - "Edit name" : "Редактирай името", - "Saving name …" : "Запазване...", - "Edit color" : "Смени цвета", - "Saving color …" : "Запазване на цвета ...", - "Copy private link" : "Копирай скритата връзка", - "Export" : "Експорт /изнасям/", - "Unshare from me" : "Прекратяване на споделянето от мен", + "Create new" : "Създай нов", "Disable calendar \"{calendar}\"" : "Деактивиране на календар „{calendar}“", "Disable untitled calendar" : "Деактивиране на неозаглавен календар", "Enable calendar \"{calendar}\"" : "Активиране на календар „{calendar}“", "Enable untitled calendar" : "Активиране на неозаглавен календар", "An error occurred, unable to change visibility of the calendar." : "Възникна грешка, невъзможност да се промени видимостта на календара.", - "An error occurred, unable to delete the calendar." : "Възникна грешка, невъзможност да се изтрие календара.", - "Calendar link copied to clipboard." : "Връзка за Календара е копирана в клипборда", - "Calendar link could not be copied to clipboard." : "Връзката за Календара не може да се копира в клипборда", - "An error occurred, unable to rename the calendar." : "Възникна грешка, невъзможност да се промени името на календара.", - "An error occurred, unable to change the calendar's color." : "Възникна грешка, невъзможност да се промени цвета на календара.", + "Untitled calendar" : "Нов календар", + "Shared with you by" : "Споделено с вас от", + "Edit and share calendar" : "Редактиране и споделяне на календар", + "Edit calendar" : "Редактиране на календар", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Прекратяване на споделянето на календара след {countdown} секунди","Прекратяване на споделянето на календара след {countdown} секунди"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["И","Изтриване на календара след {countdown} секундии"], + "An error occurred, unable to create the calendar." : "Възникна грешка, невъзможност да се създаде календар.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Моля, въведете валидна връзка (започваща с http://, https://, webcal://, или webcals://)", + "Calendars" : "Kалендари", + "Add new" : "Добави нов", + "New calendar" : "Нов календар", + "Name for new calendar" : "Име за нов календар", + "Creating calendar …" : "Създаване на календар", + "New calendar with task list" : "Нов календар със списък със задачи", + "New subscription from link (read-only)" : "Нов абонамент от връзка (само за четене)", + "Creating subscription …" : "Създаване на абонамент …", + "Calendar link copied to clipboard." : "Връзка за Календара е копирана в клипборда", + "Calendar link could not be copied to clipboard." : "Връзката за Календара не може да се копира в клипборда", + "Copy subscription link" : "Копиране на връзката за абониране", + "Copying link …" : "Копиране на връзката …", + "Copied link" : "Копирано!", + "Could not copy link" : "Връзката не можа да се копира", + "Export" : "Експорт /изнасям/", + "Untitled item" : "Неозаглавен елемент", + "Unknown calendar" : "Неизвестен календар", + "Could not load deleted calendars and objects" : "Не можаха да се заредят изтритите календари и обекти", + "Could not delete calendar or event" : "Не можа да се изтрие календар или събитие", + "Could not restore calendar or event" : "Не можа да се възстанови календар или събитие", + "Do you really want to empty the trash bin?" : "Наистина ли искате да изпразните кошчето за боклук?", + "Empty trash bin" : "Изпразване на кошчето за боклук", + "Trash bin" : "Кошче", + "Loading deleted items." : "Зареждане на изтрити елементи.", + "You do not have any deleted items." : "Нямате изтрити елементи.", + "Name" : "Име", + "Deleted" : "Изтрито", + "Restore" : "Възстановяне", + "Delete permanently" : "Изтрий завинаги", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Елементите в кошчето за боклук се изтриват след {numDays} дни","Елементите в кошчето се изтриват след {numDays} дни"], + "Could not update calendar order." : " Невъзможност да се актуализира записът в календара", + "Deck" : "Deck", + "Hidden" : "Скрит", + "An error occurred, unable to publish calendar." : "Възникна грешка, невъзможност да се публикува календар.", + "An error occurred, unable to send email." : "Възникна грешка, невъзможност да се изпрати имейл", + "Embed code copied to clipboard." : "Кодът за вграждане е копиран в клипборда", + "Embed code could not be copied to clipboard." : "Кодът за вграждане не можа да се копира в клипборда", + "Unpublishing calendar failed" : "Премахването на публикуването на календара беше неуспешно", "Share link" : "Връзка за споделяне", - "Publish calendar" : "Публикувай календара", - "Publishing calendar" : "Публикуване на календара", "Copy public link" : "Копирай публичната връзка", "Send link to calendar via email" : "Изпрати връзката по имейл", "Enter one address" : "Въведете един адрес", "Sending email …" : "Изпращане на имейл …", - "Copy subscription link" : "Копиране на връзката за абониране", - "Copying link …" : "Копиране на връзката …", - "Copied link" : "Копирано!", - "Could not copy link" : "Връзката не можа да се копира", "Copy embedding code" : "Копиране на кода за вграждане", "Copying code …" : "Копиране на кода …", "Copied code" : "Кодът е копиран", "Could not copy code" : "Кодът не можа да се копира", "Delete share link" : "Изтрий споделената връзка", "Deleting share link …" : "Изтриване на връзката за споделяне  ...", - "An error occurred, unable to publish calendar." : "Възникна грешка, невъзможност да се публикува календар.", - "An error occurred, unable to send email." : "Възникна грешка, невъзможност да се изпрати имейл", - "Embed code copied to clipboard." : "Кодът за вграждане е копиран в клипборда", - "Embed code could not be copied to clipboard." : "Кодът за вграждане не можа да се копира в клипборда", - "Unpublishing calendar failed" : "Премахването на публикуването на календара беше неуспешно", - "Share with users or groups" : "Сподели с потребители или групи", - "No users or groups" : "Няма потребители или групи", + "An error occurred while unsharing the calendar." : "Възникна грешка при прекратяване на споделянето на календар.", + "An error occurred, unable to change the permission of the share." : "Възникна грешка, невъзможност да се промени разрешението за споделяне ", "can edit" : "може да редактира", "Unshare with {displayName}" : "Прекратява споделянето с {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Възникна грешка, невъзможност да се промени прекратяването на споделяне на календара.", - "An error occurred, unable to change the permission of the share." : "Възникна грешка, невъзможност да се промени разрешението за споделяне ", - "+ New calendar" : "Нов календар", - "New calendar" : "Нов календар", - "Name for new calendar" : "Име за нов календар", - "Creating calendar …" : "Създаване на календар", - "New calendar with task list" : "Нов календар със списък със задачи", - "New subscription from link (read-only)" : "Нов абонамент от връзка (само за четене)", - "Creating subscription …" : "Създаване на абонамент …", - "An error occurred, unable to create the calendar." : "Възникна грешка, невъзможност да се създаде календар.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Моля, въведете валидна връзка (започваща с http://, https://, webcal://, или webcals://)", - "Trash bin" : "Кошче за бклук", - "Loading deleted elements." : "Зареждане на изтрити елементи.", - "You do not have any deleted elements." : "Нямате изтрити елементи.", - "Name" : "Име", - "Deleted" : "Изтрито", - "Restore" : "Възстановяне", - "Delete permanently" : "Изтрий завинаги", - "Empty trash bin" : "Изпразване на кошчето за боклук", - "Untitled element" : "Неозаглавен елемент", - "Unknown calendar" : "Неизвестен календар", - "Could not load deleted calendars and objects" : "Не можаха да се заредят изтритите календари и обекти", - "Could not restore calendar or event" : "Не можа да се възстанови календар или събитие", - "Do you really want to empty the trash bin?" : "Наистина ли искате да изпразните кошчето за боклук?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Елементите в кошчето се изтриват след {numDays} дни","Елементите в кошчето се изтриват след {numDays} дни"], - "Could not update calendar order." : " Невъзможност да се актуализира записът в календара", + "Share with users or groups" : "Сподели с потребители или групи", + "No users or groups" : "Няма потребители или групи", + "Calendar name …" : "Име на календар ...", + "Share calendar" : "Споделяне на календар", + "Unshare from me" : "Прекратяване на споделянето от мен", + "Save" : "Запазване", "Import calendars" : "Импортиране на календари", "Please select a calendar to import into …" : "Моля, изберете календар, в който да импортирате", "Filename" : "Име на файла", "Calendar to import into" : "Избран календар за внасяне в", "Cancel" : "Отказ", "_Import calendar_::_Import calendars_" : ["Импортиране на календар","Импортиране на календари"], + "Select the default location for attachments" : "Избор на местоположение на прикачените файлове по подразбиране", + "Invalid location selected" : "Избрано е невалидно местоположение", + "Attachments folder successfully saved." : "Папката с прикачени файлове е записана успешно.", + "Error on saving attachments folder." : "Грешка при запазване на папката с прикачени файлове.", + "Default attachments location" : "Местоположение на прикачените файлове по подразбиране", "{filename} could not be parsed" : "{filename} не можа да бъде анализиран", "No valid files found, aborting import" : "Не са намерени валидни файлове, прекъсване на импортирането", - "Import partially failed. Imported {accepted} out of {total}." : "Импортирането е частично неуспешно. Импортирани {accepted} от {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Успешно импортиране на %n събития","Успешно импортиране на %n събития"], + "Import partially failed. Imported {accepted} out of {total}." : "Импортирането е частично неуспешно. Импортирани {accepted} от {total}.", "Automatic" : "Автоматично", "Automatic ({detected})" : "Автоматично (detected})", "New setting was not saved successfully." : " Неуспешно запазване на новата настройка.", - "Shortcut overview" : "Преглед на пряк път", - "or" : "или", "Navigation" : "Навигация", "Previous period" : "Предишен период", "Next period" : "Следващ период", @@ -148,10 +163,16 @@ "Save edited event" : "Запиши редактираното събитие", "Delete edited event" : "Изтриване на редактираното събитие", "Duplicate event" : "Дублирано събитие", + "Shortcut overview" : "Преглед на пряк път", + "or" : "или", + "Calendar settings" : "Настройки на календар", + "No reminder" : "Без напомняне", + "CalDAV link copied to clipboard." : "Копиране на CalDAV връзка в клипборда", + "CalDAV link could not be copied to clipboard." : "CalDAV връзката не може да бъде копирана в клипборда", "Enable birthday calendar" : "Активиране на календара за рожден ден", "Show tasks in calendar" : "Показване на задачите в календара", "Enable simplified editor" : "Активиране на опростен редактор", - "Limit visible events per view" : "Ограничаване на видимите събития на изгледа", + "Limit the number of events displayed in the monthly view" : "Ограничаване на броя на събитията, показвани в месечния изглед", "Show weekends" : "Покажи събота и неделя", "Show week numbers" : "Показвай номерата на седмиците", "Time increments" : "Времеви стъпки", @@ -160,12 +181,6 @@ "Copy iOS/macOS CalDAV address" : "Копиране iOS/macOS CalDAV адрес", "Personal availability settings" : "Настройки за лична достъпност", "Show keyboard shortcuts" : "Показване на клавишни комбинации", - "Calendar settings" : "Настройки на календар", - "No reminder" : "Без напомняне", - "CalDAV link copied to clipboard." : "Копиране на CalDAV връзка в клипборда", - "CalDAV link could not be copied to clipboard." : "CalDAV връзката не може да бъде копирана в клипборда", - "Appointment was created successfully" : "Срещата е създадена успешно", - "Appointment was updated successfully" : "Срещата е актуализирана успешно", "_{duration} minute_::_{duration} minutes_" : ["{duration} минути","{duration} минути"], "0 minutes" : "0 минути", "_{duration} hour_::_{duration} hours_" : ["{duration} часа","{duration} минути"], @@ -176,7 +191,11 @@ "To configure appointments, add your email address in personal settings." : "За конфигуриране на срещи, добавете своя имейл адрес в личните настройки.", "Public – shown on the profile page" : "Публичен – показва се на страницата на профила", "Private – only accessible via secret link" : "Частен – достъпен само чрез тайна връзка", + "Update" : "Обновяване", + "Appointment name" : "Име на срещата", "Location" : "Местоположение", + "Create a Talk room" : "Създаване на стая за разговори в приложението Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "За всяка резервирана среща ще бъде генерирана уникална връзка, която ще бъде изпратена чрез имейла за потвърждение", "Description" : "Описание", "Visibility" : "Видимост", "Duration" : "Продължителност", @@ -201,18 +220,15 @@ "Minimum time before next available slot" : "Минимално време преди следващия наличен слот", "Max slots per day" : "Максимален брой слотове на ден", "Limit how far in the future appointments can be booked" : "Ограничение, колко далеч в бъдеще могат да бъдат резервирани срещи", - "Create appointment" : "Създаване на среща", - "Edit appointment" : "Редактиране на среща", - "Save" : "Запазване", - "Update" : "Обновяване", "Please confirm your reservation" : "Моля, потвърдете вашата резервация", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Изпратихме ви имейл с подробности. Моля, потвърдете вашата среща, като използвате връзката в имейла. Можете да затворите тази страница сега.", "Your name" : "Вашето име", "Your email address" : "Вашият имейл адрес", "Please share anything that will help prepare for our meeting" : "Моля, споделете всичко, което ще помогне да се подготвим за нашата среща", "Could not book the appointment. Please try again later or contact the organizer." : "Срещата не можа да резервира. Моля, опитайте отново по-късно или се свържете с организатора.", - "Book the appointment" : "Резервиране на срещата", - "Reminder" : "Напомняне", + "Select conversation" : "Избор на разговор", + "on" : "на", + "at" : "в", "before at" : "преди в", "Notification" : "Известие", "Email" : "Имейл", @@ -223,114 +239,112 @@ "Edit time" : "Редакирай времето", "Save time" : "Запазване на времето", "Remove reminder" : "Премахни напомнянето", - "on" : "на", - "at" : "в", - "+ Add reminder" : "+ Добави напомняне", "Add reminder" : "Добавяне на напомняне", - "_second_::_seconds_" : ["секунда","секунди"], - "_minute_::_minutes_" : ["минута","минути"], - "_hour_::_hours_" : ["час","часове"], - "_day_::_days_" : ["ден","дни"], - "_week_::_weeks_" : ["седмица","седмици"], + "seconds" : "секунди", + "minutes" : "минути", + "hours" : "часове", + "days" : "дни", + "weeks" : "седмици", + "Choose a file to add as attachment" : "Избери файл за прикачване", + "Choose a file to share as a link" : "Изберете файл, който да споделите като връзка", + "Attachment {name} already exist!" : " Прикаченият файл {name} вече съществува!", + "No attachments" : "Няма прикачени файлове", + "Add from Files" : "Добавяне от файлове", + "Upload from device" : "Качване от устройство", + "Delete file" : "Изтриване на файл", + "Confirmation" : "Потвърждение", + "_{count} attachment_::_{count} attachments_" : ["{count} прикачени файлове","{count} прикачени файлове"], "Suggested" : "Препоръчан", "Available" : "Наличен.", - "Not available" : "Не е наличен", - "Checking availability" : "Проверка на наличността", "Invitation accepted" : "Поканата е приета", "Accepted {organizerName}'s invitation" : "Поканата на {organizerName} е приета", + "Participation marked as tentative" : "Участието е отбелязано като условно", + "Invitation is delegated" : "Поканата е делегирана", + "Not available" : "Не е наличен", "Invitation declined" : "Поканата е отхвърлена", "Declined {organizerName}'s invitation" : "Поканата на {organizerName} е отхвърлена", - "Invitation is delegated" : "Поканата е делегирана", - "Participation marked as tentative" : "Участието е отбелязано като условно", - "Invitation sent" : "Изпратена е покана", + "Checking availability" : "Проверка на наличността", "Has not responded to {organizerName}'s invitation yet" : "Все още няма отговор на поканата на {organizerName}", - "Availability of attendees, resources and rooms" : "Наличие на присъстващи, ресурси и стаи", "{organizer} (organizer)" : "{organizer} (organizer)", + "Availability of attendees, resources and rooms" : "Наличие на присъстващи, ресурси и стаи", + "Legend" : "Легенда", + "Out of office" : "Извън офиса", + "Attendees:" : "Участници:", + "Done" : "Завършено", + "Room name" : "Име на стаята", "Free" : " Свободни", "Busy (tentative)" : "Зает (временно)", "Busy" : "Зает", - "Out of office" : "Извън офиса", "Unknown" : "Непознат", - "Accept" : "Приемам", - "Decline" : "Отхвърляне", - "Tentative" : "Несигурно", "The invitation has been accepted successfully." : "Поканата е приета успешно.", "Failed to accept the invitation." : "Неуспешно приемане на поканата.", "The invitation has been declined successfully." : "Поканата е отхвърлена успешно.", "Failed to decline the invitation." : "Неуспешно отхвърляне на поканата.", "Your participation has been marked as tentative." : "Участието ви е отбелязано като условно.", "Failed to set the participation status to tentative." : "Неуспешно задаване на състоянието за участие на условно.", - "Create Talk room for this event" : "Създаване на стая за разговори за това събитие", - "Show busy times" : "Показване на натоварените часове", + "Accept" : "Приемам", + "Decline" : "Отхвърляне", + "Tentative" : "Несигурно", "No attendees yet" : "Все още няма участващи", "Successfully appended link to talk room to description." : "Успешно добавена връзка към стаята за разговори от описанието.", "Error creating Talk room" : "Грешка при създаването на Стая за разговори", - "Send email" : "Изпрати е-мейл", + "Attendees" : "Участници", + "Remove group" : "Премахване на групата", + "Remove attendee" : "Премахване на участник", "Chairperson" : "Председател", "Required participant" : "Необходим участник", "Optional participant" : " Участник по желание", "Non-participant" : "Неучастник", - "Remove attendee" : "Премахване на участник", - "Search for emails, users or contacts" : "Търсене на имейли, потребители или контакти", + "Search for emails, users, contacts, contact groups or teams" : "Търси е-мейли, потребители, контакти, групи контакти или екипи.", "No match found" : "Няма намерено съвпадение", "(organizer)" : "(организатор)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "За да изпращате покани и да обработвате отговори, [отваряне на връзка] добавете вашия имейл адрес в личните настройки [затваряне на връзка].", "Remove color" : "Премахване на цвят", "Event title" : "Заглавие на събитие", - "All day" : "Цял ден", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Не може да се променя целодневната настройка за събития, които са част от набор за повторение.", - "from {startDate}" : "от {startDate}", - "from {startDate} at {startTime}" : "от {startDate} в {startTime}", - "to {endDate}" : "до {endDate}", - "to {endDate} at {endTime}" : "до {endDate} в {endTime}", + "From" : "От", + "To" : "До", "Repeat" : "Да се повтаря", - "End repeat" : "Край на повторението", - "Select to end repeat" : "Изберете, за да прекратите повторението", + "_time_::_times_" : ["пъти","пъти"], "never" : "никога", "on date" : "на дата", "after" : "след", - "_time_::_times_" : ["пъти","пъти"], + "End repeat" : "Край на повторението", + "Select to end repeat" : "Изберете, за да прекратите повторението", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Това събитие е изключено за повторение на набор от повторения. Не можете да добавите правило за повторение към него.", "first" : "първи", - "third" : "трети", - "fourth" : "четвърти", - "fifth" : "пети", - "second to last" : "предпоследен", - "last" : "последен", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Промените в правилото за повторение ще се прилагат само за това и за всички бъдещи събития.", "Repeat every" : "Повтаряй всеки", "By day of the month" : "От ден на месеца", "On the" : "На", + "_day_::_days_" : ["ден","дни"], + "_week_::_weeks_" : ["седмица","седмици"], "_month_::_months_" : ["месец","месеци"], "_year_::_years_" : ["година","години"], "weekday" : "делничен ден", "weekend day" : "Почивен ден", - "No recurrence" : "Без повторение", + "Does not repeat" : "Не се повтаря", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Дефиницията за повторение на това събитие не се поддържа изцяло от Nextcloud. Ако се редактират опциите за повторение, някои повторения могат да бъдат загубени.", - "Suggestions" : "Препоръки", "No rooms or resources yet" : "Все още няма стаи или ресурси", + "Resources" : "Ресурси", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} места","{seatingCapacity} места"], "Add resource" : "Добавяне на ресурс", "Has a projector" : "Има проектор", "Has a whiteboard" : "Има табло", "Wheelchair accessible" : "Достъпно за инвалидна количка", "Remove resource" : "Премахване на ресурс", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} места","{seatingCapacity} места"], - "Projector" : "Проектор", - "Whiteboard" : "Табло", "Search for resources or rooms" : "Търсене на ресурси или стаи", "available" : "наличен", "unavailable" : "не е наличен", + "Projector" : "Проектор", + "Whiteboard" : "Табло", "Room type" : "Тип стая", "Any" : "Всяка", "Minimum seating capacity" : "Минимален капацитет за сядане", - "More" : "Още", - "Update this occurrence" : "Актуализиране на това събитие", "Update this and all future" : "Актуализиране на това и на всички бъдещи", + "Update this occurrence" : "Актуализиране на това събитие", "Public calendar does not exist" : "Публичният календар не съществува", "Maybe the share was deleted or has expired?" : "Може би споделянето е изтрито или е изтекло?", - "Please select a time zone:" : "Моля, изберете часова зона:", - "Pick a time" : "Изберете час", - "Pick a date" : "Изберете дата", "from {formattedDate}" : "от {formattedDate}", "to {formattedDate}" : "до {formattedDate}", "on {formattedDate}" : "на {formattedDate}", @@ -340,9 +354,13 @@ "{formattedDate} at {formattedTime}" : " {formattedDate} в {formattedTime}", "Please enter a valid date" : "Моля да въведете валидна дата", "Please enter a valid date and time" : "Моля да въведете валидна дата и час", + "Please select a time zone:" : "Моля, изберете часова зона:", + "Pick a time" : "Изберете час", + "Pick a date" : "Изберете дата", "Type to search time zone" : "Въведете, за търсене на часова зона", "Global" : "Глобални", - "Select date" : "Избор на дата", + "Subscribed" : "Абониран", + "Subscribe" : "Абониране", "Select slot" : "Избор на слот", "No slots available" : "Няма налични слотове", "The slot for your appointment has been confirmed" : "Слотът за вашата среща е потвърден", @@ -359,22 +377,19 @@ "Personal" : "Лични", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Автоматичното откриване на часовата зона, определи часовата ви зона като UTC.\nТова най-вероятно е резултат от мерките за сигурност на вашия уеб браузър.\nМоля, задайте часовата си зона ръчно в настройките за календар.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Конфигурираната ви часова зона ({timezoneId}) не е намерена. Връщане към UTC.\nМоля, променете часовата си зона в настройките и докладвайте за този проблем.", - "No more events today" : " Няма повече събития за днес", - "No upcoming events" : "Няма предстоящи събития", - "Create a new event" : "Създай ново събитие", - "[Today]" : "[днес]", - "[Tomorrow]" : "[утре]", - "[Yesterday]" : "[вчера]", - "[Last] dddd" : "[Последен] dddd", + "Edit event" : "Редакция на събитието", "Event does not exist" : "Събитието не съществува", "Duplicate" : "Дубликат", "Delete this occurrence" : "Изтриване на това събитие", "Delete this and all future" : "Изтриване на това и на всички бъдещи ", - "Details" : "Подробности", - "Attendees" : "Участници", - "Resources" : "Ресурси", + "All day" : "Цял ден", + "Managing shared access" : "Управление на споделения достъп", + "Deny access" : "Отказване на достъп", + "Invite" : "Покани", + "_User requires access to your file_::_Users require access to your file_" : ["Потребителите трябва да имат достъп до вашия файл","Потребителите трябва да имат достъп до вашия файл"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Прикачени файлове, изискващи споделен достъп","Прикачени файлове, изискващи споделен достъп"], + "Untitled event" : "Събитие без заглавие", "Close" : "Затвори", - "Show more details" : "Показване на повече подробности", "Subscribe to {name}" : "Абониране за {name}", "Export {name}" : "Експортиране /изнасям/ на {name}", "Anniversary" : "Годишнина", @@ -404,7 +419,6 @@ "on {time}" : "на {time}", "on {time} ({timezoneId})" : "на {time} ({timezoneId})", "Week {number} of {year}" : "Седмица {number} от {year}", - "Does not repeat" : "Не се повтаря", "Daily" : "Всеки ден", "Weekly" : "Всяка седмица", "Monthly" : "Месечно", @@ -416,18 +430,17 @@ "_on {weekday}_::_on {weekdays}_" : ["on {weekdays}","през {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["на дните {dayOfMonthList}","на дните {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "на {ordinalNumber} {byDaySet}", - "in {monthNames}" : "през {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "през {monthNames} на {ordinalNumber} {byDaySet}", "until {untilDate}" : "до {untilDate}", "_%n time_::_%n times_" : ["%n време","%n време"], - "Untitled event" : "Събитие без заглавие", + "second" : "секунда", + "third" : "трети", + "fourth" : "четвърти", + "fifth" : "пети", + "second to last" : "предпоследен", + "last" : "последен", "Untitled task" : "Задача без заглавие", "Please ask your administrator to enable the Tasks App." : "Моля, помолете вашия администратор да активира приложението за Задачи.", - "Prev" : " Предишен", - "Next" : "Следващ", - "Prev year" : "Предишната година", - "Next year" : "Следващата година", - "Year" : "Година", "W" : "W", "%n more" : "%n повече", "No events to display" : "Няма събития за показване", @@ -446,7 +459,6 @@ "When shared hide this event" : "При споделяне, скривай това събитие", "The visibility of this event in shared calendars." : "Видимостта на това събитие в споделени календари.", "Add a location" : "Добавяне на местоположение", - "Add a description" : "Добави описание", "Status" : "Състояние", "Confirmed" : "Потвърдено", "Canceled" : "Отказано", @@ -459,135 +471,19 @@ "Add this as a new category" : "Добави като нова категория", "Custom color" : "Персонализиране на цвят", "Special color of this event. Overrides the calendar-color." : "Специален цвят на това събитие. Сменя цвета на календара.", - "Chat room for event" : "Чат стая за събитие", + "Error while sharing file" : "Грешка при споделяне на файл", + "Error while sharing file with user" : "Грешка при споделянето на файл с потребител", + "Error creating a folder {folder}" : "Грешка при създаването на папка {folder}", + "Attachment {fileName} already exists!" : " Прикаченият файл {fileName} вече съществува!", + "An error occurred during getting file information" : "Възникна грешка при получаването на информация за файла", + "An error occurred, unable to delete the calendar." : "Възникна грешка, невъзможност да се изтрие календара.", "Imported {filename}" : "Импортирано {filename}", - "Meditation" : "Медитация", - "Relaxing" : "Релаксиращ", - "Relax" : "Почивка", - "Break" : "Прекъсване", - "Commute" : "Замяна", - "Commuting" : "Работно пътуване", - "Shuttle" : "Трансфер", - "Invoice" : "Фактура", - "Finance" : "Финанси", - "Bank" : "Банка", - "Money" : "Пари", - "Wedding" : "Сватба", - "Dog" : "Куче", - "Concert" : "Концерт", - "Festival" : "Фестивал", - "Theater" : "Театър", - "Theatre" : "Театър", - "Presentation" : "Презентация", - "Talk" : "Разговор", - "Speech" : "Реч", - "Deadline" : "Краен срок", - "Submission" : " Подаване", - "Reporting" : "Докладване", - "Camping" : "Къмпинг", - "Camp" : "Лагер", - "Election" : "Избори", - "Voting" : "Гласуване", - "Vote" : "Глас", - "Barbecue" : "Барбекю", - "Barbeque" : "Барбекю", - "Garden" : "Градина", - "Farm" : "Ферма", - "Movie" : "Филм", - "Cinema" : "Кино", - "Graduation" : "Дипломиране", - "Brainstorm" : "Мозъчна атака", - "Review" : "Преглед", - "Audit" : "Одит", - "Inspection" : "Проверка", - "Proofreading" : "Корекция", - "Baseball" : "Бейзбол", - "Meet" : "Среща", - "Planning" : "Планиране", - "Pointing" : "Насочване", - "Retrospective" : "Ретроспективен", - "Office" : "Офис", - "Contributor week" : "Седмица на сътрудника", - "Mail" : "Поща", - "Soccer" : "Футбол", - "Football" : "Футбол", - "Gaming" : "Игри", - "Drive" : "Шофиране", - "Driving" : "Шофиране", - "Bicycle" : "Велосипед", - "Cycle" : "Колело", - "Cycling" : "Колоездене", - "Biking" : "Колоездене", - "Bike" : "Велосипед", - "Podcast" : "Подкаст", - "Basketball" : "Баскетбол", - "Fishing" : "Риболов", - "Hiking" : "Туризъм", - "Hike" : "Поход", - "Art" : "Изкуство", - "Exhibition" : "Изложба", - "Museum" : "Музей", - "Pilates" : "Пилатес", - "Park" : "Парк", - "Walk" : "Разходка", - "Studying" : "Изучаване", - "Doctor" : "Доктор", - "Health" : "Здраве", - "Dentist" : "Зъболекар", - "Hospital" : "Болница", - "Interview" : "Интервю", - "Training" : "Обучение", - "Practice" : "Практика", - "Sports" : "Спортове", - "Exercise" : "Упражнение", - "Work out" : "Тренировка", - "Working out" : "Трениране", - "Gym" : "Фитнес", - "Barber" : "Бръснар", - "Haircut" : "Подстрижка", - "Hairdresser" : "Фризьор", - "Exam" : "Изпит", - "Written test" : "Писмен тест", - "Oral test" : "Устен изпит", - "Working" : "Работа", - "New Years Eve" : "Навечерието на Нова Година", - "NYE" : "ННГ", - "Fireworks" : "Фойерверки", - "Running" : "Бягане", - "Go for a run" : "Отивам да потичам", - "Marathon" : "Маратон", - "Video-conference" : "Видео конференция", - "Conference-call" : "Конферентен разговор", - "Video-call" : "Видео разговор", - "Video-chat" : "Видео чат", - "Video-meeting" : "Видео среща", - "Call" : "Позвъняване", - "Calling" : "Обаждане", - "Christmas" : "Коледа", - "Conference" : "Конференция", - "Pizza" : "Пица", - "Travelling" : "Пътуване", - "Trip" : "Пътуване", - "Journey" : "Пътешествие", - "Collaborate" : "Сътрудничество", - "Pair" : "Двойка", - "Lecture" : "Лекция", - "Seminar" : "Семинар", - "Teaching" : "Преподаване", - "Photograph" : "Фотограф", - "Party" : "Купон", - "Celebration" : "Празненство", - "Celebrate" : "Празнуване", - "Birthday" : "Рожден ден", - "Shopping" : "Пазаруване", - "Groceries" : "Бакалия", - "Skate" : "Каране на кънки", - "Skateboard" : "Скейтборд", - "Wine tasting" : "Дегустация на вино", - "Golf" : "Голф", - "Dinner" : "Вечеря", - "Lunch" : "Обяд", + "This is an event reminder." : "Това е напомняне за събитие.", "Appointment not found" : "Срещата не е намерена", - "User not found" : "Потребителят не е намерен " + "User not found" : "Потребителят не е намерен ", + "Reminder" : "Напомняне", + "+ Add reminder" : "+ Добави напомняне", + "Suggestions" : "Препоръки", + "Details" : "Подробности" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/bn_BD.js b/l10n/bn_BD.js index c038121c92cd7c29b6dbb1ebf165523634689144..eea9649c4f9c3fb5fb26e0f16417abc71e3618d0 100644 --- a/l10n/bn_BD.js +++ b/l10n/bn_BD.js @@ -10,16 +10,19 @@ OC.L10N.register( "Copy link" : "লিঙ্ক কপি করো", "Edit" : "সম্পাদনা", "Delete" : "মুছে", - "Export" : "রপ্তানি", - "Share link" : "লিংক ভাগাভাগি করেন", - "can edit" : "সম্পাদনা করতে পারবেন", "New calendar" : "নতুন দিনপঞ্জী", + "Export" : "রপ্তানি", "Name" : "নাম", "Deleted" : "মুছে ফেলা", "Restore" : "ফিরিয়ে দাও", + "Hidden" : "লুকনো", + "Share link" : "লিংক ভাগাভাগি করেন", + "can edit" : "সম্পাদনা করতে পারবেন", + "Save" : "সংরক্ষণ", "Cancel" : "বাতিল", "Automatic" : "স্বয়ংক্রিয়", "Actions" : "পদক্ষেপসমূহ", + "Update" : "পরিবর্ধন", "Location" : "অবস্থান", "Description" : "বিবরণ", "to" : "প্রতি", @@ -31,24 +34,28 @@ OC.L10N.register( "Friday" : "শুক্রবার", "Saturday" : "শনিবার", "Sunday" : "রবিবার", - "Save" : "সংরক্ষণ", - "Update" : "পরিবর্ধন", "Your email address" : "আপনার ই-মেইল ঠিকানা", + "Notification" : "নোটিফিকেশন ", "Email" : "ইমেইল", + "seconds" : "সেকেন্ড", + "minutes" : "মিনিটসমূহ", + "hours" : "ঘন্টাসমূহ", + "days" : "দিনগুলি", + "weeks" : "সপ্তাহসমূহ", + "Choose a file to add as attachment" : "সংযুক্তি দেয়ার জন্য একটি ফাইল নির্বাচন করুন", + "Done" : "শেষ হলো", "Unknown" : "অজানা", - "Send email" : "ইমেইল পাঠান ", + "Attendees" : "অংশগ্রহণকারীবৃন্দ", "Repeat" : "পূনঃসংঘটন", "never" : "কখনোই নয়", - "More" : "বেশী", + "Subscribe" : "গ্রাহক হোন", "Personal" : "ব্যক্তিগত", - "Details" : "বিসতারিত", - "Attendees" : "অংশগ্রহণকারীবৃন্দ", + "Edit event" : "ইভেন্ট সম্পাদনা করুন", "Close" : "বন্ধ", "Daily" : "দৈনিক", "Weekly" : "সাপ্তাহিক", - "Next" : "পরবর্তী", + "second" : "সেকেন্ড", "Other" : "অন্যান্য", - "Mail" : "মেইল", - "Birthday" : "জন্মদিন" + "Details" : "বিসতারিত" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/bn_BD.json b/l10n/bn_BD.json index b26a382ca9ed48014573812eddc9bb35c3fc7f99..52e8a1277ab48b34625570ceaf686a0cfb0f6f24 100644 --- a/l10n/bn_BD.json +++ b/l10n/bn_BD.json @@ -8,16 +8,19 @@ "Copy link" : "লিঙ্ক কপি করো", "Edit" : "সম্পাদনা", "Delete" : "মুছে", - "Export" : "রপ্তানি", - "Share link" : "লিংক ভাগাভাগি করেন", - "can edit" : "সম্পাদনা করতে পারবেন", "New calendar" : "নতুন দিনপঞ্জী", + "Export" : "রপ্তানি", "Name" : "নাম", "Deleted" : "মুছে ফেলা", "Restore" : "ফিরিয়ে দাও", + "Hidden" : "লুকনো", + "Share link" : "লিংক ভাগাভাগি করেন", + "can edit" : "সম্পাদনা করতে পারবেন", + "Save" : "সংরক্ষণ", "Cancel" : "বাতিল", "Automatic" : "স্বয়ংক্রিয়", "Actions" : "পদক্ষেপসমূহ", + "Update" : "পরিবর্ধন", "Location" : "অবস্থান", "Description" : "বিবরণ", "to" : "প্রতি", @@ -29,24 +32,28 @@ "Friday" : "শুক্রবার", "Saturday" : "শনিবার", "Sunday" : "রবিবার", - "Save" : "সংরক্ষণ", - "Update" : "পরিবর্ধন", "Your email address" : "আপনার ই-মেইল ঠিকানা", + "Notification" : "নোটিফিকেশন ", "Email" : "ইমেইল", + "seconds" : "সেকেন্ড", + "minutes" : "মিনিটসমূহ", + "hours" : "ঘন্টাসমূহ", + "days" : "দিনগুলি", + "weeks" : "সপ্তাহসমূহ", + "Choose a file to add as attachment" : "সংযুক্তি দেয়ার জন্য একটি ফাইল নির্বাচন করুন", + "Done" : "শেষ হলো", "Unknown" : "অজানা", - "Send email" : "ইমেইল পাঠান ", + "Attendees" : "অংশগ্রহণকারীবৃন্দ", "Repeat" : "পূনঃসংঘটন", "never" : "কখনোই নয়", - "More" : "বেশী", + "Subscribe" : "গ্রাহক হোন", "Personal" : "ব্যক্তিগত", - "Details" : "বিসতারিত", - "Attendees" : "অংশগ্রহণকারীবৃন্দ", + "Edit event" : "ইভেন্ট সম্পাদনা করুন", "Close" : "বন্ধ", "Daily" : "দৈনিক", "Weekly" : "সাপ্তাহিক", - "Next" : "পরবর্তী", + "second" : "সেকেন্ড", "Other" : "অন্যান্য", - "Mail" : "মেইল", - "Birthday" : "জন্মদিন" + "Details" : "বিসতারিত" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/br.js b/l10n/br.js index c97b5da66255c2e1c7c383643a424e464fad48d6..c5775dca39a3de9dafc0af97cd797264f3ef07ab 100644 --- a/l10n/br.js +++ b/l10n/br.js @@ -10,8 +10,9 @@ OC.L10N.register( "Open »%s«" : "Digeriñ »%s«", "Cheers!" : "A galon !", "Upcoming events" : "Darvoudoù da zont", - "Confirm" : "Kadarnañ", "Calendar" : "Deiziataer", + "Confirm" : "Kadarnañ", + "Date:" : "Deiziad:", "A Calendar app for Nextcloud" : "Un arload Deiziataerioù evit Nextcloud", "Previous day" : "Deizioù kent", "Previous week" : "Sizhun kent", @@ -28,101 +29,97 @@ OC.L10N.register( "Copy link" : "Kopiañ al liamm", "Edit" : "Cheñch", "Delete" : "Dilemel", - "Untitled calendar" : "Deiziataer hep titl", - "Edit name" : "Embann an anv", - "Saving name …" : "Oc'h enrollañ an anv  ...", - "Edit color" : "Embann al liv", - "Saving color …" : "Enrollañ al liv   ...", - "Copy private link" : "Eilañ al liamm prevez", - "Unshare from me" : "Paouez da lodañ ganin", + "Create new" : "Krouiñ unan nevez", "An error occurred, unable to change visibility of the calendar." : "C'hoarvezet ez eus ur fazi, ne c'halletr ket kemmañ gweluster an deiziataer.", - "An error occurred, unable to delete the calendar." : "C'hoarvezet ez eus ur fazi, ne c'haller ket dilemel an deiziataer.", - "Calendar link copied to clipboard." : "Eilet eo bet liamm an deiziataer er golver", - "Calendar link could not be copied to clipboard." : "N'eus ket bet gallet eilañ liamm an deiziataer er golver", - "An error occurred, unable to rename the calendar." : "C'hoarvezet ez eus ur fazi, ne c'haller ket cheñch anv an deiziataer.", - "An error occurred, unable to change the calendar's color." : "C'hoarvezet ez eus ur fazi, ne c'haller ket cheñch liv an deiziataer.", + "Untitled calendar" : "Deiziataer hep titl", + "Shared with you by" : "Rannet deoc'h gant", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Dirannañ an deizataer a ben {countdown} eilenn","Dirannañ an deizataer a ben {countdown} eilenn","Dirannañ an deizataer a ben {countdown} eilenn","Dirannañ an deizataer a ben {countdown} eilenn","Paouezet e vo da lodañ an deiziataer a-benn {countdown} eilenn"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Dirannañ an deizataer a ben {countdown} eilenn","Dirannañ an deizataer a ben {countdown} eilenn","Dirannañ an deizataer a ben {countdown} eilenn","Dirannañ an deizataer a ben {countdown} eilenn","Dilamet e vo an deiziataer a-benn {countdown} eilenn"], + "An error occurred, unable to create the calendar." : "Ur fazi a zo bet, dibosupl eo krouiñ an deizataer", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Lakait ul liamm mat (o kregiñ gant http://, https://, webcal://, or webcals://)", + "Calendars" : "Deiziataerioù", + "New calendar" : "Deizataer nevez", + "Creating calendar …" : "Krouiñ un deizataer ...", + "New calendar with task list" : "Deizataer nevez gant ur roll ober", + "New subscription from link (read-only)" : "Koumanant nevez dre liamm (lenn nemetken)", + "Creating subscription …" : "Krouiñ ur goumanant ...", + "Calendar link copied to clipboard." : "Eilet eo bet liamm an deiziataer er golver", + "Calendar link could not be copied to clipboard." : "N'eus ket bet gallet eilañ liamm an deiziataer er golver", + "Copy subscription link" : "Eilañ al liamm koumanantiñ", + "Copying link …" : "Oc'h eilañ al liamm  ...", + "Copied link" : "Liamm eilet", + "Could not copy link" : "N'eus ket bet gallet eilañ al liamm", + "Empty trash bin" : "Pod-lastez goullo", + "Name" : "Anv", + "Deleted" : "Dilamet", + "Restore" : "Adkrouiñ", + "Delete permanently" : "Lamet da viken", + "Could not update calendar order." : "Dibosupl eo adnevesaat urzh an deizataerioù", + "Hidden" : "Koachet", + "An error occurred, unable to publish calendar." : "C'hoarvezet ez eus ur fazi, ne c'haller ket embann an deiziataer.", + "An error occurred, unable to send email." : "C'hoarvezet ez eus ur fazi, ne c'haller ket kas ar postel", + "Embed code copied to clipboard." : "Eilet eo bet ar c'hod enframmañ er golver", + "Embed code could not be copied to clipboard." : "N'eus ket bet gallet eilañ ar c'hod enframmañ er golver.", + "Unpublishing calendar failed" : "Diembannaadur an deizataer c'hwited", "Share link" : "Lodañ al liamm", - "Publish calendar" : "Embann an deiziataer", - "Publishing calendar" : "Oc'h embann an deiziataer", "Copy public link" : "Eilañ al liamm foran", "Send link to calendar via email" : "Kas al liamm d'an deiziataer dre bostel", "Enter one address" : "Lakait ur chomlec'h", "Sending email …" : "O kas ar postel  ... ", - "Copy subscription link" : "Eilañ al liamm koumanantiñ", - "Copying link …" : "Oc'h eilañ al liamm  ...", - "Copied link" : "Liamm eilet", - "Could not copy link" : "N'eus ket bet gallet eilañ al liamm", "Copy embedding code" : "Eilañ ar c'hod enframmañ", "Copying code …" : "Oc'h eilañ ar c'hod ...", "Copied code" : "Kod eilet", "Could not copy code" : "N'eus ket bet gallet eilañ ar c'hod", "Delete share link" : "Dilamet eo bet al liamm lodañ", "Deleting share link …" : "O tilemel al liamm lodañ...", - "An error occurred, unable to publish calendar." : "C'hoarvezet ez eus ur fazi, ne c'haller ket embann an deiziataer.", - "An error occurred, unable to send email." : "C'hoarvezet ez eus ur fazi, ne c'haller ket kas ar postel", - "Embed code copied to clipboard." : "Eilet eo bet ar c'hod enframmañ er golver", - "Embed code could not be copied to clipboard." : "N'eus ket bet gallet eilañ ar c'hod enframmañ er golver.", - "Unpublishing calendar failed" : "Diembannaadur an deizataer c'hwited", - "Share with users or groups" : "Rannañ gant implijourienn pe strolladoù", - "No users or groups" : "Implijourienn pe strodadoù ebet", + "An error occurred, unable to change the permission of the share." : "Ur azi a zo bet, dibosupl eo cheñch aotreoù ar rannadenn.", "can edit" : "posuple eo embann", "Unshare with {displayName}" : "Dirannañ gant {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Ur fazi a zo bet, dibosupl eo cheñch an deizataer dirannet.", - "An error occurred, unable to change the permission of the share." : "Ur azi a zo bet, dibosupl eo cheñch aotreoù ar rannadenn.", - "+ New calendar" : "+ Deizataer nevez", - "New calendar" : "Deizataer nevez", - "Creating calendar …" : "Krouiñ un deizataer ...", - "New calendar with task list" : "Deizataer nevez gant ur roll ober", - "New subscription from link (read-only)" : "Koumanant nevez dre liamm (lenn nemetken)", - "Creating subscription …" : "Krouiñ ur goumanant ...", - "An error occurred, unable to create the calendar." : "Ur fazi a zo bet, dibosupl eo krouiñ an deizataer", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Lakait ul liamm mat (o kregiñ gant http://, https://, webcal://, or webcals://)", - "Name" : "Anv", - "Deleted" : "Lamet", - "Restore" : "Adkrouiñ", - "Delete permanently" : "Lamet da viken", - "Could not update calendar order." : "Dibosupl eo adnevesaat urzh an deizataerioù", + "Share with users or groups" : "Rannañ gant implijourienn pe strolladoù", + "No users or groups" : "Implijourienn pe strodadoù ebet", + "Unshare from me" : "Paouez da lodañ ganin", + "Save" : "Enrollañ", "Import calendars" : "Emporzhiañ deizataerioù", "Please select a calendar to import into …" : "Choazit un deizataer de emporzhiañ e-barzh ...", "Filename" : "Anv restr", "Calendar to import into" : "Deizataer de emporzhiañ e-barzh", - "Cancel" : "Arrest", + "Cancel" : "Nullañ", "_Import calendar_::_Import calendars_" : ["Emporzhiañ deizataer","Emporzhiañ deizataer","Emporzhiañ deizataer","Emporzhiañ deizataer","Emporzhiañ deizataer"], "{filename} could not be parsed" : "{filename} na c'hell ket bezhañ dielfennet", "No valid files found, aborting import" : "Restr mat kavet ebet, arrestet e vez an emporzhiañ", "Import partially failed. Imported {accepted} out of {total}." : "Emporzhiañ damc'hwitet. Emporzhiet {accepted} diwar {total}.", + "Automatic" : "Otomatek", "List view" : "Gwelidik listenn", "Actions" : "Oberoù", + "Update" : "Hizivaat", "Location" : "Lec'hiadur", "Description" : "Deskrivadur", "Add" : "Ouzhpennañ", "Monday" : "Lun", - "Save" : "Enrollañ", - "Update" : "Hizivaat", + "Wednesday" : "Merc'her", + "Friday" : "Gwener", + "Sunday" : "Sul", "Your email address" : "O chom-lec'h postel", - "Notification" : "Kemenadenn", + "Select conversation" : "Choaz un diviz", + "Notification" : "Kemennadenn", "Email" : "Postel", + "hours" : "eur", + "days" : "devezh", + "Delete file" : "Dilemel ar restr", "Available" : "Vak", "Not available" : "Divak", + "Done" : "Graet", "Free" : "Digoust", "Busy" : "O labourat", "Unknown" : "Dianv", "Accept" : "Asantiñ", "Tentative" : "Taol-esae", - "Send email" : "Kas postel", + "Remove group" : "Lemel strollad", "never" : "james", "after" : "goude", "first" : "kentañ", - "third" : "trede", - "More" : "Muioc'h", "Global" : "Hollek", "Personal" : "Personel", - "[Today]" : "[Hiziv]", - "[Tomorrow]" : "[Warc'hoazh]", - "[Yesterday]" : "[Dec'h]", - "Details" : "Munudoù", "Close" : "Serriñ", "Daily" : "Pemdeziek", "Weekly" : "Sizhuniek", @@ -133,7 +130,8 @@ OC.L10N.register( "_Every %n month_::_Every %n months_" : ["Bep miz","Bep %n viz","Bep %n miz","Bep %n miz","Bep %n miz"], "_Every %n year_::_Every %n years_" : ["Bep bloaz","Bep %n vloaz","Bep %n bloaz","Bep %n bloaz","Bep %n bloaz"], "_on {weekday}_::_on {weekdays}_" : ["d'al {weekday}","d'ar {weekday}","d'ar {weekday}","d'ar {weekday}","d'ar {weekday}"], - "Next" : "Da heul", + "third" : "trede", + "W" : "S", "%n more" : "%n ouzhpenn", "No events to display" : "Darvoud ebet da ziskouez", "No events" : "Darvoud ebet", @@ -144,7 +142,6 @@ OC.L10N.register( "When shared hide this event" : "Kuzhat an darvoud-mañ pa vez lodet", "The visibility of this event in shared calendars." : "Gweluster an darvoud-mañ en deiziataerioù lodet.", "Add a location" : "Ouzhpennañ ul lec'hiadur", - "Add a description" : "Ouzhpennañ un deskrivadur", "Status" : "Statud", "Confirmed" : "Kadarnaet", "Canceled" : "Nullet", @@ -157,94 +154,9 @@ OC.L10N.register( "Add this as a new category" : "Ouzhpennañ an dra-se evel ur rummad nevez", "Custom color" : "Liv personelaet", "Special color of this event. Overrides the calendar-color." : "Liv dibar evit an darvoud-mañ. Diverkañ liv an deiziataer", - "Chat room for event" : "Sal-flapiñ evit un darvoud", + "Error while sharing file" : "Ur fazi a zo bet en ur rannañ ar restr", + "An error occurred, unable to delete the calendar." : "C'hoarvezet ez eus ur fazi, ne c'haller ket dilemel an deiziataer.", "Imported {filename}" : "Enporzhiet {filename}", - "Meditation" : "Darvestiñ", - "Relaxing" : "Distanañ", - "Relax" : "Distanañ", - "Presentation" : "Kinnigadenn", - "Talk" : "Komz", - "Camping" : "Kampiñ", - "Camp" : "Kamp", - "Movie" : "Film", - "Cinema" : "Sinema", - "Graduation" : "Diplomadur", - "Brainstorm" : "Korvempenn", - "Review" : "Adwelet", - "Baseball" : "Baseball", - "Meet" : "Kejañ", - "Planning" : "Steuñvekaat", - "Pointing" : "Heñchañ", - "Retrospective" : "Kilsell", - "Office" : "Burev", - "Contributor week" : "Sizhun ar berzhidi", - "Mail" : "Postel", - "Soccer" : "Mell-droad", - "Football" : "Mell-droad", - "Gaming" : "C'hoari", - "Drive" : "Bleinañ", - "Bicycle" : "Marc'h-houarn", - "Cycle" : "Belo", - "Biking" : "Marc'h-houarn", - "Podcast" : "Podskignañ", - "Basketball" : "Basket-ball", - "Fishing" : "Pesketa", - "Hiking" : "Bale", - "Hike" : "Baleadenn", - "Art" : "Arzoù", - "Exhibition" : "Diskouezadeg", - "Museum" : "Mirdi", - "Pilates" : "Pilat", - "Park" : "Pourmen er-maez", - "Studying" : "Studiañ", - "Doctor" : "Mezeg", - "Health" : "Yec'hed", - "Dentist" : "Dentour", - "Interview" : "Atersadenn", - "Training" : "Gourdonañ", - "Practice" : "Pleustriñ", - "Sports" : "Sport", - "Exercise" : "Gourdonañ", - "Work out" : "Labour a-zevri", - "Working out" : "Labourat a-zevri", - "Gym" : "Embregerezh-korf", - "Barber" : "Barver", - "Haircut" : "Troc'h-blev", - "Exam" : "Arnodenn", - "Working" : "O labourat", - "New Years Eve" : "Kalanna", - "NYE" : "Kalanna", - "Fireworks" : "Tan-arvest", - "Running" : "O redek", - "Go for a run" : "Mont da redek", - "Marathon" : "Maraton", - "Video-conference" : "Kendiviz dre video", - "Conference-call" : "Pellgomzadenn gendiviz", - "Video-call" : "Pellgomzadenn dre video", - "Video-chat" : "Flap dre video", - "Video-meeting" : "Emvod dre video", - "Call" : "Pellgomz", - "Calling" : "O pellgomz", - "Christmas" : "Nedeleg", - "Conference" : "Kendiviz", - "Pizza" : "Pizza", - "Travelling" : "O veajiñ", - "Journey" : "Beaj", - "Collaborate" : "Kenlabourat", - "Pair" : "Koublad", - "Lecture" : "Lenn", - "Seminar" : "Seminar", - "Photograph" : "Luc'hskeudenn", - "Party" : "Fest", - "Celebration" : "Lid", - "Celebrate" : "Lid", - "Birthday" : "Deiz-ha-bloaz", - "Shopping" : "Staliaoua", - "Skate" : "Plankenn-ruilh", - "Skateboard" : "Plankenn-ruilh", - "Wine tasting" : "Tañva gwin", - "Golf" : "Golf", - "Dinner" : "Koan", - "Lunch" : "Pred kreisteiz" + "Details" : "Munudoù" }, "nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);"); diff --git a/l10n/br.json b/l10n/br.json index 7c53da2080c712506d9501123eb1f1f55cb46abd..ef83e6ab1c7cc3afbc919376bbc7403ba4223255 100644 --- a/l10n/br.json +++ b/l10n/br.json @@ -8,8 +8,9 @@ "Open »%s«" : "Digeriñ »%s«", "Cheers!" : "A galon !", "Upcoming events" : "Darvoudoù da zont", - "Confirm" : "Kadarnañ", "Calendar" : "Deiziataer", + "Confirm" : "Kadarnañ", + "Date:" : "Deiziad:", "A Calendar app for Nextcloud" : "Un arload Deiziataerioù evit Nextcloud", "Previous day" : "Deizioù kent", "Previous week" : "Sizhun kent", @@ -26,101 +27,97 @@ "Copy link" : "Kopiañ al liamm", "Edit" : "Cheñch", "Delete" : "Dilemel", - "Untitled calendar" : "Deiziataer hep titl", - "Edit name" : "Embann an anv", - "Saving name …" : "Oc'h enrollañ an anv  ...", - "Edit color" : "Embann al liv", - "Saving color …" : "Enrollañ al liv   ...", - "Copy private link" : "Eilañ al liamm prevez", - "Unshare from me" : "Paouez da lodañ ganin", + "Create new" : "Krouiñ unan nevez", "An error occurred, unable to change visibility of the calendar." : "C'hoarvezet ez eus ur fazi, ne c'halletr ket kemmañ gweluster an deiziataer.", - "An error occurred, unable to delete the calendar." : "C'hoarvezet ez eus ur fazi, ne c'haller ket dilemel an deiziataer.", - "Calendar link copied to clipboard." : "Eilet eo bet liamm an deiziataer er golver", - "Calendar link could not be copied to clipboard." : "N'eus ket bet gallet eilañ liamm an deiziataer er golver", - "An error occurred, unable to rename the calendar." : "C'hoarvezet ez eus ur fazi, ne c'haller ket cheñch anv an deiziataer.", - "An error occurred, unable to change the calendar's color." : "C'hoarvezet ez eus ur fazi, ne c'haller ket cheñch liv an deiziataer.", + "Untitled calendar" : "Deiziataer hep titl", + "Shared with you by" : "Rannet deoc'h gant", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Dirannañ an deizataer a ben {countdown} eilenn","Dirannañ an deizataer a ben {countdown} eilenn","Dirannañ an deizataer a ben {countdown} eilenn","Dirannañ an deizataer a ben {countdown} eilenn","Paouezet e vo da lodañ an deiziataer a-benn {countdown} eilenn"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Dirannañ an deizataer a ben {countdown} eilenn","Dirannañ an deizataer a ben {countdown} eilenn","Dirannañ an deizataer a ben {countdown} eilenn","Dirannañ an deizataer a ben {countdown} eilenn","Dilamet e vo an deiziataer a-benn {countdown} eilenn"], + "An error occurred, unable to create the calendar." : "Ur fazi a zo bet, dibosupl eo krouiñ an deizataer", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Lakait ul liamm mat (o kregiñ gant http://, https://, webcal://, or webcals://)", + "Calendars" : "Deiziataerioù", + "New calendar" : "Deizataer nevez", + "Creating calendar …" : "Krouiñ un deizataer ...", + "New calendar with task list" : "Deizataer nevez gant ur roll ober", + "New subscription from link (read-only)" : "Koumanant nevez dre liamm (lenn nemetken)", + "Creating subscription …" : "Krouiñ ur goumanant ...", + "Calendar link copied to clipboard." : "Eilet eo bet liamm an deiziataer er golver", + "Calendar link could not be copied to clipboard." : "N'eus ket bet gallet eilañ liamm an deiziataer er golver", + "Copy subscription link" : "Eilañ al liamm koumanantiñ", + "Copying link …" : "Oc'h eilañ al liamm  ...", + "Copied link" : "Liamm eilet", + "Could not copy link" : "N'eus ket bet gallet eilañ al liamm", + "Empty trash bin" : "Pod-lastez goullo", + "Name" : "Anv", + "Deleted" : "Dilamet", + "Restore" : "Adkrouiñ", + "Delete permanently" : "Lamet da viken", + "Could not update calendar order." : "Dibosupl eo adnevesaat urzh an deizataerioù", + "Hidden" : "Koachet", + "An error occurred, unable to publish calendar." : "C'hoarvezet ez eus ur fazi, ne c'haller ket embann an deiziataer.", + "An error occurred, unable to send email." : "C'hoarvezet ez eus ur fazi, ne c'haller ket kas ar postel", + "Embed code copied to clipboard." : "Eilet eo bet ar c'hod enframmañ er golver", + "Embed code could not be copied to clipboard." : "N'eus ket bet gallet eilañ ar c'hod enframmañ er golver.", + "Unpublishing calendar failed" : "Diembannaadur an deizataer c'hwited", "Share link" : "Lodañ al liamm", - "Publish calendar" : "Embann an deiziataer", - "Publishing calendar" : "Oc'h embann an deiziataer", "Copy public link" : "Eilañ al liamm foran", "Send link to calendar via email" : "Kas al liamm d'an deiziataer dre bostel", "Enter one address" : "Lakait ur chomlec'h", "Sending email …" : "O kas ar postel  ... ", - "Copy subscription link" : "Eilañ al liamm koumanantiñ", - "Copying link …" : "Oc'h eilañ al liamm  ...", - "Copied link" : "Liamm eilet", - "Could not copy link" : "N'eus ket bet gallet eilañ al liamm", "Copy embedding code" : "Eilañ ar c'hod enframmañ", "Copying code …" : "Oc'h eilañ ar c'hod ...", "Copied code" : "Kod eilet", "Could not copy code" : "N'eus ket bet gallet eilañ ar c'hod", "Delete share link" : "Dilamet eo bet al liamm lodañ", "Deleting share link …" : "O tilemel al liamm lodañ...", - "An error occurred, unable to publish calendar." : "C'hoarvezet ez eus ur fazi, ne c'haller ket embann an deiziataer.", - "An error occurred, unable to send email." : "C'hoarvezet ez eus ur fazi, ne c'haller ket kas ar postel", - "Embed code copied to clipboard." : "Eilet eo bet ar c'hod enframmañ er golver", - "Embed code could not be copied to clipboard." : "N'eus ket bet gallet eilañ ar c'hod enframmañ er golver.", - "Unpublishing calendar failed" : "Diembannaadur an deizataer c'hwited", - "Share with users or groups" : "Rannañ gant implijourienn pe strolladoù", - "No users or groups" : "Implijourienn pe strodadoù ebet", + "An error occurred, unable to change the permission of the share." : "Ur azi a zo bet, dibosupl eo cheñch aotreoù ar rannadenn.", "can edit" : "posuple eo embann", "Unshare with {displayName}" : "Dirannañ gant {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Ur fazi a zo bet, dibosupl eo cheñch an deizataer dirannet.", - "An error occurred, unable to change the permission of the share." : "Ur azi a zo bet, dibosupl eo cheñch aotreoù ar rannadenn.", - "+ New calendar" : "+ Deizataer nevez", - "New calendar" : "Deizataer nevez", - "Creating calendar …" : "Krouiñ un deizataer ...", - "New calendar with task list" : "Deizataer nevez gant ur roll ober", - "New subscription from link (read-only)" : "Koumanant nevez dre liamm (lenn nemetken)", - "Creating subscription …" : "Krouiñ ur goumanant ...", - "An error occurred, unable to create the calendar." : "Ur fazi a zo bet, dibosupl eo krouiñ an deizataer", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Lakait ul liamm mat (o kregiñ gant http://, https://, webcal://, or webcals://)", - "Name" : "Anv", - "Deleted" : "Lamet", - "Restore" : "Adkrouiñ", - "Delete permanently" : "Lamet da viken", - "Could not update calendar order." : "Dibosupl eo adnevesaat urzh an deizataerioù", + "Share with users or groups" : "Rannañ gant implijourienn pe strolladoù", + "No users or groups" : "Implijourienn pe strodadoù ebet", + "Unshare from me" : "Paouez da lodañ ganin", + "Save" : "Enrollañ", "Import calendars" : "Emporzhiañ deizataerioù", "Please select a calendar to import into …" : "Choazit un deizataer de emporzhiañ e-barzh ...", "Filename" : "Anv restr", "Calendar to import into" : "Deizataer de emporzhiañ e-barzh", - "Cancel" : "Arrest", + "Cancel" : "Nullañ", "_Import calendar_::_Import calendars_" : ["Emporzhiañ deizataer","Emporzhiañ deizataer","Emporzhiañ deizataer","Emporzhiañ deizataer","Emporzhiañ deizataer"], "{filename} could not be parsed" : "{filename} na c'hell ket bezhañ dielfennet", "No valid files found, aborting import" : "Restr mat kavet ebet, arrestet e vez an emporzhiañ", "Import partially failed. Imported {accepted} out of {total}." : "Emporzhiañ damc'hwitet. Emporzhiet {accepted} diwar {total}.", + "Automatic" : "Otomatek", "List view" : "Gwelidik listenn", "Actions" : "Oberoù", + "Update" : "Hizivaat", "Location" : "Lec'hiadur", "Description" : "Deskrivadur", "Add" : "Ouzhpennañ", "Monday" : "Lun", - "Save" : "Enrollañ", - "Update" : "Hizivaat", + "Wednesday" : "Merc'her", + "Friday" : "Gwener", + "Sunday" : "Sul", "Your email address" : "O chom-lec'h postel", - "Notification" : "Kemenadenn", + "Select conversation" : "Choaz un diviz", + "Notification" : "Kemennadenn", "Email" : "Postel", + "hours" : "eur", + "days" : "devezh", + "Delete file" : "Dilemel ar restr", "Available" : "Vak", "Not available" : "Divak", + "Done" : "Graet", "Free" : "Digoust", "Busy" : "O labourat", "Unknown" : "Dianv", "Accept" : "Asantiñ", "Tentative" : "Taol-esae", - "Send email" : "Kas postel", + "Remove group" : "Lemel strollad", "never" : "james", "after" : "goude", "first" : "kentañ", - "third" : "trede", - "More" : "Muioc'h", "Global" : "Hollek", "Personal" : "Personel", - "[Today]" : "[Hiziv]", - "[Tomorrow]" : "[Warc'hoazh]", - "[Yesterday]" : "[Dec'h]", - "Details" : "Munudoù", "Close" : "Serriñ", "Daily" : "Pemdeziek", "Weekly" : "Sizhuniek", @@ -131,7 +128,8 @@ "_Every %n month_::_Every %n months_" : ["Bep miz","Bep %n viz","Bep %n miz","Bep %n miz","Bep %n miz"], "_Every %n year_::_Every %n years_" : ["Bep bloaz","Bep %n vloaz","Bep %n bloaz","Bep %n bloaz","Bep %n bloaz"], "_on {weekday}_::_on {weekdays}_" : ["d'al {weekday}","d'ar {weekday}","d'ar {weekday}","d'ar {weekday}","d'ar {weekday}"], - "Next" : "Da heul", + "third" : "trede", + "W" : "S", "%n more" : "%n ouzhpenn", "No events to display" : "Darvoud ebet da ziskouez", "No events" : "Darvoud ebet", @@ -142,7 +140,6 @@ "When shared hide this event" : "Kuzhat an darvoud-mañ pa vez lodet", "The visibility of this event in shared calendars." : "Gweluster an darvoud-mañ en deiziataerioù lodet.", "Add a location" : "Ouzhpennañ ul lec'hiadur", - "Add a description" : "Ouzhpennañ un deskrivadur", "Status" : "Statud", "Confirmed" : "Kadarnaet", "Canceled" : "Nullet", @@ -155,94 +152,9 @@ "Add this as a new category" : "Ouzhpennañ an dra-se evel ur rummad nevez", "Custom color" : "Liv personelaet", "Special color of this event. Overrides the calendar-color." : "Liv dibar evit an darvoud-mañ. Diverkañ liv an deiziataer", - "Chat room for event" : "Sal-flapiñ evit un darvoud", + "Error while sharing file" : "Ur fazi a zo bet en ur rannañ ar restr", + "An error occurred, unable to delete the calendar." : "C'hoarvezet ez eus ur fazi, ne c'haller ket dilemel an deiziataer.", "Imported {filename}" : "Enporzhiet {filename}", - "Meditation" : "Darvestiñ", - "Relaxing" : "Distanañ", - "Relax" : "Distanañ", - "Presentation" : "Kinnigadenn", - "Talk" : "Komz", - "Camping" : "Kampiñ", - "Camp" : "Kamp", - "Movie" : "Film", - "Cinema" : "Sinema", - "Graduation" : "Diplomadur", - "Brainstorm" : "Korvempenn", - "Review" : "Adwelet", - "Baseball" : "Baseball", - "Meet" : "Kejañ", - "Planning" : "Steuñvekaat", - "Pointing" : "Heñchañ", - "Retrospective" : "Kilsell", - "Office" : "Burev", - "Contributor week" : "Sizhun ar berzhidi", - "Mail" : "Postel", - "Soccer" : "Mell-droad", - "Football" : "Mell-droad", - "Gaming" : "C'hoari", - "Drive" : "Bleinañ", - "Bicycle" : "Marc'h-houarn", - "Cycle" : "Belo", - "Biking" : "Marc'h-houarn", - "Podcast" : "Podskignañ", - "Basketball" : "Basket-ball", - "Fishing" : "Pesketa", - "Hiking" : "Bale", - "Hike" : "Baleadenn", - "Art" : "Arzoù", - "Exhibition" : "Diskouezadeg", - "Museum" : "Mirdi", - "Pilates" : "Pilat", - "Park" : "Pourmen er-maez", - "Studying" : "Studiañ", - "Doctor" : "Mezeg", - "Health" : "Yec'hed", - "Dentist" : "Dentour", - "Interview" : "Atersadenn", - "Training" : "Gourdonañ", - "Practice" : "Pleustriñ", - "Sports" : "Sport", - "Exercise" : "Gourdonañ", - "Work out" : "Labour a-zevri", - "Working out" : "Labourat a-zevri", - "Gym" : "Embregerezh-korf", - "Barber" : "Barver", - "Haircut" : "Troc'h-blev", - "Exam" : "Arnodenn", - "Working" : "O labourat", - "New Years Eve" : "Kalanna", - "NYE" : "Kalanna", - "Fireworks" : "Tan-arvest", - "Running" : "O redek", - "Go for a run" : "Mont da redek", - "Marathon" : "Maraton", - "Video-conference" : "Kendiviz dre video", - "Conference-call" : "Pellgomzadenn gendiviz", - "Video-call" : "Pellgomzadenn dre video", - "Video-chat" : "Flap dre video", - "Video-meeting" : "Emvod dre video", - "Call" : "Pellgomz", - "Calling" : "O pellgomz", - "Christmas" : "Nedeleg", - "Conference" : "Kendiviz", - "Pizza" : "Pizza", - "Travelling" : "O veajiñ", - "Journey" : "Beaj", - "Collaborate" : "Kenlabourat", - "Pair" : "Koublad", - "Lecture" : "Lenn", - "Seminar" : "Seminar", - "Photograph" : "Luc'hskeudenn", - "Party" : "Fest", - "Celebration" : "Lid", - "Celebrate" : "Lid", - "Birthday" : "Deiz-ha-bloaz", - "Shopping" : "Staliaoua", - "Skate" : "Plankenn-ruilh", - "Skateboard" : "Plankenn-ruilh", - "Wine tasting" : "Tañva gwin", - "Golf" : "Golf", - "Dinner" : "Koan", - "Lunch" : "Pred kreisteiz" + "Details" : "Munudoù" },"pluralForm" :"nplurals=5; plural=((n%10 == 1) && (n%100 != 11) && (n%100 !=71) && (n%100 !=91) ? 0 :(n%10 == 2) && (n%100 != 12) && (n%100 !=72) && (n%100 !=92) ? 1 :(n%10 ==3 || n%10==4 || n%10==9) && (n%100 < 10 || n% 100 > 19) && (n%100 < 70 || n%100 > 79) && (n%100 < 90 || n%100 > 99) ? 2 :(n != 0 && n % 1000000 == 0) ? 3 : 4);" } \ No newline at end of file diff --git a/l10n/bs.js b/l10n/bs.js index 5cb05503b3862c5320e28e59be6dc642932ac8f4..4b357d7dfa2b9416ca274e3ce644eb8b98041d00 100644 --- a/l10n/bs.js +++ b/l10n/bs.js @@ -9,14 +9,16 @@ OC.L10N.register( "Month" : "Mjesec", "Edit" : "Izmjeni", "Delete" : "Obriši", - "Export" : "Izvezi", - "Share link" : "Podijelite vezu", - "can edit" : "mogu mijenjati", "New calendar" : "Novi kalendar", + "Export" : "Izvezi", "Name" : "Ime", "Restore" : "Obnovi", + "Share link" : "Podijelite vezu", + "can edit" : "mogu mijenjati", + "Save" : "Spremi", "Cancel" : "Odustani", "Actions" : "Radnje", + "Update" : "Ažuriraj", "Location" : "Lokacija", "Description" : "Opis", "to" : "do", @@ -28,27 +30,27 @@ OC.L10N.register( "Friday" : "Petak", "Saturday" : "Subota", "Sunday" : "Nedjelja", - "Save" : "Spremi", - "Update" : "Ažuriraj", "Your email address" : "Vaša adresa e-pošte", "Email" : "E-pošta", + "seconds" : "sekundi", + "minutes" : "minuta", + "hours" : "sati", + "days" : "dana", + "weeks" : "sedmica", "Busy" : "Zauzet", "Unknown" : "Nepoznato", "Accept" : "Prihvati", "Decline" : "Odbij", - "Send email" : "Pošalji e-poštu", + "Attendees" : "Sudionici", "Repeat" : "Ponovi", "never" : "nikad", - "More" : "Više", "Personal" : "Osobno", - "Attendees" : "Sudionici", + "Edit event" : "Izmjeni događaj", "Close" : "Zatvori", "Daily" : "Dnevno", "Weekly" : "Sedmično", - "Next" : "Sljedeće", + "second" : "drugi", "Other" : "Ostali", - "Status" : "Status", - "Mail" : "E-Pošta", - "Birthday" : "Rođendan" + "Status" : "Status" }, "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"); diff --git a/l10n/bs.json b/l10n/bs.json index 89d603847c13a7e5070bd330ee3fa8a278b51213..ba8b7aec2f98a258b7e76f0df3f6b9a6667f4964 100644 --- a/l10n/bs.json +++ b/l10n/bs.json @@ -7,14 +7,16 @@ "Month" : "Mjesec", "Edit" : "Izmjeni", "Delete" : "Obriši", - "Export" : "Izvezi", - "Share link" : "Podijelite vezu", - "can edit" : "mogu mijenjati", "New calendar" : "Novi kalendar", + "Export" : "Izvezi", "Name" : "Ime", "Restore" : "Obnovi", + "Share link" : "Podijelite vezu", + "can edit" : "mogu mijenjati", + "Save" : "Spremi", "Cancel" : "Odustani", "Actions" : "Radnje", + "Update" : "Ažuriraj", "Location" : "Lokacija", "Description" : "Opis", "to" : "do", @@ -26,27 +28,27 @@ "Friday" : "Petak", "Saturday" : "Subota", "Sunday" : "Nedjelja", - "Save" : "Spremi", - "Update" : "Ažuriraj", "Your email address" : "Vaša adresa e-pošte", "Email" : "E-pošta", + "seconds" : "sekundi", + "minutes" : "minuta", + "hours" : "sati", + "days" : "dana", + "weeks" : "sedmica", "Busy" : "Zauzet", "Unknown" : "Nepoznato", "Accept" : "Prihvati", "Decline" : "Odbij", - "Send email" : "Pošalji e-poštu", + "Attendees" : "Sudionici", "Repeat" : "Ponovi", "never" : "nikad", - "More" : "Više", "Personal" : "Osobno", - "Attendees" : "Sudionici", + "Edit event" : "Izmjeni događaj", "Close" : "Zatvori", "Daily" : "Dnevno", "Weekly" : "Sedmično", - "Next" : "Sljedeće", + "second" : "drugi", "Other" : "Ostali", - "Status" : "Status", - "Mail" : "E-Pošta", - "Birthday" : "Rođendan" + "Status" : "Status" },"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" } \ No newline at end of file diff --git a/l10n/ca.js b/l10n/ca.js index 68b0fa8fd9fe0ca105e4e7ec57a06bcec22b22ea..101a1360450acc9ddc6181ae5694048e2c8abc13 100644 --- a/l10n/ca.js +++ b/l10n/ca.js @@ -1,139 +1,171 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "L'adreça de correu electrònic proporcionada és massa llarga", "User-Session unexpectedly expired" : "La sessió ha caducat inesperadament", "Provided email-address is not valid" : "L'adreça electrònica proporcionada no és vàlida", "%s has published the calendar »%s«" : "%s ha publicat el calendari «%s»", - "Unexpected error sending email. Please contact your administrator." : "Error inesperat en enviar el correu. Contacteu el vostre administrador.", + "Unexpected error sending email. Please contact your administrator." : "S'ha produït un error inesperat en enviar el correu electrònic. Contacteu amb l'administrador.", "Successfully sent email to %1$s" : "Correu enviat correctament a %1$s", "Hello," : "Hola,", "We wanted to inform you that %s has published the calendar »%s«." : "Us volem informar que %s ha publicat el calendari «%s».", - "Open »%s«" : "Obre «%s»", + "Open »%s«" : "Obre »%s«", "Cheers!" : "A reveure!", "Upcoming events" : "Pròxims esdeveniments", + "No more events today" : "Avui no hi ha més esdeveniments", + "No upcoming events" : "No hi ha propers esdeveniments", + "More events" : "Més esdeveniments", + "%1$s with %2$s" : "%1$s amb %2$s", + "Calendar" : "Calendari", + "New booking {booking}" : "Nova reserva {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) va reservar la cita \"{config_display_name}\" el {date_time}.", "Appointments" : "Cites", - "Schedule appointment \"%s\"" : "Planifica cita \"%s\"", - "Schedule an appointment" : "Planifica una cita", + "Schedule appointment \"%s\"" : "Agenda la cita \"%s\"", + "Schedule an appointment" : "Agenda una cita", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Preparar-se per a %s", "Follow up for %s" : "Seguiment de %s", - "Your appointment \"%s\" needs confirmation" : "La vostra cita \"%s\" necessita confirmació", + "Your appointment \"%s\" with %s needs confirmation" : "La vostra cita \"%s\" amb %s necessita confirmació", "Dear %s, please confirm your booking" : "Benvolgut %s, confirmeu la vostra reserva", "Confirm" : "Confirma", + "Appointment with:" : "Cita amb:", + "Description:" : "Descripció:", "This confirmation link expires in %s hours." : "Aquest enllaç de confirmació caduca d'aquí a %s hores.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Si després de tot voleu cancel·lar la cita, poseu-vos en contacte amb el vostre organitzador.", - "Appointment:" : "Cita:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Si després de tot, voleu cancel·lar la cita, poseu-vos en contacte amb el vostre organitzador responent a aquest correu electrònic o visitant la seva pàgina de perfil.", + "Your appointment \"%s\" with %s has been accepted" : "S'ha acceptat la vostra cita \"%s\" amb %s", + "Dear %s, your booking has been accepted." : "Benvolgut %s, s'ha acceptat la vostra reserva.", + "Appointment for:" : "Cita per a:", "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Rebreu un enllaç amb el correu electrònic de confirmació", "Where:" : "Ubicació:", - "Description:" : "Descripció:", - "Calendar" : "Calendari", + "Comment:" : "Comentari:", + "You have a new appointment booking \"%s\" from %s" : "Tens una nova reserva de cita \"%s\" de %s", + "Dear %s, %s (%s) booked an appointment with you." : "Benvolgut %s, %s (%s) ha reservat una cita amb tu.", "A Calendar app for Nextcloud" : "Una aplicació de calendari per al Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "L'aplicació Calendar és una interfície d'usuari per al servidor CalDAV de Nextcloud. Sincronitza fàcilment els esdeveniments de diversos dispositius amb el teu Nextcloud i permet editar-los directament.\n\n* 🚀 **Integració amb altres aplicacions de Nextcloud!** Amb Contactes actualment: més per venir.\n* 🌐 **Suport WebCal!** Vols veure els dies de partit del teu equip favorit al teu calendari? Cap problema!\n* 🙋 **Assistents!** Convida persones als teus esdeveniments\n* ⌚️ **Lliure/Ocupat!** Consulta quan els teus assistents estan disponibles per reunir-se\n* ⏰ **Recordatoris!** Obté alarmes d'esdeveniments al vostre navegador i per correu electrònic\n* 🔍 Cerca! Troba els teus esdeveniments amb facilitat\n* ☑️ Tasques! Consulta les tasques amb data de venciment directament al calendari\n* 🙈 **No estem reinventant la roda!** Basat en la gran llibreries [biblioteca c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https:// github.com/mozilla-comm/ical.js) i [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Dia anterior", "Previous week" : "Setmana anterior", + "Previous year" : "Any anterior", "Previous month" : "Mes anterior", "Next day" : "Dia següent", "Next week" : "Setmana següent", + "Next year" : "Any següent", "Next month" : "Mes següent", - "New event" : "Esdeveniment nou", + "Create new event" : "Crea un nou esdeveniment", + "Event" : "Esdeveniment", "Today" : "Avui", "Day" : "Dia", "Week" : "Setmana", "Month" : "Mes", + "Year" : "Any", "List" : "Llista", + "Appointment link was copied to clipboard" : "L'enllaç de la cita s'ha copiat al porta-retalls", + "Appointment link could not be copied to clipboard" : "No s'ha pogut copiar l'enllaç de la cita al porta-retalls", "Preview" : "Previsualitza", "Copy link" : "Copia l'enllaç", - "Edit" : "Edita", + "Edit" : "Edició", "Delete" : "Suprimeix", - "Appointment link was copied to clipboard" : "L'enllaç de la cita s'ha copiat al porta-retalls", - "Appointment link could not be copied to clipboard" : "No s'ha pogut copiar l'enllaç de la cita al porta-retalls", - "Add new" : "Afegeix nou/nova", - "Untitled calendar" : "Calendari sense títol", - "Edit name" : "Edita el nom", - "Saving name …" : "Desant el nom …", - "Edit color" : "Edita el color", - "Saving color …" : "Desant el color …", - "Copy private link" : "Copia l'enllaç privat", - "Export" : "Exporta", - "Unshare from me" : "Deixa de compartir", - "Disable calendar \"{calendar}\"" : "Desactiva el calendari \"{calendar}\"", - "Disable untitled calendar" : "Desactiva el calendari sense títol", - "Enable calendar \"{calendar}\"" : "Activa el calendari \"{calendar}\"", - "Enable untitled calendar" : "Activa el calendari sense títol", + "Appointment schedules" : "Horaris de cites", + "Create new" : "Crea nou", + "Disable calendar \"{calendar}\"" : "Inhabilita el calendari \"{calendar}\"", + "Disable untitled calendar" : "Inhabilita el calendari sense títol", + "Enable calendar \"{calendar}\"" : "Habilita el calendari \"{calendar}\"", + "Enable untitled calendar" : "Habilita el calendari sense títol", "An error occurred, unable to change visibility of the calendar." : "S'ha produït un error. No s'ha canviat la visibilitat del calendari.", - "An error occurred, unable to delete the calendar." : "S'ha produït un error. No s'ha suprimit el calendari.", - "Calendar link copied to clipboard." : "S'ha copiat l'enllaç del calendari al porta-retalls.", - "Calendar link could not be copied to clipboard." : "No s'ha pogut copiar l'enllaç del calendari al porta-retalls.", - "An error occurred, unable to rename the calendar." : "S'ha produït un error. No s'ha canviat el nom del calendari.", - "An error occurred, unable to change the calendar's color." : "S'ha produït un error. No s'ha canviat el color del calendari.", + "Untitled calendar" : "Calendari sense títol", + "Shared with you by" : "Compartit amb tu per", + "Edit and share calendar" : "Edició i comparteix el calendari", + "Edit calendar" : "Edició del calendari", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Deixant de compartir el calendari en {countdown} segons","S'està deixant de compartir el calendari en {countdown} segons"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Eliminant el calendari en {countdown} segons","S'està suprimint el calendari en {countdown} segons"], - "Share link" : "Enllaç de compartició", - "Publish calendar" : "Publica el calendari", - "Publishing calendar" : "S'està publicant el calendari", - "Copy public link" : "Copia l'enllaç públic", - "Send link to calendar via email" : "Enviar per correu l'enllaç al calendari", - "Enter one address" : "Escriviu una adreça", - "Sending email …" : "Envian correu …", - "Copy subscription link" : "Copiar l'enllaç de subscripció", - "Copying link …" : "Copiant l'enllaç …", - "Copied link" : "S'ha copiat l'enllaç", - "Could not copy link" : "No s'ha pogut copiar l'enllaç", - "Copy embedding code" : "Copiar el codi per inserir", - "Copying code …" : "Copiant el codi …", - "Copied code" : "Codi copiat", - "Could not copy code" : "No s'ha pogut copiar el codi", - "Delete share link" : "Suprimeix l'enllaç de compartició", - "Deleting share link …" : "S'està suprimint l'enllaç de compartició …", - "An error occurred, unable to publish calendar." : "Ha succeït un error i no ha estat possible publicar el calendari.", - "An error occurred, unable to send email." : "Ha succeït un error i no ha estat possible enviar el correu.", - "Embed code copied to clipboard." : "S'ha copiat el codi al porta-retalls.", - "Embed code could not be copied to clipboard." : "No s'ha pogut copiar al porta-retalls el codi d'inserció.", - "Unpublishing calendar failed" : "Ha fallat la des-publicació del calendari", - "Share with users or groups" : "Comparteix amb usuaris o grups", - "No users or groups" : "No hi ha usuaris ni grups", - "can edit" : "pot editar-lo", - "Unshare with {displayName}" : "S'ha deixat de compartir amb {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Ha succeït un error i no s'ha pogut canviar la no-compartició del calendari.", - "An error occurred, unable to change the permission of the share." : "Ha succeït un error i no s'ha pogut canviar els permisos de compartició.", - "+ New calendar" : "+ Calendari nou", + "An error occurred, unable to create the calendar." : "Ha succeït un error i no s'ha pogut crear el calendari.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Escriviu un enllaç vàlid (que comenci amb http://, https://, webcal://, o webcals://)", + "Calendars" : "Calendaris", + "Add new" : "Afegeix nou/nova", "New calendar" : "Calendari nou", "Name for new calendar" : "Nom per al nou calendari", "Creating calendar …" : "Creant el calendari …", "New calendar with task list" : "Calendari nou amb llista de tasques", "New subscription from link (read-only)" : "Nova subscripció des d'enllaç (només lectura)", "Creating subscription …" : "Creant la subscripció …", - "An error occurred, unable to create the calendar." : "Ha succeït un error i no s'ha pogut crear el calendari.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Escriviu un enllaç vàlid (que comenci amb http://, https://, webcal://, o webcals://)", + "Add public holiday calendar" : "Afegeix un calendari de festes públiques", + "Add custom public calendar" : "Afegeix un calendari públic personalitzat", + "Calendar link copied to clipboard." : "S'ha copiat l'enllaç del calendari al porta-retalls.", + "Calendar link could not be copied to clipboard." : "No s'ha pogut copiar l'enllaç del calendari al porta-retalls.", + "Copy subscription link" : "Copiar l'enllaç de subscripció", + "Copying link …" : "Copiant l'enllaç …", + "Copied link" : "S'ha copiat l'enllaç", + "Could not copy link" : "No s'ha pogut copiar l'enllaç", + "Export" : "Exporta", + "Untitled item" : "Element sense títol", + "Unknown calendar" : "Calendari desconegut", + "Could not load deleted calendars and objects" : "No s'han pogut carregar els calendaris i els objectes suprimits", + "Could not delete calendar or event" : "No s'ha pogut suprimir el calendari o l'esdeveniment", + "Could not restore calendar or event" : "No s'ha pogut restaurar el calendari o l'esdeveniment", + "Do you really want to empty the trash bin?" : "Realment voleu buidar la paperera?", + "Empty trash bin" : "Buida la paperera", "Trash bin" : "Paperera", - "Loading deleted elements." : "S'estan carregant elements suprimits.", - "You do not have any deleted elements." : "No teniu cap element suprimit.", + "Loading deleted items." : "S'estan carregant els elements suprimits.", + "You do not have any deleted items." : "No teniu cap element suprimit.", "Name" : "Nom", "Deleted" : "Suprimit", "Restore" : "Restaura", "Delete permanently" : "Suprimeix de manera permanent", - "Empty trash bin" : "Buida la paperera", - "Untitled element" : "Element sense títol", - "Unknown calendar" : "Calendari desconegut", - "Could not load deleted calendars and objects" : "No s'han pogut carregar els calendaris i els objectes suprimits", - "Could not restore calendar or event" : "No s'ha pogut restaurar el calendari o l'esdeveniment", - "Do you really want to empty the trash bin?" : "Realment voleu buidar la paperera?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Els elements de la paperera se suprimeixen al cap de {numDays} dia","Els elements de la paperera se suprimeixen al cap de {numDays} dies"], + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Els elements de la paperera se suprimeixen al cap de {numDays} dia","Els elements de la paperera se suprimeixen al cap de {numDays} dies"], "Could not update calendar order." : "No s'ha pogut actualitzar l'ordre del calendari.", - "Import calendars" : "Importar calendaris", + "Shared calendars" : "Calendaris compartits", + "Deck" : "Targetes", + "Hidden" : "Ocult", + "Internal link" : "Enllaç intern", + "A private link that can be used with external clients" : "Un enllaç privat que pot utilitzar-se amb clients externs", + "Copy internal link" : "Copia l'enllaç intern", + "An error occurred, unable to publish calendar." : "Ha succeït un error i no ha estat possible publicar el calendari.", + "An error occurred, unable to send email." : "Ha succeït un error i no ha estat possible enviar el correu.", + "Embed code copied to clipboard." : "S'ha copiat el codi al porta-retalls.", + "Embed code could not be copied to clipboard." : "No s'ha pogut copiar al porta-retalls el codi d'inserció.", + "Unpublishing calendar failed" : "Ha fallat la des-publicació del calendari", + "Share link" : "Enllaç d'ús compartit", + "Copy public link" : "Copia l'enllaç públic", + "Send link to calendar via email" : "Enviar per correu l'enllaç al calendari", + "Enter one address" : "Escriviu una adreça", + "Sending email …" : "S'està enviant un correu…", + "Copy embedding code" : "Còpia del codi per inserir", + "Copying code …" : "Copiant el codi …", + "Copied code" : "Codi copiat", + "Could not copy code" : "No s'ha pogut copiar el codi", + "Delete share link" : "Suprimeix l'enllaç de compartició", + "Deleting share link …" : "S'està suprimint l'enllaç de compartició …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Equip)", + "An error occurred while unsharing the calendar." : "S'ha produït un error en deixar de compartir el calendari.", + "An error occurred, unable to change the permission of the share." : "Ha succeït un error i no s'ha pogut canviar els permisos de compartició.", + "can edit" : "pot editar-lo", + "Unshare with {displayName}" : "S'ha deixat de compartir amb {displayName}", + "Share with users or groups" : "Comparteix amb usuaris o grups", + "No users or groups" : "No hi ha usuaris ni grups", + "Failed to save calendar name and color" : "No s'ha pogut desar el nom i el color del calendari", + "Calendar name …" : "Nom del calendari …", + "Never show me as busy (set this calendar to transparent)" : "No em mostris mai com a ocupat (configura aquest calendari com a transparent)", + "Share calendar" : "Comparteix el calendari", + "Unshare from me" : "Deixa de compartir", + "Save" : "Desa", + "Import calendars" : "Importació calendaris", "Please select a calendar to import into …" : "Escolliu un calendari per ser importat …", "Filename" : "Nom del fitxer", "Calendar to import into" : "Calendari a importar", "Cancel" : "Cancel·la", - "_Import calendar_::_Import calendars_" : ["Importar calendari","Importa calendaris"], + "_Import calendar_::_Import calendars_" : ["Importar calendari","Importació de calendaris"], + "Select the default location for attachments" : "Seleccioneu la ubicació per defecte per als fitxers adjunts", + "Pick" : "Tria", + "Invalid location selected" : "La ubicació seleccionada no és vàlida", + "Attachments folder successfully saved." : "La carpeta de fitxers adjunts s'ha desat correctament.", + "Error on saving attachments folder." : "Error en desar la carpeta de fitxers adjunts.", + "Default attachments location" : "Ubicació per defecte dels fitxers adjunts", "{filename} could not be parsed" : "No s'ha pogut entendre el contingut del fitxer {filename}", "No valid files found, aborting import" : "No s'han trobat fitxers que siguin vàlids i s'ha avortat la importació", - "Import partially failed. Imported {accepted} out of {total}." : "La importació ha fallat parcialment. S'han importat {accepted} d'un total de {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["S'ha importat correctament %n esdeveniment","S'ha importat correctament %n esdeveniments"], + "Import partially failed. Imported {accepted} out of {total}." : "La importació ha fallat parcialment. S'han importat {accepted} d'un total de {total}.", "Automatic" : "Automàtic", "Automatic ({detected})" : "Automàtic ({detected})", - "New setting was not saved successfully." : "No s'ha desat correctament la nova configuració.", - "Shortcut overview" : "Descripció general de la drecera", - "or" : "o", + "New setting was not saved successfully." : "No s'ha desat correctament els nous paràmetres.", "Navigation" : "Navegació", "Previous period" : "Període anterior", "Next period" : "Període següent", @@ -141,6 +173,7 @@ OC.L10N.register( "Day view" : "Vista de dia", "Week view" : "Vista de setmana", "Month view" : "Vista de mes", + "Year view" : "Vista anual", "List view" : "Vista de llista", "Actions" : "Accions", "Create event" : "Crea un esdeveniment", @@ -150,23 +183,29 @@ OC.L10N.register( "Save edited event" : "Desa l'esdeveniment editat", "Delete edited event" : "Suprimeix l'esdeveniment editat", "Duplicate event" : "Esdeveniment duplicat", - "Enable birthday calendar" : "Activa el calendari d'aniversaris", + "Shortcut overview" : "Descripció general de la drecera", + "or" : "o", + "Calendar settings" : "Paràmetres de Calendari", + "At event start" : "A l'inici de l'esdeveniment", + "No reminder" : "Sense recordatoris", + "Failed to save default calendar" : "No s'ha pogut desar el calendari predeterminat", + "CalDAV link copied to clipboard." : "S'ha copiat al porta-retalls l'enllaç CalDAV.", + "CalDAV link could not be copied to clipboard." : "No s'ha pogut copiar al porta-retalls l'enllaç CalDAV.", + "Enable birthday calendar" : "Habilitar el calendari d'aniversaris", "Show tasks in calendar" : "Mostra les tasques en el calendari", - "Enable simplified editor" : "Habilita l'editor simplificat", - "Limit visible events per view" : "Limita el esdeveniments visibles per visualització", + "Enable simplified editor" : "Habilitar l'editor simplificat", + "Limit the number of events displayed in the monthly view" : "Limita el nombre d'esdeveniments que es mostren a la vista mensual", "Show weekends" : "Mostra els caps de setmana", "Show week numbers" : "Mostra el número de la setmana", "Time increments" : "Increments de temps", + "Default calendar for incoming invitations" : "Calendari predeterminat per a les invitacions entrants", "Default reminder" : "Recordatori per defecte", - "Copy primary CalDAV address" : "Copia l'adreça CalDEV primària", + "Copy primary CalDAV address" : "Copia l'adreça CalDAV primària", "Copy iOS/macOS CalDAV address" : "Copia l'adreça CalDAV iOS/macOS", - "Personal availability settings" : "Configuració de disponibilitat personal", + "Personal availability settings" : "Paràmetres de disponibilitat personal", "Show keyboard shortcuts" : "Mostra les dreceres del teclat", - "No reminder" : "Sense recordatoris", - "CalDAV link copied to clipboard." : "S'ha copiat al porta-retalls l'enllaç CalDAV.", - "CalDAV link could not be copied to clipboard." : "No s'ha pogut copiar al porta-retalls l'enllaç CalDAV.", - "Appointment was created successfully" : "La cita s'ha creat correctament", - "Appointment was updated successfully" : "La cita s'ha actualitzat correctament", + "Appointment schedule successfully created" : "S'ha creat correctament la planificació de cites", + "Appointment schedule successfully updated" : "La planificació de cites s'ha actualitzat correctament", "_{duration} minute_::_{duration} minutes_" : ["{duration} minut","{duration} minuts"], "0 minutes" : "0 minuts", "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} hores"], @@ -177,7 +216,14 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Per configurar cites, afegiu la vostra adreça de correu electrònic a la configuració personal.", "Public – shown on the profile page" : "Públic – es mostra a la pàgina de perfil", "Private – only accessible via secret link" : "Privat – només accessible mitjançant un enllaç secret", + "Appointment schedule saved" : "S'ha guardat l'agenda de cites", + "Create appointment schedule" : "Crea d'una planificació de cites", + "Edit appointment schedule" : "Edició la planificació de cites", + "Update" : "Actualitza", + "Appointment name" : "Nom de la cita", "Location" : "Ubicació", + "Create a Talk room" : "Crea una sala de Converses", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Un enllaç únic que es generarà per cada cita reservada i enviada mitjançant el correu electrònic de confirmació", "Description" : "Descripció", "Visibility" : "Visibilitat", "Duration" : "Durada", @@ -195,6 +241,7 @@ OC.L10N.register( "Friday" : "Divendres", "Saturday" : "Dissabte", "Sunday" : "Diumenge", + "Weekdays" : "Dies de la setmana", "Add time before and after the event" : "Afegiu temps abans i després de l'esdeveniment", "Before the event" : "Abans de l'esdeveniment", "After the event" : "Després de l’esdeveniment", @@ -202,18 +249,29 @@ OC.L10N.register( "Minimum time before next available slot" : "Temps mínim abans de la propera unitat temporal disponible", "Max slots per day" : "Màxim d'unitats temporals per dia", "Limit how far in the future appointments can be booked" : "Limiteu fins a quin punt es poden reservar cites futures", - "Create appointment" : "Crear cita", - "Edit appointment" : "Edita la cita", - "Save" : "Desa", - "Update" : "Actualitza", + "It seems a rate limit has been reached. Please try again later." : "Sembla que s'ha arribat a un límit de freqüència màxima. Si us plau, torna-ho a provar més tard.", "Please confirm your reservation" : "Si us plau, confirmeu la vostra reserva", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "T'hem enviat un correu electrònic amb els detalls. Si us plau, confirmeu la vostra cita mitjançant l'enllaç del correu electrònic. Ja podeu tancar aquesta pàgina.", "Your name" : "El vostre nom", "Your email address" : "La vostra adreça de correu", "Please share anything that will help prepare for our meeting" : "Si us plau, compartiu qualsevol cosa que ajudi a preparar la nostra reunió", - "Could not book the appointment. Please try again later or contact the organizer." : "No s'ha pogut reservar la cita. Torneu-ho a provar més tard o poseu-vos en contacte amb l'organitzador.", - "Book the appointment" : "Reserva la cita", - "Reminder" : "Recordatori", + "Could not book the appointment. Please try again later or contact the organizer." : "No s'ha pogut reservar la cita. Torneu-ho a provar més tard o contacteu amb l'organitzador.", + "Back" : "Torna", + "Book appointment" : "Reserva cita", + "Error fetching Talk conversations." : "S'ha produït un error en recuperar les converses a Converses.", + "Conversation does not have a valid URL." : "La conversa no té un URL vàlid.", + "Successfully added Talk conversation link to location." : "S'ha afegit correctament l'enllaç de Converses a la ubicació.", + "Successfully added Talk conversation link to description." : "S'ha afegit correctament l'enllaç de Converses a la descripció.", + "Failed to apply Talk room." : "No s'ha pogut aplicar la sala de Converses.", + "Error creating Talk conversation" : "S'ha produït un error en crear la Converses", + "Select a Talk Room" : "Seleccioneu una sala de Converses", + "Add Talk conversation" : "Afegeix una Converses", + "Fetching Talk rooms…" : "S'estan obtenint sales de Converses…", + "No Talk room available" : "No hi ha sala de Converses disponible", + "Create a new conversation" : "Crea una conversa nova", + "Select conversation" : "Seleccioneu una conversa", + "on" : "a", + "at" : "a", "before at" : "abans a les", "Notification" : "Notificació", "Email" : "Correu", @@ -224,114 +282,141 @@ OC.L10N.register( "Edit time" : "Modifica l'hora", "Save time" : "Desar l'hora", "Remove reminder" : "Suprimeix el recordatori", - "on" : "a", - "at" : "a", - "+ Add reminder" : "+ Afegeix un recordatori", "Add reminder" : "Afegeix un recordatori", - "_second_::_seconds_" : ["segon","segons"], - "_minute_::_minutes_" : ["minut","minuts"], - "_hour_::_hours_" : ["hora","hores"], - "_day_::_days_" : ["dia","dies"], - "_week_::_weeks_" : ["setmana","setmanes"], + "seconds" : "segons", + "minutes" : "minuts", + "hours" : "hores", + "days" : "dies", + "weeks" : "setmanes", + "Choose a file to add as attachment" : "Trieu un fitxer per afegir als adjunts", + "Choose a file to share as a link" : "Tria un fitxer per compartir-lo com a enllaç", + "Attachment {name} already exist!" : "El fitxer adjunt {name} ja existeix!", + "Could not upload attachment(s)" : "No s'han pogut pujar els fitxers adjunts", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Esteu a punt d'anar a {host}. Esteu segur de continuar? Enllaç: {link}", + "Proceed" : "Continua", + "No attachments" : "Sense fitxers adjunts", + "Add from Files" : "Afegeix de Fitxers", + "Upload from device" : "Pujada des del dispositiu", + "Delete file" : "Suprimeix el fitxer", + "Confirmation" : "Confirmació", + "_{count} attachment_::_{count} attachments_" : ["{count} fitxer adjunt","{count} fitxers adjunts"], "Suggested" : "Suggerit", "Available" : "Disponible", - "Not available" : "No disponible", - "Checking availability" : "Consultant disponibilitat", "Invitation accepted" : "S'ha acceptat la invitació", "Accepted {organizerName}'s invitation" : "S'ha acceptat la invitació de {organizerName}", + "Participation marked as tentative" : "Participació marcada com a provisional", + "Invitation is delegated" : "La invitació és delegada", + "Not available" : "No disponible", "Invitation declined" : "S'ha declinat la invitació", "Declined {organizerName}'s invitation" : "{organizerName}'s ha declinat la invitació", - "Invitation is delegated" : "La invitació és delegada", - "Participation marked as tentative" : "Participació marcada com a provisional", - "Invitation sent" : "Invitació enviada", + "Availability will be checked" : "Es comprovarà la disponibilitat", + "Invitation will be sent" : "S'enviarà la invitació", + "Failed to check availability" : "No s'ha pogut comprovar la disponibilitat", + "Failed to deliver invitation" : "No s'ha pogut lliurar la invitació", + "Awaiting response" : "Esperant resposta", + "Checking availability" : "Consultant disponibilitat", "Has not responded to {organizerName}'s invitation yet" : "Encara no ha respost a la invitació de {organizerName}", - "Availability of attendees, resources and rooms" : "Disponibilitat d'assistents, recursos i espais", + "chairperson" : "responsable", + "required participant" : "participant obligatori", + "non-participant" : "no participant", + "optional participant" : "participant opcional", "{organizer} (organizer)" : "{organizer} (organitzador)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Disponibilitat d'assistents, recursos i espais", + "Suggestion accepted" : "S'ha acceptat el suggeriment", + "Legend" : "Llegenda", + "Out of office" : "Fora de l'oficina", + "Attendees:" : "Assistents:", + "Done" : "Fet", + "Search room" : "Cerca sala", + "Room name" : "Nom de la sala", + "Check room availability" : "Consulta la disponibilitat de l'habitació", "Free" : "Disponible", "Busy (tentative)" : "Ocupat (provisional)", "Busy" : "Ocupat", - "Out of office" : "Fora de l'oficina", "Unknown" : "Desconegut", - "Accept" : "Accepta", - "Decline" : "Rebutja", - "Tentative" : "Provisional", + "Find a time" : "Troba un moment", "The invitation has been accepted successfully." : "La invitació s'ha acceptat correctament.", "Failed to accept the invitation." : "No s'ha pogut acceptar la invitació.", "The invitation has been declined successfully." : "La invitació s'ha declinat correctament.", "Failed to decline the invitation." : "No s'ha pogut declinar la invitació.", "Your participation has been marked as tentative." : "La teva participació s'ha marcat com a provisional.", "Failed to set the participation status to tentative." : "No s'ha pogut establir l'estat de participació com a provisional.", - "Create Talk room for this event" : "Crea una sala a Talk per a aquest esdeveniment", - "Show busy times" : "Mostra els horaris ocupats", + "Accept" : "Accepta", + "Decline" : "Rebutja", + "Tentative" : "Provisional", "No attendees yet" : "Encara no hi ha cap participant", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} convidats, {confirmedCount} confirmats", + "Successfully appended link to talk room to location." : "S'ha afegit correctament l'enllaç a la sala de conversa a la ubicació.", "Successfully appended link to talk room to description." : "S'ha afegit l'enllaç d'una nova sala de Talk a la descripció de l'esdeveniment.", "Error creating Talk room" : "Ha succeït un error tractant de crear la sala a Talk", - "Send email" : "Enviar correu", + "Attendees" : "Assistents", + "_%n more guest_::_%n more guests_" : ["%n convidat més","%n convidats més"], + "Remove group" : "Suprimir el grup", + "Remove attendee" : "Suprimeix el participant", + "Request reply" : "Sol·licitar resposta", "Chairperson" : "Organització", "Required participant" : "Participació obligatòria", "Optional participant" : "Participació opcional", "Non-participant" : "Sense participació", - "Remove attendee" : "Suprimeix el participant", - "Search for emails, users or contacts" : "Cerca correus electrònics, usuaris o contactes", + "_%n member_::_%n members_" : ["{n} membre","{n} membres"], + "Search for emails, users, contacts, contact groups or teams" : "Cerca correus electrònics, usuaris, contactes, grups de contactes o equips", "No match found" : "No s'ha trobat cap coincidència", + "Note that members of circles get invited but are not synced yet." : "Tingueu en compte que els membres dels cercles són convidats però encara no es sincronitzen.", + "Note that members of contact groups get invited but are not synced yet." : "Tingueu en compte que els membres dels grups de contacte són convidats, però encara no es sincronitzen.", "(organizer)" : "(organitza l'esdeveniment)", + "Make {label} the organizer" : "Feu que {label} sigui l'organitzador", + "Make {label} the organizer and attend" : "Feu que {label} sigui l'organitzador i assistent", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Per enviar invitacions i atendre les respostes, cal que [linkopen]afegiu la vostra adreça de correu a la vostra configuració personal[linkclose].", "Remove color" : "Suprimeix el color", "Event title" : "Títol de l'esdeveniment", - "All day" : "Tot el dia", "Cannot modify all-day setting for events that are part of a recurrence-set." : "No es pot modificar la configuració de tot el dia per als esdeveniments que formen part d'un conjunt de recurrència.", - "from {startDate}" : "del {startDate}", - "from {startDate} at {startTime}" : "del {startDate} a les {startTime}", - "to {endDate}" : "al {endDate}", - "to {endDate} at {endTime}" : "al {endDate} a les {endTime}", + "From" : "De", + "To" : "A", "Repeat" : "Repeteix", - "End repeat" : "Finalitza la repetició", - "Select to end repeat" : "Seleccioneu per finalitzar repetició", + "_time_::_times_" : ["vegada","vegades"], "never" : "mai", "on date" : "el dia", "after" : "després de", - "_time_::_times_" : ["vegada","vegades"], + "End repeat" : "Finalitza la repetició", + "Select to end repeat" : "Seleccioneu per finalitzar repetició", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Aquest esdeveniment és l'excepció de recurrència d'un conjunt de recurrència. No hi podeu afegir una regla de recurrència.", "first" : "primer", - "third" : "tercer", - "fourth" : "quart", - "fifth" : "cinquè", - "second to last" : "penúltim", - "last" : "últim", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Els canvis a la regla de recurrència només afectarà en aquesta i futures ocurrències.", "Repeat every" : "Repeteix cada", "By day of the month" : "Per dia del mes", "On the" : "Al", + "_day_::_days_" : ["dia","dies"], + "_week_::_weeks_" : ["setmana","setmanes"], "_month_::_months_" : ["mes","mesos"], "_year_::_years_" : ["any","anys"], + "On specific day" : "En un dia concret", "weekday" : "dia de la setmana", "weekend day" : "dia de cap de setmana", - "No recurrence" : "Sense recurrència", + "Does not repeat" : "No es repeteix", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "La definició de recurrència d'aquest esdeveniment no és del tot compatible amb Nextcloud. Si canvieu les opcions de recurrència, es poden perdre certes recurrències.", - "Suggestions" : "Suggeriments", "No rooms or resources yet" : "Encara no hi ha sales ni recursos", + "Resources" : "Recursos", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seient","{seatingCapacity} seients"], "Add resource" : "Afegeix un recurs", "Has a projector" : "Té un projector", "Has a whiteboard" : "Té una pissarra blanca", "Wheelchair accessible" : "Accessible amb cadira de rodes", "Remove resource" : "Suprimeix el recurs", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seient","{seatingCapacity} seients"], - "Projector" : "Projector", - "Whiteboard" : "Pissarra blanca", "Search for resources or rooms" : "Cerca recursos o sales", "available" : "disponible", "unavailable" : "no disponible", + "Show all rooms" : "Mostra totes les habitacions", + "Projector" : "Projector", + "Whiteboard" : "Pissarra blanca", "Room type" : "Tipus de sala", "Any" : "Qualsevol", "Minimum seating capacity" : "Capacitat mínima de seients", - "More" : "Més", - "Update this occurrence" : "Actualitza aquesta ocurrència", + "More details" : "Més detalls", "Update this and all future" : "Actualitza aquesta i les futures", + "Update this occurrence" : "Actualitza aquesta ocurrència", "Public calendar does not exist" : "No existeix un calendari públic", "Maybe the share was deleted or has expired?" : "Potser la compartició va ser esborrada o va expirar?", - "Please select a time zone:" : "Seleccioneu una zona horària:", - "Pick a time" : "Tria una hora", - "Pick a date" : "Tria una data", "from {formattedDate}" : "de {formattedDate}", "to {formattedDate}" : "a {formattedDate}", "on {formattedDate}" : "el {formattedDate}", @@ -341,9 +426,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} a les {formattedTime}", "Please enter a valid date" : "Indiqueu una data vàlida", "Please enter a valid date and time" : "Indiqueu una data i hora vàlides", + "Select a time zone" : "Seleccioneu una zona horària", + "Please select a time zone:" : "Seleccioneu una zona horària:", + "Pick a time" : "Tria una hora", + "Pick a date" : "Tria una data", "Type to search time zone" : "Escriviu per cercar la zona horària", "Global" : "Global", - "Select date" : "Seleccioneu una data", + "Holidays in {region}" : "Festius a {region}", + "An error occurred, unable to read public calendars." : "S'ha produït un error, no es poden llegir els calendaris públics.", + "An error occurred, unable to subscribe to calendar." : "S'ha produït un error, no es pot subscriure al calendari.", + "Public holiday calendars" : "Calendaris de festius", + "Public calendars" : "Calendaris públics", + "No valid public calendars configured" : "No s'han configurat calendaris públics vàlids", + "Speak to the server administrator to resolve this issue." : "Parleu amb l'administrador del servidor per resoldre aquest problema.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Thunderbird proporciona els calendaris de festius. Les dades del calendari es baixaran de {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Aquests calendaris públics els suggereix l'administrador del servidor. Les dades del calendari es descarregaran del lloc web corresponent.", + "By {authors}" : "Per {authors}", + "Subscribed" : "Subscrit", + "Subscribe" : "Subscriu-m'hi", + "Could not fetch slots" : "No s'han pogut obtenir les unitats temporals", + "Select a date" : "Seleccioneu una data", "Select slot" : "Seleccioneu unitat temporal", "No slots available" : "No hi han unitats temporals disponibles", "The slot for your appointment has been confirmed" : "S'ha confirmat l’unitat temporal per a la vostra cita", @@ -360,24 +462,25 @@ OC.L10N.register( "Personal" : "Personal", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "La detecció automàtica de la zona horària va determinar que la vostra zona horària fos UTC.\nÉs probable que això sigui el resultat de les mesures de seguretat del vostre navegador web.\nSi us plau, configureu la vostra zona horària manualment a la configuració del calendari.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "No s'ha trobat la vostra zona horària configurada ({timezoneId}). Tornant a l'UTC.\nCanvieu la vostra zona horària a la configuració i informeu d'aquest problema.", - "No more events today" : "Avui no hi ha més esdeveniments", - "No upcoming events" : "No hi ha propers esdeveniments", - "Create a new event" : "Crea un esdeveniment nou", - "[Today]" : "[Avui]", - "[Tomorrow]" : "[Demà]", - "[Yesterday]" : "[Ahir]", - "[Last] dddd" : "[Últim] dddd", + "Availability of {displayName}" : "Disponibilitat de {displayName}", + "Edit event" : "Edita l'esdeveniment", "Event does not exist" : "L'esdeveniment no existeix", "Duplicate" : "Duplica", "Delete this occurrence" : "Suprimeix aquesta ocurrència", "Delete this and all future" : "Suprimeix aquesta i les ocurrències futures", - "Details" : "Detalls", - "Attendees" : "Assistents", - "Resources" : "Recursos", + "All day" : "Tot el dia", + "Modifications wont get propagated to the organizer and other attendees" : "Les modificacions no es propagaran a l'organitzador i als altres assistents", + "Managing shared access" : "Gestió de l'accés compartit", + "Deny access" : "Denega l'accés", + "Invite" : "Convida", + "_User requires access to your file_::_Users require access to your file_" : ["L'usuari requereix accés al vostre fitxer","Els usuaris requereixen accés al vostre fitxer"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["El fitxer adjunt requereix accés compartit","Els fitxers adjunts requereixen accés compartit"], + "Untitled event" : "Esdeveniment sense títol", "Close" : "Tanca", - "Show more details" : "Mostra més detalls", + "Modifications will not get propagated to the organizer and other attendees" : "Les modificacions no es propagaran a l'organitzador i als altres assistents", "Subscribe to {name}" : "Subscriure a {name}", "Export {name}" : "Exporta {name}", + "Show availability" : "Mostra disponibilitat", "Anniversary" : "Commemoració", "Appointment" : "Cita", "Business" : "Negocis", @@ -405,7 +508,6 @@ OC.L10N.register( "on {time}" : "a les {time}", "on {time} ({timezoneId})" : "a les {time} ({timezoneId})", "Week {number} of {year}" : "Setmana {number} del {year}", - "Does not repeat" : "No es repeteix", "Daily" : "Diàriament", "Weekly" : "Setmanalment", "Monthly" : "Mensualment", @@ -417,24 +519,30 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["el {weekday}","els {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["el dia {dayOfMonthList}","els dies {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "al {ordinalNumber} {byDaySet}", - "in {monthNames}" : "al {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "a {monthNames} al {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "al {monthNames} al {ordinalNumber} {byDaySet}", "until {untilDate}" : "fins el {untilDate}", "_%n time_::_%n times_" : ["%n vegada","%n vegades"], - "Untitled event" : "Esdeveniment sense títol", + "second" : "segon", + "third" : "tercer", + "fourth" : "quart", + "fifth" : "cinquè", + "second to last" : "penúltim", + "last" : "últim", "Untitled task" : "Tasca sense títol", "Please ask your administrator to enable the Tasks App." : "Demaneu al vostre administrador que habiliti l'aplicació de Tasques.", - "Prev" : "Anterior", - "Next" : "Següent", - "Prev year" : "Any anterior", - "Next year" : "Any següent", - "Year" : "Any", + "You are not allowed to edit this event as an attendee." : "No teniu permès editar aquest esdeveniment com a assistent.", "W" : "S", "%n more" : "%n més", "No events to display" : "No hi ha esdeveniments per visualitzar", + "All participants declined" : "Tots els participants van rebutjar", + "Please confirm your participation" : "Si us plau, confirmeu la vostra participació", + "You declined this event" : "Has rebutjat aquest esdeveniment", + "Your participation is tentative" : "La vostra participació és provisional", "_+%n more_::_+%n more_" : ["i %n més","i %n més"], "No events" : "Cap esdeveniment", "Create a new event or change the visible time-range" : "Crea un esdeveniment nou o canvia l'interval de temps visible", + "Failed to save event" : "No s'ha pogut desar l'esdeveniment", "It might have been deleted, or there was a typo in a link" : "Pot ser que s'hagi suprimit o que hi hagi un error tipogràfic en un enllaç", "It might have been deleted, or there was a typo in the link" : "Pot ser que s'hagi suprimit o que hi hagi un error tipogràfic a l'enllaç", "Meeting room" : "Sala de reunions", @@ -447,7 +555,7 @@ OC.L10N.register( "When shared hide this event" : "Quan es comparteix, amaga aquest esdeveniment", "The visibility of this event in shared calendars." : "La visibilitat de l'event en calendaris compartits.", "Add a location" : "Afegeix una ubicació", - "Add a description" : "Afegir una descripció", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Afegeix una descripció\n\n- De què tracta aquesta reunió\n- Elements de l'ordre del dia\n- Qualsevol cosa que els participants hagin de preparar", "Status" : "Estat", "Confirmed" : "Confirmat", "Canceled" : "Cancel·lat", @@ -460,135 +568,23 @@ OC.L10N.register( "Add this as a new category" : "Afegeix-ho com una nova categoria", "Custom color" : "Color personalitzat", "Special color of this event. Overrides the calendar-color." : "Color especial per a aquest event. Sobreescriu el color del calendari.", - "Chat room for event" : "Sala de xat per a l'esdeveniment", + "Error while sharing file" : "Error en compartir el fitxer", + "Error while sharing file with user" : "S'ha produït un error en compartir el fitxer amb l'usuari", + "Attachment {fileName} already exists!" : "El fitxer adjunt {fileName} ja existeix!", + "An error occurred during getting file information" : "S'ha produït un error en obtenir la informació del fitxer", + "Talk conversation for event" : "Converses per a l'esdeveniment", + "An error occurred, unable to delete the calendar." : "S'ha produït un error. No s'ha suprimit el calendari.", "Imported {filename}" : "{filename} importat", - "Meditation" : "Meditació", - "Relaxing" : "Relaxant", - "Relax" : "Relax", - "Break" : "Descans", - "Commute" : "Desplaçament", - "Commuting" : "En desplaçament", - "Shuttle" : "Llançadora", - "Invoice" : "Factura", - "Finance" : "Finances", - "Bank" : "Banc", - "Money" : "Diners", - "Wedding" : "Casament", - "Dog" : "Gos", - "Concert" : "Concert", - "Festival" : "Festival", - "Theater" : "Teatre", - "Theatre" : "Teatre", - "Presentation" : "Presentació", - "Talk" : "Xerrada", - "Speech" : "Discurs", - "Deadline" : "Data límit", - "Submission" : "Tramesa", - "Reporting" : "Informes", - "Camping" : "Acampada", - "Camp" : "Campament", - "Election" : "Elecció", - "Voting" : "Votació", - "Vote" : "Votació", - "Barbecue" : "Barbacoa", - "Barbeque" : "Barbacoa", - "Garden" : "Jardí", - "Farm" : "Granja", - "Movie" : "Pel·lícula", - "Cinema" : "Cinema", - "Graduation" : "Graduació", - "Brainstorm" : "Pluja d'idees", - "Review" : "Revisió", - "Audit" : "Auditoria", - "Inspection" : "Inspecció", - "Proofreading" : "Correcció de proves", - "Baseball" : "Beisbol", - "Meet" : "Reunió", - "Planning" : "Planificació", - "Pointing" : "Apuntant", - "Retrospective" : "Retrospectiva", - "Office" : "Oficina", - "Contributor week" : "Setmana del contribuïdor", - "Mail" : "Correu", - "Soccer" : "Futbol", - "Football" : "Futbol americà", - "Gaming" : "Jugar", - "Drive" : "Conduir", - "Driving" : "Conducció", - "Bicycle" : "Bicicleta", - "Cycle" : "Ciclisme", - "Cycling" : "Fer ciclisme", - "Biking" : "Anar en bici", - "Bike" : "Bicicleta", - "Podcast" : "Podcast", - "Basketball" : "Bàsquet", - "Fishing" : "Pesca", - "Hiking" : "Excursió", - "Hike" : "Passejada", - "Art" : "Art", - "Exhibition" : "Exhibició", - "Museum" : "Museu", - "Pilates" : "Pilates", - "Park" : "Parc", - "Walk" : "Passeig", - "Studying" : "Estudiar", - "Doctor" : "Doctor", - "Health" : "Salut", - "Dentist" : "Dentista", - "Hospital" : "Hospital", - "Interview" : "Entrevista", - "Training" : "Entrenament", - "Practice" : "Pràctica", - "Sports" : "Esport", - "Exercise" : "Exercici", - "Work out" : "Entrenament", - "Working out" : "Entrenament", - "Gym" : "Gimnàs", - "Barber" : "Barber", - "Haircut" : "Perruqueria", - "Hairdresser" : "Perruquer", - "Exam" : "Examen", - "Written test" : "Prova escrita", - "Oral test" : "Prova oral", - "Working" : "Feina", - "New Years Eve" : "Cap d'any", - "NYE" : "Cap d'any", - "Fireworks" : "Focs artificials", - "Running" : "Córrer", - "Go for a run" : "Sortir a córrer", - "Marathon" : "Marató", - "Video-conference" : "Videoconferència", - "Conference-call" : "Trucada de conferència", - "Video-call" : "Videotrucada", - "Video-chat" : "Vídeo-xat", - "Video-meeting" : "Vídeo-reunió", - "Call" : "Trucada", - "Calling" : "Trucar", - "Christmas" : "Nadal", - "Conference" : "Conferència", - "Pizza" : "Pizza", - "Travelling" : "Viatjar", - "Trip" : "Viatge", - "Journey" : "Viatge", - "Collaborate" : "Col·laborar", - "Pair" : "Parella", - "Lecture" : "Classe", - "Seminar" : "Seminari", - "Teaching" : "Docència", - "Photograph" : "Fotografia", - "Party" : "Festa", - "Celebration" : "Celebració", - "Celebrate" : "Celebrar", - "Birthday" : "Aniversari", - "Shopping" : "Anar de compres", - "Groceries" : "Comestibles", - "Skate" : "Patinar", - "Skateboard" : "Monopatí", - "Wine tasting" : "Tasta de vins", - "Golf" : "Golf", - "Dinner" : "Sopar", - "Lunch" : "Dinar", + "This is an event reminder." : "Això és un recordatori de l'esdeveniment.", + "Error while parsing a PROPFIND error" : "S'ha produït un error en analitzar un error PROPFIND", "Appointment not found" : "No s'ha trobat la cita", - "User not found" : "No s'ha trobat l'usuari" + "User not found" : "No s'ha trobat l'usuari", + "Reminder" : "Recordatori", + "+ Add reminder" : "+ Afegeix un recordatori", + "Select automatic slot" : "Selecció d’interval automàtica", + "with" : "amb", + "Available times:" : "Horaris disponibles:", + "Suggestions" : "Suggeriments", + "Details" : "Detalls" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/ca.json b/l10n/ca.json index e5c9b3167584033138d501cf071e46d928fd6bf8..81c8cde07132ec0d44041bdfe1bcca0c4c3dd017 100644 --- a/l10n/ca.json +++ b/l10n/ca.json @@ -1,137 +1,169 @@ { "translations": { + "Provided email-address is too long" : "L'adreça de correu electrònic proporcionada és massa llarga", "User-Session unexpectedly expired" : "La sessió ha caducat inesperadament", "Provided email-address is not valid" : "L'adreça electrònica proporcionada no és vàlida", "%s has published the calendar »%s«" : "%s ha publicat el calendari «%s»", - "Unexpected error sending email. Please contact your administrator." : "Error inesperat en enviar el correu. Contacteu el vostre administrador.", + "Unexpected error sending email. Please contact your administrator." : "S'ha produït un error inesperat en enviar el correu electrònic. Contacteu amb l'administrador.", "Successfully sent email to %1$s" : "Correu enviat correctament a %1$s", "Hello," : "Hola,", "We wanted to inform you that %s has published the calendar »%s«." : "Us volem informar que %s ha publicat el calendari «%s».", - "Open »%s«" : "Obre «%s»", + "Open »%s«" : "Obre »%s«", "Cheers!" : "A reveure!", "Upcoming events" : "Pròxims esdeveniments", + "No more events today" : "Avui no hi ha més esdeveniments", + "No upcoming events" : "No hi ha propers esdeveniments", + "More events" : "Més esdeveniments", + "%1$s with %2$s" : "%1$s amb %2$s", + "Calendar" : "Calendari", + "New booking {booking}" : "Nova reserva {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) va reservar la cita \"{config_display_name}\" el {date_time}.", "Appointments" : "Cites", - "Schedule appointment \"%s\"" : "Planifica cita \"%s\"", - "Schedule an appointment" : "Planifica una cita", + "Schedule appointment \"%s\"" : "Agenda la cita \"%s\"", + "Schedule an appointment" : "Agenda una cita", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Preparar-se per a %s", "Follow up for %s" : "Seguiment de %s", - "Your appointment \"%s\" needs confirmation" : "La vostra cita \"%s\" necessita confirmació", + "Your appointment \"%s\" with %s needs confirmation" : "La vostra cita \"%s\" amb %s necessita confirmació", "Dear %s, please confirm your booking" : "Benvolgut %s, confirmeu la vostra reserva", "Confirm" : "Confirma", + "Appointment with:" : "Cita amb:", + "Description:" : "Descripció:", "This confirmation link expires in %s hours." : "Aquest enllaç de confirmació caduca d'aquí a %s hores.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Si després de tot voleu cancel·lar la cita, poseu-vos en contacte amb el vostre organitzador.", - "Appointment:" : "Cita:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Si després de tot, voleu cancel·lar la cita, poseu-vos en contacte amb el vostre organitzador responent a aquest correu electrònic o visitant la seva pàgina de perfil.", + "Your appointment \"%s\" with %s has been accepted" : "S'ha acceptat la vostra cita \"%s\" amb %s", + "Dear %s, your booking has been accepted." : "Benvolgut %s, s'ha acceptat la vostra reserva.", + "Appointment for:" : "Cita per a:", "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Rebreu un enllaç amb el correu electrònic de confirmació", "Where:" : "Ubicació:", - "Description:" : "Descripció:", - "Calendar" : "Calendari", + "Comment:" : "Comentari:", + "You have a new appointment booking \"%s\" from %s" : "Tens una nova reserva de cita \"%s\" de %s", + "Dear %s, %s (%s) booked an appointment with you." : "Benvolgut %s, %s (%s) ha reservat una cita amb tu.", "A Calendar app for Nextcloud" : "Una aplicació de calendari per al Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "L'aplicació Calendar és una interfície d'usuari per al servidor CalDAV de Nextcloud. Sincronitza fàcilment els esdeveniments de diversos dispositius amb el teu Nextcloud i permet editar-los directament.\n\n* 🚀 **Integració amb altres aplicacions de Nextcloud!** Amb Contactes actualment: més per venir.\n* 🌐 **Suport WebCal!** Vols veure els dies de partit del teu equip favorit al teu calendari? Cap problema!\n* 🙋 **Assistents!** Convida persones als teus esdeveniments\n* ⌚️ **Lliure/Ocupat!** Consulta quan els teus assistents estan disponibles per reunir-se\n* ⏰ **Recordatoris!** Obté alarmes d'esdeveniments al vostre navegador i per correu electrònic\n* 🔍 Cerca! Troba els teus esdeveniments amb facilitat\n* ☑️ Tasques! Consulta les tasques amb data de venciment directament al calendari\n* 🙈 **No estem reinventant la roda!** Basat en la gran llibreries [biblioteca c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https:// github.com/mozilla-comm/ical.js) i [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Dia anterior", "Previous week" : "Setmana anterior", + "Previous year" : "Any anterior", "Previous month" : "Mes anterior", "Next day" : "Dia següent", "Next week" : "Setmana següent", + "Next year" : "Any següent", "Next month" : "Mes següent", - "New event" : "Esdeveniment nou", + "Create new event" : "Crea un nou esdeveniment", + "Event" : "Esdeveniment", "Today" : "Avui", "Day" : "Dia", "Week" : "Setmana", "Month" : "Mes", + "Year" : "Any", "List" : "Llista", + "Appointment link was copied to clipboard" : "L'enllaç de la cita s'ha copiat al porta-retalls", + "Appointment link could not be copied to clipboard" : "No s'ha pogut copiar l'enllaç de la cita al porta-retalls", "Preview" : "Previsualitza", "Copy link" : "Copia l'enllaç", - "Edit" : "Edita", + "Edit" : "Edició", "Delete" : "Suprimeix", - "Appointment link was copied to clipboard" : "L'enllaç de la cita s'ha copiat al porta-retalls", - "Appointment link could not be copied to clipboard" : "No s'ha pogut copiar l'enllaç de la cita al porta-retalls", - "Add new" : "Afegeix nou/nova", - "Untitled calendar" : "Calendari sense títol", - "Edit name" : "Edita el nom", - "Saving name …" : "Desant el nom …", - "Edit color" : "Edita el color", - "Saving color …" : "Desant el color …", - "Copy private link" : "Copia l'enllaç privat", - "Export" : "Exporta", - "Unshare from me" : "Deixa de compartir", - "Disable calendar \"{calendar}\"" : "Desactiva el calendari \"{calendar}\"", - "Disable untitled calendar" : "Desactiva el calendari sense títol", - "Enable calendar \"{calendar}\"" : "Activa el calendari \"{calendar}\"", - "Enable untitled calendar" : "Activa el calendari sense títol", + "Appointment schedules" : "Horaris de cites", + "Create new" : "Crea nou", + "Disable calendar \"{calendar}\"" : "Inhabilita el calendari \"{calendar}\"", + "Disable untitled calendar" : "Inhabilita el calendari sense títol", + "Enable calendar \"{calendar}\"" : "Habilita el calendari \"{calendar}\"", + "Enable untitled calendar" : "Habilita el calendari sense títol", "An error occurred, unable to change visibility of the calendar." : "S'ha produït un error. No s'ha canviat la visibilitat del calendari.", - "An error occurred, unable to delete the calendar." : "S'ha produït un error. No s'ha suprimit el calendari.", - "Calendar link copied to clipboard." : "S'ha copiat l'enllaç del calendari al porta-retalls.", - "Calendar link could not be copied to clipboard." : "No s'ha pogut copiar l'enllaç del calendari al porta-retalls.", - "An error occurred, unable to rename the calendar." : "S'ha produït un error. No s'ha canviat el nom del calendari.", - "An error occurred, unable to change the calendar's color." : "S'ha produït un error. No s'ha canviat el color del calendari.", + "Untitled calendar" : "Calendari sense títol", + "Shared with you by" : "Compartit amb tu per", + "Edit and share calendar" : "Edició i comparteix el calendari", + "Edit calendar" : "Edició del calendari", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Deixant de compartir el calendari en {countdown} segons","S'està deixant de compartir el calendari en {countdown} segons"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Eliminant el calendari en {countdown} segons","S'està suprimint el calendari en {countdown} segons"], - "Share link" : "Enllaç de compartició", - "Publish calendar" : "Publica el calendari", - "Publishing calendar" : "S'està publicant el calendari", - "Copy public link" : "Copia l'enllaç públic", - "Send link to calendar via email" : "Enviar per correu l'enllaç al calendari", - "Enter one address" : "Escriviu una adreça", - "Sending email …" : "Envian correu …", - "Copy subscription link" : "Copiar l'enllaç de subscripció", - "Copying link …" : "Copiant l'enllaç …", - "Copied link" : "S'ha copiat l'enllaç", - "Could not copy link" : "No s'ha pogut copiar l'enllaç", - "Copy embedding code" : "Copiar el codi per inserir", - "Copying code …" : "Copiant el codi …", - "Copied code" : "Codi copiat", - "Could not copy code" : "No s'ha pogut copiar el codi", - "Delete share link" : "Suprimeix l'enllaç de compartició", - "Deleting share link …" : "S'està suprimint l'enllaç de compartició …", - "An error occurred, unable to publish calendar." : "Ha succeït un error i no ha estat possible publicar el calendari.", - "An error occurred, unable to send email." : "Ha succeït un error i no ha estat possible enviar el correu.", - "Embed code copied to clipboard." : "S'ha copiat el codi al porta-retalls.", - "Embed code could not be copied to clipboard." : "No s'ha pogut copiar al porta-retalls el codi d'inserció.", - "Unpublishing calendar failed" : "Ha fallat la des-publicació del calendari", - "Share with users or groups" : "Comparteix amb usuaris o grups", - "No users or groups" : "No hi ha usuaris ni grups", - "can edit" : "pot editar-lo", - "Unshare with {displayName}" : "S'ha deixat de compartir amb {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Ha succeït un error i no s'ha pogut canviar la no-compartició del calendari.", - "An error occurred, unable to change the permission of the share." : "Ha succeït un error i no s'ha pogut canviar els permisos de compartició.", - "+ New calendar" : "+ Calendari nou", + "An error occurred, unable to create the calendar." : "Ha succeït un error i no s'ha pogut crear el calendari.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Escriviu un enllaç vàlid (que comenci amb http://, https://, webcal://, o webcals://)", + "Calendars" : "Calendaris", + "Add new" : "Afegeix nou/nova", "New calendar" : "Calendari nou", "Name for new calendar" : "Nom per al nou calendari", "Creating calendar …" : "Creant el calendari …", "New calendar with task list" : "Calendari nou amb llista de tasques", "New subscription from link (read-only)" : "Nova subscripció des d'enllaç (només lectura)", "Creating subscription …" : "Creant la subscripció …", - "An error occurred, unable to create the calendar." : "Ha succeït un error i no s'ha pogut crear el calendari.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Escriviu un enllaç vàlid (que comenci amb http://, https://, webcal://, o webcals://)", + "Add public holiday calendar" : "Afegeix un calendari de festes públiques", + "Add custom public calendar" : "Afegeix un calendari públic personalitzat", + "Calendar link copied to clipboard." : "S'ha copiat l'enllaç del calendari al porta-retalls.", + "Calendar link could not be copied to clipboard." : "No s'ha pogut copiar l'enllaç del calendari al porta-retalls.", + "Copy subscription link" : "Copiar l'enllaç de subscripció", + "Copying link …" : "Copiant l'enllaç …", + "Copied link" : "S'ha copiat l'enllaç", + "Could not copy link" : "No s'ha pogut copiar l'enllaç", + "Export" : "Exporta", + "Untitled item" : "Element sense títol", + "Unknown calendar" : "Calendari desconegut", + "Could not load deleted calendars and objects" : "No s'han pogut carregar els calendaris i els objectes suprimits", + "Could not delete calendar or event" : "No s'ha pogut suprimir el calendari o l'esdeveniment", + "Could not restore calendar or event" : "No s'ha pogut restaurar el calendari o l'esdeveniment", + "Do you really want to empty the trash bin?" : "Realment voleu buidar la paperera?", + "Empty trash bin" : "Buida la paperera", "Trash bin" : "Paperera", - "Loading deleted elements." : "S'estan carregant elements suprimits.", - "You do not have any deleted elements." : "No teniu cap element suprimit.", + "Loading deleted items." : "S'estan carregant els elements suprimits.", + "You do not have any deleted items." : "No teniu cap element suprimit.", "Name" : "Nom", "Deleted" : "Suprimit", "Restore" : "Restaura", "Delete permanently" : "Suprimeix de manera permanent", - "Empty trash bin" : "Buida la paperera", - "Untitled element" : "Element sense títol", - "Unknown calendar" : "Calendari desconegut", - "Could not load deleted calendars and objects" : "No s'han pogut carregar els calendaris i els objectes suprimits", - "Could not restore calendar or event" : "No s'ha pogut restaurar el calendari o l'esdeveniment", - "Do you really want to empty the trash bin?" : "Realment voleu buidar la paperera?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Els elements de la paperera se suprimeixen al cap de {numDays} dia","Els elements de la paperera se suprimeixen al cap de {numDays} dies"], + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Els elements de la paperera se suprimeixen al cap de {numDays} dia","Els elements de la paperera se suprimeixen al cap de {numDays} dies"], "Could not update calendar order." : "No s'ha pogut actualitzar l'ordre del calendari.", - "Import calendars" : "Importar calendaris", + "Shared calendars" : "Calendaris compartits", + "Deck" : "Targetes", + "Hidden" : "Ocult", + "Internal link" : "Enllaç intern", + "A private link that can be used with external clients" : "Un enllaç privat que pot utilitzar-se amb clients externs", + "Copy internal link" : "Copia l'enllaç intern", + "An error occurred, unable to publish calendar." : "Ha succeït un error i no ha estat possible publicar el calendari.", + "An error occurred, unable to send email." : "Ha succeït un error i no ha estat possible enviar el correu.", + "Embed code copied to clipboard." : "S'ha copiat el codi al porta-retalls.", + "Embed code could not be copied to clipboard." : "No s'ha pogut copiar al porta-retalls el codi d'inserció.", + "Unpublishing calendar failed" : "Ha fallat la des-publicació del calendari", + "Share link" : "Enllaç d'ús compartit", + "Copy public link" : "Copia l'enllaç públic", + "Send link to calendar via email" : "Enviar per correu l'enllaç al calendari", + "Enter one address" : "Escriviu una adreça", + "Sending email …" : "S'està enviant un correu…", + "Copy embedding code" : "Còpia del codi per inserir", + "Copying code …" : "Copiant el codi …", + "Copied code" : "Codi copiat", + "Could not copy code" : "No s'ha pogut copiar el codi", + "Delete share link" : "Suprimeix l'enllaç de compartició", + "Deleting share link …" : "S'està suprimint l'enllaç de compartició …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Equip)", + "An error occurred while unsharing the calendar." : "S'ha produït un error en deixar de compartir el calendari.", + "An error occurred, unable to change the permission of the share." : "Ha succeït un error i no s'ha pogut canviar els permisos de compartició.", + "can edit" : "pot editar-lo", + "Unshare with {displayName}" : "S'ha deixat de compartir amb {displayName}", + "Share with users or groups" : "Comparteix amb usuaris o grups", + "No users or groups" : "No hi ha usuaris ni grups", + "Failed to save calendar name and color" : "No s'ha pogut desar el nom i el color del calendari", + "Calendar name …" : "Nom del calendari …", + "Never show me as busy (set this calendar to transparent)" : "No em mostris mai com a ocupat (configura aquest calendari com a transparent)", + "Share calendar" : "Comparteix el calendari", + "Unshare from me" : "Deixa de compartir", + "Save" : "Desa", + "Import calendars" : "Importació calendaris", "Please select a calendar to import into …" : "Escolliu un calendari per ser importat …", "Filename" : "Nom del fitxer", "Calendar to import into" : "Calendari a importar", "Cancel" : "Cancel·la", - "_Import calendar_::_Import calendars_" : ["Importar calendari","Importa calendaris"], + "_Import calendar_::_Import calendars_" : ["Importar calendari","Importació de calendaris"], + "Select the default location for attachments" : "Seleccioneu la ubicació per defecte per als fitxers adjunts", + "Pick" : "Tria", + "Invalid location selected" : "La ubicació seleccionada no és vàlida", + "Attachments folder successfully saved." : "La carpeta de fitxers adjunts s'ha desat correctament.", + "Error on saving attachments folder." : "Error en desar la carpeta de fitxers adjunts.", + "Default attachments location" : "Ubicació per defecte dels fitxers adjunts", "{filename} could not be parsed" : "No s'ha pogut entendre el contingut del fitxer {filename}", "No valid files found, aborting import" : "No s'han trobat fitxers que siguin vàlids i s'ha avortat la importació", - "Import partially failed. Imported {accepted} out of {total}." : "La importació ha fallat parcialment. S'han importat {accepted} d'un total de {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["S'ha importat correctament %n esdeveniment","S'ha importat correctament %n esdeveniments"], + "Import partially failed. Imported {accepted} out of {total}." : "La importació ha fallat parcialment. S'han importat {accepted} d'un total de {total}.", "Automatic" : "Automàtic", "Automatic ({detected})" : "Automàtic ({detected})", - "New setting was not saved successfully." : "No s'ha desat correctament la nova configuració.", - "Shortcut overview" : "Descripció general de la drecera", - "or" : "o", + "New setting was not saved successfully." : "No s'ha desat correctament els nous paràmetres.", "Navigation" : "Navegació", "Previous period" : "Període anterior", "Next period" : "Període següent", @@ -139,6 +171,7 @@ "Day view" : "Vista de dia", "Week view" : "Vista de setmana", "Month view" : "Vista de mes", + "Year view" : "Vista anual", "List view" : "Vista de llista", "Actions" : "Accions", "Create event" : "Crea un esdeveniment", @@ -148,23 +181,29 @@ "Save edited event" : "Desa l'esdeveniment editat", "Delete edited event" : "Suprimeix l'esdeveniment editat", "Duplicate event" : "Esdeveniment duplicat", - "Enable birthday calendar" : "Activa el calendari d'aniversaris", + "Shortcut overview" : "Descripció general de la drecera", + "or" : "o", + "Calendar settings" : "Paràmetres de Calendari", + "At event start" : "A l'inici de l'esdeveniment", + "No reminder" : "Sense recordatoris", + "Failed to save default calendar" : "No s'ha pogut desar el calendari predeterminat", + "CalDAV link copied to clipboard." : "S'ha copiat al porta-retalls l'enllaç CalDAV.", + "CalDAV link could not be copied to clipboard." : "No s'ha pogut copiar al porta-retalls l'enllaç CalDAV.", + "Enable birthday calendar" : "Habilitar el calendari d'aniversaris", "Show tasks in calendar" : "Mostra les tasques en el calendari", - "Enable simplified editor" : "Habilita l'editor simplificat", - "Limit visible events per view" : "Limita el esdeveniments visibles per visualització", + "Enable simplified editor" : "Habilitar l'editor simplificat", + "Limit the number of events displayed in the monthly view" : "Limita el nombre d'esdeveniments que es mostren a la vista mensual", "Show weekends" : "Mostra els caps de setmana", "Show week numbers" : "Mostra el número de la setmana", "Time increments" : "Increments de temps", + "Default calendar for incoming invitations" : "Calendari predeterminat per a les invitacions entrants", "Default reminder" : "Recordatori per defecte", - "Copy primary CalDAV address" : "Copia l'adreça CalDEV primària", + "Copy primary CalDAV address" : "Copia l'adreça CalDAV primària", "Copy iOS/macOS CalDAV address" : "Copia l'adreça CalDAV iOS/macOS", - "Personal availability settings" : "Configuració de disponibilitat personal", + "Personal availability settings" : "Paràmetres de disponibilitat personal", "Show keyboard shortcuts" : "Mostra les dreceres del teclat", - "No reminder" : "Sense recordatoris", - "CalDAV link copied to clipboard." : "S'ha copiat al porta-retalls l'enllaç CalDAV.", - "CalDAV link could not be copied to clipboard." : "No s'ha pogut copiar al porta-retalls l'enllaç CalDAV.", - "Appointment was created successfully" : "La cita s'ha creat correctament", - "Appointment was updated successfully" : "La cita s'ha actualitzat correctament", + "Appointment schedule successfully created" : "S'ha creat correctament la planificació de cites", + "Appointment schedule successfully updated" : "La planificació de cites s'ha actualitzat correctament", "_{duration} minute_::_{duration} minutes_" : ["{duration} minut","{duration} minuts"], "0 minutes" : "0 minuts", "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} hores"], @@ -175,7 +214,14 @@ "To configure appointments, add your email address in personal settings." : "Per configurar cites, afegiu la vostra adreça de correu electrònic a la configuració personal.", "Public – shown on the profile page" : "Públic – es mostra a la pàgina de perfil", "Private – only accessible via secret link" : "Privat – només accessible mitjançant un enllaç secret", + "Appointment schedule saved" : "S'ha guardat l'agenda de cites", + "Create appointment schedule" : "Crea d'una planificació de cites", + "Edit appointment schedule" : "Edició la planificació de cites", + "Update" : "Actualitza", + "Appointment name" : "Nom de la cita", "Location" : "Ubicació", + "Create a Talk room" : "Crea una sala de Converses", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Un enllaç únic que es generarà per cada cita reservada i enviada mitjançant el correu electrònic de confirmació", "Description" : "Descripció", "Visibility" : "Visibilitat", "Duration" : "Durada", @@ -193,6 +239,7 @@ "Friday" : "Divendres", "Saturday" : "Dissabte", "Sunday" : "Diumenge", + "Weekdays" : "Dies de la setmana", "Add time before and after the event" : "Afegiu temps abans i després de l'esdeveniment", "Before the event" : "Abans de l'esdeveniment", "After the event" : "Després de l’esdeveniment", @@ -200,18 +247,29 @@ "Minimum time before next available slot" : "Temps mínim abans de la propera unitat temporal disponible", "Max slots per day" : "Màxim d'unitats temporals per dia", "Limit how far in the future appointments can be booked" : "Limiteu fins a quin punt es poden reservar cites futures", - "Create appointment" : "Crear cita", - "Edit appointment" : "Edita la cita", - "Save" : "Desa", - "Update" : "Actualitza", + "It seems a rate limit has been reached. Please try again later." : "Sembla que s'ha arribat a un límit de freqüència màxima. Si us plau, torna-ho a provar més tard.", "Please confirm your reservation" : "Si us plau, confirmeu la vostra reserva", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "T'hem enviat un correu electrònic amb els detalls. Si us plau, confirmeu la vostra cita mitjançant l'enllaç del correu electrònic. Ja podeu tancar aquesta pàgina.", "Your name" : "El vostre nom", "Your email address" : "La vostra adreça de correu", "Please share anything that will help prepare for our meeting" : "Si us plau, compartiu qualsevol cosa que ajudi a preparar la nostra reunió", - "Could not book the appointment. Please try again later or contact the organizer." : "No s'ha pogut reservar la cita. Torneu-ho a provar més tard o poseu-vos en contacte amb l'organitzador.", - "Book the appointment" : "Reserva la cita", - "Reminder" : "Recordatori", + "Could not book the appointment. Please try again later or contact the organizer." : "No s'ha pogut reservar la cita. Torneu-ho a provar més tard o contacteu amb l'organitzador.", + "Back" : "Torna", + "Book appointment" : "Reserva cita", + "Error fetching Talk conversations." : "S'ha produït un error en recuperar les converses a Converses.", + "Conversation does not have a valid URL." : "La conversa no té un URL vàlid.", + "Successfully added Talk conversation link to location." : "S'ha afegit correctament l'enllaç de Converses a la ubicació.", + "Successfully added Talk conversation link to description." : "S'ha afegit correctament l'enllaç de Converses a la descripció.", + "Failed to apply Talk room." : "No s'ha pogut aplicar la sala de Converses.", + "Error creating Talk conversation" : "S'ha produït un error en crear la Converses", + "Select a Talk Room" : "Seleccioneu una sala de Converses", + "Add Talk conversation" : "Afegeix una Converses", + "Fetching Talk rooms…" : "S'estan obtenint sales de Converses…", + "No Talk room available" : "No hi ha sala de Converses disponible", + "Create a new conversation" : "Crea una conversa nova", + "Select conversation" : "Seleccioneu una conversa", + "on" : "a", + "at" : "a", "before at" : "abans a les", "Notification" : "Notificació", "Email" : "Correu", @@ -222,114 +280,141 @@ "Edit time" : "Modifica l'hora", "Save time" : "Desar l'hora", "Remove reminder" : "Suprimeix el recordatori", - "on" : "a", - "at" : "a", - "+ Add reminder" : "+ Afegeix un recordatori", "Add reminder" : "Afegeix un recordatori", - "_second_::_seconds_" : ["segon","segons"], - "_minute_::_minutes_" : ["minut","minuts"], - "_hour_::_hours_" : ["hora","hores"], - "_day_::_days_" : ["dia","dies"], - "_week_::_weeks_" : ["setmana","setmanes"], + "seconds" : "segons", + "minutes" : "minuts", + "hours" : "hores", + "days" : "dies", + "weeks" : "setmanes", + "Choose a file to add as attachment" : "Trieu un fitxer per afegir als adjunts", + "Choose a file to share as a link" : "Tria un fitxer per compartir-lo com a enllaç", + "Attachment {name} already exist!" : "El fitxer adjunt {name} ja existeix!", + "Could not upload attachment(s)" : "No s'han pogut pujar els fitxers adjunts", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Esteu a punt d'anar a {host}. Esteu segur de continuar? Enllaç: {link}", + "Proceed" : "Continua", + "No attachments" : "Sense fitxers adjunts", + "Add from Files" : "Afegeix de Fitxers", + "Upload from device" : "Pujada des del dispositiu", + "Delete file" : "Suprimeix el fitxer", + "Confirmation" : "Confirmació", + "_{count} attachment_::_{count} attachments_" : ["{count} fitxer adjunt","{count} fitxers adjunts"], "Suggested" : "Suggerit", "Available" : "Disponible", - "Not available" : "No disponible", - "Checking availability" : "Consultant disponibilitat", "Invitation accepted" : "S'ha acceptat la invitació", "Accepted {organizerName}'s invitation" : "S'ha acceptat la invitació de {organizerName}", + "Participation marked as tentative" : "Participació marcada com a provisional", + "Invitation is delegated" : "La invitació és delegada", + "Not available" : "No disponible", "Invitation declined" : "S'ha declinat la invitació", "Declined {organizerName}'s invitation" : "{organizerName}'s ha declinat la invitació", - "Invitation is delegated" : "La invitació és delegada", - "Participation marked as tentative" : "Participació marcada com a provisional", - "Invitation sent" : "Invitació enviada", + "Availability will be checked" : "Es comprovarà la disponibilitat", + "Invitation will be sent" : "S'enviarà la invitació", + "Failed to check availability" : "No s'ha pogut comprovar la disponibilitat", + "Failed to deliver invitation" : "No s'ha pogut lliurar la invitació", + "Awaiting response" : "Esperant resposta", + "Checking availability" : "Consultant disponibilitat", "Has not responded to {organizerName}'s invitation yet" : "Encara no ha respost a la invitació de {organizerName}", - "Availability of attendees, resources and rooms" : "Disponibilitat d'assistents, recursos i espais", + "chairperson" : "responsable", + "required participant" : "participant obligatori", + "non-participant" : "no participant", + "optional participant" : "participant opcional", "{organizer} (organizer)" : "{organizer} (organitzador)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Disponibilitat d'assistents, recursos i espais", + "Suggestion accepted" : "S'ha acceptat el suggeriment", + "Legend" : "Llegenda", + "Out of office" : "Fora de l'oficina", + "Attendees:" : "Assistents:", + "Done" : "Fet", + "Search room" : "Cerca sala", + "Room name" : "Nom de la sala", + "Check room availability" : "Consulta la disponibilitat de l'habitació", "Free" : "Disponible", "Busy (tentative)" : "Ocupat (provisional)", "Busy" : "Ocupat", - "Out of office" : "Fora de l'oficina", "Unknown" : "Desconegut", - "Accept" : "Accepta", - "Decline" : "Rebutja", - "Tentative" : "Provisional", + "Find a time" : "Troba un moment", "The invitation has been accepted successfully." : "La invitació s'ha acceptat correctament.", "Failed to accept the invitation." : "No s'ha pogut acceptar la invitació.", "The invitation has been declined successfully." : "La invitació s'ha declinat correctament.", "Failed to decline the invitation." : "No s'ha pogut declinar la invitació.", "Your participation has been marked as tentative." : "La teva participació s'ha marcat com a provisional.", "Failed to set the participation status to tentative." : "No s'ha pogut establir l'estat de participació com a provisional.", - "Create Talk room for this event" : "Crea una sala a Talk per a aquest esdeveniment", - "Show busy times" : "Mostra els horaris ocupats", + "Accept" : "Accepta", + "Decline" : "Rebutja", + "Tentative" : "Provisional", "No attendees yet" : "Encara no hi ha cap participant", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} convidats, {confirmedCount} confirmats", + "Successfully appended link to talk room to location." : "S'ha afegit correctament l'enllaç a la sala de conversa a la ubicació.", "Successfully appended link to talk room to description." : "S'ha afegit l'enllaç d'una nova sala de Talk a la descripció de l'esdeveniment.", "Error creating Talk room" : "Ha succeït un error tractant de crear la sala a Talk", - "Send email" : "Enviar correu", + "Attendees" : "Assistents", + "_%n more guest_::_%n more guests_" : ["%n convidat més","%n convidats més"], + "Remove group" : "Suprimir el grup", + "Remove attendee" : "Suprimeix el participant", + "Request reply" : "Sol·licitar resposta", "Chairperson" : "Organització", "Required participant" : "Participació obligatòria", "Optional participant" : "Participació opcional", "Non-participant" : "Sense participació", - "Remove attendee" : "Suprimeix el participant", - "Search for emails, users or contacts" : "Cerca correus electrònics, usuaris o contactes", + "_%n member_::_%n members_" : ["{n} membre","{n} membres"], + "Search for emails, users, contacts, contact groups or teams" : "Cerca correus electrònics, usuaris, contactes, grups de contactes o equips", "No match found" : "No s'ha trobat cap coincidència", + "Note that members of circles get invited but are not synced yet." : "Tingueu en compte que els membres dels cercles són convidats però encara no es sincronitzen.", + "Note that members of contact groups get invited but are not synced yet." : "Tingueu en compte que els membres dels grups de contacte són convidats, però encara no es sincronitzen.", "(organizer)" : "(organitza l'esdeveniment)", + "Make {label} the organizer" : "Feu que {label} sigui l'organitzador", + "Make {label} the organizer and attend" : "Feu que {label} sigui l'organitzador i assistent", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Per enviar invitacions i atendre les respostes, cal que [linkopen]afegiu la vostra adreça de correu a la vostra configuració personal[linkclose].", "Remove color" : "Suprimeix el color", "Event title" : "Títol de l'esdeveniment", - "All day" : "Tot el dia", "Cannot modify all-day setting for events that are part of a recurrence-set." : "No es pot modificar la configuració de tot el dia per als esdeveniments que formen part d'un conjunt de recurrència.", - "from {startDate}" : "del {startDate}", - "from {startDate} at {startTime}" : "del {startDate} a les {startTime}", - "to {endDate}" : "al {endDate}", - "to {endDate} at {endTime}" : "al {endDate} a les {endTime}", + "From" : "De", + "To" : "A", "Repeat" : "Repeteix", - "End repeat" : "Finalitza la repetició", - "Select to end repeat" : "Seleccioneu per finalitzar repetició", + "_time_::_times_" : ["vegada","vegades"], "never" : "mai", "on date" : "el dia", "after" : "després de", - "_time_::_times_" : ["vegada","vegades"], + "End repeat" : "Finalitza la repetició", + "Select to end repeat" : "Seleccioneu per finalitzar repetició", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Aquest esdeveniment és l'excepció de recurrència d'un conjunt de recurrència. No hi podeu afegir una regla de recurrència.", "first" : "primer", - "third" : "tercer", - "fourth" : "quart", - "fifth" : "cinquè", - "second to last" : "penúltim", - "last" : "últim", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Els canvis a la regla de recurrència només afectarà en aquesta i futures ocurrències.", "Repeat every" : "Repeteix cada", "By day of the month" : "Per dia del mes", "On the" : "Al", + "_day_::_days_" : ["dia","dies"], + "_week_::_weeks_" : ["setmana","setmanes"], "_month_::_months_" : ["mes","mesos"], "_year_::_years_" : ["any","anys"], + "On specific day" : "En un dia concret", "weekday" : "dia de la setmana", "weekend day" : "dia de cap de setmana", - "No recurrence" : "Sense recurrència", + "Does not repeat" : "No es repeteix", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "La definició de recurrència d'aquest esdeveniment no és del tot compatible amb Nextcloud. Si canvieu les opcions de recurrència, es poden perdre certes recurrències.", - "Suggestions" : "Suggeriments", "No rooms or resources yet" : "Encara no hi ha sales ni recursos", + "Resources" : "Recursos", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seient","{seatingCapacity} seients"], "Add resource" : "Afegeix un recurs", "Has a projector" : "Té un projector", "Has a whiteboard" : "Té una pissarra blanca", "Wheelchair accessible" : "Accessible amb cadira de rodes", "Remove resource" : "Suprimeix el recurs", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seient","{seatingCapacity} seients"], - "Projector" : "Projector", - "Whiteboard" : "Pissarra blanca", "Search for resources or rooms" : "Cerca recursos o sales", "available" : "disponible", "unavailable" : "no disponible", + "Show all rooms" : "Mostra totes les habitacions", + "Projector" : "Projector", + "Whiteboard" : "Pissarra blanca", "Room type" : "Tipus de sala", "Any" : "Qualsevol", "Minimum seating capacity" : "Capacitat mínima de seients", - "More" : "Més", - "Update this occurrence" : "Actualitza aquesta ocurrència", + "More details" : "Més detalls", "Update this and all future" : "Actualitza aquesta i les futures", + "Update this occurrence" : "Actualitza aquesta ocurrència", "Public calendar does not exist" : "No existeix un calendari públic", "Maybe the share was deleted or has expired?" : "Potser la compartició va ser esborrada o va expirar?", - "Please select a time zone:" : "Seleccioneu una zona horària:", - "Pick a time" : "Tria una hora", - "Pick a date" : "Tria una data", "from {formattedDate}" : "de {formattedDate}", "to {formattedDate}" : "a {formattedDate}", "on {formattedDate}" : "el {formattedDate}", @@ -339,9 +424,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} a les {formattedTime}", "Please enter a valid date" : "Indiqueu una data vàlida", "Please enter a valid date and time" : "Indiqueu una data i hora vàlides", + "Select a time zone" : "Seleccioneu una zona horària", + "Please select a time zone:" : "Seleccioneu una zona horària:", + "Pick a time" : "Tria una hora", + "Pick a date" : "Tria una data", "Type to search time zone" : "Escriviu per cercar la zona horària", "Global" : "Global", - "Select date" : "Seleccioneu una data", + "Holidays in {region}" : "Festius a {region}", + "An error occurred, unable to read public calendars." : "S'ha produït un error, no es poden llegir els calendaris públics.", + "An error occurred, unable to subscribe to calendar." : "S'ha produït un error, no es pot subscriure al calendari.", + "Public holiday calendars" : "Calendaris de festius", + "Public calendars" : "Calendaris públics", + "No valid public calendars configured" : "No s'han configurat calendaris públics vàlids", + "Speak to the server administrator to resolve this issue." : "Parleu amb l'administrador del servidor per resoldre aquest problema.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Thunderbird proporciona els calendaris de festius. Les dades del calendari es baixaran de {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Aquests calendaris públics els suggereix l'administrador del servidor. Les dades del calendari es descarregaran del lloc web corresponent.", + "By {authors}" : "Per {authors}", + "Subscribed" : "Subscrit", + "Subscribe" : "Subscriu-m'hi", + "Could not fetch slots" : "No s'han pogut obtenir les unitats temporals", + "Select a date" : "Seleccioneu una data", "Select slot" : "Seleccioneu unitat temporal", "No slots available" : "No hi han unitats temporals disponibles", "The slot for your appointment has been confirmed" : "S'ha confirmat l’unitat temporal per a la vostra cita", @@ -358,24 +460,25 @@ "Personal" : "Personal", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "La detecció automàtica de la zona horària va determinar que la vostra zona horària fos UTC.\nÉs probable que això sigui el resultat de les mesures de seguretat del vostre navegador web.\nSi us plau, configureu la vostra zona horària manualment a la configuració del calendari.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "No s'ha trobat la vostra zona horària configurada ({timezoneId}). Tornant a l'UTC.\nCanvieu la vostra zona horària a la configuració i informeu d'aquest problema.", - "No more events today" : "Avui no hi ha més esdeveniments", - "No upcoming events" : "No hi ha propers esdeveniments", - "Create a new event" : "Crea un esdeveniment nou", - "[Today]" : "[Avui]", - "[Tomorrow]" : "[Demà]", - "[Yesterday]" : "[Ahir]", - "[Last] dddd" : "[Últim] dddd", + "Availability of {displayName}" : "Disponibilitat de {displayName}", + "Edit event" : "Edita l'esdeveniment", "Event does not exist" : "L'esdeveniment no existeix", "Duplicate" : "Duplica", "Delete this occurrence" : "Suprimeix aquesta ocurrència", "Delete this and all future" : "Suprimeix aquesta i les ocurrències futures", - "Details" : "Detalls", - "Attendees" : "Assistents", - "Resources" : "Recursos", + "All day" : "Tot el dia", + "Modifications wont get propagated to the organizer and other attendees" : "Les modificacions no es propagaran a l'organitzador i als altres assistents", + "Managing shared access" : "Gestió de l'accés compartit", + "Deny access" : "Denega l'accés", + "Invite" : "Convida", + "_User requires access to your file_::_Users require access to your file_" : ["L'usuari requereix accés al vostre fitxer","Els usuaris requereixen accés al vostre fitxer"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["El fitxer adjunt requereix accés compartit","Els fitxers adjunts requereixen accés compartit"], + "Untitled event" : "Esdeveniment sense títol", "Close" : "Tanca", - "Show more details" : "Mostra més detalls", + "Modifications will not get propagated to the organizer and other attendees" : "Les modificacions no es propagaran a l'organitzador i als altres assistents", "Subscribe to {name}" : "Subscriure a {name}", "Export {name}" : "Exporta {name}", + "Show availability" : "Mostra disponibilitat", "Anniversary" : "Commemoració", "Appointment" : "Cita", "Business" : "Negocis", @@ -403,7 +506,6 @@ "on {time}" : "a les {time}", "on {time} ({timezoneId})" : "a les {time} ({timezoneId})", "Week {number} of {year}" : "Setmana {number} del {year}", - "Does not repeat" : "No es repeteix", "Daily" : "Diàriament", "Weekly" : "Setmanalment", "Monthly" : "Mensualment", @@ -415,24 +517,30 @@ "_on {weekday}_::_on {weekdays}_" : ["el {weekday}","els {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["el dia {dayOfMonthList}","els dies {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "al {ordinalNumber} {byDaySet}", - "in {monthNames}" : "al {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "a {monthNames} al {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "al {monthNames} al {ordinalNumber} {byDaySet}", "until {untilDate}" : "fins el {untilDate}", "_%n time_::_%n times_" : ["%n vegada","%n vegades"], - "Untitled event" : "Esdeveniment sense títol", + "second" : "segon", + "third" : "tercer", + "fourth" : "quart", + "fifth" : "cinquè", + "second to last" : "penúltim", + "last" : "últim", "Untitled task" : "Tasca sense títol", "Please ask your administrator to enable the Tasks App." : "Demaneu al vostre administrador que habiliti l'aplicació de Tasques.", - "Prev" : "Anterior", - "Next" : "Següent", - "Prev year" : "Any anterior", - "Next year" : "Any següent", - "Year" : "Any", + "You are not allowed to edit this event as an attendee." : "No teniu permès editar aquest esdeveniment com a assistent.", "W" : "S", "%n more" : "%n més", "No events to display" : "No hi ha esdeveniments per visualitzar", + "All participants declined" : "Tots els participants van rebutjar", + "Please confirm your participation" : "Si us plau, confirmeu la vostra participació", + "You declined this event" : "Has rebutjat aquest esdeveniment", + "Your participation is tentative" : "La vostra participació és provisional", "_+%n more_::_+%n more_" : ["i %n més","i %n més"], "No events" : "Cap esdeveniment", "Create a new event or change the visible time-range" : "Crea un esdeveniment nou o canvia l'interval de temps visible", + "Failed to save event" : "No s'ha pogut desar l'esdeveniment", "It might have been deleted, or there was a typo in a link" : "Pot ser que s'hagi suprimit o que hi hagi un error tipogràfic en un enllaç", "It might have been deleted, or there was a typo in the link" : "Pot ser que s'hagi suprimit o que hi hagi un error tipogràfic a l'enllaç", "Meeting room" : "Sala de reunions", @@ -445,7 +553,7 @@ "When shared hide this event" : "Quan es comparteix, amaga aquest esdeveniment", "The visibility of this event in shared calendars." : "La visibilitat de l'event en calendaris compartits.", "Add a location" : "Afegeix una ubicació", - "Add a description" : "Afegir una descripció", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Afegeix una descripció\n\n- De què tracta aquesta reunió\n- Elements de l'ordre del dia\n- Qualsevol cosa que els participants hagin de preparar", "Status" : "Estat", "Confirmed" : "Confirmat", "Canceled" : "Cancel·lat", @@ -458,135 +566,23 @@ "Add this as a new category" : "Afegeix-ho com una nova categoria", "Custom color" : "Color personalitzat", "Special color of this event. Overrides the calendar-color." : "Color especial per a aquest event. Sobreescriu el color del calendari.", - "Chat room for event" : "Sala de xat per a l'esdeveniment", + "Error while sharing file" : "Error en compartir el fitxer", + "Error while sharing file with user" : "S'ha produït un error en compartir el fitxer amb l'usuari", + "Attachment {fileName} already exists!" : "El fitxer adjunt {fileName} ja existeix!", + "An error occurred during getting file information" : "S'ha produït un error en obtenir la informació del fitxer", + "Talk conversation for event" : "Converses per a l'esdeveniment", + "An error occurred, unable to delete the calendar." : "S'ha produït un error. No s'ha suprimit el calendari.", "Imported {filename}" : "{filename} importat", - "Meditation" : "Meditació", - "Relaxing" : "Relaxant", - "Relax" : "Relax", - "Break" : "Descans", - "Commute" : "Desplaçament", - "Commuting" : "En desplaçament", - "Shuttle" : "Llançadora", - "Invoice" : "Factura", - "Finance" : "Finances", - "Bank" : "Banc", - "Money" : "Diners", - "Wedding" : "Casament", - "Dog" : "Gos", - "Concert" : "Concert", - "Festival" : "Festival", - "Theater" : "Teatre", - "Theatre" : "Teatre", - "Presentation" : "Presentació", - "Talk" : "Xerrada", - "Speech" : "Discurs", - "Deadline" : "Data límit", - "Submission" : "Tramesa", - "Reporting" : "Informes", - "Camping" : "Acampada", - "Camp" : "Campament", - "Election" : "Elecció", - "Voting" : "Votació", - "Vote" : "Votació", - "Barbecue" : "Barbacoa", - "Barbeque" : "Barbacoa", - "Garden" : "Jardí", - "Farm" : "Granja", - "Movie" : "Pel·lícula", - "Cinema" : "Cinema", - "Graduation" : "Graduació", - "Brainstorm" : "Pluja d'idees", - "Review" : "Revisió", - "Audit" : "Auditoria", - "Inspection" : "Inspecció", - "Proofreading" : "Correcció de proves", - "Baseball" : "Beisbol", - "Meet" : "Reunió", - "Planning" : "Planificació", - "Pointing" : "Apuntant", - "Retrospective" : "Retrospectiva", - "Office" : "Oficina", - "Contributor week" : "Setmana del contribuïdor", - "Mail" : "Correu", - "Soccer" : "Futbol", - "Football" : "Futbol americà", - "Gaming" : "Jugar", - "Drive" : "Conduir", - "Driving" : "Conducció", - "Bicycle" : "Bicicleta", - "Cycle" : "Ciclisme", - "Cycling" : "Fer ciclisme", - "Biking" : "Anar en bici", - "Bike" : "Bicicleta", - "Podcast" : "Podcast", - "Basketball" : "Bàsquet", - "Fishing" : "Pesca", - "Hiking" : "Excursió", - "Hike" : "Passejada", - "Art" : "Art", - "Exhibition" : "Exhibició", - "Museum" : "Museu", - "Pilates" : "Pilates", - "Park" : "Parc", - "Walk" : "Passeig", - "Studying" : "Estudiar", - "Doctor" : "Doctor", - "Health" : "Salut", - "Dentist" : "Dentista", - "Hospital" : "Hospital", - "Interview" : "Entrevista", - "Training" : "Entrenament", - "Practice" : "Pràctica", - "Sports" : "Esport", - "Exercise" : "Exercici", - "Work out" : "Entrenament", - "Working out" : "Entrenament", - "Gym" : "Gimnàs", - "Barber" : "Barber", - "Haircut" : "Perruqueria", - "Hairdresser" : "Perruquer", - "Exam" : "Examen", - "Written test" : "Prova escrita", - "Oral test" : "Prova oral", - "Working" : "Feina", - "New Years Eve" : "Cap d'any", - "NYE" : "Cap d'any", - "Fireworks" : "Focs artificials", - "Running" : "Córrer", - "Go for a run" : "Sortir a córrer", - "Marathon" : "Marató", - "Video-conference" : "Videoconferència", - "Conference-call" : "Trucada de conferència", - "Video-call" : "Videotrucada", - "Video-chat" : "Vídeo-xat", - "Video-meeting" : "Vídeo-reunió", - "Call" : "Trucada", - "Calling" : "Trucar", - "Christmas" : "Nadal", - "Conference" : "Conferència", - "Pizza" : "Pizza", - "Travelling" : "Viatjar", - "Trip" : "Viatge", - "Journey" : "Viatge", - "Collaborate" : "Col·laborar", - "Pair" : "Parella", - "Lecture" : "Classe", - "Seminar" : "Seminari", - "Teaching" : "Docència", - "Photograph" : "Fotografia", - "Party" : "Festa", - "Celebration" : "Celebració", - "Celebrate" : "Celebrar", - "Birthday" : "Aniversari", - "Shopping" : "Anar de compres", - "Groceries" : "Comestibles", - "Skate" : "Patinar", - "Skateboard" : "Monopatí", - "Wine tasting" : "Tasta de vins", - "Golf" : "Golf", - "Dinner" : "Sopar", - "Lunch" : "Dinar", + "This is an event reminder." : "Això és un recordatori de l'esdeveniment.", + "Error while parsing a PROPFIND error" : "S'ha produït un error en analitzar un error PROPFIND", "Appointment not found" : "No s'ha trobat la cita", - "User not found" : "No s'ha trobat l'usuari" + "User not found" : "No s'ha trobat l'usuari", + "Reminder" : "Recordatori", + "+ Add reminder" : "+ Afegeix un recordatori", + "Select automatic slot" : "Selecció d’interval automàtica", + "with" : "amb", + "Available times:" : "Horaris disponibles:", + "Suggestions" : "Suggeriments", + "Details" : "Detalls" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/cs.js b/l10n/cs.js index 60b5211fd5468654b6bf1c29363665b481b70659..12dc964050ddce792253f1d2ddf2bc5bb49e92d2 100644 --- a/l10n/cs.js +++ b/l10n/cs.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Zadaná e-mailová adresa je příliš dlouhá", "User-Session unexpectedly expired" : "Sezení bylo neočekávaně přerušeno", "Provided email-address is not valid" : "Zadaná e-mailová adresa není platná", "%s has published the calendar »%s«" : "%s zveřejnil(a) kalendář „%s“", @@ -11,129 +12,161 @@ OC.L10N.register( "Open »%s«" : "Otevřít „%s“", "Cheers!" : "Mějte se!", "Upcoming events" : "Nadcházející události", + "No more events today" : "Dnes už žádné další události", + "No upcoming events" : "Žádné nadcházející události", + "More events" : "Více událostí", + "%1$s with %2$s" : "%1$s s %2$s", + "Calendar" : "Kalendář", + "New booking {booking}" : "Nová rezervace {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) si zarezervoval(a) schůzku „{config_display_name}“ v {date_time}.", "Appointments" : "Schůzky", "Schedule appointment \"%s\"" : "Naplánovat schůzku „%s“", "Schedule an appointment" : "Naplánovat schůzku", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Příprava na %s", "Follow up for %s" : "Následné kroky ohledně %s", - "Your appointment \"%s\" needs confirmation" : "K vaší schůzce „%s“ je třeba potvrzení", + "Your appointment \"%s\" with %s needs confirmation" : "K vaší schůzce „%s“ s %s je třeba potvrzení", "Dear %s, please confirm your booking" : "%s, prosíme potvrďte svou rezervaci", "Confirm" : "Potvrdit", + "Appointment with:" : "Schůzka s:", + "Description:" : "Popis:", "This confirmation link expires in %s hours." : "Platnost tohoto odkazu pro potvrzení skončí za %s hodin.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Pokud si přejete tuto schůzku zrušit, obraťte se na organizátora.", - "Appointment:" : "Schůzka:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Pokud si přejete schůzku přece jen zrušit, obraťte se na organizátora odpovědí na tento e-mail nebo navštívením jeho profilové stránky.", + "Your appointment \"%s\" with %s has been accepted" : "Vaše schůzka „%s“ s %s byla přijata", + "Dear %s, your booking has been accepted." : "Vážená/ý %s, vaše rezervace byla přijata.", + "Appointment for:" : "Schůzka pro:", "Date:" : "Datum:", + "You will receive a link with the confirmation email" : "Obdržíte odkaz s potvrzovacím e-mailem", "Where:" : "Kde:", - "Description:" : "Popis:", - "Calendar" : "Kalendář", + "Comment:" : "Komentář:", + "You have a new appointment booking \"%s\" from %s" : "Máte novou rezervaci schůzky „%s“ od %s", + "Dear %s, %s (%s) booked an appointment with you." : "Vážená/ý %s, %s (%s) si s vámi zarezervoval/a schůzku.", "A Calendar app for Nextcloud" : "Kalendář pro Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aplikace Kalendář je uživatelské rozhraní pro CalDAV server, vestavěný v Nextcloud. Jednoduše synchronizujte události z různých zařízení s vaším Nextcloud a upravujte je online.\n\n* 🚀 **Napojení na ostatní Nextcloud aplikace!** V tuto chvíli Kontakty – a další jsou na cestě.\n* 🌐 **Podpora WebCal!** Chcete vidět shodující se dny svého oblíbeného týmu ve svém kalendáři? Žádný problém!\n* 🙋 **Účastníci!** Pozvěte lidi na své události.\n * ⌚️ **Volný/zaneprázdněný!** Zjistěte, zda jsou vámi zamýšlení účastníci schůzky k dispozici\n * ⏰ **Připomínky!** Dostávejte upozornění události v prohlížeči a e-mailem.\n* 🔍 Vyhledávání! Snadno najděte své události\n* ☑️ Úkoly! Zobrazte si úkoly a jejich termíny přímo v kaledáři\n* 🙈 **Nevynalézáme znovu kolo!** Založeno na skvělých softwarových knihovnách [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) a [fullcalendar](https://github.com/fullcalendar/fullcalendar).", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aplikace kalendáře pro Nextcloud. Snadno synchronizujte události z různých zařízení s vaším Nextcloudem a upravujte je online.\n\n* 🚀 **Integrace s dalšími aplikacemi Nextcloud!** Jako Kontakty, Talk, Úkoly, Deck a Circles\n* 🌐 **Podpora WebCal!** Chcete vidět zápasy svého oblíbeného týmu ve svém kalendáři? Žádný problém!\n* 🙋 **Účastníci!** Pozvěte lidi na své události\n* ⌚ **Mám/nemám čas!** Zjistěte, kdy jsou vaši účastníci k dispozici na schůzku\n* ⏰ **Připomenutí!** Získejte upozornění na události přímo v prohlížeči a e-mailem\n* 🔍 **Vyhledávání!** Snadno najděte své události\n* ☑️ **Úkoly!** Zobrazte si úkoly nebo karty Deck s termínem přímo v kalendáři\n* 🔈 **Místnosti Talk!** Vytvořte přidruženou místnost Talk při rezervaci schůzky jedním kliknutím\n* 📆 **Rezervace schůzek** Pošlete lidem odkaz, aby si mohli s vámi rezervovat schůzku [pomocí této aplikace](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Přílohy!** Přidávejte, nahrávejte a prohlížejte přílohy událostí\n* 🙈 **Nevynalézáme kolo!** Aplikace je založena na skvělých knihovnách [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) a [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Předchozí den", "Previous week" : "Předchozí týden", + "Previous year" : "Předchozí rok", "Previous month" : "Předchozí měsíc", "Next day" : "Příští den", "Next week" : "Příští týden", + "Next year" : "Následující rok", "Next month" : "Příští měsíc", - "New event" : "Nová událost", + "Create new event" : "Vytvořit novou událost", + "Event" : "Událost", "Today" : "Dnes", "Day" : "Den", "Week" : "Týden", "Month" : "Měsíc", + "Year" : "Rok", "List" : "Seznam", + "Appointment link was copied to clipboard" : "Odkaz na schůzku byl zkopírován do schránky", + "Appointment link could not be copied to clipboard" : "Odkaz na schůzku se nepodařilo zkopírovat do schránky", "Preview" : "Náhled", "Copy link" : "Zkopírovat odkaz", "Edit" : "Upravit", "Delete" : "Smazat", - "Appointment link was copied to clipboard" : "Odkaz na schůzku byl zkopírován do schránky", - "Appointment link could not be copied to clipboard" : "Odkaz na schůzku se nepodařilo zkopírovat do schránky", - "Add new" : "Přidat novou", - "Untitled calendar" : "Nepojmenovaný kalendář", - "Edit name" : "Upravit název", - "Saving name …" : "Ukládání názvu…", - "Edit color" : "Upravit barvu", - "Saving color …" : "Ukládání barvy…", - "Copy private link" : "Zkopírovat soukromý odkaz", - "Export" : "Exportovat", - "Unshare from me" : "Přestat sdílet", + "Appointment schedules" : "Plány schůzek", + "Create new" : "Vytvořit nové", "Disable calendar \"{calendar}\"" : "Vypnout kalendář „{calendar}“", "Disable untitled calendar" : "Vypnout nenazvaný kalendář", "Enable calendar \"{calendar}\"" : "Zapnout kalendář „{calendar}“", "Enable untitled calendar" : "Zapnout nenazvaný kalendář", "An error occurred, unable to change visibility of the calendar." : "Došlo k chybě, nedaří se změnit viditelnost kalendáře.", - "An error occurred, unable to delete the calendar." : "Došlo k chybě, kalendář se nepodařilo smazat.", - "Calendar link copied to clipboard." : "Odkaz kalendáře zkopírován do schránky.", - "Calendar link could not be copied to clipboard." : "Odkaz na kalendář se nepodařilo zkopírovat do schránky.", - "An error occurred, unable to rename the calendar." : "Došlo k chybě, kalendář se nepodařilo přejmenovat.", - "An error occurred, unable to change the calendar's color." : "Došlo k chybě, barvu kalendáře nelze změnit.", + "Untitled calendar" : "Nepojmenovaný kalendář", + "Shared with you by" : "Nasdílel(a) vám", + "Edit and share calendar" : "Upravit a nasdílet kalendář", + "Edit calendar" : "Upravit kalendář", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Kalendář přestane být sdílen za {countdown} sekundu","Kalendář přestane být sdílen za {countdown} sekundy","Kalendář přestane být sdílen za {countdown} sekund","Kalendář přestane být sdílen za {countdown} sekundy"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Smazání kalendáře za {countdown} sekundu","Smazání kalendáře za {countdown} sekundy","Smazání kalendáře za {countdown} sekund","Smazání kalendáře za {countdown} sekundy"], + "An error occurred, unable to create the calendar." : "Došlo k chybě, kalendář se nepodařilo vytvořit.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vložte platný odkaz (včetně http://, https://, webcal://, nebo webcals:// na začátku)", + "Calendars" : "Kalendáře", + "Add new" : "Přidat novou", + "New calendar" : "Nový kalendář", + "Name for new calendar" : "Název pro nový kalendář", + "Creating calendar …" : "Vytváření kalendáře…", + "New calendar with task list" : "Nový kalendář s úkolníkem", + "New subscription from link (read-only)" : "Nové přihlášení se k odběru z odkazu (pouze pro čtení)", + "Creating subscription …" : "Vytváření přihlášení se k odběru…", + "Add public holiday calendar" : "Přidat kalendář veřejných svátků", + "Add custom public calendar" : "Přidat uživatelsky určený veřejný kalendář", + "Calendar link copied to clipboard." : "Odkaz kalendáře zkopírován do schránky.", + "Calendar link could not be copied to clipboard." : "Odkaz na kalendář se nepodařilo zkopírovat do schránky.", + "Copy subscription link" : "Zkopírovat odkaz pro přihlášení se k odběru", + "Copying link …" : "Kopírování odkazu…", + "Copied link" : "Odkaz zkopírován", + "Could not copy link" : "Odkaz se nedaří zkopírovat", + "Export" : "Exportovat", + "Untitled item" : "Nepojmenovaná položka", + "Unknown calendar" : "Neznámý kalendář", + "Could not load deleted calendars and objects" : "Nedaří se načíst smazané kalendáře a objekty", + "Could not delete calendar or event" : "Kalendář či událost se nepodařilo smazat", + "Could not restore calendar or event" : "Kalendář nebo událost se nepodařilo obnovit", + "Do you really want to empty the trash bin?" : "Opravdu chcete koš vyprázdnit?", + "Empty trash bin" : "Vyprázdnit koš", + "Trash bin" : "Koš", + "Loading deleted items." : "Načítání smazaných položek.", + "You do not have any deleted items." : "Nemáte žádné smazané položky.", + "Name" : "Název", + "Deleted" : "Smazáno", + "Restore" : "Obnovit", + "Delete permanently" : "Trvale odstranit", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Položky v koši jsou smazány po uplynutí {numDays} dne","Prvky v koši jsou smazány po uplynutí {numDays} dnů","Položky v koši jsou smazány po uplynutí {numDays} dnů","Položky v koši jsou smazány po uplynutí {numDays} dnů"], + "Could not update calendar order." : "Pořadí kalendářů se nedaří aktualizovat.", + "Shared calendars" : "Sdílené kalendáře", + "Deck" : "Deck", + "Hidden" : "Skrytý", + "Internal link" : "Interní odkaz", + "A private link that can be used with external clients" : "Soukromý odkaz, který je možné použít s externími klienty", + "Copy internal link" : "Zkopírovat interní odkaz", + "An error occurred, unable to publish calendar." : "Došlo k chybě, kalendář se nedaří zveřejnit.", + "An error occurred, unable to send email." : "Došlo k chybě, e-mail se nedaří odeslat.", + "Embed code copied to clipboard." : "HTML kód, který vložit do kódu stránky, zkopírován do schránky.", + "Embed code could not be copied to clipboard." : "HTML kód, který vložit do kódu stránky, se nepodařilo zkopírovat do schránky", + "Unpublishing calendar failed" : "Zrušení zveřejnění kalendáře se nezdařilo", "Share link" : "Odkaz na sdílení", - "Publish calendar" : "Zveřejnit kalendář", - "Publishing calendar" : "Zveřejnění kalendáře", "Copy public link" : "Zkopírovat veřejný odkaz", "Send link to calendar via email" : "Odeslat odkaz na kalendář prostřednictvím e-mailu", "Enter one address" : "Zadejte jednu adresu", "Sending email …" : "Posílání e-mailu…", - "Copy subscription link" : "Zkopírovat odkaz pro přihlášení se k odběru", - "Copying link …" : "Kopírování odkazu…", - "Copied link" : "Odkaz zkopírován", - "Could not copy link" : "Odkaz se nedaří zkopírovat", "Copy embedding code" : "Zkopírovat kód pro vložení do HTML", "Copying code …" : "Kopírování kódu…", "Copied code" : "HTML kód zkopírován", "Could not copy code" : "HTML kód se nedaří zkopírovat", "Delete share link" : "Smazat sdílecí odkaz", "Deleting share link …" : "Mazání odkazu na sdílení…", - "An error occurred, unable to publish calendar." : "Došlo k chybě, kalendář se nedaří zveřejnit.", - "An error occurred, unable to send email." : "Došlo k chybě, e-mail se nedaří odeslat.", - "Embed code copied to clipboard." : "HTML kód, který vložit do kódu stránky, zkopírován do schránky.", - "Embed code could not be copied to clipboard." : "HTML kód, který vložit do kódu stránky, se nepodařilo zkopírovat do schránky", - "Unpublishing calendar failed" : "Zrušení zveřejnění kalendáře se nezdařilo", - "Share with users or groups" : "Sdílet s uživateli nebo skupinami", - "No users or groups" : "Žádní uživatelé nebo skupiny", + "{teamDisplayName} (Team)" : "{teamDisplayName} (tým)", + "An error occurred while unsharing the calendar." : "Došlo k chybě při rušení sdílení kalendáře", + "An error occurred, unable to change the permission of the share." : "Došlo k chybě, nepodařilo se změnit přístupová práva k sdílení.", "can edit" : "může upravovat", "Unshare with {displayName}" : "Přestat sdílet s {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Došlo k chybě, nepodařilo se zrušit sdílení kalendáře.", - "An error occurred, unable to change the permission of the share." : "Došlo k chybě, nepodařilo se změnit přístupová práva k sdílení.", - "+ New calendar" : "+ Nový kalendář", - "New calendar" : "Nový kalendář", - "Name for new calendar" : "Název pro nový kalendář", - "Creating calendar …" : "Vytváření kalendáře…", - "New calendar with task list" : "Nový kalendář s úkolníkem", - "New subscription from link (read-only)" : "Nové přihlášení se k odběru z odkazu (pouze pro čtení)", - "Creating subscription …" : "Vytváření přihlášení se k odběru…", - "An error occurred, unable to create the calendar." : "Došlo k chybě, kalendář se nepodařilo vytvořit.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vložte platný odkaz (včetně http://, https://, webcal://, nebo webcals:// na začátku)", - "Trash bin" : "Koš", - "Loading deleted elements." : "Načítání smazaných prvků.", - "You do not have any deleted elements." : "Nemáte žádné smazané prvky.", - "Name" : "Název", - "Deleted" : "Smazáno", - "Restore" : "Obnovit", - "Delete permanently" : "Trvale odstranit", - "Empty trash bin" : "Vyprázdnit koš", - "Untitled element" : "Prvek bez názvu", - "Unknown calendar" : "Neznámý kalendář", - "Could not load deleted calendars and objects" : "Nedaří se načíst smazané kalendáře a objekty", - "Could not restore calendar or event" : "Kalendář nebo událost se nepodařilo obnovit", - "Do you really want to empty the trash bin?" : "Opravdu chcete koš vyprázdnit?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Prvky v koši jsou smazány po uplynutí {numDays} dne","Prvky v koši jsou smazány po uplynutí {numDays} dnů","Prvky v koši jsou smazány po uplynutí {numDays} dnů","Prvky v koši jsou smazány po uplynutí {numDays} dnů"], - "Could not update calendar order." : "Pořadí kalendářů se nedaří aktualizovat.", + "Share with users or groups" : "Sdílet s uživateli nebo skupinami", + "No users or groups" : "Žádní uživatelé nebo skupiny", + "Failed to save calendar name and color" : "Nepodařilo se uložit název a barvu kalendáře", + "Calendar name …" : "Název kalendáře", + "Never show me as busy (set this calendar to transparent)" : "Nikdy mne nezobrazovat jako zaneprázdněného (nastavit tento kalendář jako transparentní)", + "Share calendar" : "Nasdílet kalendář", + "Unshare from me" : "Přestat sdílet", + "Save" : "Uložit", "Import calendars" : "Importovat kalendáře", "Please select a calendar to import into …" : "Vyberte kalendář do kterého importovat…", "Filename" : "Soubor", "Calendar to import into" : "Kalendář do kterého importovat", "Cancel" : "Storno", "_Import calendar_::_Import calendars_" : ["Importovat kalendář","Importovat kalendáře","Importovat kalendářů","Importovat kalendáře"], + "Select the default location for attachments" : "Vyberte výchozí umístění pro přílohy", + "Pick" : "Vybrat", + "Invalid location selected" : "Vybráno neplatné umístění", + "Attachments folder successfully saved." : "Nastavení složky pro přílohy úspěšně uloženo.", + "Error on saving attachments folder." : "Chyba při ukládání nastavení složky pro přílohy.", + "Default attachments location" : "Výchozí umístění příloh", "{filename} could not be parsed" : "{filename} není možné zpracovat", "No valid files found, aborting import" : "Nenalezeny žádné platné soubory, import proto bude ukončen", - "Import partially failed. Imported {accepted} out of {total}." : "Import se z části nezdařil. Naimportováno {accepted} z {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Úspěšně naimportována %n událost","Úspěšně naimportovány %n události","Úspěšně naimportováno %n událostí","Úspěšně naimportovány %n události"], + "Import partially failed. Imported {accepted} out of {total}." : "Import se z části nezdařil. Naimportováno {accepted} z {total}.", "Automatic" : "Automaticky", "Automatic ({detected})" : "Automaticky ({detected})", "New setting was not saved successfully." : "Nové nastavení se nepodařilo uložit.", - "Shortcut overview" : "Přehled zkratek", - "or" : "nebo", "Navigation" : "Pohyb", "Previous period" : "Předchozí období", "Next period" : "Následující období", @@ -141,6 +174,7 @@ OC.L10N.register( "Day view" : "Denní zobrazení", "Week view" : "Týdenní zobrazení", "Month view" : "Měsíční zobrazení", + "Year view" : "Roční zobrazení", "List view" : "Zobrazení v seznamu", "Actions" : "Akce", "Create event" : "Vytvořit událost", @@ -150,24 +184,29 @@ OC.L10N.register( "Save edited event" : "Uložit upravenou událost", "Delete edited event" : "Smazat upravenou událost", "Duplicate event" : "Zduplikovat událost", + "Shortcut overview" : "Přehled zkratek", + "or" : "nebo", + "Calendar settings" : "Nastavení kalendáře", + "At event start" : "Na začátku události", + "No reminder" : "Žádná upomínka", + "Failed to save default calendar" : "Nepodařilo se uložit výchozí kalendář", + "CalDAV link copied to clipboard." : "CalDAV odkaz zkopírován do schránky.", + "CalDAV link could not be copied to clipboard." : "CalDAV odkaz se nepodařilo zkopírovat do schránky.", "Enable birthday calendar" : "Zobrazovat kalendář s narozeninami", "Show tasks in calendar" : "Zobrazovat úkoly v kalendáři", "Enable simplified editor" : "Používat zjednodušený editor", - "Limit visible events per view" : "Omezit viditelné události v jednotlivých pohledech", + "Limit the number of events displayed in the monthly view" : "Omezit počet zobrazovaných událostí v měsíčním pohledu", "Show weekends" : "Zobrazit víkendy", "Show week numbers" : "Zobrazovat čísla týdnů", "Time increments" : "Přírůstky času", + "Default calendar for incoming invitations" : "Výchozí kalendář pro příchozí pozvánky", "Default reminder" : "Výchozí upomínka", "Copy primary CalDAV address" : "Zkopírovat hlavní CalDAV adresu", "Copy iOS/macOS CalDAV address" : "Zkopírovat CalDAV adresu pro iOS/macOS", "Personal availability settings" : "Nastavení osobní dostupnosti", "Show keyboard shortcuts" : "Zobrazit klávesové zkratky", - "Calendar settings" : "Nastavení kalendáře", - "No reminder" : "Žádná upomínka", - "CalDAV link copied to clipboard." : "CalDAV odkaz zkopírován do schránky.", - "CalDAV link could not be copied to clipboard." : "CalDAV odkaz se nepodařilo zkopírovat do schránky.", - "Appointment was created successfully" : "Schůzka byla úspěšně vytvořena", - "Appointment was updated successfully" : "Schůzka byla úspěšně zaktualizována", + "Appointment schedule successfully created" : "Plán schůzky úspěšně vytvořen", + "Appointment schedule successfully updated" : "Plán schůzky úspěšně zaktualizován", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuta","{duration} minuty","{duration} minut","{duration} minuty"], "0 minutes" : "0 minut", "_{duration} hour_::_{duration} hours_" : ["{duration} hodina","{duration} hodiny","{duration} hodin","{duration} hodiny"], @@ -178,7 +217,14 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Pokud chcete nastavovat schůzky, je třeba v nastavení, v sekci osobní údaje, zadat svůj e-mail.", "Public – shown on the profile page" : "Veřejné – zobrazeno na profilové stránce", "Private – only accessible via secret link" : "Soukromé – přístupné pouze přes soukromý odkaz", + "Appointment schedule saved" : "Naplánování schůzky uloženo", + "Create appointment schedule" : "Vytvořit plán schůzky", + "Edit appointment schedule" : "Upravit plán schůzky", + "Update" : "Aktualizovat", + "Appointment name" : "Název schůzky", "Location" : "Umístění", + "Create a Talk room" : "Vytvořit místnost v Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Bude vytvořen neopakující se odkaz pro každou ze zarezervovanou schůzku a odeslán prostřednictvím potvrzovacího e-mailu", "Description" : "Popis", "Visibility" : "Viditelnost", "Duration" : "Trvání", @@ -196,6 +242,7 @@ OC.L10N.register( "Friday" : "pátek", "Saturday" : "sobota", "Sunday" : "neděle", + "Weekdays" : "Dny v týdnu", "Add time before and after the event" : "Přidat čas před a po události", "Before the event" : "Před událostí", "After the event" : "Po události", @@ -203,18 +250,29 @@ OC.L10N.register( "Minimum time before next available slot" : "Nejkratší umožněná doba před dalším slotem k dispozici", "Max slots per day" : "Nejvýše slotů za den", "Limit how far in the future appointments can be booked" : "Omezte jak daleko v budoucnosti bude možné si rezervovat schůzky", - "Create appointment" : "Vytvořit schůzku", - "Edit appointment" : "Upravit schůzku", - "Save" : "Uložit", - "Update" : "Aktualizovat", + "It seems a rate limit has been reached. Please try again later." : "Zdá se, že byl překročen limit četnosti v čase. Zkuste to prosím později.", "Please confirm your reservation" : "Potvrďte svou rezervaci", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "V e-mailu vám pošleme podrobnosti. Prosíme, potvrďte schůzku kliknutím na odkaz v e-mailu. Tuto stránku nyní můžete zavřít.", "Your name" : "Vaše jméno", "Your email address" : "Vaše e-mailová adresa", "Please share anything that will help prepare for our meeting" : "Nasílejte vše co pomůže pro přípravu na naši schůzku", "Could not book the appointment. Please try again later or contact the organizer." : "Schůzka nemohla být rezervována. Zkuste to znovu později nebo se obraťte na organizátora.", - "Book the appointment" : "Zarezervovat schůzku", - "Reminder" : "Připomínka", + "Back" : "Zpět", + "Book appointment" : "Zarezervovat schůzku", + "Error fetching Talk conversations." : "Chyba při získávání konverzací v Talk.", + "Conversation does not have a valid URL." : "Konverzace nemá platný URL.", + "Successfully added Talk conversation link to location." : "Do místa konání úspěšně přidán odkaz na konverzaci v Talk.", + "Successfully added Talk conversation link to description." : "Do popisu úspěšně přidán odkaz na konverzaci v Talk.", + "Failed to apply Talk room." : "Nepodařilo se uplatnit místnost v Talk.", + "Error creating Talk conversation" : "Chyba při vytváření konverzace v Talk", + "Select a Talk Room" : "Vyberte místnost v Talk", + "Add Talk conversation" : "Přidat konverzaci v Talk", + "Fetching Talk rooms…" : "Získávání místností v Talk…", + "No Talk room available" : "Nejsou k dispozici žádné místnosti v Talk", + "Create a new conversation" : "Vytvořit novou konverzaci", + "Select conversation" : "Vybrat konverzaci", + "on" : "v", + "at" : "na", "before at" : "před v", "Notification" : "Upozornění", "Email" : "E-mail", @@ -222,117 +280,150 @@ OC.L10N.register( "Other notification" : "Ostatní upozornění", "Relative to event" : "Vztaženo k události", "On date" : "Dne", - "Edit time" : "Okamžik úpravy", - "Save time" : "Okamžik uložení", + "Edit time" : "Upravit čas", + "Save time" : "Uložit čas", "Remove reminder" : "Odebrat připomínku", - "on" : "v", - "at" : "na", - "+ Add reminder" : "+ Přidat připomínku", "Add reminder" : "Přidat připomínku", - "_second_::_seconds_" : ["sekunda","sekundy","sekund","sekundy"], - "_minute_::_minutes_" : ["minuta","minuty","minut","minuty"], - "_hour_::_hours_" : ["hodina","hodiny","hodin","hodiny"], - "_day_::_days_" : ["den","dny","dní","dny"], - "_week_::_weeks_" : ["týden","týdny","týdnů","týdny"], + "seconds" : "sekund", + "minutes" : "minut", + "hours" : "hodin", + "days" : "dnů", + "weeks" : "týdnů", + "Choose a file to add as attachment" : "Vyberte soubor k přiložení", + "Choose a file to share as a link" : "Zvolte soubor, který sdílet jako odkaz", + "Attachment {name} already exist!" : "Příloha {name} už existuje!", + "Could not upload attachment(s)" : "Nepodařilo se nahrát přílohy", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Chystáte se stáhnout si soubor. Před jeho otevřením zkontrolujte jeho název. Opravdu chcete pokračovat?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Chystáte se navigovat na {host}. Opravdu chcete pokračovat? Odkaz: {link}", + "Proceed" : "Pokračovat", + "No attachments" : "Žádné přílohy", + "Add from Files" : "Přidat ze Souborů", + "Upload from device" : "Nahrát ze zařízení", + "Delete file" : "Smazat soubor", + "Confirmation" : "Potvrzení", + "_{count} attachment_::_{count} attachments_" : ["{count} příloha","{count} přílohy","{count} příloh","{count} přílohy"], "Suggested" : "Doporučeno", "Available" : "K dispozici", - "Not available" : "Není k dispozici", - "Checking availability" : "Zjišťuje se, zda je k dispozici", "Invitation accepted" : "Pozvání přijato", "Accepted {organizerName}'s invitation" : "Pozvánka od {organizerName} přijata", + "Participation marked as tentative" : "Účast označena jako povinná", + "Invitation is delegated" : "Pozvání postoupeno někomu dalšímu", + "Not available" : "Není k dispozici", "Invitation declined" : "Pozvání odmítnuto", "Declined {organizerName}'s invitation" : "Odmítnuta pozvánka od {organizerName}", - "Invitation is delegated" : "Pozvání postoupeno někomu dalšímu", - "Participation marked as tentative" : "Účast označena jako povinná", - "Invitation sent" : "Pozvánka odeslána", + "Availability will be checked" : "Dostupnost bude zkontrolována", + "Invitation will be sent" : "Pozvánka bude odeslána", + "Failed to check availability" : "Dostupnost se nepodařilo zkontrolovat", + "Failed to deliver invitation" : "Pozvánku se nepodařilo doručit", + "Awaiting response" : "Čeká na odpověď", + "Checking availability" : "Zjišťuje se, zda je k dispozici", "Has not responded to {organizerName}'s invitation yet" : "Doposud neodpovězeno na pozvánku od {organizerName}", - "Availability of attendees, resources and rooms" : "Dostupnost účastníků, prostředků a místností", + "Suggested times" : "Doporučené časy", + "chairperson" : "předsedající", + "required participant" : "povinný účastník", + "non-participant" : "neúčastník", + "optional participant" : "volitelní účastník", "{organizer} (organizer)" : "{organizer} (organizátor/ka)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Dostupnost účastníků, prostředků a místností", + "Suggestion accepted" : "Návrh přijat", + "Previous date" : "Předchozí datum", + "Next date" : "Následující datum", + "Legend" : "Popisek", + "Out of office" : "Mimo kancelář", + "Attendees:" : "Účastníci:", + "Done" : "Dokončeno", + "Search room" : "Hledat místnost", + "Room name" : "Název místnosti", + "Check room availability" : "Zkontrolovat, že je místnost k dispozici", "Free" : "Volné", "Busy (tentative)" : "Zaneprázdněno (nezávazně)", "Busy" : "Zaneprázdněno", - "Out of office" : "Mimo kancelář", "Unknown" : "Neznámé", - "Accept" : "Přijmout", - "Decline" : "Odmítnout", - "Tentative" : "Nezávazně", + "Find a time" : "Najít čas", "The invitation has been accepted successfully." : "Pozvánka byla úspěšně přijata.", "Failed to accept the invitation." : "Pozvánku se nepodařilo přijmout.", "The invitation has been declined successfully." : "Pozvánka byla úspěšně odmítnuta.", "Failed to decline the invitation." : "Pozvánku se nepodařilo odmítnout.", "Your participation has been marked as tentative." : "Vaše účast byla označena jako povinná.", "Failed to set the participation status to tentative." : "Nepodařilo se nastavit stav účasti na povinnou.", - "Create Talk room for this event" : "Vytvořit pro tuto událost místnost v Talk", - "Show busy times" : "Zobrazit, kdy zaneprázněno", + "Accept" : "Přijmout", + "Decline" : "Odmítnout", + "Tentative" : "Nezávazně", "No attendees yet" : "Zatím žádní účastníci", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} pozváno, od {confirmedCount} potvrzeno", + "Please add at least one attendee to use the \"Find a time\" feature." : "Aby bylo možné použít funkci „Najít čas“, je třeba přidat alespoň jednoho účastníka.", + "Successfully appended link to talk room to location." : "Do popisu úspěšně přidán odkaz na umístění v Talk", "Successfully appended link to talk room to description." : "Do popisu úspěšně přidán odkaz na místnost v Talk", "Error creating Talk room" : "Chyba při vytváření místnosti v Talk", - "Send email" : "Odeslat e-mail", + "Attendees" : "Účastníci", + "_%n more guest_::_%n more guests_" : ["%n další host","%n další hosté","%n dalších hostů","%n další hosté"], + "Remove group" : "Odebrat skupinu", + "Remove attendee" : "Odebrat účastníka", + "Request reply" : "Požadovat odpověď", "Chairperson" : "Předseda/kyně", "Required participant" : "Povinný účastník", "Optional participant" : "Nepovinní účastníci", "Non-participant" : "Neúčastník", - "Remove attendee" : "Odebrat účastníka", - "Search for emails, users or contacts" : "Hledat e-maily, uživatele či kontakty", + "_%n member_::_%n members_" : ["%n člen","%n členové","%n členů","%n členové"], + "Search for emails, users, contacts, contact groups or teams" : "Hledat e-maily, uživatele, kontakty, skupiny kontaktů či týmy", "No match found" : "Nenalezena žádná shoda", + "Note that members of circles get invited but are not synced yet." : "Mějte na paměti, že členové okruhů budou pozváni, ale zatím ještě nejsou synchronizováni.", + "Note that members of contact groups get invited but are not synced yet." : "Mějte na paměti, že členové skupin kontaktů budou pozváni, ale zatím ještě nejsou synchronizováni.", "(organizer)" : "(organizátor(ka))", + "Make {label} the organizer" : "Udělat {label} organizátorem", + "Make {label} the organizer and attend" : "Udělat {label}organizátorem a zúčastnit se", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Pro rozesílání pozvánek a práci s odpověďmi na ně [linkopen]přidejte svoji e-mailovou adresu[linkclose] do osobních nastavení.", "Remove color" : "Odebrat barvu", "Event title" : "Název události", - "All day" : "Celý den", "Cannot modify all-day setting for events that are part of a recurrence-set." : "U opakovaných událostí nelze u jednotlivého výskytu zvlášť měnit, zda je událost celodenní či ne.", - "from {startDate}" : "od {startDate}", - "from {startDate} at {startTime}" : "od {startDate} v {startTime}", - "to {endDate}" : "do {endDate}", - "to {endDate} at {endTime}" : "do {endDate} v {endTime}", + "From" : "Od", + "To" : "Do", "Repeat" : "Opakovat", - "End repeat" : "Konec opakování", - "Select to end repeat" : "Vyberte konec opakování", + "Repeat event" : "Zopakovat událost", + "_time_::_times_" : ["krát","krát","krát","krát"], "never" : "nikdy", "on date" : "dne", "after" : "po", - "_time_::_times_" : ["krát","krát","krát","krát"], + "End repeat" : "Konec opakování", + "Select to end repeat" : "Vyberte konec opakování", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Tato událost je výjimka v opakované události. Proto k ní nelze přidat pravidlo opakování.", "first" : "první", - "third" : "třetí", - "fourth" : "čtvrté", - "fifth" : "páté", - "second to last" : "po kolik sekund", - "last" : "poslední", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Změny v opakované události budou mít vliv jen na tuto a budoucí události", "Repeat every" : "Opakovat každé", "By day of the month" : "Podle dne v měsíci", "On the" : "V", + "_day_::_days_" : ["den","dny","dní","dny"], + "_week_::_weeks_" : ["týden","týdny","týdnů","týdny"], "_month_::_months_" : ["měsíc","měsíce","měsíců","měsíce"], "_year_::_years_" : ["rok","roky","let","roky"], + "On specific day" : "V konkrétní den", "weekday" : "den v týdnu", "weekend day" : "den o víkendu", - "No recurrence" : "Bez opakování", + "Does not repeat" : "Neopakuje se", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Definice opakování této události není v Nextcloud zcela podporována. Pokud upravíte volby opakování, některá opakování mohou být ztracena.", - "Suggestions" : "Doporučení", "No rooms or resources yet" : "Zatím žádné místnosti nebo prostředky", + "Resources" : "Prostředky", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} židle","{seatingCapacity} židle","{seatingCapacity} židlí","{seatingCapacity} židle"], "Add resource" : "Přidat prostředek", "Has a projector" : "Má projektor", "Has a whiteboard" : "Má tabuli", "Wheelchair accessible" : "Kolečkové křeslo pro invalidy", "Remove resource" : "Odebrat prostředek", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} židle","{seatingCapacity} židle","{seatingCapacity} židlí","{seatingCapacity} židle"], - "Projector" : "Projektor", - "Whiteboard" : "Tabule", "Search for resources or rooms" : "Hledat prostředky nebo místnosti", "available" : "dostupné", "unavailable" : "není dostupné", + "Show all rooms" : "Zobrazit všechny místnosti", + "Projector" : "Projektor", + "Whiteboard" : "Tabule", "Room type" : "Typ místnosti", "Any" : "Jakákoli", "Minimum seating capacity" : "Minimální kapacita k sezení", - "More" : "Více", - "Update this occurrence" : "Aktualizovat tento výskyt", + "More details" : "Další podrobnosti", "Update this and all future" : "Aktualizovat tento a všechny budoucí", + "Update this occurrence" : "Aktualizovat tento výskyt", "Public calendar does not exist" : "Veřejný kalendář neexistuje", "Maybe the share was deleted or has expired?" : "Sdílení byl nejspíš smazáno nebo skončila jeho platnost?", - "Please select a time zone:" : "Vyberte časové pásmo:", - "Pick a time" : "Vyberte čas", - "Pick a date" : "Vyberte datum", "from {formattedDate}" : "od {formattedDate}", "to {formattedDate}" : "do {formattedDate}", "on {formattedDate}" : "{formattedDate}", @@ -342,9 +433,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} v {formattedTime}", "Please enter a valid date" : "Zadejte platné datum", "Please enter a valid date and time" : "Zadejte platný datum a čas", + "Select a time zone" : "Vyberte časovou zónu", + "Please select a time zone:" : "Vyberte časové pásmo:", + "Pick a time" : "Vyberte čas", + "Pick a date" : "Vyberte datum", "Type to search time zone" : "Psaním vyhledejte časové pásmo", "Global" : "Globální", - "Select date" : "Vybrat datum", + "Holidays in {region}" : "Svátky v {region}", + "An error occurred, unable to read public calendars." : "Došlo k chybě –nepodařilo se načíst veřejné kalendáře.", + "An error occurred, unable to subscribe to calendar." : "Došlo k chybě – nepodařilo se přihlásit k odběru kalendáře.", + "Public holiday calendars" : "Kalendář veřejných svátků", + "Public calendars" : "Veřejné kalendáře", + "No valid public calendars configured" : "Nenastaveny žádné platné veřejné kalendáře", + "Speak to the server administrator to resolve this issue." : "O řešení tohoto problému požádejte správce serveru.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Kalendáře veřejných svátků jsou poskytovány projektem Thunderbird. Data kalendáře budou stažena z {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Tyto veřejné kalendáře jsou navrhovány správcem serveru. Data kalendáře budou stažena z příslušného webu.", + "By {authors}" : "Od {authors}", + "Subscribed" : "Přihlášeno se k odběru", + "Subscribe" : "Přihlásit se k odběru", + "Could not fetch slots" : "Nepodařilo se získat sloty", + "Select a date" : "Vybrat datum", "Select slot" : "Vybrat slot", "No slots available" : "Nejsou k dispozici žádná časová okna", "The slot for your appointment has been confirmed" : "Slož pro vaši schůzku byl potvrzen", @@ -361,24 +469,25 @@ OC.L10N.register( "Personal" : "Osobní", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Automatickým zjištěním časové zóny bylo určeno, že vaše zóna je UTC.\nTo je nejspíš kvůli bezpečnostním opatřením vámi používaného webového prohlížeče.\nV nastavení kalendáře zadejte časovou zónu ručně.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Vámi nastavené časové pásmo ({timezoneId}) nenalezeno. Náhradou bude použit UTC čas.\nZměňte své časové pásmo v nastaveních a nahlaste tento problém vývojářům, děkujeme.", - "No more events today" : "Dnes už žádné další události", - "No upcoming events" : "Žádné nadcházející události", - "Create a new event" : "Vytvořit novou událost", - "[Today]" : "[Dnes]", - "[Tomorrow]" : "[Zítra]", - "[Yesterday]" : "[Včera]", - "[Last] dddd" : "[Minul.] dddd", + "Availability of {displayName}" : "Dostupnost {displayName}", + "Edit event" : "Upravit událost", "Event does not exist" : "Událost neexistuje", "Duplicate" : "Zduplikovat", "Delete this occurrence" : "Smazat tento výskyt", "Delete this and all future" : "Smazat toto a všechny budoucí", - "Details" : "Podrobnosti", - "Attendees" : "Účastníci", - "Resources" : "Prostředky", + "All day" : "Celý den", + "Modifications wont get propagated to the organizer and other attendees" : "Změny nebudou propagovány organizátorovi a ostatním účastníkům", + "Managing shared access" : "Správa sdíleného přístupu", + "Deny access" : "Odepřít přístup", + "Invite" : "Pozvat", + "_User requires access to your file_::_Users require access to your file_" : ["Uživatel potřebuje přístup k vašemu souboru","Uživatelé potřebují přístup k vašemu souboru","Uživatelé potřebují přístup k vašemu souboru","Uživatelé potřebují přístup k vašemu souboru"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Příloha vyžadující sdílení přístup","Přílohy vyžadující sdílení přístup","Přílohy vyžadující sdílení přístup","Přílohy vyžadující sdílení přístup"], + "Untitled event" : "Nepojmenovaná událost", "Close" : "Zavřít", - "Show more details" : "Zobrazit další podrobnosti", + "Modifications will not get propagated to the organizer and other attendees" : "Změny nebudou propagovány organizátorovi a ostatním účastníkům", "Subscribe to {name}" : "Přihlásit se k odběru {name}", "Export {name}" : "Exportovat {name}", + "Show availability" : "Zobrazit dostupnost", "Anniversary" : "Výročí", "Appointment" : "Schůzka", "Business" : "Práce", @@ -396,7 +505,7 @@ OC.L10N.register( "Midnight on the day the event starts" : "Nejbližší půlnoc před začátkem události", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n den před událostí v {formattedHourMinute}","%n dny před událostí v {formattedHourMinute}","%n dnů před událostí v {formattedHourMinute}","%n dny před událostí v {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n týden před událostí v {formattedHourMinute}","%n týdny před událostí v {formattedHourMinute}","%n týdnů před událostí v {formattedHourMinute}","%n týdny před událostí v {formattedHourMinute}"], - "on the day of the event at {formattedHourMinute}" : "v den událostí v {formattedHourMinute}", + "on the day of the event at {formattedHourMinute}" : "v den události v {formattedHourMinute}", "at the event's start" : "na začátku události", "at the event's end" : "na konci události", "{time} before the event starts" : "{time} před začátkem události", @@ -406,7 +515,6 @@ OC.L10N.register( "on {time}" : "v {time}", "on {time} ({timezoneId})" : "v {time} ({timezoneId})", "Week {number} of {year}" : "{number}. týden {year}", - "Does not repeat" : "Neopakuje se", "Daily" : "Každodenně", "Weekly" : "Týdně", "Monthly" : "Měsíčně", @@ -418,26 +526,32 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["v {weekdays}","v {weekdays}","v {weekdays}","v {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["dne {dayOfMonthList}","ve dnech {dayOfMonthList}","ve dnech {dayOfMonthList}","ve dnech {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "každý měsíc {ordinalNumber} {byDaySet}", - "in {monthNames}" : "v {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "V {monthNames} v {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "v {monthNames} v {ordinalNumber} {byDaySet}", "until {untilDate}" : "do {untilDate}", "_%n time_::_%n times_" : ["%n kát","%n krát","%n krát","%n krát"], - "Untitled event" : "Nepojmenovaná událost", + "second" : "sekunda", + "third" : "třetí", + "fourth" : "čtvrté", + "fifth" : "páté", + "second to last" : "po kolik sekund", + "last" : "poslední", "Untitled task" : "Nepojmenovaný úkol", "Please ask your administrator to enable the Tasks App." : "Požádejte správce aby zapnul aplikaci Úkoly.", - "Prev" : "Předchozí", - "Next" : "Další", - "Prev year" : "Předchozí rok", - "Next year" : "Následující rok", - "Year" : "Rok", + "You are not allowed to edit this event as an attendee." : "Nemáte oprávnění upravovat tuto událost coby účastník.", "W" : "T", "%n more" : "%n další", "No events to display" : "Žádné události k zobrazení", + "All participants declined" : "Všichni účastníci odmítli", + "Please confirm your participation" : "Potvrďte svou účast", + "You declined this event" : "Odmítli jste účast na této události", + "Your participation is tentative" : "Vaše účast je povinná", "_+%n more_::_+%n more_" : ["+%n další","+%n další","+%n dalších","+%n další"], "No events" : "Žádné události", "Create a new event or change the visible time-range" : "Vytvořit novou událost nebo změňte viditelný časový rozsah", - "It might have been deleted, or there was a typo in a link" : "Mohl být smazán, nebo v odkazu byl překlep", - "It might have been deleted, or there was a typo in the link" : "Mohl být smazán, nebo v odkazu byl překlep", + "Failed to save event" : "Nepodařilo se uložit událost", + "It might have been deleted, or there was a typo in a link" : "Mohla být smazána, nebo byl v odkazu překlep", + "It might have been deleted, or there was a typo in the link" : "Mohla být smazána, nebo byl v odkazu překlep", "Meeting room" : "Zasedací místnost", "Lecture hall" : "Posluchárna", "Seminar room" : "Místnost pro semináře", @@ -448,7 +562,7 @@ OC.L10N.register( "When shared hide this event" : "Pří sdílení tuto událost skrýt", "The visibility of this event in shared calendars." : "Viditelnost této události ve sdílených kalendářích.", "Add a location" : "Přidat umístění", - "Add a description" : "Přidat popis", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Přidejte popis\n\n- O čem tato schůzka je\n- Body programu\n- Cokoli co je třeba, aby si účastnici připravili", "Status" : "Stav", "Confirmed" : "Potvrzeno", "Canceled" : "Zrušeno", @@ -461,135 +575,26 @@ OC.L10N.register( "Add this as a new category" : "Přidat toto jako novou kategorii", "Custom color" : "Uživatelsky určená barva", "Special color of this event. Overrides the calendar-color." : "Speciální barva této události. Přebíjí barvu kalendáře.", - "Chat room for event" : "Chat místnost pro událost", + "Error while sharing file" : "Chyba při sdílení souboru", + "Error while sharing file with user" : "Chyba při sdílení souboru uživateli", + "Error creating a folder {folder}" : "Chyba při vytváření složky {folder}", + "Attachment {fileName} already exists!" : "Příloha {fileName} už existuje!", + "Attachment {fileName} added!" : "Příloha {fileName} přidána!", + "An error occurred during uploading file {fileName}" : "Při nahrávání souboru {fileName} došlo k chybě", + "An error occurred during getting file information" : "Při získávání informací o souboru došlo k chybě", + "Talk conversation for event" : "Konverzace v Talk pro událost", + "An error occurred, unable to delete the calendar." : "Došlo k chybě, kalendář se nepodařilo smazat.", "Imported {filename}" : "Importováno {filename}", - "Meditation" : "Meditace", - "Relaxing" : "Odpočinek", - "Relax" : "Odpočinek", - "Break" : "Přestávka", - "Commute" : "Dojíždět", - "Commuting" : "Dojíždění", - "Shuttle" : "Kyvadlová doprava", - "Invoice" : "Faktura", - "Finance" : "Finance", - "Bank" : "Banka", - "Money" : "Peníze", - "Wedding" : "Svadba", - "Dog" : "Pes", - "Concert" : "Koncert", - "Festival" : "Festival", - "Theater" : "Divadlo", - "Theatre" : "Divadlo", - "Presentation" : "Prezentace", - "Talk" : "Hovor", - "Speech" : "Řeč", - "Deadline" : "Termín", - "Submission" : "Odeslání", - "Reporting" : "Výkaznictví", - "Camping" : "Kempování", - "Camp" : "Kemp", - "Election" : "Volby", - "Voting" : "Hlasování", - "Vote" : "Hlasovat", - "Barbecue" : "Grilování", - "Barbeque" : "Grilování", - "Garden" : "Zahrada", - "Farm" : "Farma", - "Movie" : "Film", - "Cinema" : "Kino", - "Graduation" : "Promoce", - "Brainstorm" : "Brainstorming", - "Review" : "Revize", - "Audit" : "Audit", - "Inspection" : "Inspekce", - "Proofreading" : "Korektura", - "Baseball" : "Baseball", - "Meet" : "Setkání", - "Planning" : "Plánování", - "Pointing" : "Ukazování", - "Retrospective" : "Retrospektiva", - "Office" : "Kancelář", - "Contributor week" : "Týden přispěvatelů", - "Mail" : "Pošta", - "Soccer" : "Fotbal", - "Football" : "Fotbal", - "Gaming" : "Hraní", - "Drive" : "Řídit", - "Driving" : "Potápění", - "Bicycle" : "Kolo", - "Cycle" : "Jízda na kole", - "Cycling" : "Cyklistika", - "Biking" : "Jízda na kole", - "Bike" : "Kolo", - "Podcast" : "Podcast", - "Basketball" : "Basketball", - "Fishing" : "Rybaření", - "Hiking" : "Lezení", - "Hike" : "Lezení", - "Art" : "Umění", - "Exhibition" : "Výstava", - "Museum" : "Muzeum", - "Pilates" : "Cvičení", - "Park" : "Park", - "Walk" : "Procházka", - "Studying" : "Studium", - "Doctor" : "Doktor", - "Health" : "Zdraví", - "Dentist" : "Zubař", - "Hospital" : "Nemocnice", - "Interview" : "Rozhovor", - "Training" : "Tréning", - "Practice" : "Procvičování", - "Sports" : "Sporty", - "Exercise" : "Cvičení", - "Work out" : "Cvičení", - "Working out" : "Cvičení", - "Gym" : "Tělocvična", - "Barber" : "Holič", - "Haircut" : "Účes", - "Hairdresser" : "Kadeřník", - "Exam" : "Zkouška", - "Written test" : "Písemná zkouška", - "Oral test" : "Ústní zkouška", - "Working" : "Práce", - "New Years Eve" : "Štědrý den", - "NYE" : "Silvestr", - "Fireworks" : "Ohňostroj", - "Running" : "Běhání", - "Go for a run" : "Jít si zaběhat", - "Marathon" : "Běh", - "Video-conference" : "Video-konference", - "Conference-call" : "Konferenční hovor", - "Video-call" : "Video-hovor", - "Video-chat" : "Video-chat", - "Video-meeting" : "Video-schůze", - "Call" : "Volání", - "Calling" : "Volání", - "Christmas" : "Vánoce", - "Conference" : "Konference", - "Pizza" : "Pizza", - "Travelling" : "Cestování", - "Trip" : "Výlet", - "Journey" : "Zájezd", - "Collaborate" : "Spolupracovat", - "Pair" : "Dvojice", - "Lecture" : "Přednáška", - "Seminar" : "Seminář", - "Teaching" : "Učení", - "Photograph" : "Fotografie", - "Party" : "Párty", - "Celebration" : "Oslava", - "Celebrate" : "Slavit", - "Birthday" : "Narozeniny", - "Shopping" : "Nakupování", - "Groceries" : "Potraviny", - "Skate" : "Skateboard", - "Skateboard" : "Skateboard", - "Wine tasting" : "Ochutnávka vína", - "Golf" : "Golf", - "Dinner" : "Večeře", - "Lunch" : "Oběd", + "This is an event reminder." : "Toto je připomínka události.", + "Error while parsing a PROPFIND error" : "Chyba při zpracovávání PROPFIND chyby", "Appointment not found" : "Schůzka nenalezena", - "User not found" : "Uživatel nenalezen" + "User not found" : "Uživatel nenalezen", + "Reminder" : "Připomínka", + "+ Add reminder" : "+ Přidat připomínku", + "Select automatic slot" : "Vybrat automatický slot", + "with" : "s", + "Available times:" : "Časy k dispozici:", + "Suggestions" : "Doporučení", + "Details" : "Podrobnosti" }, "nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"); diff --git a/l10n/cs.json b/l10n/cs.json index cae898493ff2d086cad9dc81cd4cacb384634158..6662cc3a98057a851bab3cf73e5f393436448472 100644 --- a/l10n/cs.json +++ b/l10n/cs.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "Zadaná e-mailová adresa je příliš dlouhá", "User-Session unexpectedly expired" : "Sezení bylo neočekávaně přerušeno", "Provided email-address is not valid" : "Zadaná e-mailová adresa není platná", "%s has published the calendar »%s«" : "%s zveřejnil(a) kalendář „%s“", @@ -9,129 +10,161 @@ "Open »%s«" : "Otevřít „%s“", "Cheers!" : "Mějte se!", "Upcoming events" : "Nadcházející události", + "No more events today" : "Dnes už žádné další události", + "No upcoming events" : "Žádné nadcházející události", + "More events" : "Více událostí", + "%1$s with %2$s" : "%1$s s %2$s", + "Calendar" : "Kalendář", + "New booking {booking}" : "Nová rezervace {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) si zarezervoval(a) schůzku „{config_display_name}“ v {date_time}.", "Appointments" : "Schůzky", "Schedule appointment \"%s\"" : "Naplánovat schůzku „%s“", "Schedule an appointment" : "Naplánovat schůzku", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Příprava na %s", "Follow up for %s" : "Následné kroky ohledně %s", - "Your appointment \"%s\" needs confirmation" : "K vaší schůzce „%s“ je třeba potvrzení", + "Your appointment \"%s\" with %s needs confirmation" : "K vaší schůzce „%s“ s %s je třeba potvrzení", "Dear %s, please confirm your booking" : "%s, prosíme potvrďte svou rezervaci", "Confirm" : "Potvrdit", + "Appointment with:" : "Schůzka s:", + "Description:" : "Popis:", "This confirmation link expires in %s hours." : "Platnost tohoto odkazu pro potvrzení skončí za %s hodin.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Pokud si přejete tuto schůzku zrušit, obraťte se na organizátora.", - "Appointment:" : "Schůzka:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Pokud si přejete schůzku přece jen zrušit, obraťte se na organizátora odpovědí na tento e-mail nebo navštívením jeho profilové stránky.", + "Your appointment \"%s\" with %s has been accepted" : "Vaše schůzka „%s“ s %s byla přijata", + "Dear %s, your booking has been accepted." : "Vážená/ý %s, vaše rezervace byla přijata.", + "Appointment for:" : "Schůzka pro:", "Date:" : "Datum:", + "You will receive a link with the confirmation email" : "Obdržíte odkaz s potvrzovacím e-mailem", "Where:" : "Kde:", - "Description:" : "Popis:", - "Calendar" : "Kalendář", + "Comment:" : "Komentář:", + "You have a new appointment booking \"%s\" from %s" : "Máte novou rezervaci schůzky „%s“ od %s", + "Dear %s, %s (%s) booked an appointment with you." : "Vážená/ý %s, %s (%s) si s vámi zarezervoval/a schůzku.", "A Calendar app for Nextcloud" : "Kalendář pro Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aplikace Kalendář je uživatelské rozhraní pro CalDAV server, vestavěný v Nextcloud. Jednoduše synchronizujte události z různých zařízení s vaším Nextcloud a upravujte je online.\n\n* 🚀 **Napojení na ostatní Nextcloud aplikace!** V tuto chvíli Kontakty – a další jsou na cestě.\n* 🌐 **Podpora WebCal!** Chcete vidět shodující se dny svého oblíbeného týmu ve svém kalendáři? Žádný problém!\n* 🙋 **Účastníci!** Pozvěte lidi na své události.\n * ⌚️ **Volný/zaneprázdněný!** Zjistěte, zda jsou vámi zamýšlení účastníci schůzky k dispozici\n * ⏰ **Připomínky!** Dostávejte upozornění události v prohlížeči a e-mailem.\n* 🔍 Vyhledávání! Snadno najděte své události\n* ☑️ Úkoly! Zobrazte si úkoly a jejich termíny přímo v kaledáři\n* 🙈 **Nevynalézáme znovu kolo!** Založeno na skvělých softwarových knihovnách [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) a [fullcalendar](https://github.com/fullcalendar/fullcalendar).", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aplikace kalendáře pro Nextcloud. Snadno synchronizujte události z různých zařízení s vaším Nextcloudem a upravujte je online.\n\n* 🚀 **Integrace s dalšími aplikacemi Nextcloud!** Jako Kontakty, Talk, Úkoly, Deck a Circles\n* 🌐 **Podpora WebCal!** Chcete vidět zápasy svého oblíbeného týmu ve svém kalendáři? Žádný problém!\n* 🙋 **Účastníci!** Pozvěte lidi na své události\n* ⌚ **Mám/nemám čas!** Zjistěte, kdy jsou vaši účastníci k dispozici na schůzku\n* ⏰ **Připomenutí!** Získejte upozornění na události přímo v prohlížeči a e-mailem\n* 🔍 **Vyhledávání!** Snadno najděte své události\n* ☑️ **Úkoly!** Zobrazte si úkoly nebo karty Deck s termínem přímo v kalendáři\n* 🔈 **Místnosti Talk!** Vytvořte přidruženou místnost Talk při rezervaci schůzky jedním kliknutím\n* 📆 **Rezervace schůzek** Pošlete lidem odkaz, aby si mohli s vámi rezervovat schůzku [pomocí této aplikace](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Přílohy!** Přidávejte, nahrávejte a prohlížejte přílohy událostí\n* 🙈 **Nevynalézáme kolo!** Aplikace je založena na skvělých knihovnách [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) a [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Předchozí den", "Previous week" : "Předchozí týden", + "Previous year" : "Předchozí rok", "Previous month" : "Předchozí měsíc", "Next day" : "Příští den", "Next week" : "Příští týden", + "Next year" : "Následující rok", "Next month" : "Příští měsíc", - "New event" : "Nová událost", + "Create new event" : "Vytvořit novou událost", + "Event" : "Událost", "Today" : "Dnes", "Day" : "Den", "Week" : "Týden", "Month" : "Měsíc", + "Year" : "Rok", "List" : "Seznam", + "Appointment link was copied to clipboard" : "Odkaz na schůzku byl zkopírován do schránky", + "Appointment link could not be copied to clipboard" : "Odkaz na schůzku se nepodařilo zkopírovat do schránky", "Preview" : "Náhled", "Copy link" : "Zkopírovat odkaz", "Edit" : "Upravit", "Delete" : "Smazat", - "Appointment link was copied to clipboard" : "Odkaz na schůzku byl zkopírován do schránky", - "Appointment link could not be copied to clipboard" : "Odkaz na schůzku se nepodařilo zkopírovat do schránky", - "Add new" : "Přidat novou", - "Untitled calendar" : "Nepojmenovaný kalendář", - "Edit name" : "Upravit název", - "Saving name …" : "Ukládání názvu…", - "Edit color" : "Upravit barvu", - "Saving color …" : "Ukládání barvy…", - "Copy private link" : "Zkopírovat soukromý odkaz", - "Export" : "Exportovat", - "Unshare from me" : "Přestat sdílet", + "Appointment schedules" : "Plány schůzek", + "Create new" : "Vytvořit nové", "Disable calendar \"{calendar}\"" : "Vypnout kalendář „{calendar}“", "Disable untitled calendar" : "Vypnout nenazvaný kalendář", "Enable calendar \"{calendar}\"" : "Zapnout kalendář „{calendar}“", "Enable untitled calendar" : "Zapnout nenazvaný kalendář", "An error occurred, unable to change visibility of the calendar." : "Došlo k chybě, nedaří se změnit viditelnost kalendáře.", - "An error occurred, unable to delete the calendar." : "Došlo k chybě, kalendář se nepodařilo smazat.", - "Calendar link copied to clipboard." : "Odkaz kalendáře zkopírován do schránky.", - "Calendar link could not be copied to clipboard." : "Odkaz na kalendář se nepodařilo zkopírovat do schránky.", - "An error occurred, unable to rename the calendar." : "Došlo k chybě, kalendář se nepodařilo přejmenovat.", - "An error occurred, unable to change the calendar's color." : "Došlo k chybě, barvu kalendáře nelze změnit.", + "Untitled calendar" : "Nepojmenovaný kalendář", + "Shared with you by" : "Nasdílel(a) vám", + "Edit and share calendar" : "Upravit a nasdílet kalendář", + "Edit calendar" : "Upravit kalendář", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Kalendář přestane být sdílen za {countdown} sekundu","Kalendář přestane být sdílen za {countdown} sekundy","Kalendář přestane být sdílen za {countdown} sekund","Kalendář přestane být sdílen za {countdown} sekundy"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Smazání kalendáře za {countdown} sekundu","Smazání kalendáře za {countdown} sekundy","Smazání kalendáře za {countdown} sekund","Smazání kalendáře za {countdown} sekundy"], + "An error occurred, unable to create the calendar." : "Došlo k chybě, kalendář se nepodařilo vytvořit.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vložte platný odkaz (včetně http://, https://, webcal://, nebo webcals:// na začátku)", + "Calendars" : "Kalendáře", + "Add new" : "Přidat novou", + "New calendar" : "Nový kalendář", + "Name for new calendar" : "Název pro nový kalendář", + "Creating calendar …" : "Vytváření kalendáře…", + "New calendar with task list" : "Nový kalendář s úkolníkem", + "New subscription from link (read-only)" : "Nové přihlášení se k odběru z odkazu (pouze pro čtení)", + "Creating subscription …" : "Vytváření přihlášení se k odběru…", + "Add public holiday calendar" : "Přidat kalendář veřejných svátků", + "Add custom public calendar" : "Přidat uživatelsky určený veřejný kalendář", + "Calendar link copied to clipboard." : "Odkaz kalendáře zkopírován do schránky.", + "Calendar link could not be copied to clipboard." : "Odkaz na kalendář se nepodařilo zkopírovat do schránky.", + "Copy subscription link" : "Zkopírovat odkaz pro přihlášení se k odběru", + "Copying link …" : "Kopírování odkazu…", + "Copied link" : "Odkaz zkopírován", + "Could not copy link" : "Odkaz se nedaří zkopírovat", + "Export" : "Exportovat", + "Untitled item" : "Nepojmenovaná položka", + "Unknown calendar" : "Neznámý kalendář", + "Could not load deleted calendars and objects" : "Nedaří se načíst smazané kalendáře a objekty", + "Could not delete calendar or event" : "Kalendář či událost se nepodařilo smazat", + "Could not restore calendar or event" : "Kalendář nebo událost se nepodařilo obnovit", + "Do you really want to empty the trash bin?" : "Opravdu chcete koš vyprázdnit?", + "Empty trash bin" : "Vyprázdnit koš", + "Trash bin" : "Koš", + "Loading deleted items." : "Načítání smazaných položek.", + "You do not have any deleted items." : "Nemáte žádné smazané položky.", + "Name" : "Název", + "Deleted" : "Smazáno", + "Restore" : "Obnovit", + "Delete permanently" : "Trvale odstranit", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Položky v koši jsou smazány po uplynutí {numDays} dne","Prvky v koši jsou smazány po uplynutí {numDays} dnů","Položky v koši jsou smazány po uplynutí {numDays} dnů","Položky v koši jsou smazány po uplynutí {numDays} dnů"], + "Could not update calendar order." : "Pořadí kalendářů se nedaří aktualizovat.", + "Shared calendars" : "Sdílené kalendáře", + "Deck" : "Deck", + "Hidden" : "Skrytý", + "Internal link" : "Interní odkaz", + "A private link that can be used with external clients" : "Soukromý odkaz, který je možné použít s externími klienty", + "Copy internal link" : "Zkopírovat interní odkaz", + "An error occurred, unable to publish calendar." : "Došlo k chybě, kalendář se nedaří zveřejnit.", + "An error occurred, unable to send email." : "Došlo k chybě, e-mail se nedaří odeslat.", + "Embed code copied to clipboard." : "HTML kód, který vložit do kódu stránky, zkopírován do schránky.", + "Embed code could not be copied to clipboard." : "HTML kód, který vložit do kódu stránky, se nepodařilo zkopírovat do schránky", + "Unpublishing calendar failed" : "Zrušení zveřejnění kalendáře se nezdařilo", "Share link" : "Odkaz na sdílení", - "Publish calendar" : "Zveřejnit kalendář", - "Publishing calendar" : "Zveřejnění kalendáře", "Copy public link" : "Zkopírovat veřejný odkaz", "Send link to calendar via email" : "Odeslat odkaz na kalendář prostřednictvím e-mailu", "Enter one address" : "Zadejte jednu adresu", "Sending email …" : "Posílání e-mailu…", - "Copy subscription link" : "Zkopírovat odkaz pro přihlášení se k odběru", - "Copying link …" : "Kopírování odkazu…", - "Copied link" : "Odkaz zkopírován", - "Could not copy link" : "Odkaz se nedaří zkopírovat", "Copy embedding code" : "Zkopírovat kód pro vložení do HTML", "Copying code …" : "Kopírování kódu…", "Copied code" : "HTML kód zkopírován", "Could not copy code" : "HTML kód se nedaří zkopírovat", "Delete share link" : "Smazat sdílecí odkaz", "Deleting share link …" : "Mazání odkazu na sdílení…", - "An error occurred, unable to publish calendar." : "Došlo k chybě, kalendář se nedaří zveřejnit.", - "An error occurred, unable to send email." : "Došlo k chybě, e-mail se nedaří odeslat.", - "Embed code copied to clipboard." : "HTML kód, který vložit do kódu stránky, zkopírován do schránky.", - "Embed code could not be copied to clipboard." : "HTML kód, který vložit do kódu stránky, se nepodařilo zkopírovat do schránky", - "Unpublishing calendar failed" : "Zrušení zveřejnění kalendáře se nezdařilo", - "Share with users or groups" : "Sdílet s uživateli nebo skupinami", - "No users or groups" : "Žádní uživatelé nebo skupiny", + "{teamDisplayName} (Team)" : "{teamDisplayName} (tým)", + "An error occurred while unsharing the calendar." : "Došlo k chybě při rušení sdílení kalendáře", + "An error occurred, unable to change the permission of the share." : "Došlo k chybě, nepodařilo se změnit přístupová práva k sdílení.", "can edit" : "může upravovat", "Unshare with {displayName}" : "Přestat sdílet s {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Došlo k chybě, nepodařilo se zrušit sdílení kalendáře.", - "An error occurred, unable to change the permission of the share." : "Došlo k chybě, nepodařilo se změnit přístupová práva k sdílení.", - "+ New calendar" : "+ Nový kalendář", - "New calendar" : "Nový kalendář", - "Name for new calendar" : "Název pro nový kalendář", - "Creating calendar …" : "Vytváření kalendáře…", - "New calendar with task list" : "Nový kalendář s úkolníkem", - "New subscription from link (read-only)" : "Nové přihlášení se k odběru z odkazu (pouze pro čtení)", - "Creating subscription …" : "Vytváření přihlášení se k odběru…", - "An error occurred, unable to create the calendar." : "Došlo k chybě, kalendář se nepodařilo vytvořit.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vložte platný odkaz (včetně http://, https://, webcal://, nebo webcals:// na začátku)", - "Trash bin" : "Koš", - "Loading deleted elements." : "Načítání smazaných prvků.", - "You do not have any deleted elements." : "Nemáte žádné smazané prvky.", - "Name" : "Název", - "Deleted" : "Smazáno", - "Restore" : "Obnovit", - "Delete permanently" : "Trvale odstranit", - "Empty trash bin" : "Vyprázdnit koš", - "Untitled element" : "Prvek bez názvu", - "Unknown calendar" : "Neznámý kalendář", - "Could not load deleted calendars and objects" : "Nedaří se načíst smazané kalendáře a objekty", - "Could not restore calendar or event" : "Kalendář nebo událost se nepodařilo obnovit", - "Do you really want to empty the trash bin?" : "Opravdu chcete koš vyprázdnit?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Prvky v koši jsou smazány po uplynutí {numDays} dne","Prvky v koši jsou smazány po uplynutí {numDays} dnů","Prvky v koši jsou smazány po uplynutí {numDays} dnů","Prvky v koši jsou smazány po uplynutí {numDays} dnů"], - "Could not update calendar order." : "Pořadí kalendářů se nedaří aktualizovat.", + "Share with users or groups" : "Sdílet s uživateli nebo skupinami", + "No users or groups" : "Žádní uživatelé nebo skupiny", + "Failed to save calendar name and color" : "Nepodařilo se uložit název a barvu kalendáře", + "Calendar name …" : "Název kalendáře", + "Never show me as busy (set this calendar to transparent)" : "Nikdy mne nezobrazovat jako zaneprázdněného (nastavit tento kalendář jako transparentní)", + "Share calendar" : "Nasdílet kalendář", + "Unshare from me" : "Přestat sdílet", + "Save" : "Uložit", "Import calendars" : "Importovat kalendáře", "Please select a calendar to import into …" : "Vyberte kalendář do kterého importovat…", "Filename" : "Soubor", "Calendar to import into" : "Kalendář do kterého importovat", "Cancel" : "Storno", "_Import calendar_::_Import calendars_" : ["Importovat kalendář","Importovat kalendáře","Importovat kalendářů","Importovat kalendáře"], + "Select the default location for attachments" : "Vyberte výchozí umístění pro přílohy", + "Pick" : "Vybrat", + "Invalid location selected" : "Vybráno neplatné umístění", + "Attachments folder successfully saved." : "Nastavení složky pro přílohy úspěšně uloženo.", + "Error on saving attachments folder." : "Chyba při ukládání nastavení složky pro přílohy.", + "Default attachments location" : "Výchozí umístění příloh", "{filename} could not be parsed" : "{filename} není možné zpracovat", "No valid files found, aborting import" : "Nenalezeny žádné platné soubory, import proto bude ukončen", - "Import partially failed. Imported {accepted} out of {total}." : "Import se z části nezdařil. Naimportováno {accepted} z {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Úspěšně naimportována %n událost","Úspěšně naimportovány %n události","Úspěšně naimportováno %n událostí","Úspěšně naimportovány %n události"], + "Import partially failed. Imported {accepted} out of {total}." : "Import se z části nezdařil. Naimportováno {accepted} z {total}.", "Automatic" : "Automaticky", "Automatic ({detected})" : "Automaticky ({detected})", "New setting was not saved successfully." : "Nové nastavení se nepodařilo uložit.", - "Shortcut overview" : "Přehled zkratek", - "or" : "nebo", "Navigation" : "Pohyb", "Previous period" : "Předchozí období", "Next period" : "Následující období", @@ -139,6 +172,7 @@ "Day view" : "Denní zobrazení", "Week view" : "Týdenní zobrazení", "Month view" : "Měsíční zobrazení", + "Year view" : "Roční zobrazení", "List view" : "Zobrazení v seznamu", "Actions" : "Akce", "Create event" : "Vytvořit událost", @@ -148,24 +182,29 @@ "Save edited event" : "Uložit upravenou událost", "Delete edited event" : "Smazat upravenou událost", "Duplicate event" : "Zduplikovat událost", + "Shortcut overview" : "Přehled zkratek", + "or" : "nebo", + "Calendar settings" : "Nastavení kalendáře", + "At event start" : "Na začátku události", + "No reminder" : "Žádná upomínka", + "Failed to save default calendar" : "Nepodařilo se uložit výchozí kalendář", + "CalDAV link copied to clipboard." : "CalDAV odkaz zkopírován do schránky.", + "CalDAV link could not be copied to clipboard." : "CalDAV odkaz se nepodařilo zkopírovat do schránky.", "Enable birthday calendar" : "Zobrazovat kalendář s narozeninami", "Show tasks in calendar" : "Zobrazovat úkoly v kalendáři", "Enable simplified editor" : "Používat zjednodušený editor", - "Limit visible events per view" : "Omezit viditelné události v jednotlivých pohledech", + "Limit the number of events displayed in the monthly view" : "Omezit počet zobrazovaných událostí v měsíčním pohledu", "Show weekends" : "Zobrazit víkendy", "Show week numbers" : "Zobrazovat čísla týdnů", "Time increments" : "Přírůstky času", + "Default calendar for incoming invitations" : "Výchozí kalendář pro příchozí pozvánky", "Default reminder" : "Výchozí upomínka", "Copy primary CalDAV address" : "Zkopírovat hlavní CalDAV adresu", "Copy iOS/macOS CalDAV address" : "Zkopírovat CalDAV adresu pro iOS/macOS", "Personal availability settings" : "Nastavení osobní dostupnosti", "Show keyboard shortcuts" : "Zobrazit klávesové zkratky", - "Calendar settings" : "Nastavení kalendáře", - "No reminder" : "Žádná upomínka", - "CalDAV link copied to clipboard." : "CalDAV odkaz zkopírován do schránky.", - "CalDAV link could not be copied to clipboard." : "CalDAV odkaz se nepodařilo zkopírovat do schránky.", - "Appointment was created successfully" : "Schůzka byla úspěšně vytvořena", - "Appointment was updated successfully" : "Schůzka byla úspěšně zaktualizována", + "Appointment schedule successfully created" : "Plán schůzky úspěšně vytvořen", + "Appointment schedule successfully updated" : "Plán schůzky úspěšně zaktualizován", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuta","{duration} minuty","{duration} minut","{duration} minuty"], "0 minutes" : "0 minut", "_{duration} hour_::_{duration} hours_" : ["{duration} hodina","{duration} hodiny","{duration} hodin","{duration} hodiny"], @@ -176,7 +215,14 @@ "To configure appointments, add your email address in personal settings." : "Pokud chcete nastavovat schůzky, je třeba v nastavení, v sekci osobní údaje, zadat svůj e-mail.", "Public – shown on the profile page" : "Veřejné – zobrazeno na profilové stránce", "Private – only accessible via secret link" : "Soukromé – přístupné pouze přes soukromý odkaz", + "Appointment schedule saved" : "Naplánování schůzky uloženo", + "Create appointment schedule" : "Vytvořit plán schůzky", + "Edit appointment schedule" : "Upravit plán schůzky", + "Update" : "Aktualizovat", + "Appointment name" : "Název schůzky", "Location" : "Umístění", + "Create a Talk room" : "Vytvořit místnost v Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Bude vytvořen neopakující se odkaz pro každou ze zarezervovanou schůzku a odeslán prostřednictvím potvrzovacího e-mailu", "Description" : "Popis", "Visibility" : "Viditelnost", "Duration" : "Trvání", @@ -194,6 +240,7 @@ "Friday" : "pátek", "Saturday" : "sobota", "Sunday" : "neděle", + "Weekdays" : "Dny v týdnu", "Add time before and after the event" : "Přidat čas před a po události", "Before the event" : "Před událostí", "After the event" : "Po události", @@ -201,18 +248,29 @@ "Minimum time before next available slot" : "Nejkratší umožněná doba před dalším slotem k dispozici", "Max slots per day" : "Nejvýše slotů za den", "Limit how far in the future appointments can be booked" : "Omezte jak daleko v budoucnosti bude možné si rezervovat schůzky", - "Create appointment" : "Vytvořit schůzku", - "Edit appointment" : "Upravit schůzku", - "Save" : "Uložit", - "Update" : "Aktualizovat", + "It seems a rate limit has been reached. Please try again later." : "Zdá se, že byl překročen limit četnosti v čase. Zkuste to prosím později.", "Please confirm your reservation" : "Potvrďte svou rezervaci", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "V e-mailu vám pošleme podrobnosti. Prosíme, potvrďte schůzku kliknutím na odkaz v e-mailu. Tuto stránku nyní můžete zavřít.", "Your name" : "Vaše jméno", "Your email address" : "Vaše e-mailová adresa", "Please share anything that will help prepare for our meeting" : "Nasílejte vše co pomůže pro přípravu na naši schůzku", "Could not book the appointment. Please try again later or contact the organizer." : "Schůzka nemohla být rezervována. Zkuste to znovu později nebo se obraťte na organizátora.", - "Book the appointment" : "Zarezervovat schůzku", - "Reminder" : "Připomínka", + "Back" : "Zpět", + "Book appointment" : "Zarezervovat schůzku", + "Error fetching Talk conversations." : "Chyba při získávání konverzací v Talk.", + "Conversation does not have a valid URL." : "Konverzace nemá platný URL.", + "Successfully added Talk conversation link to location." : "Do místa konání úspěšně přidán odkaz na konverzaci v Talk.", + "Successfully added Talk conversation link to description." : "Do popisu úspěšně přidán odkaz na konverzaci v Talk.", + "Failed to apply Talk room." : "Nepodařilo se uplatnit místnost v Talk.", + "Error creating Talk conversation" : "Chyba při vytváření konverzace v Talk", + "Select a Talk Room" : "Vyberte místnost v Talk", + "Add Talk conversation" : "Přidat konverzaci v Talk", + "Fetching Talk rooms…" : "Získávání místností v Talk…", + "No Talk room available" : "Nejsou k dispozici žádné místnosti v Talk", + "Create a new conversation" : "Vytvořit novou konverzaci", + "Select conversation" : "Vybrat konverzaci", + "on" : "v", + "at" : "na", "before at" : "před v", "Notification" : "Upozornění", "Email" : "E-mail", @@ -220,117 +278,150 @@ "Other notification" : "Ostatní upozornění", "Relative to event" : "Vztaženo k události", "On date" : "Dne", - "Edit time" : "Okamžik úpravy", - "Save time" : "Okamžik uložení", + "Edit time" : "Upravit čas", + "Save time" : "Uložit čas", "Remove reminder" : "Odebrat připomínku", - "on" : "v", - "at" : "na", - "+ Add reminder" : "+ Přidat připomínku", "Add reminder" : "Přidat připomínku", - "_second_::_seconds_" : ["sekunda","sekundy","sekund","sekundy"], - "_minute_::_minutes_" : ["minuta","minuty","minut","minuty"], - "_hour_::_hours_" : ["hodina","hodiny","hodin","hodiny"], - "_day_::_days_" : ["den","dny","dní","dny"], - "_week_::_weeks_" : ["týden","týdny","týdnů","týdny"], + "seconds" : "sekund", + "minutes" : "minut", + "hours" : "hodin", + "days" : "dnů", + "weeks" : "týdnů", + "Choose a file to add as attachment" : "Vyberte soubor k přiložení", + "Choose a file to share as a link" : "Zvolte soubor, který sdílet jako odkaz", + "Attachment {name} already exist!" : "Příloha {name} už existuje!", + "Could not upload attachment(s)" : "Nepodařilo se nahrát přílohy", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Chystáte se stáhnout si soubor. Před jeho otevřením zkontrolujte jeho název. Opravdu chcete pokračovat?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Chystáte se navigovat na {host}. Opravdu chcete pokračovat? Odkaz: {link}", + "Proceed" : "Pokračovat", + "No attachments" : "Žádné přílohy", + "Add from Files" : "Přidat ze Souborů", + "Upload from device" : "Nahrát ze zařízení", + "Delete file" : "Smazat soubor", + "Confirmation" : "Potvrzení", + "_{count} attachment_::_{count} attachments_" : ["{count} příloha","{count} přílohy","{count} příloh","{count} přílohy"], "Suggested" : "Doporučeno", "Available" : "K dispozici", - "Not available" : "Není k dispozici", - "Checking availability" : "Zjišťuje se, zda je k dispozici", "Invitation accepted" : "Pozvání přijato", "Accepted {organizerName}'s invitation" : "Pozvánka od {organizerName} přijata", + "Participation marked as tentative" : "Účast označena jako povinná", + "Invitation is delegated" : "Pozvání postoupeno někomu dalšímu", + "Not available" : "Není k dispozici", "Invitation declined" : "Pozvání odmítnuto", "Declined {organizerName}'s invitation" : "Odmítnuta pozvánka od {organizerName}", - "Invitation is delegated" : "Pozvání postoupeno někomu dalšímu", - "Participation marked as tentative" : "Účast označena jako povinná", - "Invitation sent" : "Pozvánka odeslána", + "Availability will be checked" : "Dostupnost bude zkontrolována", + "Invitation will be sent" : "Pozvánka bude odeslána", + "Failed to check availability" : "Dostupnost se nepodařilo zkontrolovat", + "Failed to deliver invitation" : "Pozvánku se nepodařilo doručit", + "Awaiting response" : "Čeká na odpověď", + "Checking availability" : "Zjišťuje se, zda je k dispozici", "Has not responded to {organizerName}'s invitation yet" : "Doposud neodpovězeno na pozvánku od {organizerName}", - "Availability of attendees, resources and rooms" : "Dostupnost účastníků, prostředků a místností", + "Suggested times" : "Doporučené časy", + "chairperson" : "předsedající", + "required participant" : "povinný účastník", + "non-participant" : "neúčastník", + "optional participant" : "volitelní účastník", "{organizer} (organizer)" : "{organizer} (organizátor/ka)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Dostupnost účastníků, prostředků a místností", + "Suggestion accepted" : "Návrh přijat", + "Previous date" : "Předchozí datum", + "Next date" : "Následující datum", + "Legend" : "Popisek", + "Out of office" : "Mimo kancelář", + "Attendees:" : "Účastníci:", + "Done" : "Dokončeno", + "Search room" : "Hledat místnost", + "Room name" : "Název místnosti", + "Check room availability" : "Zkontrolovat, že je místnost k dispozici", "Free" : "Volné", "Busy (tentative)" : "Zaneprázdněno (nezávazně)", "Busy" : "Zaneprázdněno", - "Out of office" : "Mimo kancelář", "Unknown" : "Neznámé", - "Accept" : "Přijmout", - "Decline" : "Odmítnout", - "Tentative" : "Nezávazně", + "Find a time" : "Najít čas", "The invitation has been accepted successfully." : "Pozvánka byla úspěšně přijata.", "Failed to accept the invitation." : "Pozvánku se nepodařilo přijmout.", "The invitation has been declined successfully." : "Pozvánka byla úspěšně odmítnuta.", "Failed to decline the invitation." : "Pozvánku se nepodařilo odmítnout.", "Your participation has been marked as tentative." : "Vaše účast byla označena jako povinná.", "Failed to set the participation status to tentative." : "Nepodařilo se nastavit stav účasti na povinnou.", - "Create Talk room for this event" : "Vytvořit pro tuto událost místnost v Talk", - "Show busy times" : "Zobrazit, kdy zaneprázněno", + "Accept" : "Přijmout", + "Decline" : "Odmítnout", + "Tentative" : "Nezávazně", "No attendees yet" : "Zatím žádní účastníci", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} pozváno, od {confirmedCount} potvrzeno", + "Please add at least one attendee to use the \"Find a time\" feature." : "Aby bylo možné použít funkci „Najít čas“, je třeba přidat alespoň jednoho účastníka.", + "Successfully appended link to talk room to location." : "Do popisu úspěšně přidán odkaz na umístění v Talk", "Successfully appended link to talk room to description." : "Do popisu úspěšně přidán odkaz na místnost v Talk", "Error creating Talk room" : "Chyba při vytváření místnosti v Talk", - "Send email" : "Odeslat e-mail", + "Attendees" : "Účastníci", + "_%n more guest_::_%n more guests_" : ["%n další host","%n další hosté","%n dalších hostů","%n další hosté"], + "Remove group" : "Odebrat skupinu", + "Remove attendee" : "Odebrat účastníka", + "Request reply" : "Požadovat odpověď", "Chairperson" : "Předseda/kyně", "Required participant" : "Povinný účastník", "Optional participant" : "Nepovinní účastníci", "Non-participant" : "Neúčastník", - "Remove attendee" : "Odebrat účastníka", - "Search for emails, users or contacts" : "Hledat e-maily, uživatele či kontakty", + "_%n member_::_%n members_" : ["%n člen","%n členové","%n členů","%n členové"], + "Search for emails, users, contacts, contact groups or teams" : "Hledat e-maily, uživatele, kontakty, skupiny kontaktů či týmy", "No match found" : "Nenalezena žádná shoda", + "Note that members of circles get invited but are not synced yet." : "Mějte na paměti, že členové okruhů budou pozváni, ale zatím ještě nejsou synchronizováni.", + "Note that members of contact groups get invited but are not synced yet." : "Mějte na paměti, že členové skupin kontaktů budou pozváni, ale zatím ještě nejsou synchronizováni.", "(organizer)" : "(organizátor(ka))", + "Make {label} the organizer" : "Udělat {label} organizátorem", + "Make {label} the organizer and attend" : "Udělat {label}organizátorem a zúčastnit se", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Pro rozesílání pozvánek a práci s odpověďmi na ně [linkopen]přidejte svoji e-mailovou adresu[linkclose] do osobních nastavení.", "Remove color" : "Odebrat barvu", "Event title" : "Název události", - "All day" : "Celý den", "Cannot modify all-day setting for events that are part of a recurrence-set." : "U opakovaných událostí nelze u jednotlivého výskytu zvlášť měnit, zda je událost celodenní či ne.", - "from {startDate}" : "od {startDate}", - "from {startDate} at {startTime}" : "od {startDate} v {startTime}", - "to {endDate}" : "do {endDate}", - "to {endDate} at {endTime}" : "do {endDate} v {endTime}", + "From" : "Od", + "To" : "Do", "Repeat" : "Opakovat", - "End repeat" : "Konec opakování", - "Select to end repeat" : "Vyberte konec opakování", + "Repeat event" : "Zopakovat událost", + "_time_::_times_" : ["krát","krát","krát","krát"], "never" : "nikdy", "on date" : "dne", "after" : "po", - "_time_::_times_" : ["krát","krát","krát","krát"], + "End repeat" : "Konec opakování", + "Select to end repeat" : "Vyberte konec opakování", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Tato událost je výjimka v opakované události. Proto k ní nelze přidat pravidlo opakování.", "first" : "první", - "third" : "třetí", - "fourth" : "čtvrté", - "fifth" : "páté", - "second to last" : "po kolik sekund", - "last" : "poslední", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Změny v opakované události budou mít vliv jen na tuto a budoucí události", "Repeat every" : "Opakovat každé", "By day of the month" : "Podle dne v měsíci", "On the" : "V", + "_day_::_days_" : ["den","dny","dní","dny"], + "_week_::_weeks_" : ["týden","týdny","týdnů","týdny"], "_month_::_months_" : ["měsíc","měsíce","měsíců","měsíce"], "_year_::_years_" : ["rok","roky","let","roky"], + "On specific day" : "V konkrétní den", "weekday" : "den v týdnu", "weekend day" : "den o víkendu", - "No recurrence" : "Bez opakování", + "Does not repeat" : "Neopakuje se", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Definice opakování této události není v Nextcloud zcela podporována. Pokud upravíte volby opakování, některá opakování mohou být ztracena.", - "Suggestions" : "Doporučení", "No rooms or resources yet" : "Zatím žádné místnosti nebo prostředky", + "Resources" : "Prostředky", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} židle","{seatingCapacity} židle","{seatingCapacity} židlí","{seatingCapacity} židle"], "Add resource" : "Přidat prostředek", "Has a projector" : "Má projektor", "Has a whiteboard" : "Má tabuli", "Wheelchair accessible" : "Kolečkové křeslo pro invalidy", "Remove resource" : "Odebrat prostředek", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} židle","{seatingCapacity} židle","{seatingCapacity} židlí","{seatingCapacity} židle"], - "Projector" : "Projektor", - "Whiteboard" : "Tabule", "Search for resources or rooms" : "Hledat prostředky nebo místnosti", "available" : "dostupné", "unavailable" : "není dostupné", + "Show all rooms" : "Zobrazit všechny místnosti", + "Projector" : "Projektor", + "Whiteboard" : "Tabule", "Room type" : "Typ místnosti", "Any" : "Jakákoli", "Minimum seating capacity" : "Minimální kapacita k sezení", - "More" : "Více", - "Update this occurrence" : "Aktualizovat tento výskyt", + "More details" : "Další podrobnosti", "Update this and all future" : "Aktualizovat tento a všechny budoucí", + "Update this occurrence" : "Aktualizovat tento výskyt", "Public calendar does not exist" : "Veřejný kalendář neexistuje", "Maybe the share was deleted or has expired?" : "Sdílení byl nejspíš smazáno nebo skončila jeho platnost?", - "Please select a time zone:" : "Vyberte časové pásmo:", - "Pick a time" : "Vyberte čas", - "Pick a date" : "Vyberte datum", "from {formattedDate}" : "od {formattedDate}", "to {formattedDate}" : "do {formattedDate}", "on {formattedDate}" : "{formattedDate}", @@ -340,9 +431,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} v {formattedTime}", "Please enter a valid date" : "Zadejte platné datum", "Please enter a valid date and time" : "Zadejte platný datum a čas", + "Select a time zone" : "Vyberte časovou zónu", + "Please select a time zone:" : "Vyberte časové pásmo:", + "Pick a time" : "Vyberte čas", + "Pick a date" : "Vyberte datum", "Type to search time zone" : "Psaním vyhledejte časové pásmo", "Global" : "Globální", - "Select date" : "Vybrat datum", + "Holidays in {region}" : "Svátky v {region}", + "An error occurred, unable to read public calendars." : "Došlo k chybě –nepodařilo se načíst veřejné kalendáře.", + "An error occurred, unable to subscribe to calendar." : "Došlo k chybě – nepodařilo se přihlásit k odběru kalendáře.", + "Public holiday calendars" : "Kalendář veřejných svátků", + "Public calendars" : "Veřejné kalendáře", + "No valid public calendars configured" : "Nenastaveny žádné platné veřejné kalendáře", + "Speak to the server administrator to resolve this issue." : "O řešení tohoto problému požádejte správce serveru.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Kalendáře veřejných svátků jsou poskytovány projektem Thunderbird. Data kalendáře budou stažena z {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Tyto veřejné kalendáře jsou navrhovány správcem serveru. Data kalendáře budou stažena z příslušného webu.", + "By {authors}" : "Od {authors}", + "Subscribed" : "Přihlášeno se k odběru", + "Subscribe" : "Přihlásit se k odběru", + "Could not fetch slots" : "Nepodařilo se získat sloty", + "Select a date" : "Vybrat datum", "Select slot" : "Vybrat slot", "No slots available" : "Nejsou k dispozici žádná časová okna", "The slot for your appointment has been confirmed" : "Slož pro vaši schůzku byl potvrzen", @@ -359,24 +467,25 @@ "Personal" : "Osobní", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Automatickým zjištěním časové zóny bylo určeno, že vaše zóna je UTC.\nTo je nejspíš kvůli bezpečnostním opatřením vámi používaného webového prohlížeče.\nV nastavení kalendáře zadejte časovou zónu ručně.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Vámi nastavené časové pásmo ({timezoneId}) nenalezeno. Náhradou bude použit UTC čas.\nZměňte své časové pásmo v nastaveních a nahlaste tento problém vývojářům, děkujeme.", - "No more events today" : "Dnes už žádné další události", - "No upcoming events" : "Žádné nadcházející události", - "Create a new event" : "Vytvořit novou událost", - "[Today]" : "[Dnes]", - "[Tomorrow]" : "[Zítra]", - "[Yesterday]" : "[Včera]", - "[Last] dddd" : "[Minul.] dddd", + "Availability of {displayName}" : "Dostupnost {displayName}", + "Edit event" : "Upravit událost", "Event does not exist" : "Událost neexistuje", "Duplicate" : "Zduplikovat", "Delete this occurrence" : "Smazat tento výskyt", "Delete this and all future" : "Smazat toto a všechny budoucí", - "Details" : "Podrobnosti", - "Attendees" : "Účastníci", - "Resources" : "Prostředky", + "All day" : "Celý den", + "Modifications wont get propagated to the organizer and other attendees" : "Změny nebudou propagovány organizátorovi a ostatním účastníkům", + "Managing shared access" : "Správa sdíleného přístupu", + "Deny access" : "Odepřít přístup", + "Invite" : "Pozvat", + "_User requires access to your file_::_Users require access to your file_" : ["Uživatel potřebuje přístup k vašemu souboru","Uživatelé potřebují přístup k vašemu souboru","Uživatelé potřebují přístup k vašemu souboru","Uživatelé potřebují přístup k vašemu souboru"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Příloha vyžadující sdílení přístup","Přílohy vyžadující sdílení přístup","Přílohy vyžadující sdílení přístup","Přílohy vyžadující sdílení přístup"], + "Untitled event" : "Nepojmenovaná událost", "Close" : "Zavřít", - "Show more details" : "Zobrazit další podrobnosti", + "Modifications will not get propagated to the organizer and other attendees" : "Změny nebudou propagovány organizátorovi a ostatním účastníkům", "Subscribe to {name}" : "Přihlásit se k odběru {name}", "Export {name}" : "Exportovat {name}", + "Show availability" : "Zobrazit dostupnost", "Anniversary" : "Výročí", "Appointment" : "Schůzka", "Business" : "Práce", @@ -394,7 +503,7 @@ "Midnight on the day the event starts" : "Nejbližší půlnoc před začátkem události", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n den před událostí v {formattedHourMinute}","%n dny před událostí v {formattedHourMinute}","%n dnů před událostí v {formattedHourMinute}","%n dny před událostí v {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n týden před událostí v {formattedHourMinute}","%n týdny před událostí v {formattedHourMinute}","%n týdnů před událostí v {formattedHourMinute}","%n týdny před událostí v {formattedHourMinute}"], - "on the day of the event at {formattedHourMinute}" : "v den událostí v {formattedHourMinute}", + "on the day of the event at {formattedHourMinute}" : "v den události v {formattedHourMinute}", "at the event's start" : "na začátku události", "at the event's end" : "na konci události", "{time} before the event starts" : "{time} před začátkem události", @@ -404,7 +513,6 @@ "on {time}" : "v {time}", "on {time} ({timezoneId})" : "v {time} ({timezoneId})", "Week {number} of {year}" : "{number}. týden {year}", - "Does not repeat" : "Neopakuje se", "Daily" : "Každodenně", "Weekly" : "Týdně", "Monthly" : "Měsíčně", @@ -416,26 +524,32 @@ "_on {weekday}_::_on {weekdays}_" : ["v {weekdays}","v {weekdays}","v {weekdays}","v {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["dne {dayOfMonthList}","ve dnech {dayOfMonthList}","ve dnech {dayOfMonthList}","ve dnech {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "každý měsíc {ordinalNumber} {byDaySet}", - "in {monthNames}" : "v {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "V {monthNames} v {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "v {monthNames} v {ordinalNumber} {byDaySet}", "until {untilDate}" : "do {untilDate}", "_%n time_::_%n times_" : ["%n kát","%n krát","%n krát","%n krát"], - "Untitled event" : "Nepojmenovaná událost", + "second" : "sekunda", + "third" : "třetí", + "fourth" : "čtvrté", + "fifth" : "páté", + "second to last" : "po kolik sekund", + "last" : "poslední", "Untitled task" : "Nepojmenovaný úkol", "Please ask your administrator to enable the Tasks App." : "Požádejte správce aby zapnul aplikaci Úkoly.", - "Prev" : "Předchozí", - "Next" : "Další", - "Prev year" : "Předchozí rok", - "Next year" : "Následující rok", - "Year" : "Rok", + "You are not allowed to edit this event as an attendee." : "Nemáte oprávnění upravovat tuto událost coby účastník.", "W" : "T", "%n more" : "%n další", "No events to display" : "Žádné události k zobrazení", + "All participants declined" : "Všichni účastníci odmítli", + "Please confirm your participation" : "Potvrďte svou účast", + "You declined this event" : "Odmítli jste účast na této události", + "Your participation is tentative" : "Vaše účast je povinná", "_+%n more_::_+%n more_" : ["+%n další","+%n další","+%n dalších","+%n další"], "No events" : "Žádné události", "Create a new event or change the visible time-range" : "Vytvořit novou událost nebo změňte viditelný časový rozsah", - "It might have been deleted, or there was a typo in a link" : "Mohl být smazán, nebo v odkazu byl překlep", - "It might have been deleted, or there was a typo in the link" : "Mohl být smazán, nebo v odkazu byl překlep", + "Failed to save event" : "Nepodařilo se uložit událost", + "It might have been deleted, or there was a typo in a link" : "Mohla být smazána, nebo byl v odkazu překlep", + "It might have been deleted, or there was a typo in the link" : "Mohla být smazána, nebo byl v odkazu překlep", "Meeting room" : "Zasedací místnost", "Lecture hall" : "Posluchárna", "Seminar room" : "Místnost pro semináře", @@ -446,7 +560,7 @@ "When shared hide this event" : "Pří sdílení tuto událost skrýt", "The visibility of this event in shared calendars." : "Viditelnost této události ve sdílených kalendářích.", "Add a location" : "Přidat umístění", - "Add a description" : "Přidat popis", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Přidejte popis\n\n- O čem tato schůzka je\n- Body programu\n- Cokoli co je třeba, aby si účastnici připravili", "Status" : "Stav", "Confirmed" : "Potvrzeno", "Canceled" : "Zrušeno", @@ -459,135 +573,26 @@ "Add this as a new category" : "Přidat toto jako novou kategorii", "Custom color" : "Uživatelsky určená barva", "Special color of this event. Overrides the calendar-color." : "Speciální barva této události. Přebíjí barvu kalendáře.", - "Chat room for event" : "Chat místnost pro událost", + "Error while sharing file" : "Chyba při sdílení souboru", + "Error while sharing file with user" : "Chyba při sdílení souboru uživateli", + "Error creating a folder {folder}" : "Chyba při vytváření složky {folder}", + "Attachment {fileName} already exists!" : "Příloha {fileName} už existuje!", + "Attachment {fileName} added!" : "Příloha {fileName} přidána!", + "An error occurred during uploading file {fileName}" : "Při nahrávání souboru {fileName} došlo k chybě", + "An error occurred during getting file information" : "Při získávání informací o souboru došlo k chybě", + "Talk conversation for event" : "Konverzace v Talk pro událost", + "An error occurred, unable to delete the calendar." : "Došlo k chybě, kalendář se nepodařilo smazat.", "Imported {filename}" : "Importováno {filename}", - "Meditation" : "Meditace", - "Relaxing" : "Odpočinek", - "Relax" : "Odpočinek", - "Break" : "Přestávka", - "Commute" : "Dojíždět", - "Commuting" : "Dojíždění", - "Shuttle" : "Kyvadlová doprava", - "Invoice" : "Faktura", - "Finance" : "Finance", - "Bank" : "Banka", - "Money" : "Peníze", - "Wedding" : "Svadba", - "Dog" : "Pes", - "Concert" : "Koncert", - "Festival" : "Festival", - "Theater" : "Divadlo", - "Theatre" : "Divadlo", - "Presentation" : "Prezentace", - "Talk" : "Hovor", - "Speech" : "Řeč", - "Deadline" : "Termín", - "Submission" : "Odeslání", - "Reporting" : "Výkaznictví", - "Camping" : "Kempování", - "Camp" : "Kemp", - "Election" : "Volby", - "Voting" : "Hlasování", - "Vote" : "Hlasovat", - "Barbecue" : "Grilování", - "Barbeque" : "Grilování", - "Garden" : "Zahrada", - "Farm" : "Farma", - "Movie" : "Film", - "Cinema" : "Kino", - "Graduation" : "Promoce", - "Brainstorm" : "Brainstorming", - "Review" : "Revize", - "Audit" : "Audit", - "Inspection" : "Inspekce", - "Proofreading" : "Korektura", - "Baseball" : "Baseball", - "Meet" : "Setkání", - "Planning" : "Plánování", - "Pointing" : "Ukazování", - "Retrospective" : "Retrospektiva", - "Office" : "Kancelář", - "Contributor week" : "Týden přispěvatelů", - "Mail" : "Pošta", - "Soccer" : "Fotbal", - "Football" : "Fotbal", - "Gaming" : "Hraní", - "Drive" : "Řídit", - "Driving" : "Potápění", - "Bicycle" : "Kolo", - "Cycle" : "Jízda na kole", - "Cycling" : "Cyklistika", - "Biking" : "Jízda na kole", - "Bike" : "Kolo", - "Podcast" : "Podcast", - "Basketball" : "Basketball", - "Fishing" : "Rybaření", - "Hiking" : "Lezení", - "Hike" : "Lezení", - "Art" : "Umění", - "Exhibition" : "Výstava", - "Museum" : "Muzeum", - "Pilates" : "Cvičení", - "Park" : "Park", - "Walk" : "Procházka", - "Studying" : "Studium", - "Doctor" : "Doktor", - "Health" : "Zdraví", - "Dentist" : "Zubař", - "Hospital" : "Nemocnice", - "Interview" : "Rozhovor", - "Training" : "Tréning", - "Practice" : "Procvičování", - "Sports" : "Sporty", - "Exercise" : "Cvičení", - "Work out" : "Cvičení", - "Working out" : "Cvičení", - "Gym" : "Tělocvična", - "Barber" : "Holič", - "Haircut" : "Účes", - "Hairdresser" : "Kadeřník", - "Exam" : "Zkouška", - "Written test" : "Písemná zkouška", - "Oral test" : "Ústní zkouška", - "Working" : "Práce", - "New Years Eve" : "Štědrý den", - "NYE" : "Silvestr", - "Fireworks" : "Ohňostroj", - "Running" : "Běhání", - "Go for a run" : "Jít si zaběhat", - "Marathon" : "Běh", - "Video-conference" : "Video-konference", - "Conference-call" : "Konferenční hovor", - "Video-call" : "Video-hovor", - "Video-chat" : "Video-chat", - "Video-meeting" : "Video-schůze", - "Call" : "Volání", - "Calling" : "Volání", - "Christmas" : "Vánoce", - "Conference" : "Konference", - "Pizza" : "Pizza", - "Travelling" : "Cestování", - "Trip" : "Výlet", - "Journey" : "Zájezd", - "Collaborate" : "Spolupracovat", - "Pair" : "Dvojice", - "Lecture" : "Přednáška", - "Seminar" : "Seminář", - "Teaching" : "Učení", - "Photograph" : "Fotografie", - "Party" : "Párty", - "Celebration" : "Oslava", - "Celebrate" : "Slavit", - "Birthday" : "Narozeniny", - "Shopping" : "Nakupování", - "Groceries" : "Potraviny", - "Skate" : "Skateboard", - "Skateboard" : "Skateboard", - "Wine tasting" : "Ochutnávka vína", - "Golf" : "Golf", - "Dinner" : "Večeře", - "Lunch" : "Oběd", + "This is an event reminder." : "Toto je připomínka události.", + "Error while parsing a PROPFIND error" : "Chyba při zpracovávání PROPFIND chyby", "Appointment not found" : "Schůzka nenalezena", - "User not found" : "Uživatel nenalezen" + "User not found" : "Uživatel nenalezen", + "Reminder" : "Připomínka", + "+ Add reminder" : "+ Přidat připomínku", + "Select automatic slot" : "Vybrat automatický slot", + "with" : "s", + "Available times:" : "Časy k dispozici:", + "Suggestions" : "Doporučení", + "Details" : "Podrobnosti" },"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;" } \ No newline at end of file diff --git a/l10n/cy_GB.js b/l10n/cy_GB.js index e31ef4cb87878452358941461773196d43731be6..075acf69b14ad94b4f940ef0aae8734018595dae 100644 --- a/l10n/cy_GB.js +++ b/l10n/cy_GB.js @@ -11,110 +11,96 @@ OC.L10N.register( "Open »%s«" : "Agor »%s«", "Cheers!" : "Hwyl!", "Upcoming events" : "Digwyddiadau i ddod", + "No more events today" : "Dim mwy o ddigwyddiadau heddiw", + "No upcoming events" : "Dim digwyddiadau i ddod", + "Calendar" : "Calendr", "Appointments" : "Apwyntiadau", "Schedule appointment \"%s\"" : "Trefnu apwyntiad \"%s\"", "Schedule an appointment" : "Trefnwch apwyntiad", "Prepare for %s" : "Paratoi ar gyfer %s", "Follow up for %s" : "Dilyniant ar gyfer %s", - "Your appointment \"%s\" needs confirmation" : "Mae angen cadarnhau eich apwyntiad \"%s\".", "Dear %s, please confirm your booking" : "Annwyl %s, cadarnhewch eich archeb", "Confirm" : "Cadarnhau", + "Description:" : "Disgrifiad:", "This confirmation link expires in %s hours." : "Mae'r ddolen gadarnhau hon yn dod i ben ymhen %s awr.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Os hoffech chi ddiddymu'r apwyntiad wedi'r cyfan, cysylltwch â'ch trefnydd.", - "Appointment:" : "Apwyntiad:", "Date:" : "Dyddiad:", "Where:" : "Lle:", - "Description:" : "Disgrifiad:", - "Calendar" : "Calendr", "A Calendar app for Nextcloud" : "Ap Calendr ar gyfer Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Mae'r app Calendr yn rhyngwyneb defnyddiwr ar gyfer gweinydd CalDAV Nextcloud. Cydweddwch ddigwyddiadau o wahanol ddyfeisiau yn hawdd â'ch Nextcloud a'u golygu ar-lein.\n\n* 🚀 **Integreiddio ag apiau Nextcloud eraill!** Cysylltiadau ar hyn o bryd - mwy i ddod.\n* 🌐 **Cymorth WebCal!** Eisiau gweld dyddiau gêm eich hoff dîm yn eich calendr? Dim problem!\n* 🙋 ** Mynychwyr!** Gwahoddwch bobl i'ch digwyddiadau\n* ⌚️ **Am ddim/Prysur!** Gweld pryd mae eich mynychwyr ar gael i gwrdd\n* ⏰ **Atgofion!** Mynnwch larymau ar gyfer digwyddiadau yn eich porwr a thrwy e-bost\n* 🔍 Chwiliwch! Dewch o hyd i'ch digwyddiadau yn gyfforddus\n* ☑️ Tasgau! Gweld tasgau gyda dyddiad dyledus yn uniongyrchol yn y calendr\n* 🙈 **Dydyn ni ddim yn ailddyfeisio'r olwyn!** Yn seiliedig ar y llyfrgell wych [c-dav]( https://github.com/nextcloud/cdav-library ), [ical.js]( https:// github.com/mozilla-comm/ical.js) a [calendr llawn](https://github.com/fullcalendar/fullcalendar) llyfrgelloedd.", "Previous day" : "Diwrnod blaenorol", "Previous week" : "Wythnos flaenorol", "Previous month" : "Mis blaenorol", "Next day" : "Diwrnod nesaf", "Next week" : "Wythnos nesaf", + "Next year" : "Blwyddyn nesaf", "Next month" : "Mis nesaf", - "New event" : "Digwyddiad newydd", "Today" : "Heddiw", "Day" : "Diwrnod", "Week" : "Wythnos", "Month" : "Mis", + "Year" : "Blwyddyn", "List" : "Rhestr", + "Appointment link was copied to clipboard" : "Cafodd dolen apwyntiad ei chopïo i'r clipfwrdd", + "Appointment link could not be copied to clipboard" : "Ni fu modd copïo dolen apwyntiad i'r clipfwrdd", "Preview" : "Rhagolwg", "Copy link" : "Copïo dolen", "Edit" : "Golygu", "Delete" : "Dileu", - "Appointment link was copied to clipboard" : "Cafodd dolen apwyntiad ei chopïo i'r clipfwrdd", - "Appointment link could not be copied to clipboard" : "Ni fu modd copïo dolen apwyntiad i'r clipfwrdd", - "Add new" : "Ychwanegu newydd", - "Untitled calendar" : "Calendr di-deitl", - "Edit name" : "Golygu enw", - "Saving name …" : "Wrthi'n cadw enw …", - "Edit color" : "Golygu lliw", - "Saving color …" : "Wrthi'n cadw lliw …", - "Copy private link" : "Copïo dolen breifat", - "Export" : "Allforio", - "Unshare from me" : "Dadrannwch oddi wrthyf", + "Create new" : "Creu newydd", "An error occurred, unable to change visibility of the calendar." : "Bu gwall, ni fu modd newid gwelededd y calendr.", - "An error occurred, unable to delete the calendar." : "Bu gwall, ni fu modd dileu'r calendr.", - "Calendar link copied to clipboard." : "Dolen calendr wedi'i chopïo i'r clipfwrdd.", - "Calendar link could not be copied to clipboard." : "Nid oedd modd copïo dolen calendr i'r clipfwrdd.", - "An error occurred, unable to rename the calendar." : "Bu gwall, ni fu modd ailenwi'r calendr.", - "An error occurred, unable to change the calendar's color." : "Bu gwall, ni fu modd newid lliw'r calendr.", + "Untitled calendar" : "Calendr di-deitl", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Dadrannu'r calendr mewn {countdown} eiliad","Dad-rannu'r calendr mewn {countdown} eiliad","Dad-rannu'r calendr mewn {countdown} eiliad","Dad-rannu'r calendr mewn {countdown} eiliad"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Wrthi'n dileu'r calendr ymhen {countdown} eiliad","Yn dileu'r calendr mewn {countdown} eiliad","Yn dileu'r calendr mewn {countdown} eiliad","Yn dileu'r calendr mewn {countdown} eiliad"], + "An error occurred, unable to create the calendar." : "Bu gwall, ni fu modd creu'r calendr.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Rhowch ddolen ddilys (gan ddechrau gyda http://, https://, webcal://, neu webcals://)", + "Add new" : "Ychwanegu newydd", + "New calendar" : "Calendr newydd", + "Name for new calendar" : "Enw ar gyfer calendr newydd", + "Creating calendar …" : "Wrthi'n creu calendr …", + "New calendar with task list" : "Calendr newydd gyda rhestr dasgau", + "New subscription from link (read-only)" : "Tanysgrifiad newydd o'r ddolen (darllen yn unig)", + "Creating subscription …" : "Wrthi'n creu tanysgrifiad …", + "Calendar link copied to clipboard." : "Dolen calendr wedi'i chopïo i'r clipfwrdd.", + "Calendar link could not be copied to clipboard." : "Nid oedd modd copïo dolen calendr i'r clipfwrdd.", + "Copy subscription link" : "Copïo dolen tanysgrifiad", + "Copying link …" : "Wrthi'n copïo dolen …", + "Copied link" : "Dolen wedi'i chopïo", + "Could not copy link" : "Methu â chopïo'r ddolen", + "Export" : "Allforio", + "Unknown calendar" : "Calendr anhysbys", + "Could not load deleted calendars and objects" : "Methu llwytho calendrau a gwrthrychau wedi'u dileu", + "Could not restore calendar or event" : "Methu ag adfer calendr neu ddigwyddiad", + "Do you really want to empty the trash bin?" : "Ydych chi wir eisiau gwagio'r bin sbwriel?", + "Empty trash bin" : "Bin sbwriel gwag", + "Trash bin" : "Bin sbwriel", + "Name" : "Enw", + "Deleted" : "Wedi dileu", + "Restore" : "Adfer", + "Delete permanently" : "Dileu'n barhaol", + "Could not update calendar order." : "Methu â diweddaru trefn y calendr.", + "Hidden" : "Cudd", + "An error occurred, unable to publish calendar." : "Bu gwall, ni fu modd cyhoeddi'r calendr.", + "An error occurred, unable to send email." : "Bu gwall, ni fu modd anfon e-bost.", + "Embed code copied to clipboard." : "Mewnosod cod wedi'i gopïo i'r clipfwrdd.", + "Embed code could not be copied to clipboard." : "Nid oedd modd copïo'r cod mewnosod i'r clipfwrdd.", + "Unpublishing calendar failed" : "Methwyd â dadgyhoeddi'r calendr", "Share link" : "Rhannu dolen", - "Publish calendar" : "Cyhoeddi calendr", - "Publishing calendar" : "Cyhoeddi calendr", "Copy public link" : "Copïo dolen gyhoeddus", "Send link to calendar via email" : "Anfon dolen i'r calendr trwy e-bost", "Enter one address" : "Rhowch un cyfeiriad", "Sending email …" : "Wrthi'n anfon e-bost …", - "Copy subscription link" : "Copïo dolen tanysgrifiad", - "Copying link …" : "Wrthi'n copïo dolen …", - "Copied link" : "Dolen wedi'i chopïo", - "Could not copy link" : "Methu â chopïo'r ddolen", "Copy embedding code" : "Copïo cod mewnosod", "Copying code …" : "Wrthi'n copïo cod …", "Copied code" : "Cod wedi'i gopïo", "Could not copy code" : "Methu â chopïo'r cod", "Delete share link" : "Dileu dolen rhannu", "Deleting share link …" : "Wrthi'n dileu dolen rhannu …", - "An error occurred, unable to publish calendar." : "Bu gwall, ni fu modd cyhoeddi'r calendr.", - "An error occurred, unable to send email." : "Bu gwall, ni fu modd anfon e-bost.", - "Embed code copied to clipboard." : "Mewnosod cod wedi'i gopïo i'r clipfwrdd.", - "Embed code could not be copied to clipboard." : "Nid oedd modd copïo'r cod mewnosod i'r clipfwrdd.", - "Unpublishing calendar failed" : "Methwyd â dadgyhoeddi'r calendr", - "Share with users or groups" : "Rhannwch gyda defnyddwyr neu grwpiau", - "No users or groups" : "Dim defnyddwyr na grwpiau", + "An error occurred, unable to change the permission of the share." : "Bu gwall, ni fu modd newid caniatâd y gyfran.", "can edit" : "yn gallu golygu", "Unshare with {displayName}" : "Dadrannu gyda {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Bu gwall, ni fu modd newid y broses o ddad-rannu'r calendr.", - "An error occurred, unable to change the permission of the share." : "Bu gwall, ni fu modd newid caniatâd y gyfran.", - "+ New calendar" : "+ Calendr newydd", - "New calendar" : "Calendr newydd", - "Name for new calendar" : "Enw ar gyfer calendr newydd", - "Creating calendar …" : "Wrthi'n creu calendr …", - "New calendar with task list" : "Calendr newydd gyda rhestr dasgau", - "New subscription from link (read-only)" : "Tanysgrifiad newydd o'r ddolen (darllen yn unig)", - "Creating subscription …" : "Wrthi'n creu tanysgrifiad …", - "An error occurred, unable to create the calendar." : "Bu gwall, ni fu modd creu'r calendr.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Rhowch ddolen ddilys (gan ddechrau gyda http://, https://, webcal://, neu webcals://)", - "Trash bin" : "Bin sbwriel", - "Loading deleted elements." : "Wrthi'n llwytho elfennau sydd wedi'u dileu.", - "You do not have any deleted elements." : "Nid oes gennych unrhyw elfennau wedi'u dileu.", - "Name" : "Enw", - "Deleted" : "Wedi dileu", - "Restore" : "Adfer", - "Delete permanently" : "Dileu'n barhaol", - "Empty trash bin" : "Bin sbwriel gwag", - "Untitled element" : "Elfen di-deitl", - "Unknown calendar" : "Calendr anhysbys", - "Could not load deleted calendars and objects" : "Methu llwytho calendrau a gwrthrychau wedi'u dileu", - "Could not restore calendar or event" : "Methu ag adfer calendr neu ddigwyddiad", - "Do you really want to empty the trash bin?" : "Ydych chi wir eisiau gwagio'r bin sbwriel?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Mae elfennau yn y bin sbwriel yn cael eu dileu ar ôl {numDays} diwrnod","Mae elfennau yn y bin sbwriel yn cael eu dileu ar ôl {numDays} diwrnod","Mae elfennau yn y bin sbwriel yn cael eu dileu ar ôl {numDays} diwrnod","Mae elfennau yn y bin sbwriel yn cael eu dileu ar ôl {numDays} diwrnod"], - "Could not update calendar order." : "Methu â diweddaru trefn y calendr.", + "Share with users or groups" : "Rhannwch gyda defnyddwyr neu grwpiau", + "No users or groups" : "Dim defnyddwyr na grwpiau", + "Unshare from me" : "Dadrannwch oddi wrthyf", + "Save" : "Cadw", "Import calendars" : "Mewnforio calendrau", "Please select a calendar to import into …" : "Dewiswch galendr i fewnforio iddo …", "Filename" : "Enw ffeil", @@ -123,13 +109,11 @@ OC.L10N.register( "_Import calendar_::_Import calendars_" : ["Mewnforio'r calendr","Mewnforio calendrau","Mewnforio calendrau","Mewnforio calendrau"], "{filename} could not be parsed" : "Nid oedd modd dosrannu {filename}", "No valid files found, aborting import" : "Heb ganfod ffeiliau dilys, yn rhoi'r gorau i fewnforio", - "Import partially failed. Imported {accepted} out of {total}." : "Methodd mewnforio yn rhannol. Wedi mewnforio {accepted} allan o {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Wedi mewnforio %n digwyddiad yn llwyddiannus","Wedi mewnforio %n digwyddiad yn llwyddiannus","Wedi mewnforio %n digwyddiad yn llwyddiannus","Wedi mewnforio %n digwyddiad yn llwyddiannus"], + "Import partially failed. Imported {accepted} out of {total}." : "Methodd mewnforio yn rhannol. Wedi mewnforio {accepted} allan o {total}.", "Automatic" : "Awtomatig", "Automatic ({detected})" : "Awtomatig ({detected})", "New setting was not saved successfully." : "Ni chafodd y gosodiad newydd ei gadw'n llwyddiannus.", - "Shortcut overview" : "Trosolwg llwybr byr", - "or" : "neu", "Navigation" : "Llywio", "Previous period" : "Cyfnod blaenorol", "Next period" : "Cyfnod nesaf", @@ -145,10 +129,14 @@ OC.L10N.register( "Close editor" : "Cau'r golygydd", "Save edited event" : "Cadw digwyddiad wedi'i olygu", "Delete edited event" : "Dileu digwyddiad wedi'i olygu", + "Shortcut overview" : "Trosolwg llwybr byr", + "or" : "neu", + "No reminder" : "Dim nodyn atgoffa", + "CalDAV link copied to clipboard." : "Dolen CalDAV wedi'i chopïo i'r clipfwrdd.", + "CalDAV link could not be copied to clipboard." : "Nid oedd modd copïo dolen CalDAV i'r clipfwrdd.", "Enable birthday calendar" : "Galluogi calendr pen-blwydd", "Show tasks in calendar" : "Dangos tasgau yn y calendr", "Enable simplified editor" : "Galluogi golygydd symlach", - "Limit visible events per view" : "Cyfyngu ar ddigwyddiadau gweladwy fesul golwg", "Show weekends" : "Dangos penwythnosau", "Show week numbers" : "Dangos rhifau wythnosau", "Time increments" : "Cynyddiadau amser", @@ -157,11 +145,6 @@ OC.L10N.register( "Copy iOS/macOS CalDAV address" : "Copïo cyfeiriad CalDAV iOS/macOS", "Personal availability settings" : "Gosodiadau argaeledd personol", "Show keyboard shortcuts" : "Dangos llwybrau byr bysellfwrdd", - "No reminder" : "Dim nodyn atgoffa", - "CalDAV link copied to clipboard." : "Dolen CalDAV wedi'i chopïo i'r clipfwrdd.", - "CalDAV link could not be copied to clipboard." : "Nid oedd modd copïo dolen CalDAV i'r clipfwrdd.", - "Appointment was created successfully" : "Llwyddwyd i greu apwyntiad", - "Appointment was updated successfully" : "Diweddarwyd yr apwyntiad yn llwyddiannus", "_{duration} minute_::_{duration} minutes_" : ["{duration} munud","{duration} funud","{duration} munud","{duration} munud"], "0 minutes" : "0 munud", "_{duration} hour_::_{duration} hours_" : ["{duration} awr","{duration} awr","{duration} awr","{duration} awr"], @@ -172,6 +155,7 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "I ffurfweddu apwyntiadau, ychwanegwch eich cyfeiriad e-bost yn y gosodiadau personol.", "Public – shown on the profile page" : "Cyhoeddus – dangos ar y dudalen proffil", "Private – only accessible via secret link" : "Preifat – dim ond ar gael trwy gyswllt cyfrinachol", + "Update" : "Diweddaru", "Location" : "Lleoliad", "Description" : "Disgrifiad", "Visibility" : "Gwelededd", @@ -197,18 +181,14 @@ OC.L10N.register( "Minimum time before next available slot" : "Lleiafswm amser cyn y slot nesaf sydd ar gael", "Max slots per day" : "Uchafswm slotiau y dydd", "Limit how far in the future appointments can be booked" : "Cyfyngu ar ba mor bell yn y dyfodol y mae modd trefnu apwyntiadau", - "Create appointment" : "Creu apwyntiad", - "Edit appointment" : "Golygu apwyntiad", - "Save" : "Cadw", - "Update" : "Diweddaru", "Please confirm your reservation" : "Cadarnhewch eich archeb", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Rydym wedi anfon e-bost atoch gyda'r manylion. Cadarnhewch eich apwyntiad gan ddefnyddio'r ddolen yn yr e-bost. Gallwch chi gau'r dudalen hon nawr.", "Your name" : "Eich enw", "Your email address" : "Cyfeiriad E-bost", "Please share anything that will help prepare for our meeting" : "Rhannwch unrhyw beth a fydd yn helpu i baratoi ar gyfer ein cyfarfod", "Could not book the appointment. Please try again later or contact the organizer." : "Methu trefnu apwyntiad. Ceisiwch eto yn nes ymlaen neu cysylltwch â'r trefnydd.", - "Book the appointment" : "Archebwch yr apwyntiad", - "Reminder" : "Atgoffwr", + "on" : "ar", + "at" : "am", "before at" : "cyn am", "Notification" : "Hysbysiad", "Email" : "E-bost", @@ -219,114 +199,96 @@ OC.L10N.register( "Edit time" : "Golygu amser", "Save time" : "Arbed amser", "Remove reminder" : "Dileu nodyn atgoffa", - "on" : "ar", - "at" : "am", - "+ Add reminder" : "+ Ychwanegu nodyn atgoffa", "Add reminder" : "Ychwanegu nodyn atgoffa", - "_second_::_seconds_" : ["eiliad","eiliad","eiliad","eiliad"], - "_minute_::_minutes_" : ["munud","munud","munud","munud"], - "_hour_::_hours_" : ["awr","awr","awr","awr"], - "_day_::_days_" : ["diwrnod","diwrnod","diwrnod","diwrnod"], - "_week_::_weeks_" : ["wythnos","wythnos","wythnos","wythnos"], + "seconds" : "eiliad", + "minutes" : "munud", + "hours" : "awr", + "days" : "diwrnod", + "weeks" : "wythnos", + "Choose a file to add as attachment" : "Dewiswch ffeil i'w hychwanegu fel atodiad", "Suggested" : "Awgrym", "Available" : "Ar gael?", - "Not available" : "Ddim ar gael", - "Checking availability" : "Gwirio argaeledd", "Invitation accepted" : "Derbyniwyd y gwahoddiad", "Accepted {organizerName}'s invitation" : "Derbyniwyd y gwahoddiad {organizerName}", + "Participation marked as tentative" : "Cyfrannu wedi'i nodi fel o bosib", + "Invitation is delegated" : "Mae gwahoddiad yn cael ei ddirprwyo", + "Not available" : "Ddim ar gael", "Invitation declined" : "Gwrthodwyd y gwahoddiad", "Declined {organizerName}'s invitation" : "Gwrthodwyd gwahoddiad {organizerName}", - "Invitation is delegated" : "Mae gwahoddiad yn cael ei ddirprwyo", - "Participation marked as tentative" : "Cyfrannu wedi'i nodi fel o bosib", - "Invitation sent" : "Anfonwyd gwahoddiad", + "Checking availability" : "Gwirio argaeledd", "Has not responded to {organizerName}'s invitation yet" : "Nid yw wedi ymateb i wahoddiad {organizerName} eto", - "Availability of attendees, resources and rooms" : "Argaeledd mynychwyr, adnoddau ac ystafelloedd", "{organizer} (organizer)" : "{organizer} (trefnydd)", + "Availability of attendees, resources and rooms" : "Argaeledd mynychwyr, adnoddau ac ystafelloedd", + "Out of office" : "Allan o'r swyddfa", "Free" : "Am ddim", "Busy (tentative)" : "Prysur (o bosib)", "Busy" : "Prysur", - "Out of office" : "Allan o'r swyddfa", "Unknown" : "Anhysbys", - "Accept" : "Derbyn", - "Decline" : "Gwrthod", - "Tentative" : "I'w gadarnhau", "The invitation has been accepted successfully." : "Derbyniwyd y gwahoddiad yn llwyddiannus.", "Failed to accept the invitation." : "Methwyd â derbyn y gwahoddiad.", "The invitation has been declined successfully." : "Gwrthodwyd y gwahoddiad yn llwyddiannus.", "Failed to decline the invitation." : "Methwyd â gwrthod y gwahoddiad.", "Your participation has been marked as tentative." : "Mae eich cyfranogiad wedi'i nodi fel o bosib.", "Failed to set the participation status to tentative." : "Wedi methu â gosod y statws cyfranogiad i o bosib.", - "Create Talk room for this event" : "Creu ystafell Siarad ar gyfer y digwyddiad hwn", - "Show busy times" : "Dangos amseroedd prysur", + "Accept" : "Derbyn", + "Decline" : "Gwrthod", + "Tentative" : "I'w gadarnhau", "No attendees yet" : "Dim mynychwyr eto", "Successfully appended link to talk room to description." : "Llwyddwyd i atodi dolen i'r ystafell siarad i'r disgrifiad.", "Error creating Talk room" : "Gwall wrth greu ystafell Siarad", - "Send email" : "Anfon e-bost", + "Attendees" : "Mynychwyr", + "Remove attendee" : "Dileu mynychwr", "Chairperson" : "Cadeirydd", "Required participant" : "Cyfranogwr gofynnol", "Optional participant" : "Cyfranogwr dewisol", "Non-participant" : "Nid cyfranogwr", - "Remove attendee" : "Dileu mynychwr", - "Search for emails, users or contacts" : "Chwilio am e-byst, defnyddwyr neu gysylltiadau", "No match found" : "Heb ganfod cyfatebiaeth", "(organizer)" : "(trefnydd)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "I anfon gwahoddiadau a thrin ymatebion, [linkopen]ychwanegwch eich cyfeiriad e-bost yn y gosodiadau personol[linkclose].", "Remove color" : "Tynnu lliw", "Event title" : "Teitl y digwyddiad", - "All day" : "Drwy'r dydd", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Nid oes modd addasu gosodiad diwrnod cyfan ar gyfer digwyddiadau sy'n rhan o set ailadrodd.", - "from {startDate}" : "o {startDate}", - "from {startDate} at {startTime}" : "o {startDate} am {startTime}", - "to {endDate}" : "i {endDate}", - "to {endDate} at {endTime}" : "i {endDate} am {endTime}", "Repeat" : "Ailadrodd", - "End repeat" : "Gorffen ailadrodd", - "Select to end repeat" : "Dewiswch i orffen ailadrodd", + "_time_::_times_" : ["amser","gwaith","gwaith","gwaith"], "never" : "byth", "on date" : "ar ddyddiad", "after" : "wedi", - "_time_::_times_" : ["amser","gwaith","gwaith","gwaith"], + "End repeat" : "Gorffen ailadrodd", + "Select to end repeat" : "Dewiswch i orffen ailadrodd", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Mae'r digwyddiad hwn yn eithriad i ddigwyddiadau o set sy'n ailadrodd. Ni allwch ychwanegu rheol ailadrodd ato.", "first" : "cyntaf", - "third" : "trydydd", - "fourth" : "pedwerydd", - "fifth" : "pumed", - "second to last" : "ail i olaf", - "last" : "o;af", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Dim ond i hwn a phob digwyddiad yn y dyfodol y bydd newidiadau i'r rheol ailadrodd yn berthnasol.", "Repeat every" : "Ailadrodd bob", "By day of the month" : "Yn ôl dydd o'r mis", "On the" : "Ar y", + "_day_::_days_" : ["diwrnod","diwrnod","diwrnod","diwrnod"], + "_week_::_weeks_" : ["wythnos","wythnos","wythnos","wythnos"], "_month_::_months_" : ["mis","mis","mis","mis"], "_year_::_years_" : ["blwyddyn","blwyddyn","flwyddyn","blwyddyn"], "weekday" : "yn ystod yr wythnos", "weekend day" : "diwrnod penwythnos", - "No recurrence" : "Dim ailadrodd", + "Does not repeat" : "Nid yw'n ailadrodd", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nid yw Nextcloud yn cefnogi'r diffiniad sy'n ailadrodd y digwyddiad hwn yn llawn. Os ydych chi'n golygu'r opsiynau ailadrodd, mae'n bosibl y byddwch chi'n colli rhai ailadroddiadau.", - "Suggestions" : "Awgrymiadau", "No rooms or resources yet" : "Dim ystafelloedd nac adnoddau eto", + "Resources" : "Adnoddau", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sedd","{seatingCapacity} sedd","{seatingCapacity} sedd","{seatingCapacity} sedd"], "Add resource" : "Ychwanegu adnodd", "Has a projector" : "Taflunydd yno", "Has a whiteboard" : "Bwrdd gwyn yno", "Wheelchair accessible" : "Hygyrch i gadeiriau olwyn", "Remove resource" : "Dileu adnodd", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sedd","{seatingCapacity} sedd","{seatingCapacity} sedd","{seatingCapacity} sedd"], - "Projector" : "Taflunydd", - "Whiteboard" : "Bwrdd gwyn", "Search for resources or rooms" : "Chwilio am adnoddau neu ystafelloedd", "available" : "ar gael", "unavailable" : "ddim ar gael", + "Projector" : "Taflunydd", + "Whiteboard" : "Bwrdd gwyn", "Room type" : "Math o ystafell", "Any" : "Unrhyw", "Minimum seating capacity" : "Lleiafswm seddi", - "More" : "Rhagor", - "Update this occurrence" : "Diweddaru'r digwyddiad hwn", "Update this and all future" : "Diweddaru hwn a phob un i'r dyfodol", + "Update this occurrence" : "Diweddaru'r digwyddiad hwn", "Public calendar does not exist" : "Nid oes calendr cyhoeddus yn bodoli", "Maybe the share was deleted or has expired?" : "Efallai bod y gyfran wedi'i dileu neu wedi dod i ben?", - "Please select a time zone:" : "Dewiswch gylchfa amser:", - "Pick a time" : "Dewiswch amser", - "Pick a date" : "Dewiswch ddyddiad", "from {formattedDate}" : "o {formattedDate}", "to {formattedDate}" : "i {formattedDate}", "on {formattedDate}" : "ar {formattedDate}", @@ -336,9 +298,12 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} am {formattedTime}", "Please enter a valid date" : "Rhowch ddyddiad dilys", "Please enter a valid date and time" : "Rhowch ddyddiad ac amser dilys", + "Please select a time zone:" : "Dewiswch gylchfa amser:", + "Pick a time" : "Dewiswch amser", + "Pick a date" : "Dewiswch ddyddiad", "Type to search time zone" : "Teipiwch i chwilio'r gylchfa amser", "Global" : "Eang", - "Select date" : "Dewis dyddiad", + "Subscribe" : "Tanysgrifio", "Select slot" : "Dewiswch slot", "No slots available" : "Dim slotiau ar gael", "The slot for your appointment has been confirmed" : "Mae'r slot ar gyfer eich apwyntiad wedi'i gadarnhau", @@ -355,21 +320,14 @@ OC.L10N.register( "Personal" : "Personol", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Penderfynodd y darganfyddiad parth amser awtomatig mai UTC oedd eich parth amser.\nMae hyn yn fwyaf tebygol o ganlyniad i fesurau diogelwch eich porwr gwe.\nGosodwch eich cylchfa amser â llaw yng ngosodiadau'r calendr.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Heb ganfod eich cylchfa amser ffurfweddu ({timezoneId}). Mynd nôl i UTC.\nNewidiwch eich cylchfa amser yn y gosodiadau ac adroddwch am y mater hwn.", - "No more events today" : "Dim mwy o ddigwyddiadau heddiw", - "No upcoming events" : "Dim digwyddiadau i ddod", - "Create a new event" : "Creu digwyddiad newydd", - "[Today]" : "Heddiw", - "[Tomorrow]" : "[Yfory]", - "[Yesterday]" : "[Ddoe]", - "[Last] dddd" : "[Diwethaf] dddd", + "Edit event" : "Golygu digwyddiad", "Event does not exist" : "Nid yw'r digwyddiad yn bodoli", "Delete this occurrence" : "Dileu'r digwyddiad hwn", "Delete this and all future" : "Dileu hwn a phob dyfodol", - "Details" : "Manylion", - "Attendees" : "Mynychwyr", - "Resources" : "Adnoddau", + "All day" : "Drwy'r dydd", + "Invite" : "Gwahoddiad", + "Untitled event" : "Digwyddiad di-deitl", "Close" : "Cau", - "Show more details" : "Dangos rhagor o fanylion", "Subscribe to {name}" : "Tanysgrifio i {name}", "Export {name}" : "Allforio {name}", "Anniversary" : "Dathliad", @@ -399,7 +357,6 @@ OC.L10N.register( "on {time}" : "ar {time}", "on {time} ({timezoneId})" : "ar {time} ({timezoneId})", "Week {number} of {year}" : "Wythnos {number} o {year}", - "Does not repeat" : "Nid yw'n ailadrodd", "Daily" : "Dyddiol", "Weekly" : "Wythnosol", "Monthly" : "Misol", @@ -411,18 +368,17 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["ar {weekday}","ar {weekdays}","ar {weekdays}","ar {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["ar ddiwrnod {dayOfMonthList}","ar ddiwrnodau {dayOfMonthList}","ar ddiwrnodau {dayOfMonthList}","ar ddiwrnodau {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "ar y {ordinalNumber} {byDaySet}", - "in {monthNames}" : "yn {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "yn {monthNames} ar y {ordinalNumber} {byDaySet}", "until {untilDate}" : "tan {untilDate}", "_%n time_::_%n times_" : ["%n waith","%n o weithiau","%n o weithiau","%n o weithiau"], - "Untitled event" : "Digwyddiad di-deitl", + "second" : "ail", + "third" : "trydydd", + "fourth" : "pedwerydd", + "fifth" : "pumed", + "second to last" : "ail i olaf", + "last" : "o;af", "Untitled task" : "Tasg di-deitl", "Please ask your administrator to enable the Tasks App." : "Gofynnwch i'ch gweinyddwr alluogi'r Ap Tasgau.", - "Prev" : "Blaenorol", - "Next" : "Nesaf", - "Prev year" : "Blwyddyn flaenorol", - "Next year" : "Blwyddyn nesaf", - "Year" : "Blwyddyn", "W" : "M", "%n more" : "%n arall", "No events to display" : "Dim digwyddiadau i'w dangos", @@ -441,7 +397,6 @@ OC.L10N.register( "When shared hide this event" : "Pan wedi ei rannu, yn cuddio'r digwyddiad hwn", "The visibility of this event in shared calendars." : "Gwelededd y digwyddiad hwn mewn calendrau a rennir.", "Add a location" : "Ychwanegu lleoliad", - "Add a description" : "Ychwanegu disgrifiad", "Status" : "Statws", "Confirmed" : "Cadarnhawyd", "Canceled" : "Wedi diddymu", @@ -454,135 +409,13 @@ OC.L10N.register( "Add this as a new category" : "Ychwanegu hwn fel categori newydd", "Custom color" : "Lliw personol", "Special color of this event. Overrides the calendar-color." : "Lliw arbennig y digwyddiad hwn. Yn diystyru lliw y calendr.", - "Chat room for event" : "Ystafell sgwrsio ar gyfer digwyddiad", + "An error occurred, unable to delete the calendar." : "Bu gwall, ni fu modd dileu'r calendr.", "Imported {filename}" : "Mewnforiwyd {filename}", - "Meditation" : "Myfyrdod", - "Relaxing" : "Yn ymlacio", - "Relax" : "Ymlacio", - "Break" : "Egwyl", - "Commute" : "Cymudo", - "Commuting" : "Yn cymudo", - "Shuttle" : "Gwennol", - "Invoice" : "Anfoneb", - "Finance" : "Ariannol", - "Bank" : "Banc", - "Money" : "Ddim yn derbyn MTS-Money", - "Wedding" : "Priodas", - "Dog" : "Ci", - "Concert" : "Cyngerdd", - "Festival" : "Gŵyl", - "Theater" : "Theatr", - "Theatre" : "Theatr", - "Presentation" : "Cyflwyniad", - "Talk" : "Sgwrs", - "Speech" : "Lleferydd", - "Deadline" : "Dyddiad cau", - "Submission" : "Cyflwyno", - "Reporting" : "Adrodd Yn Ol", - "Camping" : "Gwersylla", - "Camp" : "Gwersyllar", - "Election" : "Etholiad", - "Voting" : "Pleidleisio", - "Vote" : "Pleidleisio", - "Barbecue" : "Barbeciw", - "Barbeque" : "Barbeciw", - "Garden" : "Yr Ardd yn Bougival", - "Farm" : "Fferm", - "Movie" : "Ffilm", - "Cinema" : "Sinema", - "Graduation" : "Graddio", - "Brainstorm" : "Taflu syniadau", - "Review" : "Adolygu", - "Audit" : "Archwiliad", - "Inspection" : "Archwiliad treth", - "Proofreading" : "Prawfddarllen", - "Baseball" : "Pêl-fas", - "Meet" : "Cyfarfod", - "Planning" : "Cynllunio", - "Pointing" : "Pwyntio", - "Retrospective" : "Edrych nôl", - "Office" : "Swyddfa", - "Contributor week" : "Wythnos cyfranwyr", - "Mail" : "E-bost", - "Soccer" : "Pêl-droed", - "Football" : "Pêl-droed", - "Gaming" : "Chwarae gemau", - "Drive" : "Gyrru", - "Driving" : "Yn gyrru", - "Bicycle" : "Beic", - "Cycle" : "Beicio", - "Cycling" : "Beicio", - "Biking" : "Beicio", - "Bike" : "Beic", - "Podcast" : "Podlediad", - "Basketball" : "Pêl Fasged", - "Fishing" : "Pysgota", - "Hiking" : "Heicio", - "Hike" : "Heicio", - "Art" : "Celf", - "Exhibition" : "Arddangosfa", - "Museum" : "Amgueddfa", - "Pilates" : "Pilates", - "Park" : "Parc", - "Walk" : "Cerdded", - "Studying" : "Astudio", - "Doctor" : "Meddyg", - "Health" : "Iechyd", - "Dentist" : "Deintydd", - "Hospital" : "Ysbyty", - "Interview" : "Cyfweliad", - "Training" : "Hyfforddiant", - "Practice" : "Ymarfer", - "Sports" : "Chwaraeon", - "Exercise" : "Ymarfer corff", - "Work out" : "Ymarfer corff", - "Working out" : "Yn ymarfer corff", - "Gym" : "Campfa", - "Barber" : "Barbwr", - "Haircut" : "Torri gwallt", - "Hairdresser" : "Triniwr gwallt", - "Exam" : "Arholiad", - "Written test" : "Prawf ysgrifenedig", - "Oral test" : "Prawf llafar", - "Working" : "Gweithio", - "New Years Eve" : "Nos Galan", - "NYE" : "Nos Galan", - "Fireworks" : "Tân Gwyllt", - "Running" : "Rhedeg", - "Go for a run" : "Mynd i redeg", - "Marathon" : "Marathon", - "Video-conference" : "Fideo-gynhadledd", - "Conference-call" : "Galwad cynadledda", - "Video-call" : "Galwad fideo", - "Video-chat" : "Sgwrs fideo", - "Video-meeting" : "Fideo-gyfarfod", - "Call" : "Galw", - "Calling" : "Yn galw", - "Christmas" : "Ynys Christmas", - "Conference" : "Cynhadledd", - "Pizza" : "Pitsa", - "Travelling" : "Yn teithio", - "Trip" : "Trip", - "Journey" : "Taith", - "Collaborate" : "Cydweithio", - "Pair" : "Pâr", - "Lecture" : "Darlith", - "Seminar" : "Seminar", - "Teaching" : "Dysgu", - "Photograph" : "Ffotograff", - "Party" : "Parti", - "Celebration" : "Dathliad", - "Celebrate" : "Yn dathlu", - "Birthday" : "Pen-blwydd", - "Shopping" : "Siopa", - "Groceries" : "Bwydydd", - "Skate" : "Sglefrio", - "Skateboard" : "Sgrialu", - "Wine tasting" : "Blasu gwin", - "Golf" : "Golff", - "Dinner" : "Cinio", - "Lunch" : "Swper", "Appointment not found" : "Apwyntiad heb ei ganfod", - "User not found" : "Defnyddiwr heb ei ganfod" + "User not found" : "Defnyddiwr heb ei ganfod", + "Reminder" : "Atgoffwr", + "+ Add reminder" : "+ Ychwanegu nodyn atgoffa", + "Suggestions" : "Awgrymiadau", + "Details" : "Manylion" }, "nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;"); diff --git a/l10n/cy_GB.json b/l10n/cy_GB.json index ef97911cdfcdf2d0a25927fe80f0544efa510177..fb2bd9a115db0de6ba7082e3ef4b169f21a9da50 100644 --- a/l10n/cy_GB.json +++ b/l10n/cy_GB.json @@ -9,110 +9,96 @@ "Open »%s«" : "Agor »%s«", "Cheers!" : "Hwyl!", "Upcoming events" : "Digwyddiadau i ddod", + "No more events today" : "Dim mwy o ddigwyddiadau heddiw", + "No upcoming events" : "Dim digwyddiadau i ddod", + "Calendar" : "Calendr", "Appointments" : "Apwyntiadau", "Schedule appointment \"%s\"" : "Trefnu apwyntiad \"%s\"", "Schedule an appointment" : "Trefnwch apwyntiad", "Prepare for %s" : "Paratoi ar gyfer %s", "Follow up for %s" : "Dilyniant ar gyfer %s", - "Your appointment \"%s\" needs confirmation" : "Mae angen cadarnhau eich apwyntiad \"%s\".", "Dear %s, please confirm your booking" : "Annwyl %s, cadarnhewch eich archeb", "Confirm" : "Cadarnhau", + "Description:" : "Disgrifiad:", "This confirmation link expires in %s hours." : "Mae'r ddolen gadarnhau hon yn dod i ben ymhen %s awr.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Os hoffech chi ddiddymu'r apwyntiad wedi'r cyfan, cysylltwch â'ch trefnydd.", - "Appointment:" : "Apwyntiad:", "Date:" : "Dyddiad:", "Where:" : "Lle:", - "Description:" : "Disgrifiad:", - "Calendar" : "Calendr", "A Calendar app for Nextcloud" : "Ap Calendr ar gyfer Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Mae'r app Calendr yn rhyngwyneb defnyddiwr ar gyfer gweinydd CalDAV Nextcloud. Cydweddwch ddigwyddiadau o wahanol ddyfeisiau yn hawdd â'ch Nextcloud a'u golygu ar-lein.\n\n* 🚀 **Integreiddio ag apiau Nextcloud eraill!** Cysylltiadau ar hyn o bryd - mwy i ddod.\n* 🌐 **Cymorth WebCal!** Eisiau gweld dyddiau gêm eich hoff dîm yn eich calendr? Dim problem!\n* 🙋 ** Mynychwyr!** Gwahoddwch bobl i'ch digwyddiadau\n* ⌚️ **Am ddim/Prysur!** Gweld pryd mae eich mynychwyr ar gael i gwrdd\n* ⏰ **Atgofion!** Mynnwch larymau ar gyfer digwyddiadau yn eich porwr a thrwy e-bost\n* 🔍 Chwiliwch! Dewch o hyd i'ch digwyddiadau yn gyfforddus\n* ☑️ Tasgau! Gweld tasgau gyda dyddiad dyledus yn uniongyrchol yn y calendr\n* 🙈 **Dydyn ni ddim yn ailddyfeisio'r olwyn!** Yn seiliedig ar y llyfrgell wych [c-dav]( https://github.com/nextcloud/cdav-library ), [ical.js]( https:// github.com/mozilla-comm/ical.js) a [calendr llawn](https://github.com/fullcalendar/fullcalendar) llyfrgelloedd.", "Previous day" : "Diwrnod blaenorol", "Previous week" : "Wythnos flaenorol", "Previous month" : "Mis blaenorol", "Next day" : "Diwrnod nesaf", "Next week" : "Wythnos nesaf", + "Next year" : "Blwyddyn nesaf", "Next month" : "Mis nesaf", - "New event" : "Digwyddiad newydd", "Today" : "Heddiw", "Day" : "Diwrnod", "Week" : "Wythnos", "Month" : "Mis", + "Year" : "Blwyddyn", "List" : "Rhestr", + "Appointment link was copied to clipboard" : "Cafodd dolen apwyntiad ei chopïo i'r clipfwrdd", + "Appointment link could not be copied to clipboard" : "Ni fu modd copïo dolen apwyntiad i'r clipfwrdd", "Preview" : "Rhagolwg", "Copy link" : "Copïo dolen", "Edit" : "Golygu", "Delete" : "Dileu", - "Appointment link was copied to clipboard" : "Cafodd dolen apwyntiad ei chopïo i'r clipfwrdd", - "Appointment link could not be copied to clipboard" : "Ni fu modd copïo dolen apwyntiad i'r clipfwrdd", - "Add new" : "Ychwanegu newydd", - "Untitled calendar" : "Calendr di-deitl", - "Edit name" : "Golygu enw", - "Saving name …" : "Wrthi'n cadw enw …", - "Edit color" : "Golygu lliw", - "Saving color …" : "Wrthi'n cadw lliw …", - "Copy private link" : "Copïo dolen breifat", - "Export" : "Allforio", - "Unshare from me" : "Dadrannwch oddi wrthyf", + "Create new" : "Creu newydd", "An error occurred, unable to change visibility of the calendar." : "Bu gwall, ni fu modd newid gwelededd y calendr.", - "An error occurred, unable to delete the calendar." : "Bu gwall, ni fu modd dileu'r calendr.", - "Calendar link copied to clipboard." : "Dolen calendr wedi'i chopïo i'r clipfwrdd.", - "Calendar link could not be copied to clipboard." : "Nid oedd modd copïo dolen calendr i'r clipfwrdd.", - "An error occurred, unable to rename the calendar." : "Bu gwall, ni fu modd ailenwi'r calendr.", - "An error occurred, unable to change the calendar's color." : "Bu gwall, ni fu modd newid lliw'r calendr.", + "Untitled calendar" : "Calendr di-deitl", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Dadrannu'r calendr mewn {countdown} eiliad","Dad-rannu'r calendr mewn {countdown} eiliad","Dad-rannu'r calendr mewn {countdown} eiliad","Dad-rannu'r calendr mewn {countdown} eiliad"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Wrthi'n dileu'r calendr ymhen {countdown} eiliad","Yn dileu'r calendr mewn {countdown} eiliad","Yn dileu'r calendr mewn {countdown} eiliad","Yn dileu'r calendr mewn {countdown} eiliad"], + "An error occurred, unable to create the calendar." : "Bu gwall, ni fu modd creu'r calendr.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Rhowch ddolen ddilys (gan ddechrau gyda http://, https://, webcal://, neu webcals://)", + "Add new" : "Ychwanegu newydd", + "New calendar" : "Calendr newydd", + "Name for new calendar" : "Enw ar gyfer calendr newydd", + "Creating calendar …" : "Wrthi'n creu calendr …", + "New calendar with task list" : "Calendr newydd gyda rhestr dasgau", + "New subscription from link (read-only)" : "Tanysgrifiad newydd o'r ddolen (darllen yn unig)", + "Creating subscription …" : "Wrthi'n creu tanysgrifiad …", + "Calendar link copied to clipboard." : "Dolen calendr wedi'i chopïo i'r clipfwrdd.", + "Calendar link could not be copied to clipboard." : "Nid oedd modd copïo dolen calendr i'r clipfwrdd.", + "Copy subscription link" : "Copïo dolen tanysgrifiad", + "Copying link …" : "Wrthi'n copïo dolen …", + "Copied link" : "Dolen wedi'i chopïo", + "Could not copy link" : "Methu â chopïo'r ddolen", + "Export" : "Allforio", + "Unknown calendar" : "Calendr anhysbys", + "Could not load deleted calendars and objects" : "Methu llwytho calendrau a gwrthrychau wedi'u dileu", + "Could not restore calendar or event" : "Methu ag adfer calendr neu ddigwyddiad", + "Do you really want to empty the trash bin?" : "Ydych chi wir eisiau gwagio'r bin sbwriel?", + "Empty trash bin" : "Bin sbwriel gwag", + "Trash bin" : "Bin sbwriel", + "Name" : "Enw", + "Deleted" : "Wedi dileu", + "Restore" : "Adfer", + "Delete permanently" : "Dileu'n barhaol", + "Could not update calendar order." : "Methu â diweddaru trefn y calendr.", + "Hidden" : "Cudd", + "An error occurred, unable to publish calendar." : "Bu gwall, ni fu modd cyhoeddi'r calendr.", + "An error occurred, unable to send email." : "Bu gwall, ni fu modd anfon e-bost.", + "Embed code copied to clipboard." : "Mewnosod cod wedi'i gopïo i'r clipfwrdd.", + "Embed code could not be copied to clipboard." : "Nid oedd modd copïo'r cod mewnosod i'r clipfwrdd.", + "Unpublishing calendar failed" : "Methwyd â dadgyhoeddi'r calendr", "Share link" : "Rhannu dolen", - "Publish calendar" : "Cyhoeddi calendr", - "Publishing calendar" : "Cyhoeddi calendr", "Copy public link" : "Copïo dolen gyhoeddus", "Send link to calendar via email" : "Anfon dolen i'r calendr trwy e-bost", "Enter one address" : "Rhowch un cyfeiriad", "Sending email …" : "Wrthi'n anfon e-bost …", - "Copy subscription link" : "Copïo dolen tanysgrifiad", - "Copying link …" : "Wrthi'n copïo dolen …", - "Copied link" : "Dolen wedi'i chopïo", - "Could not copy link" : "Methu â chopïo'r ddolen", "Copy embedding code" : "Copïo cod mewnosod", "Copying code …" : "Wrthi'n copïo cod …", "Copied code" : "Cod wedi'i gopïo", "Could not copy code" : "Methu â chopïo'r cod", "Delete share link" : "Dileu dolen rhannu", "Deleting share link …" : "Wrthi'n dileu dolen rhannu …", - "An error occurred, unable to publish calendar." : "Bu gwall, ni fu modd cyhoeddi'r calendr.", - "An error occurred, unable to send email." : "Bu gwall, ni fu modd anfon e-bost.", - "Embed code copied to clipboard." : "Mewnosod cod wedi'i gopïo i'r clipfwrdd.", - "Embed code could not be copied to clipboard." : "Nid oedd modd copïo'r cod mewnosod i'r clipfwrdd.", - "Unpublishing calendar failed" : "Methwyd â dadgyhoeddi'r calendr", - "Share with users or groups" : "Rhannwch gyda defnyddwyr neu grwpiau", - "No users or groups" : "Dim defnyddwyr na grwpiau", + "An error occurred, unable to change the permission of the share." : "Bu gwall, ni fu modd newid caniatâd y gyfran.", "can edit" : "yn gallu golygu", "Unshare with {displayName}" : "Dadrannu gyda {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Bu gwall, ni fu modd newid y broses o ddad-rannu'r calendr.", - "An error occurred, unable to change the permission of the share." : "Bu gwall, ni fu modd newid caniatâd y gyfran.", - "+ New calendar" : "+ Calendr newydd", - "New calendar" : "Calendr newydd", - "Name for new calendar" : "Enw ar gyfer calendr newydd", - "Creating calendar …" : "Wrthi'n creu calendr …", - "New calendar with task list" : "Calendr newydd gyda rhestr dasgau", - "New subscription from link (read-only)" : "Tanysgrifiad newydd o'r ddolen (darllen yn unig)", - "Creating subscription …" : "Wrthi'n creu tanysgrifiad …", - "An error occurred, unable to create the calendar." : "Bu gwall, ni fu modd creu'r calendr.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Rhowch ddolen ddilys (gan ddechrau gyda http://, https://, webcal://, neu webcals://)", - "Trash bin" : "Bin sbwriel", - "Loading deleted elements." : "Wrthi'n llwytho elfennau sydd wedi'u dileu.", - "You do not have any deleted elements." : "Nid oes gennych unrhyw elfennau wedi'u dileu.", - "Name" : "Enw", - "Deleted" : "Wedi dileu", - "Restore" : "Adfer", - "Delete permanently" : "Dileu'n barhaol", - "Empty trash bin" : "Bin sbwriel gwag", - "Untitled element" : "Elfen di-deitl", - "Unknown calendar" : "Calendr anhysbys", - "Could not load deleted calendars and objects" : "Methu llwytho calendrau a gwrthrychau wedi'u dileu", - "Could not restore calendar or event" : "Methu ag adfer calendr neu ddigwyddiad", - "Do you really want to empty the trash bin?" : "Ydych chi wir eisiau gwagio'r bin sbwriel?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Mae elfennau yn y bin sbwriel yn cael eu dileu ar ôl {numDays} diwrnod","Mae elfennau yn y bin sbwriel yn cael eu dileu ar ôl {numDays} diwrnod","Mae elfennau yn y bin sbwriel yn cael eu dileu ar ôl {numDays} diwrnod","Mae elfennau yn y bin sbwriel yn cael eu dileu ar ôl {numDays} diwrnod"], - "Could not update calendar order." : "Methu â diweddaru trefn y calendr.", + "Share with users or groups" : "Rhannwch gyda defnyddwyr neu grwpiau", + "No users or groups" : "Dim defnyddwyr na grwpiau", + "Unshare from me" : "Dadrannwch oddi wrthyf", + "Save" : "Cadw", "Import calendars" : "Mewnforio calendrau", "Please select a calendar to import into …" : "Dewiswch galendr i fewnforio iddo …", "Filename" : "Enw ffeil", @@ -121,13 +107,11 @@ "_Import calendar_::_Import calendars_" : ["Mewnforio'r calendr","Mewnforio calendrau","Mewnforio calendrau","Mewnforio calendrau"], "{filename} could not be parsed" : "Nid oedd modd dosrannu {filename}", "No valid files found, aborting import" : "Heb ganfod ffeiliau dilys, yn rhoi'r gorau i fewnforio", - "Import partially failed. Imported {accepted} out of {total}." : "Methodd mewnforio yn rhannol. Wedi mewnforio {accepted} allan o {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Wedi mewnforio %n digwyddiad yn llwyddiannus","Wedi mewnforio %n digwyddiad yn llwyddiannus","Wedi mewnforio %n digwyddiad yn llwyddiannus","Wedi mewnforio %n digwyddiad yn llwyddiannus"], + "Import partially failed. Imported {accepted} out of {total}." : "Methodd mewnforio yn rhannol. Wedi mewnforio {accepted} allan o {total}.", "Automatic" : "Awtomatig", "Automatic ({detected})" : "Awtomatig ({detected})", "New setting was not saved successfully." : "Ni chafodd y gosodiad newydd ei gadw'n llwyddiannus.", - "Shortcut overview" : "Trosolwg llwybr byr", - "or" : "neu", "Navigation" : "Llywio", "Previous period" : "Cyfnod blaenorol", "Next period" : "Cyfnod nesaf", @@ -143,10 +127,14 @@ "Close editor" : "Cau'r golygydd", "Save edited event" : "Cadw digwyddiad wedi'i olygu", "Delete edited event" : "Dileu digwyddiad wedi'i olygu", + "Shortcut overview" : "Trosolwg llwybr byr", + "or" : "neu", + "No reminder" : "Dim nodyn atgoffa", + "CalDAV link copied to clipboard." : "Dolen CalDAV wedi'i chopïo i'r clipfwrdd.", + "CalDAV link could not be copied to clipboard." : "Nid oedd modd copïo dolen CalDAV i'r clipfwrdd.", "Enable birthday calendar" : "Galluogi calendr pen-blwydd", "Show tasks in calendar" : "Dangos tasgau yn y calendr", "Enable simplified editor" : "Galluogi golygydd symlach", - "Limit visible events per view" : "Cyfyngu ar ddigwyddiadau gweladwy fesul golwg", "Show weekends" : "Dangos penwythnosau", "Show week numbers" : "Dangos rhifau wythnosau", "Time increments" : "Cynyddiadau amser", @@ -155,11 +143,6 @@ "Copy iOS/macOS CalDAV address" : "Copïo cyfeiriad CalDAV iOS/macOS", "Personal availability settings" : "Gosodiadau argaeledd personol", "Show keyboard shortcuts" : "Dangos llwybrau byr bysellfwrdd", - "No reminder" : "Dim nodyn atgoffa", - "CalDAV link copied to clipboard." : "Dolen CalDAV wedi'i chopïo i'r clipfwrdd.", - "CalDAV link could not be copied to clipboard." : "Nid oedd modd copïo dolen CalDAV i'r clipfwrdd.", - "Appointment was created successfully" : "Llwyddwyd i greu apwyntiad", - "Appointment was updated successfully" : "Diweddarwyd yr apwyntiad yn llwyddiannus", "_{duration} minute_::_{duration} minutes_" : ["{duration} munud","{duration} funud","{duration} munud","{duration} munud"], "0 minutes" : "0 munud", "_{duration} hour_::_{duration} hours_" : ["{duration} awr","{duration} awr","{duration} awr","{duration} awr"], @@ -170,6 +153,7 @@ "To configure appointments, add your email address in personal settings." : "I ffurfweddu apwyntiadau, ychwanegwch eich cyfeiriad e-bost yn y gosodiadau personol.", "Public – shown on the profile page" : "Cyhoeddus – dangos ar y dudalen proffil", "Private – only accessible via secret link" : "Preifat – dim ond ar gael trwy gyswllt cyfrinachol", + "Update" : "Diweddaru", "Location" : "Lleoliad", "Description" : "Disgrifiad", "Visibility" : "Gwelededd", @@ -195,18 +179,14 @@ "Minimum time before next available slot" : "Lleiafswm amser cyn y slot nesaf sydd ar gael", "Max slots per day" : "Uchafswm slotiau y dydd", "Limit how far in the future appointments can be booked" : "Cyfyngu ar ba mor bell yn y dyfodol y mae modd trefnu apwyntiadau", - "Create appointment" : "Creu apwyntiad", - "Edit appointment" : "Golygu apwyntiad", - "Save" : "Cadw", - "Update" : "Diweddaru", "Please confirm your reservation" : "Cadarnhewch eich archeb", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Rydym wedi anfon e-bost atoch gyda'r manylion. Cadarnhewch eich apwyntiad gan ddefnyddio'r ddolen yn yr e-bost. Gallwch chi gau'r dudalen hon nawr.", "Your name" : "Eich enw", "Your email address" : "Cyfeiriad E-bost", "Please share anything that will help prepare for our meeting" : "Rhannwch unrhyw beth a fydd yn helpu i baratoi ar gyfer ein cyfarfod", "Could not book the appointment. Please try again later or contact the organizer." : "Methu trefnu apwyntiad. Ceisiwch eto yn nes ymlaen neu cysylltwch â'r trefnydd.", - "Book the appointment" : "Archebwch yr apwyntiad", - "Reminder" : "Atgoffwr", + "on" : "ar", + "at" : "am", "before at" : "cyn am", "Notification" : "Hysbysiad", "Email" : "E-bost", @@ -217,114 +197,96 @@ "Edit time" : "Golygu amser", "Save time" : "Arbed amser", "Remove reminder" : "Dileu nodyn atgoffa", - "on" : "ar", - "at" : "am", - "+ Add reminder" : "+ Ychwanegu nodyn atgoffa", "Add reminder" : "Ychwanegu nodyn atgoffa", - "_second_::_seconds_" : ["eiliad","eiliad","eiliad","eiliad"], - "_minute_::_minutes_" : ["munud","munud","munud","munud"], - "_hour_::_hours_" : ["awr","awr","awr","awr"], - "_day_::_days_" : ["diwrnod","diwrnod","diwrnod","diwrnod"], - "_week_::_weeks_" : ["wythnos","wythnos","wythnos","wythnos"], + "seconds" : "eiliad", + "minutes" : "munud", + "hours" : "awr", + "days" : "diwrnod", + "weeks" : "wythnos", + "Choose a file to add as attachment" : "Dewiswch ffeil i'w hychwanegu fel atodiad", "Suggested" : "Awgrym", "Available" : "Ar gael?", - "Not available" : "Ddim ar gael", - "Checking availability" : "Gwirio argaeledd", "Invitation accepted" : "Derbyniwyd y gwahoddiad", "Accepted {organizerName}'s invitation" : "Derbyniwyd y gwahoddiad {organizerName}", + "Participation marked as tentative" : "Cyfrannu wedi'i nodi fel o bosib", + "Invitation is delegated" : "Mae gwahoddiad yn cael ei ddirprwyo", + "Not available" : "Ddim ar gael", "Invitation declined" : "Gwrthodwyd y gwahoddiad", "Declined {organizerName}'s invitation" : "Gwrthodwyd gwahoddiad {organizerName}", - "Invitation is delegated" : "Mae gwahoddiad yn cael ei ddirprwyo", - "Participation marked as tentative" : "Cyfrannu wedi'i nodi fel o bosib", - "Invitation sent" : "Anfonwyd gwahoddiad", + "Checking availability" : "Gwirio argaeledd", "Has not responded to {organizerName}'s invitation yet" : "Nid yw wedi ymateb i wahoddiad {organizerName} eto", - "Availability of attendees, resources and rooms" : "Argaeledd mynychwyr, adnoddau ac ystafelloedd", "{organizer} (organizer)" : "{organizer} (trefnydd)", + "Availability of attendees, resources and rooms" : "Argaeledd mynychwyr, adnoddau ac ystafelloedd", + "Out of office" : "Allan o'r swyddfa", "Free" : "Am ddim", "Busy (tentative)" : "Prysur (o bosib)", "Busy" : "Prysur", - "Out of office" : "Allan o'r swyddfa", "Unknown" : "Anhysbys", - "Accept" : "Derbyn", - "Decline" : "Gwrthod", - "Tentative" : "I'w gadarnhau", "The invitation has been accepted successfully." : "Derbyniwyd y gwahoddiad yn llwyddiannus.", "Failed to accept the invitation." : "Methwyd â derbyn y gwahoddiad.", "The invitation has been declined successfully." : "Gwrthodwyd y gwahoddiad yn llwyddiannus.", "Failed to decline the invitation." : "Methwyd â gwrthod y gwahoddiad.", "Your participation has been marked as tentative." : "Mae eich cyfranogiad wedi'i nodi fel o bosib.", "Failed to set the participation status to tentative." : "Wedi methu â gosod y statws cyfranogiad i o bosib.", - "Create Talk room for this event" : "Creu ystafell Siarad ar gyfer y digwyddiad hwn", - "Show busy times" : "Dangos amseroedd prysur", + "Accept" : "Derbyn", + "Decline" : "Gwrthod", + "Tentative" : "I'w gadarnhau", "No attendees yet" : "Dim mynychwyr eto", "Successfully appended link to talk room to description." : "Llwyddwyd i atodi dolen i'r ystafell siarad i'r disgrifiad.", "Error creating Talk room" : "Gwall wrth greu ystafell Siarad", - "Send email" : "Anfon e-bost", + "Attendees" : "Mynychwyr", + "Remove attendee" : "Dileu mynychwr", "Chairperson" : "Cadeirydd", "Required participant" : "Cyfranogwr gofynnol", "Optional participant" : "Cyfranogwr dewisol", "Non-participant" : "Nid cyfranogwr", - "Remove attendee" : "Dileu mynychwr", - "Search for emails, users or contacts" : "Chwilio am e-byst, defnyddwyr neu gysylltiadau", "No match found" : "Heb ganfod cyfatebiaeth", "(organizer)" : "(trefnydd)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "I anfon gwahoddiadau a thrin ymatebion, [linkopen]ychwanegwch eich cyfeiriad e-bost yn y gosodiadau personol[linkclose].", "Remove color" : "Tynnu lliw", "Event title" : "Teitl y digwyddiad", - "All day" : "Drwy'r dydd", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Nid oes modd addasu gosodiad diwrnod cyfan ar gyfer digwyddiadau sy'n rhan o set ailadrodd.", - "from {startDate}" : "o {startDate}", - "from {startDate} at {startTime}" : "o {startDate} am {startTime}", - "to {endDate}" : "i {endDate}", - "to {endDate} at {endTime}" : "i {endDate} am {endTime}", "Repeat" : "Ailadrodd", - "End repeat" : "Gorffen ailadrodd", - "Select to end repeat" : "Dewiswch i orffen ailadrodd", + "_time_::_times_" : ["amser","gwaith","gwaith","gwaith"], "never" : "byth", "on date" : "ar ddyddiad", "after" : "wedi", - "_time_::_times_" : ["amser","gwaith","gwaith","gwaith"], + "End repeat" : "Gorffen ailadrodd", + "Select to end repeat" : "Dewiswch i orffen ailadrodd", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Mae'r digwyddiad hwn yn eithriad i ddigwyddiadau o set sy'n ailadrodd. Ni allwch ychwanegu rheol ailadrodd ato.", "first" : "cyntaf", - "third" : "trydydd", - "fourth" : "pedwerydd", - "fifth" : "pumed", - "second to last" : "ail i olaf", - "last" : "o;af", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Dim ond i hwn a phob digwyddiad yn y dyfodol y bydd newidiadau i'r rheol ailadrodd yn berthnasol.", "Repeat every" : "Ailadrodd bob", "By day of the month" : "Yn ôl dydd o'r mis", "On the" : "Ar y", + "_day_::_days_" : ["diwrnod","diwrnod","diwrnod","diwrnod"], + "_week_::_weeks_" : ["wythnos","wythnos","wythnos","wythnos"], "_month_::_months_" : ["mis","mis","mis","mis"], "_year_::_years_" : ["blwyddyn","blwyddyn","flwyddyn","blwyddyn"], "weekday" : "yn ystod yr wythnos", "weekend day" : "diwrnod penwythnos", - "No recurrence" : "Dim ailadrodd", + "Does not repeat" : "Nid yw'n ailadrodd", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nid yw Nextcloud yn cefnogi'r diffiniad sy'n ailadrodd y digwyddiad hwn yn llawn. Os ydych chi'n golygu'r opsiynau ailadrodd, mae'n bosibl y byddwch chi'n colli rhai ailadroddiadau.", - "Suggestions" : "Awgrymiadau", "No rooms or resources yet" : "Dim ystafelloedd nac adnoddau eto", + "Resources" : "Adnoddau", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sedd","{seatingCapacity} sedd","{seatingCapacity} sedd","{seatingCapacity} sedd"], "Add resource" : "Ychwanegu adnodd", "Has a projector" : "Taflunydd yno", "Has a whiteboard" : "Bwrdd gwyn yno", "Wheelchair accessible" : "Hygyrch i gadeiriau olwyn", "Remove resource" : "Dileu adnodd", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sedd","{seatingCapacity} sedd","{seatingCapacity} sedd","{seatingCapacity} sedd"], - "Projector" : "Taflunydd", - "Whiteboard" : "Bwrdd gwyn", "Search for resources or rooms" : "Chwilio am adnoddau neu ystafelloedd", "available" : "ar gael", "unavailable" : "ddim ar gael", + "Projector" : "Taflunydd", + "Whiteboard" : "Bwrdd gwyn", "Room type" : "Math o ystafell", "Any" : "Unrhyw", "Minimum seating capacity" : "Lleiafswm seddi", - "More" : "Rhagor", - "Update this occurrence" : "Diweddaru'r digwyddiad hwn", "Update this and all future" : "Diweddaru hwn a phob un i'r dyfodol", + "Update this occurrence" : "Diweddaru'r digwyddiad hwn", "Public calendar does not exist" : "Nid oes calendr cyhoeddus yn bodoli", "Maybe the share was deleted or has expired?" : "Efallai bod y gyfran wedi'i dileu neu wedi dod i ben?", - "Please select a time zone:" : "Dewiswch gylchfa amser:", - "Pick a time" : "Dewiswch amser", - "Pick a date" : "Dewiswch ddyddiad", "from {formattedDate}" : "o {formattedDate}", "to {formattedDate}" : "i {formattedDate}", "on {formattedDate}" : "ar {formattedDate}", @@ -334,9 +296,12 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} am {formattedTime}", "Please enter a valid date" : "Rhowch ddyddiad dilys", "Please enter a valid date and time" : "Rhowch ddyddiad ac amser dilys", + "Please select a time zone:" : "Dewiswch gylchfa amser:", + "Pick a time" : "Dewiswch amser", + "Pick a date" : "Dewiswch ddyddiad", "Type to search time zone" : "Teipiwch i chwilio'r gylchfa amser", "Global" : "Eang", - "Select date" : "Dewis dyddiad", + "Subscribe" : "Tanysgrifio", "Select slot" : "Dewiswch slot", "No slots available" : "Dim slotiau ar gael", "The slot for your appointment has been confirmed" : "Mae'r slot ar gyfer eich apwyntiad wedi'i gadarnhau", @@ -353,21 +318,14 @@ "Personal" : "Personol", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Penderfynodd y darganfyddiad parth amser awtomatig mai UTC oedd eich parth amser.\nMae hyn yn fwyaf tebygol o ganlyniad i fesurau diogelwch eich porwr gwe.\nGosodwch eich cylchfa amser â llaw yng ngosodiadau'r calendr.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Heb ganfod eich cylchfa amser ffurfweddu ({timezoneId}). Mynd nôl i UTC.\nNewidiwch eich cylchfa amser yn y gosodiadau ac adroddwch am y mater hwn.", - "No more events today" : "Dim mwy o ddigwyddiadau heddiw", - "No upcoming events" : "Dim digwyddiadau i ddod", - "Create a new event" : "Creu digwyddiad newydd", - "[Today]" : "Heddiw", - "[Tomorrow]" : "[Yfory]", - "[Yesterday]" : "[Ddoe]", - "[Last] dddd" : "[Diwethaf] dddd", + "Edit event" : "Golygu digwyddiad", "Event does not exist" : "Nid yw'r digwyddiad yn bodoli", "Delete this occurrence" : "Dileu'r digwyddiad hwn", "Delete this and all future" : "Dileu hwn a phob dyfodol", - "Details" : "Manylion", - "Attendees" : "Mynychwyr", - "Resources" : "Adnoddau", + "All day" : "Drwy'r dydd", + "Invite" : "Gwahoddiad", + "Untitled event" : "Digwyddiad di-deitl", "Close" : "Cau", - "Show more details" : "Dangos rhagor o fanylion", "Subscribe to {name}" : "Tanysgrifio i {name}", "Export {name}" : "Allforio {name}", "Anniversary" : "Dathliad", @@ -397,7 +355,6 @@ "on {time}" : "ar {time}", "on {time} ({timezoneId})" : "ar {time} ({timezoneId})", "Week {number} of {year}" : "Wythnos {number} o {year}", - "Does not repeat" : "Nid yw'n ailadrodd", "Daily" : "Dyddiol", "Weekly" : "Wythnosol", "Monthly" : "Misol", @@ -409,18 +366,17 @@ "_on {weekday}_::_on {weekdays}_" : ["ar {weekday}","ar {weekdays}","ar {weekdays}","ar {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["ar ddiwrnod {dayOfMonthList}","ar ddiwrnodau {dayOfMonthList}","ar ddiwrnodau {dayOfMonthList}","ar ddiwrnodau {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "ar y {ordinalNumber} {byDaySet}", - "in {monthNames}" : "yn {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "yn {monthNames} ar y {ordinalNumber} {byDaySet}", "until {untilDate}" : "tan {untilDate}", "_%n time_::_%n times_" : ["%n waith","%n o weithiau","%n o weithiau","%n o weithiau"], - "Untitled event" : "Digwyddiad di-deitl", + "second" : "ail", + "third" : "trydydd", + "fourth" : "pedwerydd", + "fifth" : "pumed", + "second to last" : "ail i olaf", + "last" : "o;af", "Untitled task" : "Tasg di-deitl", "Please ask your administrator to enable the Tasks App." : "Gofynnwch i'ch gweinyddwr alluogi'r Ap Tasgau.", - "Prev" : "Blaenorol", - "Next" : "Nesaf", - "Prev year" : "Blwyddyn flaenorol", - "Next year" : "Blwyddyn nesaf", - "Year" : "Blwyddyn", "W" : "M", "%n more" : "%n arall", "No events to display" : "Dim digwyddiadau i'w dangos", @@ -439,7 +395,6 @@ "When shared hide this event" : "Pan wedi ei rannu, yn cuddio'r digwyddiad hwn", "The visibility of this event in shared calendars." : "Gwelededd y digwyddiad hwn mewn calendrau a rennir.", "Add a location" : "Ychwanegu lleoliad", - "Add a description" : "Ychwanegu disgrifiad", "Status" : "Statws", "Confirmed" : "Cadarnhawyd", "Canceled" : "Wedi diddymu", @@ -452,135 +407,13 @@ "Add this as a new category" : "Ychwanegu hwn fel categori newydd", "Custom color" : "Lliw personol", "Special color of this event. Overrides the calendar-color." : "Lliw arbennig y digwyddiad hwn. Yn diystyru lliw y calendr.", - "Chat room for event" : "Ystafell sgwrsio ar gyfer digwyddiad", + "An error occurred, unable to delete the calendar." : "Bu gwall, ni fu modd dileu'r calendr.", "Imported {filename}" : "Mewnforiwyd {filename}", - "Meditation" : "Myfyrdod", - "Relaxing" : "Yn ymlacio", - "Relax" : "Ymlacio", - "Break" : "Egwyl", - "Commute" : "Cymudo", - "Commuting" : "Yn cymudo", - "Shuttle" : "Gwennol", - "Invoice" : "Anfoneb", - "Finance" : "Ariannol", - "Bank" : "Banc", - "Money" : "Ddim yn derbyn MTS-Money", - "Wedding" : "Priodas", - "Dog" : "Ci", - "Concert" : "Cyngerdd", - "Festival" : "Gŵyl", - "Theater" : "Theatr", - "Theatre" : "Theatr", - "Presentation" : "Cyflwyniad", - "Talk" : "Sgwrs", - "Speech" : "Lleferydd", - "Deadline" : "Dyddiad cau", - "Submission" : "Cyflwyno", - "Reporting" : "Adrodd Yn Ol", - "Camping" : "Gwersylla", - "Camp" : "Gwersyllar", - "Election" : "Etholiad", - "Voting" : "Pleidleisio", - "Vote" : "Pleidleisio", - "Barbecue" : "Barbeciw", - "Barbeque" : "Barbeciw", - "Garden" : "Yr Ardd yn Bougival", - "Farm" : "Fferm", - "Movie" : "Ffilm", - "Cinema" : "Sinema", - "Graduation" : "Graddio", - "Brainstorm" : "Taflu syniadau", - "Review" : "Adolygu", - "Audit" : "Archwiliad", - "Inspection" : "Archwiliad treth", - "Proofreading" : "Prawfddarllen", - "Baseball" : "Pêl-fas", - "Meet" : "Cyfarfod", - "Planning" : "Cynllunio", - "Pointing" : "Pwyntio", - "Retrospective" : "Edrych nôl", - "Office" : "Swyddfa", - "Contributor week" : "Wythnos cyfranwyr", - "Mail" : "E-bost", - "Soccer" : "Pêl-droed", - "Football" : "Pêl-droed", - "Gaming" : "Chwarae gemau", - "Drive" : "Gyrru", - "Driving" : "Yn gyrru", - "Bicycle" : "Beic", - "Cycle" : "Beicio", - "Cycling" : "Beicio", - "Biking" : "Beicio", - "Bike" : "Beic", - "Podcast" : "Podlediad", - "Basketball" : "Pêl Fasged", - "Fishing" : "Pysgota", - "Hiking" : "Heicio", - "Hike" : "Heicio", - "Art" : "Celf", - "Exhibition" : "Arddangosfa", - "Museum" : "Amgueddfa", - "Pilates" : "Pilates", - "Park" : "Parc", - "Walk" : "Cerdded", - "Studying" : "Astudio", - "Doctor" : "Meddyg", - "Health" : "Iechyd", - "Dentist" : "Deintydd", - "Hospital" : "Ysbyty", - "Interview" : "Cyfweliad", - "Training" : "Hyfforddiant", - "Practice" : "Ymarfer", - "Sports" : "Chwaraeon", - "Exercise" : "Ymarfer corff", - "Work out" : "Ymarfer corff", - "Working out" : "Yn ymarfer corff", - "Gym" : "Campfa", - "Barber" : "Barbwr", - "Haircut" : "Torri gwallt", - "Hairdresser" : "Triniwr gwallt", - "Exam" : "Arholiad", - "Written test" : "Prawf ysgrifenedig", - "Oral test" : "Prawf llafar", - "Working" : "Gweithio", - "New Years Eve" : "Nos Galan", - "NYE" : "Nos Galan", - "Fireworks" : "Tân Gwyllt", - "Running" : "Rhedeg", - "Go for a run" : "Mynd i redeg", - "Marathon" : "Marathon", - "Video-conference" : "Fideo-gynhadledd", - "Conference-call" : "Galwad cynadledda", - "Video-call" : "Galwad fideo", - "Video-chat" : "Sgwrs fideo", - "Video-meeting" : "Fideo-gyfarfod", - "Call" : "Galw", - "Calling" : "Yn galw", - "Christmas" : "Ynys Christmas", - "Conference" : "Cynhadledd", - "Pizza" : "Pitsa", - "Travelling" : "Yn teithio", - "Trip" : "Trip", - "Journey" : "Taith", - "Collaborate" : "Cydweithio", - "Pair" : "Pâr", - "Lecture" : "Darlith", - "Seminar" : "Seminar", - "Teaching" : "Dysgu", - "Photograph" : "Ffotograff", - "Party" : "Parti", - "Celebration" : "Dathliad", - "Celebrate" : "Yn dathlu", - "Birthday" : "Pen-blwydd", - "Shopping" : "Siopa", - "Groceries" : "Bwydydd", - "Skate" : "Sglefrio", - "Skateboard" : "Sgrialu", - "Wine tasting" : "Blasu gwin", - "Golf" : "Golff", - "Dinner" : "Cinio", - "Lunch" : "Swper", "Appointment not found" : "Apwyntiad heb ei ganfod", - "User not found" : "Defnyddiwr heb ei ganfod" + "User not found" : "Defnyddiwr heb ei ganfod", + "Reminder" : "Atgoffwr", + "+ Add reminder" : "+ Ychwanegu nodyn atgoffa", + "Suggestions" : "Awgrymiadau", + "Details" : "Manylion" },"pluralForm" :"nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;" } \ No newline at end of file diff --git a/l10n/da.js b/l10n/da.js index cbf42de1f8df09a3198aac625c05aa68cdd96bee..5353cce1b86ee495acedcd0255e2defcb37a6949 100644 --- a/l10n/da.js +++ b/l10n/da.js @@ -1,110 +1,238 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Den angivne e-mail-adresse er for lang", "User-Session unexpectedly expired" : "Bruger-Sessionen udløb uventet", "Provided email-address is not valid" : "Leveret e-mailadresse er ikke gyldig ", "%s has published the calendar »%s«" : "%s har oprettet en begivenhed i kalenderen »%s«", "Unexpected error sending email. Please contact your administrator." : "Uventet fejl ved afsendelse, venligst kontakt din administrator", + "Successfully sent email to %1$s" : "Sendt e-mail til %1$s", "Hello," : "Hej,", "We wanted to inform you that %s has published the calendar »%s«." : "Vi ønkser at informerer dig om at %s har oprettet en begivenhed i kalenderen »%s«.", "Open »%s«" : "Åbn »%s«", "Cheers!" : "Hav en fortsat god dag.", "Upcoming events" : "Kommende begivenheder", + "No more events today" : "Ikke flere begivenheder i dag", + "No upcoming events" : "Ingen kommende begivenheder", + "More events" : "Flere begivenheder", + "%1$s with %2$s" : "%1$s med %2$s", + "Calendar" : "Kalender", + "New booking {booking}" : "Ny booking {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) bookede aftalen \"{config_display_name}\" den {date_time}.", "Appointments" : "Aftaler", + "Schedule appointment \"%s\"" : "Planlæg en aftale \"%s\"", + "Schedule an appointment" : "Planlæg en aftale", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Gør klar til %s", + "Follow up for %s" : "Følg op til %s", + "Your appointment \"%s\" with %s needs confirmation" : "Din aftale \"%s\" med %s skal bekræftes", + "Dear %s, please confirm your booking" : "Kære %s, bekræft venligst din reservation", "Confirm" : "Bekræft", - "Appointment:" : "Aftale:", + "Appointment with:" : "Aftale med:", + "Description:" : "Beskrivelse:", + "This confirmation link expires in %s hours." : "Dette bekræftelseslink udløber om %s timer.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Hvis du alligevel ønsker at aflyse aftalen, så kontakt venligst arrangøren ved at svare på denne mail, eller gennem dennes profil side. ", + "Your appointment \"%s\" with %s has been accepted" : "Din aftale \"%s\" med %s er blevet accepteret", + "Dear %s, your booking has been accepted." : "%s, din aftale er blevet accepteret.", + "Appointment for:" : "Aftale for:", "Date:" : "Dato:", + "You will receive a link with the confirmation email" : "Du modtager et link med bekræftelsesmailen", "Where:" : "Hvor:", - "Description:" : "Beskrivelse:", - "Calendar" : "Kalender", + "Comment:" : "Kommentar:", + "You have a new appointment booking \"%s\" from %s" : "Du har en ny aftale booking \"%s\" fra %s", + "Dear %s, %s (%s) booked an appointment with you." : "Kære %s, %s (%s) bookede en aftale med dig.", "A Calendar app for Nextcloud" : "En kalender-app til Nextcloud", "Previous day" : "Forrige dag", "Previous week" : "Forrige uge", + "Previous year" : "Forrige år", "Previous month" : "Forrige måned", "Next day" : "Næste dag", "Next week" : "Næste uge", + "Next year" : "Næste år", "Next month" : "Næste måned", - "New event" : "Opret begivenhed", + "Create new event" : "Opret ny begivenhed", + "Event" : "Begivenhed", "Today" : "I dag", "Day" : "Dag", "Week" : "Uge", "Month" : "Måned", + "Year" : "År", "List" : "Liste", + "Appointment link was copied to clipboard" : "Aftalelink blev kopieret til udklipsholder", + "Appointment link could not be copied to clipboard" : "Aftalelinket kunne ikke kopieres til udklipsholderen", "Preview" : "Forhåndsvisning", - "Copy link" : "Kopiér link", + "Copy link" : "Kopier link", "Edit" : "Rediger", "Delete" : "Slet", - "Untitled calendar" : "Unanvngiven kalender", - "Edit name" : "Rediger navn", - "Saving name …" : "Gemmer navn…", - "Edit color" : "Rediger farve", - "Saving color …" : "Gemmer farve…", - "Copy private link" : "Kopier privat link", - "Export" : "Eksportér", - "Unshare from me" : "Fjern deling fra mig", + "Appointment schedules" : "Aftaleplanlægninger", + "Create new" : "Opret ny", "Disable calendar \"{calendar}\"" : "Slå kalender fra {calendar}", + "Disable untitled calendar" : "Deaktiver unavngiven kalender", "Enable calendar \"{calendar}\"" : "Slå kalender til {calendar}", + "Enable untitled calendar" : "Aktiver unavngiven kalender", "An error occurred, unable to change visibility of the calendar." : "Kalenderens synlighed kunne ikke ændres.", - "An error occurred, unable to delete the calendar." : "Kalenderen kunne ikke slettes.", + "Untitled calendar" : "Unanvngiven kalender", + "Shared with you by" : "Delt med dig af", + "Edit and share calendar" : "Rediger og del kalender", + "Edit calendar" : "Rediger kalender", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Fjerner deling af kalenderen om {countdown} sekund","Fjerner deling af kalenderen om {countdown} sekunder"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Kalenderen bliver slettet om {countdown} sekunder","Kalenderen bliver slettet om {countdown} sekunder"], + "An error occurred, unable to create the calendar." : "Der opstod en fejl, og kalenderen kunne ikke oprettes.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Indtast venligst et gyldigt link (startende med http://, https://, webcal:// eller webcals://)", + "Calendars" : "Kalendere", + "Add new" : "Tilføj ny", + "New calendar" : "Ny kalender", + "Name for new calendar" : "Navn på ny kalender", + "Creating calendar …" : "Opretter kalender…", + "New calendar with task list" : "Ny kalender med opgaveliste", + "New subscription from link (read-only)" : "Nyt abonnement fra link (skrivebeskyttet)", + "Creating subscription …" : "Opretter abonnement…", + "Add public holiday calendar" : "Tilføj helligdagskalender", + "Add custom public calendar" : "Tilføj brugerdefineret offentlig kalender", "Calendar link copied to clipboard." : "Kalender link kopieret.", "Calendar link could not be copied to clipboard." : "Kalender link kunne ikke kopieres.", - "An error occurred, unable to rename the calendar." : "Kalenderen kunne ikke omdøbes.", - "An error occurred, unable to change the calendar's color." : "Kalenderens farve kunne ikke ændres.", - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Kalenderen bliver slettet om {countdown} sekunder","Kalenderen bliver slettet om {countdown} sekunder"], - "Share link" : "Del link", - "Publish calendar" : "Udgiv kalender", - "Publishing calendar" : "Udgiver kalender", - "Copy public link" : "Kopier offentligt link", - "Send link to calendar via email" : "Send link til kalender via e-mail", - "Sending email …" : "Sender email…", "Copy subscription link" : "Kopier abonnementslink", "Copying link …" : "Kopierer link…", "Copied link" : "Link kopieret", "Could not copy link" : "Link kunne ikke kopieres", + "Export" : "Eksporter", + "Untitled item" : "Unavngiven element", + "Unknown calendar" : "Ukendt kalender", + "Could not load deleted calendars and objects" : "Kunne ikke indlæse slettede kalendere og objekter", + "Could not delete calendar or event" : "Kunne ikke slette kalender eller begivenhed", + "Could not restore calendar or event" : "Kunne ikke gendanne kalender eller begivenhed", + "Do you really want to empty the trash bin?" : "Vil du virkelig tømme papirkurven?", + "Empty trash bin" : "Tom papirkurv", + "Trash bin" : "Papirkurv", + "Loading deleted items." : "Indlæser slettede elementer.", + "You do not have any deleted items." : "Du har ingen slettede elementer.", + "Name" : "Navn", + "Deleted" : "Slettet", + "Restore" : "Gendan", + "Delete permanently" : "Slet permanent", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Emner i papirkurven slettes efter {numDays} dag","Emner i papirkurven slettes efter {numDays} dage"], + "Could not update calendar order." : "Kunne ikke opdatere kalenderrækkefølgen.", + "Shared calendars" : "Delte kalendere", + "Deck" : "Opslag", + "Hidden" : "Skjult", + "Internal link" : "Internt link", + "A private link that can be used with external clients" : "Et privat link der kan blive brugt mad eksterne klienter", + "Copy internal link" : "Kopier internt link", + "An error occurred, unable to publish calendar." : "Kalenderen kunne ikke udgives", + "An error occurred, unable to send email." : "Der opstod en fejl, kunne ikke sende e-mail.", + "Embed code copied to clipboard." : "Indlejringskode kopieret til udklipsholder.", + "Embed code could not be copied to clipboard." : "Indlejringskoden kunne ikke kopieres til udklipsholderen.", + "Unpublishing calendar failed" : "Udgivelse af kalender mislykkedes", + "Share link" : "Del link", + "Copy public link" : "Kopier offentligt link", + "Send link to calendar via email" : "Send link til kalender via e-mail", + "Enter one address" : "Indtast en adresse", + "Sending email …" : "Sender email…", "Copy embedding code" : "Kopier indlejringskode", "Copying code …" : "Kopierer kode…", "Copied code" : "Kode kopieret", "Could not copy code" : "Kode kunne ikke kopieres", "Delete share link" : "Slet delingslink", "Deleting share link …" : "Sletter delingslink…", - "An error occurred, unable to publish calendar." : "Kalenderen kunne ikke udgives", - "Embed code copied to clipboard." : "Indlejringskode kopieret til udklipsholder.", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "Der opstod en fejl under fjernelse af deling af kalenderen.", + "An error occurred, unable to change the permission of the share." : "Der opstod en fejl, som ikke kunne ændre tilladelsen til delingen.", + "can edit" : "kan redigere", + "Unshare with {displayName}" : "Fjern deling med {displayName}", "Share with users or groups" : "Del med brugere eller grupper", "No users or groups" : "Ingen brugere eller grupper", - "can edit" : "kan redigere", - "+ New calendar" : "+ Ny kalender", - "New calendar" : "Ny kalender", - "Name for new calendar" : "Navn på ny kalender", - "Creating calendar …" : "Opretter kalender…", - "New calendar with task list" : "Ny kalender med opgaveliste", - "Creating subscription …" : "Opretter abonnement…", - "Name" : "Navn", - "Deleted" : "Slettet", - "Restore" : "Gendan", - "Delete permanently" : "Slet permanent", - "Empty trash bin" : "Tom papirkurv", + "Failed to save calendar name and color" : "Kunne ikke gemme kalendernavn og farve", + "Calendar name …" : "Kalender navn …", + "Never show me as busy (set this calendar to transparent)" : "Vis mig aldrig som optaget (sæt denne kalender til gennemsigtig)", + "Share calendar" : "Del kalender", + "Unshare from me" : "Fjern deling fra mig", + "Save" : "Gem", "Import calendars" : "Importer kalendere", + "Please select a calendar to import into …" : "Vælg venligst en kalender, der skal importeres til...", "Filename" : "Filnavn", - "Cancel" : "Annullér", + "Calendar to import into" : "Kalender at importere til", + "Cancel" : "Annuller", "_Import calendar_::_Import calendars_" : ["Importer kalender","Importer kalendere"], + "Select the default location for attachments" : "Vælg standardplaceringen for vedhæftede filer", + "Pick" : "Vælg", + "Invalid location selected" : "Ugyldig placering er valgt", + "Attachments folder successfully saved." : "Mappen vedhæftede filer blev gemt.", + "Error on saving attachments folder." : "Fejl ved lagring af vedhæftede filer mappen.", + "Default attachments location" : "Standardplacering for vedhæftede filer", + "{filename} could not be parsed" : "{filename} kunne ikke tilføjes", + "No valid files found, aborting import" : "Ingen gyldige filer fundet, importen afbrydes", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n begivenhed blev importeret","%n begivenheder blev importeret"], + "Import partially failed. Imported {accepted} out of {total}." : "Importen mislykkedes delvist. Importeret {accepted} ud af {total}.", "Automatic" : "Automatisk", - "or" : "eller", + "Automatic ({detected})" : "Automatisk ({detected})", + "New setting was not saved successfully." : "Den nye indstilling blev ikke gemt.", + "Navigation" : "Navigation", + "Previous period" : "Tidligere periode", + "Next period" : "Næste periode", + "Views" : "Visninger", + "Day view" : "Dagsvisning", + "Week view" : "Ugevisning", + "Month view" : "Månedsvisning", + "Year view" : "Årsvisning", "List view" : "Vis som liste", "Actions" : "Handlinger", + "Create event" : "Opret begivenhed", + "Show shortcuts" : "Vis genveje", "Editor" : "Editor", "Close editor" : "Luk editor", + "Save edited event" : "Gem redigeret begivenhed", + "Delete edited event" : "Slet redigeret begivenhed", + "Duplicate event" : "Dubleret begivenhed", + "Shortcut overview" : "Genvejsoversigt", + "or" : "eller", + "Calendar settings" : "Kalender indstillinger", + "At event start" : "Ved arrangementets start", + "No reminder" : "Ingen påmindelse", + "Failed to save default calendar" : "Kunne ikke gemme standard kalenderen", + "CalDAV link copied to clipboard." : "CalDAV-linket er kopieret til udklipsholderen.", + "CalDAV link could not be copied to clipboard." : "CalDAV-linket kunne ikke kopieres til udklipsholderen.", "Enable birthday calendar" : "Slå fødselsdagskalender til", + "Show tasks in calendar" : "Vis opgaver i kalenderen", "Enable simplified editor" : "Slå simpel editor til", + "Limit the number of events displayed in the monthly view" : "Begræns antallet af hændelser, der vises i månedsvisningen", "Show weekends" : "Vis weekender", "Show week numbers" : "Vis ugenummer ", + "Time increments" : "Tidsintervaller", + "Default calendar for incoming invitations" : "Standard kalender for indkomne invitationer", + "Default reminder" : "Standard påmindelse", "Copy primary CalDAV address" : "Kopier primær CalDAV-adresse", + "Copy iOS/macOS CalDAV address" : "Kopier iOS/macOS CalDAV adresse", + "Personal availability settings" : "Personlige tilgængelighedsindstillinger", "Show keyboard shortcuts" : "Vis tastaturgenveje", - "No reminder" : "Ingen påmindelse", + "Appointment schedule successfully created" : "Aftaleplanlægning blev oprettet", + "Appointment schedule successfully updated" : "Aftaleplanlægningen er opdateret", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minut","{duration} minutter"], + "0 minutes" : "0 minutter", + "_{duration} hour_::_{duration} hours_" : ["{duration} time","{duration} timer"], + "_{duration} day_::_{duration} days_" : ["{duration} dag","{duration} dage"], + "_{duration} week_::_{duration} weeks_" : ["{duration} uge","{duration} uger"], + "_{duration} month_::_{duration} months_" : ["{duration} måned","{duration} måneder"], + "_{duration} year_::_{duration} years_" : ["{duration} år","{duration} år"], + "To configure appointments, add your email address in personal settings." : "For at konfigurere aftaler - tilføj venligst din e-mailadresse under personlige indstillinger.", + "Public – shown on the profile page" : "Offentlig – vist på profilsiden", + "Private – only accessible via secret link" : "Privat – kun tilgængelig via hemmeligt link", + "Appointment schedule saved" : "Aftaleplanlægningen gemt", + "Create appointment schedule" : "Opret aftaleplanlægning", + "Edit appointment schedule" : "Rediger aftaleplanlægning", + "Update" : "Opdater", + "Appointment name" : "Aftale navn", "Location" : "Sted", + "Create a Talk room" : "Opret et Snak rum", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Et unikt link vil blive genereret for hver booket aftale og sendt via bekræftelsesmailen", "Description" : "Beskrivelse", "Visibility" : "Synlighed", "Duration" : "Varighed", + "Increments" : "Inkrementer", + "Additional calendars to check for conflicts" : "Yderligere kalendere til at tjekke for konflikter", + "Pick time ranges where appointments are allowed" : "Vælg tidsintervaller, hvor aftaler er tilladt", "to" : "til", + "Delete slot" : "Slet slot", + "No times set" : "Ingen tider fastsat", "Add" : "Tilføj", "Monday" : "Mandag", "Tuesday" : "Tirsdag", @@ -113,87 +241,350 @@ OC.L10N.register( "Friday" : "Fredag", "Saturday" : "Lørdag", "Sunday" : "Søndag", - "Save" : "Gem", - "Update" : "Opdatér", + "Weekdays" : "Hverdage", + "Add time before and after the event" : "Tilføj tid før og efter begivenheden", + "Before the event" : "Før arrangementet", + "After the event" : "Efter arrangementet", + "Planning restrictions" : "Planlægningsrestriktioner", + "Minimum time before next available slot" : "Minimum tid før næste ledige plads", + "Max slots per day" : "Max slots om dagen", + "Limit how far in the future appointments can be booked" : "Begræns hvor langt ude i fremtiden, der kan bookes tider", + "It seems a rate limit has been reached. Please try again later." : "Det ser ud til, at en begrænsning er nået. Prøv venligst igen senere.", + "Please confirm your reservation" : "Bekræft venligst din reservation", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Vi har sendt dig en e-mail med detaljer. Bekræft venligst din aftale ved at bruge linket i e-mailen. Du kan lukke denne side nu.", + "Your name" : "Dit navn", "Your email address" : "Din email adresse", + "Please share anything that will help prepare for our meeting" : "Del venligst alt, der kan hjælpe med at forberede vores møde", + "Could not book the appointment. Please try again later or contact the organizer." : "Det var ikke muligt at bestille tid. Prøv venligst igen senere eller kontakt arrangøren.", + "Back" : "Tilbage", + "Book appointment" : "Book aftale", + "Error fetching Talk conversations." : "Fejl under hentning af Snak samtaler.", + "Conversation does not have a valid URL." : "Samtaler har ikke en gyldig URL.", + "Successfully added Talk conversation link to location." : "Tilføjede Snak samtale link til placering.", + "Successfully added Talk conversation link to description." : "Tilføjede Snak samtale link til beskrivelse.", + "Failed to apply Talk room." : "Kunne ikke anvende Snak rum", + "Error creating Talk conversation" : "Fejl under oprettelse af Snak samtale", + "Select a Talk Room" : "Vælg et Snak rum", + "Add Talk conversation" : "Tilføj Snak samtale", + "Fetching Talk rooms…" : "Henter Snak rum...", + "No Talk room available" : "Ingen Snak rum tilgængelige", + "Create a new conversation" : "Opret ny samtale", + "Select conversation" : "Vælg samtale", + "on" : "på", + "at" : "ved", + "before at" : "før kl", "Notification" : "Notifikation", "Email" : "E-mail", - "_second_::_seconds_" : ["sekund","sekunder"], - "_minute_::_minutes_" : ["minut","minutter"], - "_hour_::_hours_" : ["time","timer"], - "_day_::_days_" : ["dag","dage"], - "_week_::_weeks_" : ["uge","uger"], + "Audio notification" : "Lydmeddelelse", + "Other notification" : "Anden meddelelse", + "Relative to event" : "I forhold til begivenhed", + "On date" : "På dato", + "Edit time" : "Rediger tid", + "Save time" : "Gem tid", + "Remove reminder" : "Fjern påmindelse", + "Add reminder" : "Tilføj påmindelse", + "seconds" : "sekunder ", + "minutes" : "minutter", + "hours" : "timer", + "days" : "dage", + "weeks" : "uger", + "Choose a file to add as attachment" : "Vælg en fil, der skal tilføjes som vedhæftning", + "Choose a file to share as a link" : "Vælg en fil der skal deles som link", + "Attachment {name} already exist!" : "Vedhæftet fil {name} findes allerede!", + "Could not upload attachment(s)" : "Kunne ikke uploade vedhæftning(er)", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Du er ved at navigere til {host}. Er du sikker på at du vil fortsætte? Link: {link}", + "Proceed" : "Fortsæt", + "No attachments" : "Ingen vedhæftede filer", + "Add from Files" : "Tilføj fra Filer", + "Upload from device" : "Upload fra enhed", + "Delete file" : "Slet fil", + "Confirmation" : "Bekræftelse", + "_{count} attachment_::_{count} attachments_" : ["{count} vedhæftet fil","{count} vedhæftede filer"], + "Suggested" : "Foreslået", "Available" : "Tilgængelig", + "Invitation accepted" : "Invitation accepteret", + "Accepted {organizerName}'s invitation" : "Accepterede invitationen fra {organizerName}", + "Participation marked as tentative" : "Deltagelse markeret som foreløbig", + "Invitation is delegated" : "Invitation er uddelegeret", + "Not available" : "Ikke tilgængelig", + "Invitation declined" : "Invitation afvist", + "Declined {organizerName}'s invitation" : "Afviste {organizerName}s invitation", + "Availability will be checked" : "Tilgængelighed bliver kontrolleret", + "Invitation will be sent" : "Invitation sendes", + "Failed to check availability" : "Kunne ikke kontrollere tilgængelighed", + "Failed to deliver invitation" : "Kunne ikke aflevere invitation", + "Awaiting response" : "Afventer svar", + "Checking availability" : "Kontrol af tilgængelighed", + "Has not responded to {organizerName}'s invitation yet" : "Har endnu ikke svaret på {organizerName}s invitation", + "chairperson" : "formand", + "required participant" : "nødvendig deltager", + "non-participant" : "ikke-deltager", + "optional participant" : "valgfri deltager", + "{organizer} (organizer)" : "{organizer} (arrangør)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Tilgængelighed af deltagere, ressourcer og lokaler", + "Suggestion accepted" : "Forslag accepteret", + "Legend" : "Forklaring", + "Out of office" : "Ikke på kontoret", + "Attendees:" : "Deltagere:", + "Done" : "Færdig", + "Search room" : "Søg rum", + "Room name" : "Rumnavn", + "Check room availability" : "kontroller rumtilgængelighed", + "Free" : "Ledig", + "Busy (tentative)" : "Optaget (foreløbig)", "Busy" : "Optaget", "Unknown" : "Ukendt", + "Find a time" : "Find et tidspunkt", + "The invitation has been accepted successfully." : "Invitationen er blevet accepteret.", + "Failed to accept the invitation." : "Kunne ikke acceptere invitationen.", + "The invitation has been declined successfully." : "Invitationen er blevet afvist.", + "Failed to decline the invitation." : "Invitationen kunne ikke afvises.", + "Your participation has been marked as tentative." : "Din deltagelse er blevet markeret som foreløbig.", + "Failed to set the participation status to tentative." : "Kunne ikke indstille deltagelsesstatus til foreløbig.", "Accept" : "Accepter", "Decline" : "Afvis", "Tentative" : "Foreløbig", - "Create Talk room for this event" : "Opret Snak rum for denne begivenhed", - "Send email" : "Send e-mail", + "No attendees yet" : "Ingen deltagere endnu", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} inviteret, {confirmedCount} bekræftet", + "Successfully appended link to talk room to location." : "Linket til Snak rum er tilføjet til lokationen.", + "Successfully appended link to talk room to description." : "Link til Snak rum blev tilføjet til beskrivelse.", + "Error creating Talk room" : "Fejl ved oprettelse af Snak rum", + "Attendees" : "Deltagere", + "_%n more guest_::_%n more guests_" : ["%n flere gæster","%n flere gæster"], + "Remove group" : "Fjern gruppe", + "Remove attendee" : "Fjern deltager", + "Request reply" : "Anmod om svar", + "Chairperson" : "Formand", + "Required participant" : "Nødvendig deltager", + "Optional participant" : "Valgfri deltager", + "Non-participant" : "Deltager ikke", + "_%n member_::_%n members_" : ["%n medlemer","%n medlemer"], + "Search for emails, users, contacts, contact groups or teams" : "Søg efter e-mails, brugere, kontaktgrupper eller teams", + "No match found" : "Ingen match fundet", + "Note that members of circles get invited but are not synced yet." : "Bemærk, at medlemmer af cirkler bliver inviteret, men er endnu ikke synkroniseret.", + "Note that members of contact groups get invited but are not synced yet." : "Bemærk at medlemmer af kontaktgrupper inviteres, men endnu ikke er synkroniserede.", + "(organizer)" : "(arrangør)", + "Make {label} the organizer" : "Gør {label} til arrangør", + "Make {label} the organizer and attend" : "Gør {label} til arrangør og deltag", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "For at udsende invitationer og håndtere svar, [linkopen]tilføj din e-mailadresse i personlige indstillinger[linkclose].", + "Remove color" : "Fjern farve", "Event title" : "Titel", - "All day" : "Hele dagen", - "from {startDate}" : "fra {startDate}", - "from {startDate} at {startTime}" : "fra {startDate} kl {startTime}", - "to {endDate}" : "til {endDate}", - "to {endDate} at {endTime}" : "til {endDate} kl {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Kan ikke ændre heldagsindstillingen for begivenheder, der er en del af et gentagelsessæt.", + "From" : "Fra", + "To" : "Til", "Repeat" : "Gentag", + "_time_::_times_" : ["gang","gange"], "never" : "aldrig", + "on date" : "på dato", "after" : "efter", + "End repeat" : "Afslut gentagelse", + "Select to end repeat" : "Vælg for at afslutte gentagelsen", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Denne begivenhed er gentagelses-undtagelsen af et gentagelsessæt. Du kan ikke tilføje en gentagelsesregel til den.", "first" : "første", - "third" : "tredje", - "fourth" : "fjerde", - "fifth" : "femte", - "second to last" : "næstsidste", - "last" : "sidste", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Ændringer i gentagelsesreglen vil kun gælde for denne og alle fremtidige hændelser.", + "Repeat every" : "Gentag hver", + "By day of the month" : "Efter dag i måneden", + "On the" : "Den", + "_day_::_days_" : ["dag","dage"], + "_week_::_weeks_" : ["uge","uger"], "_month_::_months_" : ["måned","måneder"], "_year_::_years_" : ["år","år"], + "On specific day" : "På specifik dag", "weekday" : "hverdag", "weekend day" : "weekenddag", + "Does not repeat" : "Gentager sig ikke", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Gentagelsesdefinitionen af denne begivenhed understøttes ikke fuldt ud af Nextcloud. Hvis du redigerer gentagelsesmulighederne, kan visse gentagelser gå tabt.", + "No rooms or resources yet" : "Ingen lokaler eller ressourcer endnu", + "Resources" : "Resourcer", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sæde","{seatingCapacity} sæder"], + "Add resource" : "Tilføj ressource", + "Has a projector" : "Har en projektor", + "Has a whiteboard" : "Har en whiteboardtavle", + "Wheelchair accessible" : "Kørestolsvenligt", + "Remove resource" : "Fjern ressource", + "Search for resources or rooms" : "Søg efter ressourcer eller lokaler", "available" : "tilgængelig", - "More" : "Mere", - "Pick a date" : "Vælg en dato", + "unavailable" : "ikke tilgængelig", + "Show all rooms" : "Vis alle rum", + "Projector" : "Projektor", + "Whiteboard" : "Whiteboard", + "Room type" : "Værelsestype", + "Any" : "Enhver", + "Minimum seating capacity" : "Minimum siddekapacitet", + "More details" : "Flere detaljer", + "Update this and all future" : "Opdater denne og alle fremtidige", + "Update this occurrence" : "Opdater denne forekomst", + "Public calendar does not exist" : "Offentlig kalender findes ikke", + "Maybe the share was deleted or has expired?" : "Måske er delingen blevet slettet eller er udløbet?", "from {formattedDate}" : "fra {formattedDate}", "to {formattedDate}" : "til {formattedDate}", + "on {formattedDate}" : "på {formattedDate}", "from {formattedDate} at {formattedTime}" : "fra {formattedDate} kl. {formattedTime}", "to {formattedDate} at {formattedTime}" : "til {formattedDate} at {formattedTime}", + "on {formattedDate} at {formattedTime}" : "{formattedDate} kl. {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} kl. {formattedTime}", + "Please enter a valid date" : "Indtast venligst en gyldig dato", + "Please enter a valid date and time" : "Indtast venligst en gyldig dato og tid", + "Select a time zone" : "Vælg en tidszone", + "Please select a time zone:" : "Vælg venligst en tidszone:", + "Pick a time" : "Vælg et tidspunkt", + "Pick a date" : "Vælg en dato", + "Type to search time zone" : "Indtast for at søge i tidszone", "Global" : "Global", + "Holidays in {region}" : "Ferie i {region}", + "An error occurred, unable to read public calendars." : "Der opstod en fejl, og det var ikke muligt at læse offentlige kalendere.", + "An error occurred, unable to subscribe to calendar." : "Der opstod en fejl, og der kunne ikke abonneres på kalenderen.", + "Public holiday calendars" : "Helligdagskallendere", + "Public calendars" : "Offentlige kalendere", + "No valid public calendars configured" : "Ingen gyldige offentlige kalendere konfigureret", + "Speak to the server administrator to resolve this issue." : "Kontakt venligst serveradministratoren for at løse dette problem.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Helligdagskalendere leveres af Thunderbird. Kalenderdata vil blive downloadet fra {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Disse offentlige kalendere er foreslået af serveradministratoren. Kalenderdata vil blive downloadet fra de respektive hjemmesider.", + "By {authors}" : "Af {authors}", + "Subscribed" : "Abonneret", + "Subscribe" : "Tilmeld", + "Could not fetch slots" : "Kunne ikke hente pladser", + "Select a date" : "Vælg en dato", + "Select slot" : "Vælg tidspunkt", + "No slots available" : "Ingen ledige tidspunkter", + "The slot for your appointment has been confirmed" : "Tidspunktet for din aftale er blevet bekræftet", + "Appointment Details:" : "Detaljer om aftale:", "Time:" : "Tid:", + "Booked for:" : "Booket til:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Tak skal du have. Din reservation fra {startDate} til {endDate} er blevet bekræftet.", + "Book another appointment:" : "Bestil endnu en tid:", + "See all available slots" : "Se alle tilgængelige tidspunkter", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Tidsrummet for din aftale fra {startDate} til {endDate} er ikke længere tilgængeligt.", + "Please book a different slot:" : "Book venligst et andet tidspunkt:", + "Book an appointment with {name}" : "Book en tid med {name}", + "No public appointments found for {name}" : "Ingen offentlige aftaler fundet for {name}", "Personal" : "Personlig", - "No more events today" : "Ikke flere begivenheder i dag", - "No upcoming events" : "Ingen kommende begivenheder", - "[Today]" : "[i dag]", - "[Tomorrow]" : "[I morgen]", - "Details" : "Detaljer", - "Attendees" : "Deltagere", - "Resources" : "Resourcer", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Den automatiske tidszoneregistrering bestemte, at din tidszone var UTC.\nDette er højst sandsynligt resultatet af sikkerhedsforanstaltninger i din webbrowser.\nIndstil venligst din tidszone manuelt i kalenderindstillingerne.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Din konfigurerede tidszone ({timezoneId}) blev ikke fundet. Falder tilbage til UTC.\nSkift venligst din tidszone i indstillingerne og rapporter dette problem.", + "Availability of {displayName}" : "Tilgængelighed af {displayName}", + "Edit event" : "Rediger begivenhed", + "Event does not exist" : "Begivenheden eksisterer ikke", + "Duplicate" : "dubletter", + "Delete this occurrence" : "Slet denne forekomst", + "Delete this and all future" : "Slet denne og alle fremtidige", + "All day" : "Hele dagen", + "Modifications wont get propagated to the organizer and other attendees" : "Ændringer vil ikke blive bredt ud til organisatoren og andre deltagere", + "Managing shared access" : "Håndtering af delt adgang", + "Deny access" : "Nægt adgang", + "Invite" : "Invitere", + "_User requires access to your file_::_Users require access to your file_" : ["Brugeren kræver adgang til din fil","Brugere kræver adgang til din fil"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Vedhæftet fil kræver delt adgang","Vedhæftede filer, der kræver delt adgang"], + "Untitled event" : "Unavngiven begivenhed", "Close" : "Luk", + "Modifications will not get propagated to the organizer and other attendees" : "Ændringer vil ikke blive udbredt til organisatoren eller andre deltagere", "Subscribe to {name}" : "Abonner på {name}", + "Export {name}" : "Eksporter {name}", + "Show availability" : "Vis tilgængelighed", "Anniversary" : "Årsdag", + "Appointment" : "Aftale", + "Business" : "Forretning", + "Education" : "Uddannelse", + "Holiday" : "Ferie", + "Meeting" : "Møde", + "Miscellaneous" : "Diverse", + "Non-working hours" : "Ikke-arbejdstid", + "Not in office" : "Ikke på kontoret", + "Phone call" : "Telefon opkald", + "Sick day" : "Sygedag", + "Special occasion" : "Speciel lejlighed", + "Travel" : "Rejse", + "Vacation" : "Ferie", + "Midnight on the day the event starts" : "Midnat på dagen, hvor arrangementet starter", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dag før begivenheden kl. {formattedHourMinute}","%n dage før begivenheden kl. {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n uge før begivenheden på {formattedHourMinute}","%n uger før begivenheden på {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "på dagen for begivenheden kl. {formattedHourMinute}", + "at the event's start" : "ved arrangementets start", + "at the event's end" : "ved arrangementets afslutning", + "{time} before the event starts" : "{time} før begivenheden starter", + "{time} before the event ends" : "{time} før begivenheden slutter", + "{time} after the event starts" : "{time} efter begivenhedens start", + "{time} after the event ends" : "{time} efter begivenheden slutter", + "on {time}" : "{time}", + "on {time} ({timezoneId})" : "den {time} ({timezoneId})", "Week {number} of {year}" : "Uge {number} i {year}", "Daily" : "Dagligt", "Weekly" : "Ugentligt", - "Untitled event" : "Unavngiven begivenhed", - "Next" : "Næste", - "Year" : "År", + "Monthly" : "Månedligt", + "Yearly" : "Årligt", + "_Every %n day_::_Every %n days_" : ["Hver %n dag","Hver %n dage"], + "_Every %n week_::_Every %n weeks_" : ["Hver %n uge","Hver %n uger"], + "_Every %n month_::_Every %n months_" : ["Hver %n måned","Hver %n måneder"], + "_Every %n year_::_Every %n years_" : ["Hver %n år","Hver %n år"], + "_on {weekday}_::_on {weekdays}_" : ["på {weekday}","på {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["på dagen {dayOfMonthList}","på dagene {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "på {ordinalNumber} {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "i {monthNames} på dagen(e) {dayOfMonthList}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "i {monthNames} på {ordinalNumber} {byDaySet}", + "until {untilDate}" : "indtil {untilDate}", + "_%n time_::_%n times_" : ["%n gang","%n gange"], + "second" : "sekund", + "third" : "tredje", + "fourth" : "fjerde", + "fifth" : "femte", + "second to last" : "næstsidste", + "last" : "sidste", + "Untitled task" : "Unavngivet opgave", + "Please ask your administrator to enable the Tasks App." : "Bed din administrator om at aktivere Opgaver-appen.", + "You are not allowed to edit this event as an attendee." : "Du har ikke tilladelse til at redigere denne begivenhed som deltager.", + "W" : "U", + "%n more" : "%n yderligere", "No events to display" : "Ingen begivenheder", + "All participants declined" : "Alle deltagere afviste", + "Please confirm your participation" : "Bekræft venligst din deltagelse", + "You declined this event" : "Di afviste denne begivenhed", + "Your participation is tentative" : "Din deltagelse er foreløbig", + "_+%n more_::_+%n more_" : ["+%n yderligere","+%n yderligere"], + "No events" : "Ingen begivenheder", + "Create a new event or change the visible time-range" : "Opret en ny begivenhed, eller skift det synlige tidsinterval", + "Failed to save event" : "Kunne ikke gemme event", + "It might have been deleted, or there was a typo in a link" : "Det kan være blevet slettet, eller der var en tastefejl i et link", + "It might have been deleted, or there was a typo in the link" : "Det kan være blevet slettet, eller der var en tastefejl i linket", + "Meeting room" : "Mødelokale", + "Lecture hall" : "Foredragssal", + "Seminar room" : "Seminarrum", "Other" : "Andet", + "When shared show" : "Ved delt vis", "When shared show full event" : "Når delt, vis den fulde begivenhed", "When shared show only busy" : "Når delt, vis kun optaget", "When shared hide this event" : "Når delt, skjul denne begivenhed", + "The visibility of this event in shared calendars." : "Synligheden af denne begivenhed i delte kalendere.", + "Add a location" : "Tilføj en placering", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Tilføj en beskrivelse\n\n- Hvad omhandler mødet\n- Dagsordenselementer\n- Noget som deltagerne skal forberede", "Status" : "Status", "Confirmed" : "Bekræftet", "Canceled" : "Annulleret", + "Confirmation about the overall status of the event." : "Bekræftelse af arrangementets overordnede status.", + "Show as" : "Vis som", + "Take this event into account when calculating free-busy information." : "Tag denne begivenhed i betragtning, når du beregner ledig-optaget-information.", "Categories" : "Kategorier", - "Custom color" : "Brug brugerdefinerede farver", - "Commuting" : "Pendler", - "Presentation" : "Præsentation", - "Talk" : "Snak", - "Movie" : "Film", - "Review" : "Gennemse", - "Office" : "Kontor", - "Mail" : "Mail", - "Birthday" : "Fødselsdag", - "User not found" : "Bruger ikke fundet" + "Categories help you to structure and organize your events." : "Kategorier hjælper dig med at strukturere og organisere dine begivenheder.", + "Search or add categories" : "Søg eller tilføj kategorier", + "Add this as a new category" : "Tilføj dette som en ny kategori", + "Custom color" : "Brug brugerdefineret farve", + "Special color of this event. Overrides the calendar-color." : "Særlig farve på denne begivenhed. Tilsidesætter kalenderfarven.", + "Error while sharing file" : "Fejl ved deling af fil", + "Error while sharing file with user" : "Fejl under deling af fil med bruger", + "Attachment {fileName} already exists!" : "Vedhæftet fil {fileName} findes allerede!", + "An error occurred during getting file information" : "Der opstod en fejl under hentning af filoplysninger", + "Talk conversation for event" : "Snak samtale for begivenhed", + "An error occurred, unable to delete the calendar." : "Kalenderen kunne ikke slettes.", + "Imported {filename}" : "Importerede {filename}", + "This is an event reminder." : "Dette er en begivenhedspåmindelse.", + "Error while parsing a PROPFIND error" : "Fejl under parsing af en PROPFIND-fejl", + "Appointment not found" : "Aftale ikke fundet", + "User not found" : "Bruger ikke fundet", + "Reminder" : "Påmindelse", + "+ Add reminder" : "+ Tilføj påmindelse", + "Select automatic slot" : "Vælg automatisk tidspunkt", + "with" : "med", + "Available times:" : "Tilgængelige tidspunkter", + "Suggestions" : "Forslag", + "Details" : "Detaljer" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/da.json b/l10n/da.json index 77fff2c85fa2c1bffefb095f18189e7034ee06fc..4514b1bf35677b75f7395ee7938f98ce3fb532eb 100644 --- a/l10n/da.json +++ b/l10n/da.json @@ -1,108 +1,236 @@ { "translations": { + "Provided email-address is too long" : "Den angivne e-mail-adresse er for lang", "User-Session unexpectedly expired" : "Bruger-Sessionen udløb uventet", "Provided email-address is not valid" : "Leveret e-mailadresse er ikke gyldig ", "%s has published the calendar »%s«" : "%s har oprettet en begivenhed i kalenderen »%s«", "Unexpected error sending email. Please contact your administrator." : "Uventet fejl ved afsendelse, venligst kontakt din administrator", + "Successfully sent email to %1$s" : "Sendt e-mail til %1$s", "Hello," : "Hej,", "We wanted to inform you that %s has published the calendar »%s«." : "Vi ønkser at informerer dig om at %s har oprettet en begivenhed i kalenderen »%s«.", "Open »%s«" : "Åbn »%s«", "Cheers!" : "Hav en fortsat god dag.", "Upcoming events" : "Kommende begivenheder", + "No more events today" : "Ikke flere begivenheder i dag", + "No upcoming events" : "Ingen kommende begivenheder", + "More events" : "Flere begivenheder", + "%1$s with %2$s" : "%1$s med %2$s", + "Calendar" : "Kalender", + "New booking {booking}" : "Ny booking {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) bookede aftalen \"{config_display_name}\" den {date_time}.", "Appointments" : "Aftaler", + "Schedule appointment \"%s\"" : "Planlæg en aftale \"%s\"", + "Schedule an appointment" : "Planlæg en aftale", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Gør klar til %s", + "Follow up for %s" : "Følg op til %s", + "Your appointment \"%s\" with %s needs confirmation" : "Din aftale \"%s\" med %s skal bekræftes", + "Dear %s, please confirm your booking" : "Kære %s, bekræft venligst din reservation", "Confirm" : "Bekræft", - "Appointment:" : "Aftale:", + "Appointment with:" : "Aftale med:", + "Description:" : "Beskrivelse:", + "This confirmation link expires in %s hours." : "Dette bekræftelseslink udløber om %s timer.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Hvis du alligevel ønsker at aflyse aftalen, så kontakt venligst arrangøren ved at svare på denne mail, eller gennem dennes profil side. ", + "Your appointment \"%s\" with %s has been accepted" : "Din aftale \"%s\" med %s er blevet accepteret", + "Dear %s, your booking has been accepted." : "%s, din aftale er blevet accepteret.", + "Appointment for:" : "Aftale for:", "Date:" : "Dato:", + "You will receive a link with the confirmation email" : "Du modtager et link med bekræftelsesmailen", "Where:" : "Hvor:", - "Description:" : "Beskrivelse:", - "Calendar" : "Kalender", + "Comment:" : "Kommentar:", + "You have a new appointment booking \"%s\" from %s" : "Du har en ny aftale booking \"%s\" fra %s", + "Dear %s, %s (%s) booked an appointment with you." : "Kære %s, %s (%s) bookede en aftale med dig.", "A Calendar app for Nextcloud" : "En kalender-app til Nextcloud", "Previous day" : "Forrige dag", "Previous week" : "Forrige uge", + "Previous year" : "Forrige år", "Previous month" : "Forrige måned", "Next day" : "Næste dag", "Next week" : "Næste uge", + "Next year" : "Næste år", "Next month" : "Næste måned", - "New event" : "Opret begivenhed", + "Create new event" : "Opret ny begivenhed", + "Event" : "Begivenhed", "Today" : "I dag", "Day" : "Dag", "Week" : "Uge", "Month" : "Måned", + "Year" : "År", "List" : "Liste", + "Appointment link was copied to clipboard" : "Aftalelink blev kopieret til udklipsholder", + "Appointment link could not be copied to clipboard" : "Aftalelinket kunne ikke kopieres til udklipsholderen", "Preview" : "Forhåndsvisning", - "Copy link" : "Kopiér link", + "Copy link" : "Kopier link", "Edit" : "Rediger", "Delete" : "Slet", - "Untitled calendar" : "Unanvngiven kalender", - "Edit name" : "Rediger navn", - "Saving name …" : "Gemmer navn…", - "Edit color" : "Rediger farve", - "Saving color …" : "Gemmer farve…", - "Copy private link" : "Kopier privat link", - "Export" : "Eksportér", - "Unshare from me" : "Fjern deling fra mig", + "Appointment schedules" : "Aftaleplanlægninger", + "Create new" : "Opret ny", "Disable calendar \"{calendar}\"" : "Slå kalender fra {calendar}", + "Disable untitled calendar" : "Deaktiver unavngiven kalender", "Enable calendar \"{calendar}\"" : "Slå kalender til {calendar}", + "Enable untitled calendar" : "Aktiver unavngiven kalender", "An error occurred, unable to change visibility of the calendar." : "Kalenderens synlighed kunne ikke ændres.", - "An error occurred, unable to delete the calendar." : "Kalenderen kunne ikke slettes.", + "Untitled calendar" : "Unanvngiven kalender", + "Shared with you by" : "Delt med dig af", + "Edit and share calendar" : "Rediger og del kalender", + "Edit calendar" : "Rediger kalender", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Fjerner deling af kalenderen om {countdown} sekund","Fjerner deling af kalenderen om {countdown} sekunder"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Kalenderen bliver slettet om {countdown} sekunder","Kalenderen bliver slettet om {countdown} sekunder"], + "An error occurred, unable to create the calendar." : "Der opstod en fejl, og kalenderen kunne ikke oprettes.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Indtast venligst et gyldigt link (startende med http://, https://, webcal:// eller webcals://)", + "Calendars" : "Kalendere", + "Add new" : "Tilføj ny", + "New calendar" : "Ny kalender", + "Name for new calendar" : "Navn på ny kalender", + "Creating calendar …" : "Opretter kalender…", + "New calendar with task list" : "Ny kalender med opgaveliste", + "New subscription from link (read-only)" : "Nyt abonnement fra link (skrivebeskyttet)", + "Creating subscription …" : "Opretter abonnement…", + "Add public holiday calendar" : "Tilføj helligdagskalender", + "Add custom public calendar" : "Tilføj brugerdefineret offentlig kalender", "Calendar link copied to clipboard." : "Kalender link kopieret.", "Calendar link could not be copied to clipboard." : "Kalender link kunne ikke kopieres.", - "An error occurred, unable to rename the calendar." : "Kalenderen kunne ikke omdøbes.", - "An error occurred, unable to change the calendar's color." : "Kalenderens farve kunne ikke ændres.", - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Kalenderen bliver slettet om {countdown} sekunder","Kalenderen bliver slettet om {countdown} sekunder"], - "Share link" : "Del link", - "Publish calendar" : "Udgiv kalender", - "Publishing calendar" : "Udgiver kalender", - "Copy public link" : "Kopier offentligt link", - "Send link to calendar via email" : "Send link til kalender via e-mail", - "Sending email …" : "Sender email…", "Copy subscription link" : "Kopier abonnementslink", "Copying link …" : "Kopierer link…", "Copied link" : "Link kopieret", "Could not copy link" : "Link kunne ikke kopieres", + "Export" : "Eksporter", + "Untitled item" : "Unavngiven element", + "Unknown calendar" : "Ukendt kalender", + "Could not load deleted calendars and objects" : "Kunne ikke indlæse slettede kalendere og objekter", + "Could not delete calendar or event" : "Kunne ikke slette kalender eller begivenhed", + "Could not restore calendar or event" : "Kunne ikke gendanne kalender eller begivenhed", + "Do you really want to empty the trash bin?" : "Vil du virkelig tømme papirkurven?", + "Empty trash bin" : "Tom papirkurv", + "Trash bin" : "Papirkurv", + "Loading deleted items." : "Indlæser slettede elementer.", + "You do not have any deleted items." : "Du har ingen slettede elementer.", + "Name" : "Navn", + "Deleted" : "Slettet", + "Restore" : "Gendan", + "Delete permanently" : "Slet permanent", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Emner i papirkurven slettes efter {numDays} dag","Emner i papirkurven slettes efter {numDays} dage"], + "Could not update calendar order." : "Kunne ikke opdatere kalenderrækkefølgen.", + "Shared calendars" : "Delte kalendere", + "Deck" : "Opslag", + "Hidden" : "Skjult", + "Internal link" : "Internt link", + "A private link that can be used with external clients" : "Et privat link der kan blive brugt mad eksterne klienter", + "Copy internal link" : "Kopier internt link", + "An error occurred, unable to publish calendar." : "Kalenderen kunne ikke udgives", + "An error occurred, unable to send email." : "Der opstod en fejl, kunne ikke sende e-mail.", + "Embed code copied to clipboard." : "Indlejringskode kopieret til udklipsholder.", + "Embed code could not be copied to clipboard." : "Indlejringskoden kunne ikke kopieres til udklipsholderen.", + "Unpublishing calendar failed" : "Udgivelse af kalender mislykkedes", + "Share link" : "Del link", + "Copy public link" : "Kopier offentligt link", + "Send link to calendar via email" : "Send link til kalender via e-mail", + "Enter one address" : "Indtast en adresse", + "Sending email …" : "Sender email…", "Copy embedding code" : "Kopier indlejringskode", "Copying code …" : "Kopierer kode…", "Copied code" : "Kode kopieret", "Could not copy code" : "Kode kunne ikke kopieres", "Delete share link" : "Slet delingslink", "Deleting share link …" : "Sletter delingslink…", - "An error occurred, unable to publish calendar." : "Kalenderen kunne ikke udgives", - "Embed code copied to clipboard." : "Indlejringskode kopieret til udklipsholder.", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "Der opstod en fejl under fjernelse af deling af kalenderen.", + "An error occurred, unable to change the permission of the share." : "Der opstod en fejl, som ikke kunne ændre tilladelsen til delingen.", + "can edit" : "kan redigere", + "Unshare with {displayName}" : "Fjern deling med {displayName}", "Share with users or groups" : "Del med brugere eller grupper", "No users or groups" : "Ingen brugere eller grupper", - "can edit" : "kan redigere", - "+ New calendar" : "+ Ny kalender", - "New calendar" : "Ny kalender", - "Name for new calendar" : "Navn på ny kalender", - "Creating calendar …" : "Opretter kalender…", - "New calendar with task list" : "Ny kalender med opgaveliste", - "Creating subscription …" : "Opretter abonnement…", - "Name" : "Navn", - "Deleted" : "Slettet", - "Restore" : "Gendan", - "Delete permanently" : "Slet permanent", - "Empty trash bin" : "Tom papirkurv", + "Failed to save calendar name and color" : "Kunne ikke gemme kalendernavn og farve", + "Calendar name …" : "Kalender navn …", + "Never show me as busy (set this calendar to transparent)" : "Vis mig aldrig som optaget (sæt denne kalender til gennemsigtig)", + "Share calendar" : "Del kalender", + "Unshare from me" : "Fjern deling fra mig", + "Save" : "Gem", "Import calendars" : "Importer kalendere", + "Please select a calendar to import into …" : "Vælg venligst en kalender, der skal importeres til...", "Filename" : "Filnavn", - "Cancel" : "Annullér", + "Calendar to import into" : "Kalender at importere til", + "Cancel" : "Annuller", "_Import calendar_::_Import calendars_" : ["Importer kalender","Importer kalendere"], + "Select the default location for attachments" : "Vælg standardplaceringen for vedhæftede filer", + "Pick" : "Vælg", + "Invalid location selected" : "Ugyldig placering er valgt", + "Attachments folder successfully saved." : "Mappen vedhæftede filer blev gemt.", + "Error on saving attachments folder." : "Fejl ved lagring af vedhæftede filer mappen.", + "Default attachments location" : "Standardplacering for vedhæftede filer", + "{filename} could not be parsed" : "{filename} kunne ikke tilføjes", + "No valid files found, aborting import" : "Ingen gyldige filer fundet, importen afbrydes", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n begivenhed blev importeret","%n begivenheder blev importeret"], + "Import partially failed. Imported {accepted} out of {total}." : "Importen mislykkedes delvist. Importeret {accepted} ud af {total}.", "Automatic" : "Automatisk", - "or" : "eller", + "Automatic ({detected})" : "Automatisk ({detected})", + "New setting was not saved successfully." : "Den nye indstilling blev ikke gemt.", + "Navigation" : "Navigation", + "Previous period" : "Tidligere periode", + "Next period" : "Næste periode", + "Views" : "Visninger", + "Day view" : "Dagsvisning", + "Week view" : "Ugevisning", + "Month view" : "Månedsvisning", + "Year view" : "Årsvisning", "List view" : "Vis som liste", "Actions" : "Handlinger", + "Create event" : "Opret begivenhed", + "Show shortcuts" : "Vis genveje", "Editor" : "Editor", "Close editor" : "Luk editor", + "Save edited event" : "Gem redigeret begivenhed", + "Delete edited event" : "Slet redigeret begivenhed", + "Duplicate event" : "Dubleret begivenhed", + "Shortcut overview" : "Genvejsoversigt", + "or" : "eller", + "Calendar settings" : "Kalender indstillinger", + "At event start" : "Ved arrangementets start", + "No reminder" : "Ingen påmindelse", + "Failed to save default calendar" : "Kunne ikke gemme standard kalenderen", + "CalDAV link copied to clipboard." : "CalDAV-linket er kopieret til udklipsholderen.", + "CalDAV link could not be copied to clipboard." : "CalDAV-linket kunne ikke kopieres til udklipsholderen.", "Enable birthday calendar" : "Slå fødselsdagskalender til", + "Show tasks in calendar" : "Vis opgaver i kalenderen", "Enable simplified editor" : "Slå simpel editor til", + "Limit the number of events displayed in the monthly view" : "Begræns antallet af hændelser, der vises i månedsvisningen", "Show weekends" : "Vis weekender", "Show week numbers" : "Vis ugenummer ", + "Time increments" : "Tidsintervaller", + "Default calendar for incoming invitations" : "Standard kalender for indkomne invitationer", + "Default reminder" : "Standard påmindelse", "Copy primary CalDAV address" : "Kopier primær CalDAV-adresse", + "Copy iOS/macOS CalDAV address" : "Kopier iOS/macOS CalDAV adresse", + "Personal availability settings" : "Personlige tilgængelighedsindstillinger", "Show keyboard shortcuts" : "Vis tastaturgenveje", - "No reminder" : "Ingen påmindelse", + "Appointment schedule successfully created" : "Aftaleplanlægning blev oprettet", + "Appointment schedule successfully updated" : "Aftaleplanlægningen er opdateret", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minut","{duration} minutter"], + "0 minutes" : "0 minutter", + "_{duration} hour_::_{duration} hours_" : ["{duration} time","{duration} timer"], + "_{duration} day_::_{duration} days_" : ["{duration} dag","{duration} dage"], + "_{duration} week_::_{duration} weeks_" : ["{duration} uge","{duration} uger"], + "_{duration} month_::_{duration} months_" : ["{duration} måned","{duration} måneder"], + "_{duration} year_::_{duration} years_" : ["{duration} år","{duration} år"], + "To configure appointments, add your email address in personal settings." : "For at konfigurere aftaler - tilføj venligst din e-mailadresse under personlige indstillinger.", + "Public – shown on the profile page" : "Offentlig – vist på profilsiden", + "Private – only accessible via secret link" : "Privat – kun tilgængelig via hemmeligt link", + "Appointment schedule saved" : "Aftaleplanlægningen gemt", + "Create appointment schedule" : "Opret aftaleplanlægning", + "Edit appointment schedule" : "Rediger aftaleplanlægning", + "Update" : "Opdater", + "Appointment name" : "Aftale navn", "Location" : "Sted", + "Create a Talk room" : "Opret et Snak rum", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Et unikt link vil blive genereret for hver booket aftale og sendt via bekræftelsesmailen", "Description" : "Beskrivelse", "Visibility" : "Synlighed", "Duration" : "Varighed", + "Increments" : "Inkrementer", + "Additional calendars to check for conflicts" : "Yderligere kalendere til at tjekke for konflikter", + "Pick time ranges where appointments are allowed" : "Vælg tidsintervaller, hvor aftaler er tilladt", "to" : "til", + "Delete slot" : "Slet slot", + "No times set" : "Ingen tider fastsat", "Add" : "Tilføj", "Monday" : "Mandag", "Tuesday" : "Tirsdag", @@ -111,87 +239,350 @@ "Friday" : "Fredag", "Saturday" : "Lørdag", "Sunday" : "Søndag", - "Save" : "Gem", - "Update" : "Opdatér", + "Weekdays" : "Hverdage", + "Add time before and after the event" : "Tilføj tid før og efter begivenheden", + "Before the event" : "Før arrangementet", + "After the event" : "Efter arrangementet", + "Planning restrictions" : "Planlægningsrestriktioner", + "Minimum time before next available slot" : "Minimum tid før næste ledige plads", + "Max slots per day" : "Max slots om dagen", + "Limit how far in the future appointments can be booked" : "Begræns hvor langt ude i fremtiden, der kan bookes tider", + "It seems a rate limit has been reached. Please try again later." : "Det ser ud til, at en begrænsning er nået. Prøv venligst igen senere.", + "Please confirm your reservation" : "Bekræft venligst din reservation", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Vi har sendt dig en e-mail med detaljer. Bekræft venligst din aftale ved at bruge linket i e-mailen. Du kan lukke denne side nu.", + "Your name" : "Dit navn", "Your email address" : "Din email adresse", + "Please share anything that will help prepare for our meeting" : "Del venligst alt, der kan hjælpe med at forberede vores møde", + "Could not book the appointment. Please try again later or contact the organizer." : "Det var ikke muligt at bestille tid. Prøv venligst igen senere eller kontakt arrangøren.", + "Back" : "Tilbage", + "Book appointment" : "Book aftale", + "Error fetching Talk conversations." : "Fejl under hentning af Snak samtaler.", + "Conversation does not have a valid URL." : "Samtaler har ikke en gyldig URL.", + "Successfully added Talk conversation link to location." : "Tilføjede Snak samtale link til placering.", + "Successfully added Talk conversation link to description." : "Tilføjede Snak samtale link til beskrivelse.", + "Failed to apply Talk room." : "Kunne ikke anvende Snak rum", + "Error creating Talk conversation" : "Fejl under oprettelse af Snak samtale", + "Select a Talk Room" : "Vælg et Snak rum", + "Add Talk conversation" : "Tilføj Snak samtale", + "Fetching Talk rooms…" : "Henter Snak rum...", + "No Talk room available" : "Ingen Snak rum tilgængelige", + "Create a new conversation" : "Opret ny samtale", + "Select conversation" : "Vælg samtale", + "on" : "på", + "at" : "ved", + "before at" : "før kl", "Notification" : "Notifikation", "Email" : "E-mail", - "_second_::_seconds_" : ["sekund","sekunder"], - "_minute_::_minutes_" : ["minut","minutter"], - "_hour_::_hours_" : ["time","timer"], - "_day_::_days_" : ["dag","dage"], - "_week_::_weeks_" : ["uge","uger"], + "Audio notification" : "Lydmeddelelse", + "Other notification" : "Anden meddelelse", + "Relative to event" : "I forhold til begivenhed", + "On date" : "På dato", + "Edit time" : "Rediger tid", + "Save time" : "Gem tid", + "Remove reminder" : "Fjern påmindelse", + "Add reminder" : "Tilføj påmindelse", + "seconds" : "sekunder ", + "minutes" : "minutter", + "hours" : "timer", + "days" : "dage", + "weeks" : "uger", + "Choose a file to add as attachment" : "Vælg en fil, der skal tilføjes som vedhæftning", + "Choose a file to share as a link" : "Vælg en fil der skal deles som link", + "Attachment {name} already exist!" : "Vedhæftet fil {name} findes allerede!", + "Could not upload attachment(s)" : "Kunne ikke uploade vedhæftning(er)", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Du er ved at navigere til {host}. Er du sikker på at du vil fortsætte? Link: {link}", + "Proceed" : "Fortsæt", + "No attachments" : "Ingen vedhæftede filer", + "Add from Files" : "Tilføj fra Filer", + "Upload from device" : "Upload fra enhed", + "Delete file" : "Slet fil", + "Confirmation" : "Bekræftelse", + "_{count} attachment_::_{count} attachments_" : ["{count} vedhæftet fil","{count} vedhæftede filer"], + "Suggested" : "Foreslået", "Available" : "Tilgængelig", + "Invitation accepted" : "Invitation accepteret", + "Accepted {organizerName}'s invitation" : "Accepterede invitationen fra {organizerName}", + "Participation marked as tentative" : "Deltagelse markeret som foreløbig", + "Invitation is delegated" : "Invitation er uddelegeret", + "Not available" : "Ikke tilgængelig", + "Invitation declined" : "Invitation afvist", + "Declined {organizerName}'s invitation" : "Afviste {organizerName}s invitation", + "Availability will be checked" : "Tilgængelighed bliver kontrolleret", + "Invitation will be sent" : "Invitation sendes", + "Failed to check availability" : "Kunne ikke kontrollere tilgængelighed", + "Failed to deliver invitation" : "Kunne ikke aflevere invitation", + "Awaiting response" : "Afventer svar", + "Checking availability" : "Kontrol af tilgængelighed", + "Has not responded to {organizerName}'s invitation yet" : "Har endnu ikke svaret på {organizerName}s invitation", + "chairperson" : "formand", + "required participant" : "nødvendig deltager", + "non-participant" : "ikke-deltager", + "optional participant" : "valgfri deltager", + "{organizer} (organizer)" : "{organizer} (arrangør)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Tilgængelighed af deltagere, ressourcer og lokaler", + "Suggestion accepted" : "Forslag accepteret", + "Legend" : "Forklaring", + "Out of office" : "Ikke på kontoret", + "Attendees:" : "Deltagere:", + "Done" : "Færdig", + "Search room" : "Søg rum", + "Room name" : "Rumnavn", + "Check room availability" : "kontroller rumtilgængelighed", + "Free" : "Ledig", + "Busy (tentative)" : "Optaget (foreløbig)", "Busy" : "Optaget", "Unknown" : "Ukendt", + "Find a time" : "Find et tidspunkt", + "The invitation has been accepted successfully." : "Invitationen er blevet accepteret.", + "Failed to accept the invitation." : "Kunne ikke acceptere invitationen.", + "The invitation has been declined successfully." : "Invitationen er blevet afvist.", + "Failed to decline the invitation." : "Invitationen kunne ikke afvises.", + "Your participation has been marked as tentative." : "Din deltagelse er blevet markeret som foreløbig.", + "Failed to set the participation status to tentative." : "Kunne ikke indstille deltagelsesstatus til foreløbig.", "Accept" : "Accepter", "Decline" : "Afvis", "Tentative" : "Foreløbig", - "Create Talk room for this event" : "Opret Snak rum for denne begivenhed", - "Send email" : "Send e-mail", + "No attendees yet" : "Ingen deltagere endnu", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} inviteret, {confirmedCount} bekræftet", + "Successfully appended link to talk room to location." : "Linket til Snak rum er tilføjet til lokationen.", + "Successfully appended link to talk room to description." : "Link til Snak rum blev tilføjet til beskrivelse.", + "Error creating Talk room" : "Fejl ved oprettelse af Snak rum", + "Attendees" : "Deltagere", + "_%n more guest_::_%n more guests_" : ["%n flere gæster","%n flere gæster"], + "Remove group" : "Fjern gruppe", + "Remove attendee" : "Fjern deltager", + "Request reply" : "Anmod om svar", + "Chairperson" : "Formand", + "Required participant" : "Nødvendig deltager", + "Optional participant" : "Valgfri deltager", + "Non-participant" : "Deltager ikke", + "_%n member_::_%n members_" : ["%n medlemer","%n medlemer"], + "Search for emails, users, contacts, contact groups or teams" : "Søg efter e-mails, brugere, kontaktgrupper eller teams", + "No match found" : "Ingen match fundet", + "Note that members of circles get invited but are not synced yet." : "Bemærk, at medlemmer af cirkler bliver inviteret, men er endnu ikke synkroniseret.", + "Note that members of contact groups get invited but are not synced yet." : "Bemærk at medlemmer af kontaktgrupper inviteres, men endnu ikke er synkroniserede.", + "(organizer)" : "(arrangør)", + "Make {label} the organizer" : "Gør {label} til arrangør", + "Make {label} the organizer and attend" : "Gør {label} til arrangør og deltag", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "For at udsende invitationer og håndtere svar, [linkopen]tilføj din e-mailadresse i personlige indstillinger[linkclose].", + "Remove color" : "Fjern farve", "Event title" : "Titel", - "All day" : "Hele dagen", - "from {startDate}" : "fra {startDate}", - "from {startDate} at {startTime}" : "fra {startDate} kl {startTime}", - "to {endDate}" : "til {endDate}", - "to {endDate} at {endTime}" : "til {endDate} kl {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Kan ikke ændre heldagsindstillingen for begivenheder, der er en del af et gentagelsessæt.", + "From" : "Fra", + "To" : "Til", "Repeat" : "Gentag", + "_time_::_times_" : ["gang","gange"], "never" : "aldrig", + "on date" : "på dato", "after" : "efter", + "End repeat" : "Afslut gentagelse", + "Select to end repeat" : "Vælg for at afslutte gentagelsen", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Denne begivenhed er gentagelses-undtagelsen af et gentagelsessæt. Du kan ikke tilføje en gentagelsesregel til den.", "first" : "første", - "third" : "tredje", - "fourth" : "fjerde", - "fifth" : "femte", - "second to last" : "næstsidste", - "last" : "sidste", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Ændringer i gentagelsesreglen vil kun gælde for denne og alle fremtidige hændelser.", + "Repeat every" : "Gentag hver", + "By day of the month" : "Efter dag i måneden", + "On the" : "Den", + "_day_::_days_" : ["dag","dage"], + "_week_::_weeks_" : ["uge","uger"], "_month_::_months_" : ["måned","måneder"], "_year_::_years_" : ["år","år"], + "On specific day" : "På specifik dag", "weekday" : "hverdag", "weekend day" : "weekenddag", + "Does not repeat" : "Gentager sig ikke", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Gentagelsesdefinitionen af denne begivenhed understøttes ikke fuldt ud af Nextcloud. Hvis du redigerer gentagelsesmulighederne, kan visse gentagelser gå tabt.", + "No rooms or resources yet" : "Ingen lokaler eller ressourcer endnu", + "Resources" : "Resourcer", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sæde","{seatingCapacity} sæder"], + "Add resource" : "Tilføj ressource", + "Has a projector" : "Har en projektor", + "Has a whiteboard" : "Har en whiteboardtavle", + "Wheelchair accessible" : "Kørestolsvenligt", + "Remove resource" : "Fjern ressource", + "Search for resources or rooms" : "Søg efter ressourcer eller lokaler", "available" : "tilgængelig", - "More" : "Mere", - "Pick a date" : "Vælg en dato", + "unavailable" : "ikke tilgængelig", + "Show all rooms" : "Vis alle rum", + "Projector" : "Projektor", + "Whiteboard" : "Whiteboard", + "Room type" : "Værelsestype", + "Any" : "Enhver", + "Minimum seating capacity" : "Minimum siddekapacitet", + "More details" : "Flere detaljer", + "Update this and all future" : "Opdater denne og alle fremtidige", + "Update this occurrence" : "Opdater denne forekomst", + "Public calendar does not exist" : "Offentlig kalender findes ikke", + "Maybe the share was deleted or has expired?" : "Måske er delingen blevet slettet eller er udløbet?", "from {formattedDate}" : "fra {formattedDate}", "to {formattedDate}" : "til {formattedDate}", + "on {formattedDate}" : "på {formattedDate}", "from {formattedDate} at {formattedTime}" : "fra {formattedDate} kl. {formattedTime}", "to {formattedDate} at {formattedTime}" : "til {formattedDate} at {formattedTime}", + "on {formattedDate} at {formattedTime}" : "{formattedDate} kl. {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} kl. {formattedTime}", + "Please enter a valid date" : "Indtast venligst en gyldig dato", + "Please enter a valid date and time" : "Indtast venligst en gyldig dato og tid", + "Select a time zone" : "Vælg en tidszone", + "Please select a time zone:" : "Vælg venligst en tidszone:", + "Pick a time" : "Vælg et tidspunkt", + "Pick a date" : "Vælg en dato", + "Type to search time zone" : "Indtast for at søge i tidszone", "Global" : "Global", + "Holidays in {region}" : "Ferie i {region}", + "An error occurred, unable to read public calendars." : "Der opstod en fejl, og det var ikke muligt at læse offentlige kalendere.", + "An error occurred, unable to subscribe to calendar." : "Der opstod en fejl, og der kunne ikke abonneres på kalenderen.", + "Public holiday calendars" : "Helligdagskallendere", + "Public calendars" : "Offentlige kalendere", + "No valid public calendars configured" : "Ingen gyldige offentlige kalendere konfigureret", + "Speak to the server administrator to resolve this issue." : "Kontakt venligst serveradministratoren for at løse dette problem.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Helligdagskalendere leveres af Thunderbird. Kalenderdata vil blive downloadet fra {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Disse offentlige kalendere er foreslået af serveradministratoren. Kalenderdata vil blive downloadet fra de respektive hjemmesider.", + "By {authors}" : "Af {authors}", + "Subscribed" : "Abonneret", + "Subscribe" : "Tilmeld", + "Could not fetch slots" : "Kunne ikke hente pladser", + "Select a date" : "Vælg en dato", + "Select slot" : "Vælg tidspunkt", + "No slots available" : "Ingen ledige tidspunkter", + "The slot for your appointment has been confirmed" : "Tidspunktet for din aftale er blevet bekræftet", + "Appointment Details:" : "Detaljer om aftale:", "Time:" : "Tid:", + "Booked for:" : "Booket til:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Tak skal du have. Din reservation fra {startDate} til {endDate} er blevet bekræftet.", + "Book another appointment:" : "Bestil endnu en tid:", + "See all available slots" : "Se alle tilgængelige tidspunkter", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Tidsrummet for din aftale fra {startDate} til {endDate} er ikke længere tilgængeligt.", + "Please book a different slot:" : "Book venligst et andet tidspunkt:", + "Book an appointment with {name}" : "Book en tid med {name}", + "No public appointments found for {name}" : "Ingen offentlige aftaler fundet for {name}", "Personal" : "Personlig", - "No more events today" : "Ikke flere begivenheder i dag", - "No upcoming events" : "Ingen kommende begivenheder", - "[Today]" : "[i dag]", - "[Tomorrow]" : "[I morgen]", - "Details" : "Detaljer", - "Attendees" : "Deltagere", - "Resources" : "Resourcer", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Den automatiske tidszoneregistrering bestemte, at din tidszone var UTC.\nDette er højst sandsynligt resultatet af sikkerhedsforanstaltninger i din webbrowser.\nIndstil venligst din tidszone manuelt i kalenderindstillingerne.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Din konfigurerede tidszone ({timezoneId}) blev ikke fundet. Falder tilbage til UTC.\nSkift venligst din tidszone i indstillingerne og rapporter dette problem.", + "Availability of {displayName}" : "Tilgængelighed af {displayName}", + "Edit event" : "Rediger begivenhed", + "Event does not exist" : "Begivenheden eksisterer ikke", + "Duplicate" : "dubletter", + "Delete this occurrence" : "Slet denne forekomst", + "Delete this and all future" : "Slet denne og alle fremtidige", + "All day" : "Hele dagen", + "Modifications wont get propagated to the organizer and other attendees" : "Ændringer vil ikke blive bredt ud til organisatoren og andre deltagere", + "Managing shared access" : "Håndtering af delt adgang", + "Deny access" : "Nægt adgang", + "Invite" : "Invitere", + "_User requires access to your file_::_Users require access to your file_" : ["Brugeren kræver adgang til din fil","Brugere kræver adgang til din fil"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Vedhæftet fil kræver delt adgang","Vedhæftede filer, der kræver delt adgang"], + "Untitled event" : "Unavngiven begivenhed", "Close" : "Luk", + "Modifications will not get propagated to the organizer and other attendees" : "Ændringer vil ikke blive udbredt til organisatoren eller andre deltagere", "Subscribe to {name}" : "Abonner på {name}", + "Export {name}" : "Eksporter {name}", + "Show availability" : "Vis tilgængelighed", "Anniversary" : "Årsdag", + "Appointment" : "Aftale", + "Business" : "Forretning", + "Education" : "Uddannelse", + "Holiday" : "Ferie", + "Meeting" : "Møde", + "Miscellaneous" : "Diverse", + "Non-working hours" : "Ikke-arbejdstid", + "Not in office" : "Ikke på kontoret", + "Phone call" : "Telefon opkald", + "Sick day" : "Sygedag", + "Special occasion" : "Speciel lejlighed", + "Travel" : "Rejse", + "Vacation" : "Ferie", + "Midnight on the day the event starts" : "Midnat på dagen, hvor arrangementet starter", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dag før begivenheden kl. {formattedHourMinute}","%n dage før begivenheden kl. {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n uge før begivenheden på {formattedHourMinute}","%n uger før begivenheden på {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "på dagen for begivenheden kl. {formattedHourMinute}", + "at the event's start" : "ved arrangementets start", + "at the event's end" : "ved arrangementets afslutning", + "{time} before the event starts" : "{time} før begivenheden starter", + "{time} before the event ends" : "{time} før begivenheden slutter", + "{time} after the event starts" : "{time} efter begivenhedens start", + "{time} after the event ends" : "{time} efter begivenheden slutter", + "on {time}" : "{time}", + "on {time} ({timezoneId})" : "den {time} ({timezoneId})", "Week {number} of {year}" : "Uge {number} i {year}", "Daily" : "Dagligt", "Weekly" : "Ugentligt", - "Untitled event" : "Unavngiven begivenhed", - "Next" : "Næste", - "Year" : "År", + "Monthly" : "Månedligt", + "Yearly" : "Årligt", + "_Every %n day_::_Every %n days_" : ["Hver %n dag","Hver %n dage"], + "_Every %n week_::_Every %n weeks_" : ["Hver %n uge","Hver %n uger"], + "_Every %n month_::_Every %n months_" : ["Hver %n måned","Hver %n måneder"], + "_Every %n year_::_Every %n years_" : ["Hver %n år","Hver %n år"], + "_on {weekday}_::_on {weekdays}_" : ["på {weekday}","på {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["på dagen {dayOfMonthList}","på dagene {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "på {ordinalNumber} {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "i {monthNames} på dagen(e) {dayOfMonthList}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "i {monthNames} på {ordinalNumber} {byDaySet}", + "until {untilDate}" : "indtil {untilDate}", + "_%n time_::_%n times_" : ["%n gang","%n gange"], + "second" : "sekund", + "third" : "tredje", + "fourth" : "fjerde", + "fifth" : "femte", + "second to last" : "næstsidste", + "last" : "sidste", + "Untitled task" : "Unavngivet opgave", + "Please ask your administrator to enable the Tasks App." : "Bed din administrator om at aktivere Opgaver-appen.", + "You are not allowed to edit this event as an attendee." : "Du har ikke tilladelse til at redigere denne begivenhed som deltager.", + "W" : "U", + "%n more" : "%n yderligere", "No events to display" : "Ingen begivenheder", + "All participants declined" : "Alle deltagere afviste", + "Please confirm your participation" : "Bekræft venligst din deltagelse", + "You declined this event" : "Di afviste denne begivenhed", + "Your participation is tentative" : "Din deltagelse er foreløbig", + "_+%n more_::_+%n more_" : ["+%n yderligere","+%n yderligere"], + "No events" : "Ingen begivenheder", + "Create a new event or change the visible time-range" : "Opret en ny begivenhed, eller skift det synlige tidsinterval", + "Failed to save event" : "Kunne ikke gemme event", + "It might have been deleted, or there was a typo in a link" : "Det kan være blevet slettet, eller der var en tastefejl i et link", + "It might have been deleted, or there was a typo in the link" : "Det kan være blevet slettet, eller der var en tastefejl i linket", + "Meeting room" : "Mødelokale", + "Lecture hall" : "Foredragssal", + "Seminar room" : "Seminarrum", "Other" : "Andet", + "When shared show" : "Ved delt vis", "When shared show full event" : "Når delt, vis den fulde begivenhed", "When shared show only busy" : "Når delt, vis kun optaget", "When shared hide this event" : "Når delt, skjul denne begivenhed", + "The visibility of this event in shared calendars." : "Synligheden af denne begivenhed i delte kalendere.", + "Add a location" : "Tilføj en placering", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Tilføj en beskrivelse\n\n- Hvad omhandler mødet\n- Dagsordenselementer\n- Noget som deltagerne skal forberede", "Status" : "Status", "Confirmed" : "Bekræftet", "Canceled" : "Annulleret", + "Confirmation about the overall status of the event." : "Bekræftelse af arrangementets overordnede status.", + "Show as" : "Vis som", + "Take this event into account when calculating free-busy information." : "Tag denne begivenhed i betragtning, når du beregner ledig-optaget-information.", "Categories" : "Kategorier", - "Custom color" : "Brug brugerdefinerede farver", - "Commuting" : "Pendler", - "Presentation" : "Præsentation", - "Talk" : "Snak", - "Movie" : "Film", - "Review" : "Gennemse", - "Office" : "Kontor", - "Mail" : "Mail", - "Birthday" : "Fødselsdag", - "User not found" : "Bruger ikke fundet" + "Categories help you to structure and organize your events." : "Kategorier hjælper dig med at strukturere og organisere dine begivenheder.", + "Search or add categories" : "Søg eller tilføj kategorier", + "Add this as a new category" : "Tilføj dette som en ny kategori", + "Custom color" : "Brug brugerdefineret farve", + "Special color of this event. Overrides the calendar-color." : "Særlig farve på denne begivenhed. Tilsidesætter kalenderfarven.", + "Error while sharing file" : "Fejl ved deling af fil", + "Error while sharing file with user" : "Fejl under deling af fil med bruger", + "Attachment {fileName} already exists!" : "Vedhæftet fil {fileName} findes allerede!", + "An error occurred during getting file information" : "Der opstod en fejl under hentning af filoplysninger", + "Talk conversation for event" : "Snak samtale for begivenhed", + "An error occurred, unable to delete the calendar." : "Kalenderen kunne ikke slettes.", + "Imported {filename}" : "Importerede {filename}", + "This is an event reminder." : "Dette er en begivenhedspåmindelse.", + "Error while parsing a PROPFIND error" : "Fejl under parsing af en PROPFIND-fejl", + "Appointment not found" : "Aftale ikke fundet", + "User not found" : "Bruger ikke fundet", + "Reminder" : "Påmindelse", + "+ Add reminder" : "+ Tilføj påmindelse", + "Select automatic slot" : "Vælg automatisk tidspunkt", + "with" : "med", + "Available times:" : "Tilgængelige tidspunkter", + "Suggestions" : "Forslag", + "Details" : "Detaljer" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/de.js b/l10n/de.js index 555e8c6220a8d3cc6b1a32be7ae3fdf7277ed68f..1b3ae170a29d3a0149c240fd1424af5762fb3ad1 100644 --- a/l10n/de.js +++ b/l10n/de.js @@ -1,139 +1,172 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Die eingegebene Adresse ist zu lang.", "User-Session unexpectedly expired" : "Sitzung unerwartet abgelaufen", "Provided email-address is not valid" : "Angegebene E-Mail-Adresse ist ungültig", "%s has published the calendar »%s«" : "%s hat den Kalender »%s« veröffentlicht", - "Unexpected error sending email. Please contact your administrator." : "Unerwarteter Fehler beim Senden der E-Mail. Bitte kontaktiere den Administrator.", - "Successfully sent email to %1$s" : "E-Mail erfolgreich an %1$s gesendet", + "Unexpected error sending email. Please contact your administrator." : "Unerwarteter Fehler beim Senden der E-Mail. Bitte kontaktiere die Administration.", + "Successfully sent email to %1$s" : "E-Mail an %1$s gesendet", "Hello," : "Hallo,", "We wanted to inform you that %s has published the calendar »%s«." : "Information: %s hat den Kalender »%s« veröffentlicht.", "Open »%s«" : "»%s« öffnen", "Cheers!" : "Noch einen schönen Tag!", "Upcoming events" : "Anstehende Termine", + "No more events today" : "Heute keine weiteren Termine", + "No upcoming events" : "Keine anstehenden Termine", + "More events" : "Weitere Termine", + "%1$s with %2$s" : "%1$s mit %2$s", + "Calendar" : "Kalender", + "New booking {booking}" : "Neue Buchung {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) hat den Termin \"{config_display_name}\" am {date_time} gebucht.", "Appointments" : "Termine", "Schedule appointment \"%s\"" : "Termin planen \"%s\"", "Schedule an appointment" : "Vereinbare einen Termin", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Bereite dich auf %s vor", - "Follow up for %s" : "Nachverfolgung für %s", - "Your appointment \"%s\" needs confirmation" : "Dein Termin \"%s\" benötigt eine Bestätigung", - "Dear %s, please confirm your booking" : "Hallo%s, bitte bestätige die Terminbuchung", + "Follow up for %s" : "Nachbereitung: %s", + "Your appointment \"%s\" with %s needs confirmation" : "Für deine Terminvereinbarung \"%s\" mit %s steht die Bestätigung noch aus.", + "Dear %s, please confirm your booking" : "Hallo %s, bitte bestätige die Terminbuchung", "Confirm" : "Bestätigen", + "Appointment with:" : "Termin mit:", + "Description:" : "Beschreibung:", "This confirmation link expires in %s hours." : "Dieser Bestätigungslink läuft in %s Stunden ab.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Wenn du den Termin doch noch absagen möchtest, wende dich bitte an deinen Organisator.", - "Appointment:" : "Termin:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Wenn du den Termin doch stornieren möchtest, wende dich bitte an deinen Organisator, indem du auf diese E-Mail antwortest oder dessen Profilseite besuchst.", + "Your appointment \"%s\" with %s has been accepted" : "Deine Terminvereinbarung \"%s\" mit %s wurde angenommen.", + "Dear %s, your booking has been accepted." : "Hallo %s, dein Buchung wurde akzeptiert.", + "Appointment for:" : "Termin für:", "Date:" : "Datum:", + "You will receive a link with the confirmation email" : "Du erhältst eine E-Mail mit einem Bestätigungslink", "Where:" : "Ort:", - "Description:" : "Beschreibung:", - "Calendar" : "Kalender", + "Comment:" : "Kommentar:", + "You have a new appointment booking \"%s\" from %s" : "Du hast eine neue Terminbuchung \"%s\" von %s.", + "Dear %s, %s (%s) booked an appointment with you." : "Hallo %s, %s (%s) hat einen Termin mit dir gebucht.", "A Calendar app for Nextcloud" : "Eine Kalender-App für Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Die Calendar-App ist die Oberfläche für Nextclouds CalDAV-Server. Termine können auf einfache Weise über verschiedene Geräte hinweg mit Nextcloud synchronisiert und online bearbeitet werden.\n\n* 🚀 ** Integration mit anderen Nextcloud Apps!** Aktuell Kontakte - weitere folgen.\n* 🌐 **WebCal-Unterstützung!** Möchtest du die Spieltage deines Lieblingsteams in deinem Kalender verfolgen? Kein Problem!\n* 🙋 **Teilnehmer!** Lade Teilnehmer zu deinen Terminen ein.\n* ⌚️ **Frei/Besetzt:** Sehe, wann deine Teilnehmer für ein Treffen verfügbar sind\n* ⏰ **Erinnerungen!** Erhalte Alarme für Termine innerhalb deines Browsers und per E-Mail.\n* 🔍 Suche! Finde deine Termine ganz einfach\n* ☑️ Aufgaben! Sehe deine Aufgaben mit Fälligkeitsdatum direkt in deinem Kalender\n* 🙈 **Wir erfinden das Rad nicht neu!** Die App basiert auf den großartigen [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) und [fullcalendar](https://github.com/fullcalendar/fullcalendar) Bibliotheken.", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Eine Kalender-App für Nextcloud. Termine von verschiedenen Geräten ganz einfach mit Ihrer Nextcloud synchronisieren und online bearbeiten.\n\n* 🚀 **Integration mit anderen Nextcloud-Apps!** Wie Kontakte, Talk, Aufgaben, Deck und Kreise\n* 🌐 **WebCal-Unterstützung!** Sollen die Spieltage deiner Lieblingsmannschaft in deinem Kalender stehen? Kein Problem!\n* 🙋 **Teilnehmer!** Lade Personen zu deinen Veranstaltungen ein.\n* ⌚ **Frei/Beschäftigt!** Sieh nach, wann deine Teilnehmer verfügbar sind.\n* ⏰ **Erinnerungen!** Erhalte Benachrichtigungen für Veranstaltungen direkt im Browser und per E-Mail.\n* 🔍 **Suche!** Finde deine Veranstaltungen ganz einfach.\n* ☑️ **Aufgaben!** Sieh Aufgaben oder Karten mit Fälligkeitsdatum direkt im Kalender.\n* 🔈 **Chatrooms!** Erstelle beim Buchen eines Meetings mit nur einem Klick einen zugehörigen Chatroom.\n* 📆 **Terminbuchung** Sende Personen einen Link, damit sie [mit dieser App](https://apps.nextcloud.com/apps/appointments) einen Termin mit dir buchen können.\n* 📎 **Anhänge!** Füge Veranstaltungsanhänge hinzu, lade sie hoch und sieh sie ein.\n* 🙈 **Wir erfinden das Rad nicht neu!** Basierend auf den großartigen [c-dav Bibliothek](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) und [fullcalendar](https://github.com/fullcalendar/fullcalendar) Bibliotheken.", "Previous day" : "Vorheriger Tag", "Previous week" : "Vorherige Woche", + "Previous year" : "Vorheriges Jahr", "Previous month" : "Vorheriger Monat", "Next day" : "Nächster Tag", "Next week" : "Nächste Woche", + "Next year" : "Nächstes Jahr", "Next month" : "Nächster Monat", - "New event" : "Neuer Termin", + "Create new event" : "Neuen Termin erstellen", + "Event" : "Ereignis", "Today" : "Heute", "Day" : "Tag", "Week" : "Woche", "Month" : "Monat", + "Year" : "Jahr", "List" : "Liste", + "Appointment link was copied to clipboard" : "Link für den Termin wurde in die Zwischenablage kopiert", + "Appointment link could not be copied to clipboard" : "Link für den Termin konnte nicht in die Zwischenablage kopiert werden", "Preview" : "Vorschau", "Copy link" : "Link kopieren", "Edit" : "Bearbeiten", "Delete" : "Löschen", - "Appointment link was copied to clipboard" : "Link für den Termin wurde in die Zwischenablage kopiert", - "Appointment link could not be copied to clipboard" : "Link für den Termin konnte nicht in die Zwischenablage kopiert werden", - "Add new" : "Neu hinzufügen", - "Untitled calendar" : "Unbenannter Kalender", - "Edit name" : "Name bearbeiten", - "Saving name …" : "Speichere Namen …", - "Edit color" : "Farbe bearbeiten", - "Saving color …" : "Speichere Farbe …", - "Copy private link" : "Privaten Link kopieren", - "Export" : "Exportieren", - "Unshare from me" : "Nicht mehr mit mir teilen", + "Appointment schedules" : "Terminpläne", + "Create new" : "Neu erstellen", "Disable calendar \"{calendar}\"" : "Kalender \"{calendar}\" deaktivieren", "Disable untitled calendar" : "Unbenannte Kalender deaktivieren", "Enable calendar \"{calendar}\"" : "Kalender \"{calendar}\" aktivieren", "Enable untitled calendar" : "Unbenannte Kalender aktivieren", "An error occurred, unable to change visibility of the calendar." : "Es ist ein Fehler aufgetreten, die Sichtbarkeit des Kalenders konnte nicht geändert werden.", - "An error occurred, unable to delete the calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht gelöscht werden.", - "Calendar link copied to clipboard." : "Kalender-Link in die Zwischenablage kopiert.", - "Calendar link could not be copied to clipboard." : "Kalender-Link konnte nicht in die Zwischenablage kopiert werden.", - "An error occurred, unable to rename the calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht umbenannt werden.", - "An error occurred, unable to change the calendar's color." : "Es ist ein Fehler aufgetreten, die Farbe des Kalenders konnte nicht geändert werden.", + "Untitled calendar" : "Unbenannter Kalender", + "Shared with you by" : "Geteilt mit dir von", + "Edit and share calendar" : "Kalender bearbeiten und teilen", + "Edit calendar" : "Kalender bearbeiten", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Kalenderfreigabe wird in {countdown} Sekunde beendet","Kalenderfreigabe wird in {countdown} Sekunden beendet"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Kalender wird in {countdown} Sekunden gelöscht","Kalender werden in {countdown} Sekunden gelöscht"], + "An error occurred, unable to create the calendar." : "Es ist ein Fehler aufgetreten, der Kalender konnte nicht erstellt werden.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Bitte einen gültigen Link eingeben (beginnend mit http://, https://, webcal://, oder webcals://)", + "Calendars" : "Kalender", + "Add new" : "Neu hinzufügen", + "New calendar" : "Neuer Kalender", + "Name for new calendar" : "Name für neuen Kalender", + "Creating calendar …" : "Erstelle Kalender …", + "New calendar with task list" : "Neuer Kalender mit Aufgabenliste", + "New subscription from link (read-only)" : "Neues Abonnement aus Link (schreibgeschützt)", + "Creating subscription …" : "Erstelle Abonnement …", + "Add public holiday calendar" : "Feiertagskalender hinzufügen", + "Add custom public calendar" : "Benutzerdefinierten öffentlichen Kalender hinzufügen", + "Calendar link copied to clipboard." : "Kalender-Link in die Zwischenablage kopiert.", + "Calendar link could not be copied to clipboard." : "Kalender-Link konnte nicht in die Zwischenablage kopiert werden.", + "Copy subscription link" : "Abonnement-Link kopieren", + "Copying link …" : "Link wird kopiert …", + "Copied link" : "Link kopiert", + "Could not copy link" : "Link konnte nicht kopiert werden", + "Export" : "Exportieren", + "Untitled item" : "Eintrag ohne Namen", + "Unknown calendar" : "Unbekannter Kalender", + "Could not load deleted calendars and objects" : "Gelöschte Kalender und Objekte konnten nicht geladen werden", + "Could not delete calendar or event" : "Kalender oder Termin konnte nicht gelöscht werden", + "Could not restore calendar or event" : "Kalender oder Termin konnte nicht wiederhergestellt werden", + "Do you really want to empty the trash bin?" : "Möchtest du wirklich den Papierkorb leeren?", + "Empty trash bin" : "Papierkorb leeren", + "Trash bin" : "Papierkorb", + "Loading deleted items." : "Lade gelöschte Elemente", + "You do not have any deleted items." : "Du hast keine gelöschten Elemente", + "Name" : "Name", + "Deleted" : "Gelöscht", + "Restore" : "Wiederherstellen", + "Delete permanently" : "Endgültig löschen", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Element im Papierkorb wird nach {numDays} Tagen gelöscht","Elemente im Papierkorb werden nach {numDays} Tagen gelöscht"], + "Could not update calendar order." : "Kalenderreihenfolge konnte nicht aktualisiert werden.", + "Shared calendars" : "Geteilte Kalender", + "Deck" : "Deck", + "Hidden" : "Versteckt", + "Internal link" : "Interner Link", + "A private link that can be used with external clients" : "Ein privater Link, der mit externen Clients verwendet werden kann.", + "Copy internal link" : "Internen Link kopieren", + "An error occurred, unable to publish calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht veröffentlicht werden.", + "An error occurred, unable to send email." : "Es ist ein Fehler aufgetreten, E-Mail konnte nicht versandt werden.", + "Embed code copied to clipboard." : "Einbettungscode in die Zwischenablage kopiert.", + "Embed code could not be copied to clipboard." : "Einbettungscode konnte nicht in die Zwischenablage kopiert werden.", + "Unpublishing calendar failed" : "Aufhebung der Veröffentlichung des Kalenders fehlgeschlagen", "Share link" : "Link teilen", - "Publish calendar" : "Kalender veröffentlichen", - "Publishing calendar" : "Veröffentliche Kalender", "Copy public link" : "Öffentlichen Link kopieren", "Send link to calendar via email" : "Link zum Kalender als E-Mail verschicken", "Enter one address" : "Eine Adresse eingeben", "Sending email …" : "Sende E-Mail …", - "Copy subscription link" : "Abonnement-Link kopieren", - "Copying link …" : "Link wird kopiert …", - "Copied link" : "Link kopiert", - "Could not copy link" : "Link konnte nicht kopiert werden", "Copy embedding code" : "Einbettungscode kopieren", "Copying code …" : "Kopiere Code …", "Copied code" : "Code kopiert", "Could not copy code" : "Code konnte nicht kopiert werden", "Delete share link" : "Freigabe-Link löschen", "Deleting share link …" : "Freigabe-Link löschen …", - "An error occurred, unable to publish calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht veröffentlicht werden.", - "An error occurred, unable to send email." : "Es ist ein Fehler aufgetreten, E-Mail konnte nicht versandt werden.", - "Embed code copied to clipboard." : "Einbettungscode in die Zwischenablage kopiert.", - "Embed code could not be copied to clipboard." : "Einbettungscode konnte nicht in die Zwischenablage kopiert werden.", - "Unpublishing calendar failed" : "Aufhebung der Veröffentlichung des Kalenders fehlgeschlagen", - "Share with users or groups" : "Mit Benutzern oder Gruppen teilen", - "No users or groups" : "Keine Benutzer oder Gruppen", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "Es ist ein Fehler beim Aufheben der Freigabe des Kalenders aufgetreten.", + "An error occurred, unable to change the permission of the share." : "Es ist ein Fehler aufgetreten, die Berechtigung für die Freigabe konnte nicht geändert werden.", "can edit" : "kann bearbeiten", "Unshare with {displayName}" : "Mit {displayName} nicht mehr teilen", - "An error occurred, unable to change the unshare the calendar." : "Es ist ein Fehler aufgetreten, die Freigabe des Kalenders konnte nicht aufgehoben werden.", - "An error occurred, unable to change the permission of the share." : "Es ist ein Fehler aufgetreten, die Berechtigung für die Freigabe konnte nicht geändert werden.", - "+ New calendar" : "+ Neuer Kalender", - "New calendar" : "Neuer Kalender", - "Name for new calendar" : "Name für neuen Kalender", - "Creating calendar …" : "Erstelle Kalender …", - "New calendar with task list" : "Neuer Kalender mit Aufgabenliste", - "New subscription from link (read-only)" : "Neues Abonnement aus Link (schreibgeschützt)", - "Creating subscription …" : "Erstelle Abonnement …", - "An error occurred, unable to create the calendar." : "Es ist ein Fehler aufgetreten, der Kalender konnte nicht erstellt werden.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Bitte einen gültigen Link eingeben (beginnend mit http://, https://, webcal://, oder webcals://)", - "Trash bin" : "Papierkorb", - "Loading deleted elements." : "Lade gelöschte Elemente.", - "You do not have any deleted elements." : "Du hast keine gelöschten Elemente.", - "Name" : "Name", - "Deleted" : "Gelöscht", - "Restore" : "Wiederherstellen", - "Delete permanently" : "Endgültig löschen", - "Empty trash bin" : "Papierkorb leeren", - "Untitled element" : "Unbenanntes Element", - "Unknown calendar" : "Unbekannter Kalender", - "Could not load deleted calendars and objects" : "Gelöschte Kalender und Objekte konnten nicht geladen werden", - "Could not restore calendar or event" : "Kalender oder Termin konnte nicht wiederhergestellt werden", - "Do you really want to empty the trash bin?" : "Möchtest du wirklich den Papierkorb leeren?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Elemente im Papierkorb werden nach {numDays} Tag gelöscht","Elemente im Papierkorb werden nach {numDays} Tagen gelöscht"], - "Could not update calendar order." : "Kalenderreihenfolge konnte nicht aktualisiert werden.", + "Share with users or groups" : "Mit Benutzern oder Gruppen teilen", + "No users or groups" : "Keine Benutzer oder Gruppen", + "Failed to save calendar name and color" : "Kalendername oder -farbe konnte nicht gespeichert werden.", + "Calendar name …" : "Kalender-Name …", + "Never show me as busy (set this calendar to transparent)" : "Mich nie als beschäftigt anzeigen (diesen Kalender auf transparent setzen)", + "Share calendar" : "Kalender teilen", + "Unshare from me" : "Nicht mehr mit mir teilen", + "Save" : "Speichern", "Import calendars" : "Kalender importieren", "Please select a calendar to import into …" : "Bitte wähle einen Kalender aus, in den importiert werden soll …", "Filename" : "Dateiname", - "Calendar to import into" : "Kalender in den importiert werden soll.", + "Calendar to import into" : "Kalender, in welchen importiert werden soll", "Cancel" : "Abbrechen", "_Import calendar_::_Import calendars_" : ["Kalender importieren","Kalender importieren"], + "Select the default location for attachments" : "Standard-Speicherort für Anhänge auswählen", + "Pick" : "Auswählen", + "Invalid location selected" : "Ungültiger Speicherort ausgewählt", + "Attachments folder successfully saved." : "Speicherort für Anhänge gespeichert", + "Error on saving attachments folder." : "Fehler beim Speichern des Speicherorts für Anhänge", + "Default attachments location" : "Standard-Speicherort für Anhänge", "{filename} could not be parsed" : "{filename} konnte nicht analysiert werden", "No valid files found, aborting import" : "Keine gültige Dateien gefunden, Import wird abgebrochen.", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n Termin importiert","%n Termine importiert"], "Import partially failed. Imported {accepted} out of {total}." : "Der Import ist teilweise fehlgeschlagen. {accepted} von {total} importiert.", - "_Successfully imported %n event_::_Successfully imported %n events_" : ["Erfolgreich %n Termin importiert","Erfolgreich %n Termine importiert"], "Automatic" : "Automatisch", "Automatic ({detected})" : "Automatisch ({detected})", "New setting was not saved successfully." : "Neue Einstellung konnte nicht gespeichert werden.", - "Shortcut overview" : "Übersicht der Tastaturkürzel", - "or" : "oder", "Navigation" : "Navigation", "Previous period" : "Vorherige Zeitspanne", "Next period" : "Nächste Zeitspanne", @@ -141,6 +174,7 @@ OC.L10N.register( "Day view" : "Tagesansicht", "Week view" : "Wochenansicht", "Month view" : "Monatsansicht", + "Year view" : "Jahresansicht", "List view" : "Listenansicht", "Actions" : "Aktionen", "Create event" : "Termin erstellen", @@ -150,24 +184,29 @@ OC.L10N.register( "Save edited event" : "Bearbeitetes Ereignis speichern", "Delete edited event" : "Bearbeitetes Ereignis löschen", "Duplicate event" : "Termin duplizieren", + "Shortcut overview" : "Übersicht der Tastaturkürzel", + "or" : "oder", + "Calendar settings" : "Kalender-Einstellungen", + "At event start" : "Zu Beginn des Termins", + "No reminder" : "Keine Erinnerung", + "Failed to save default calendar" : "Standardkalender konnte nicht gespeichert werden", + "CalDAV link copied to clipboard." : "CalDAV-Link in die Zwischenablage kopiert.", + "CalDAV link could not be copied to clipboard." : "CalDAV-Link konnte nicht in die Zwischenablage kopiert werden.", "Enable birthday calendar" : "Geburtstagskalender aktivieren", "Show tasks in calendar" : "Aufgaben im Kalender anzeigen", "Enable simplified editor" : "Einfachen Editor aktivieren", - "Limit visible events per view" : "Sichtbare Ereignisse pro Ansicht begrenzen", + "Limit the number of events displayed in the monthly view" : "Anzahl der in der Monatsansicht angezeigten Termine begrenzen", "Show weekends" : "Wochenenden anzeigen", "Show week numbers" : "Kalenderwochen anzeigen", "Time increments" : "Zeitschritte", + "Default calendar for incoming invitations" : "Standardkalender für eingehende Einladungen", "Default reminder" : "Standarderinnerung", "Copy primary CalDAV address" : "Primäre CalDAV-Adresse kopieren", "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV-Adresse kopieren", "Personal availability settings" : "Persönliche Einstellungen zur Verfügbarkeit", "Show keyboard shortcuts" : "Tastaturkürzel anzeigen", - "Calendar settings" : "Kalender-Einstellungen", - "No reminder" : "Keine Erinnerung", - "CalDAV link copied to clipboard." : "CalDAV-Link in die Zwischenablage kopiert.", - "CalDAV link could not be copied to clipboard." : "CalDAV-Link konnte nicht in die Zwischenablage kopiert werden.", - "Appointment was created successfully" : "Termin wurde erstellt", - "Appointment was updated successfully" : "Termin wurde aktualisiert", + "Appointment schedule successfully created" : "Terminplan wurde erstellt", + "Appointment schedule successfully updated" : "Terminplan wurde aktualisiert", "_{duration} minute_::_{duration} minutes_" : ["{duration} Minute","{duration} Minuten"], "0 minutes" : "0 Minuten", "_{duration} hour_::_{duration} hours_" : ["{duration} Stunde","{duration} Stunden"], @@ -178,7 +217,14 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Um Termine zu vereinbaren, füge deine E-Mail-Adresse in den persönlichen Einstellungen hinzu.", "Public – shown on the profile page" : "Öffentlich – wird auf der Profilseite angezeigt", "Private – only accessible via secret link" : "Privat – nur über geheimen Link sichtbar", + "Appointment schedule saved" : "Terminplan wurde gespeichert", + "Create appointment schedule" : "Terminplan erstellen", + "Edit appointment schedule" : "Terminplan bearbieten", + "Update" : "Aktualisieren", + "Appointment name" : "Terminname", "Location" : "Ort", + "Create a Talk room" : "Einen Gesprächsraum erstellen", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Für jeden gebuchten Termin wird ein eindeutiger Link generiert und mit der Bestätigungs-E-Mail versendet.", "Description" : "Beschreibung", "Visibility" : "Sichtbarkeit", "Duration" : "Dauer", @@ -196,6 +242,7 @@ OC.L10N.register( "Friday" : "Freitag", "Saturday" : "Samstag", "Sunday" : "Sonntag", + "Weekdays" : "Wochentage", "Add time before and after the event" : "Zeit vor und nach dem Termin hinzufügen", "Before the event" : "Vor dem Termin", "After the event" : "Nach dem Termin", @@ -203,136 +250,180 @@ OC.L10N.register( "Minimum time before next available slot" : "Mindestzeit bis zum nächsten verfügbaren Zeitfenster", "Max slots per day" : "Maximale Zeitfenster pro Tag", "Limit how far in the future appointments can be booked" : "Begrenzung, wie weit in der Zukunft Termine gebucht werden können", - "Create appointment" : "Termin erstellen", - "Edit appointment" : "Termin bearbeiten", - "Save" : "Speichern", - "Update" : "Aktualisieren", + "It seems a rate limit has been reached. Please try again later." : "Es scheint, dass ein Limit erreicht wurde. Bitte versuche es später noch einmal.", "Please confirm your reservation" : "Bitte bestätige deine Reservierung", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Wir haben dir eine E-Mail mit Details gesendet. Bitte bestätige deinen Termin über den Link in der E-Mail. Du kannst diese Seite jetzt schließen.", "Your name" : "Dein Name", "Your email address" : "Deine E-Mail-Adresse", "Please share anything that will help prepare for our meeting" : "Bitte sende uns alles, was zur Vorbereitung unseres Treffens beiträgt.", "Could not book the appointment. Please try again later or contact the organizer." : "Termin konnte nicht gebucht werden. Bitte versuche es später erneut oder wende dich an den Organisator.", - "Book the appointment" : "Den Termin buchen", - "Reminder" : "Erinnerung", + "Back" : "Zurück", + "Book appointment" : "Termin buchen", + "Error fetching Talk conversations." : "Fehler beim Abruf der Talk-Unterhaltungen.", + "Conversation does not have a valid URL." : "Die Unterhaltung hat keine gültige URL.", + "Successfully added Talk conversation link to location." : "Talk-Unterhaltungslink wurde zum Standort hinzugefügt.", + "Successfully added Talk conversation link to description." : "Talk-Unterhaltungslink wurde zur Beschreibung hinzugefügt.", + "Failed to apply Talk room." : "Talk-Raum konnte nicht angewendet werden.", + "Error creating Talk conversation" : "Fehler beim Erstellen der Talk-Unterhaltung", + "Select a Talk Room" : "Einen Talk-Raum wählen", + "Add Talk conversation" : "Talk-Unterhaltung hinzufügen", + "Fetching Talk rooms…" : "Talk-Räume abrufen…", + "No Talk room available" : "Kein Talk-Raum verfügbar", + "Create a new conversation" : "Neue Unterhaltung erstellen", + "Select conversation" : "Unterhaltung auswählen", + "on" : "am", + "at" : "um", "before at" : "vorher um", "Notification" : "Benachrichtigung", - "Email" : "E-Mail", + "Email" : "E-Mail-Adresse", "Audio notification" : "Audio-Benachrichtigung", "Other notification" : "Andere Benachrichtigung", "Relative to event" : "Relativ zum Termin", - "On date" : "Am Datum", + "On date" : "Zum Datum", "Edit time" : "Zeit ändern", "Save time" : "Zeit speichern", "Remove reminder" : "Erinnerung entfernen", - "on" : "am", - "at" : "um", - "+ Add reminder" : "+ Erinnerung hinzufügen", "Add reminder" : "Erinnerung hinzufügen", - "_second_::_seconds_" : ["Sekunde","Sekunden"], - "_minute_::_minutes_" : ["Minute","Minuten"], - "_hour_::_hours_" : ["Stunde","Stunden"], - "_day_::_days_" : ["Tag","Tage"], - "_week_::_weeks_" : ["Woche","Wochen"], + "seconds" : "Sekunden", + "minutes" : "Minuten", + "hours" : "Stunden", + "days" : "Tagen", + "weeks" : "Wochen", + "Choose a file to add as attachment" : "Datei auswählen, die als Anhang angefügt werden soll", + "Choose a file to share as a link" : "Datei auswählen welche als Link geteilt wird", + "Attachment {name} already exist!" : "Anhang {name} existiert bereits", + "Could not upload attachment(s)" : "Anhänge konnten nicht hochgeladen werden.", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Du bist dabei, eine Datei herunterzuladen. Bitte den Dateinamen vor dem Öffnen prüfen. Möchtest du fortfahren?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Du bist dabei, zu {host} zu navigieren. Möchtest du wirklich fortfahren? Link: {link}", + "Proceed" : "Fortsetzen", + "No attachments" : "Keine Anhänge", + "Add from Files" : "Anhang hinzufügen", + "Upload from device" : "Von Gerät hochladen", + "Delete file" : "Datei löschen", + "Confirmation" : "Bestätigung", + "_{count} attachment_::_{count} attachments_" : ["{count} Anhang","{count} Anhänge"], "Suggested" : "Vorgeschlagen", "Available" : "Verfügbar", - "Not available" : "Nicht verfügbar", - "Checking availability" : "Verfügbarkeit prüfen", "Invitation accepted" : "Einladung angenommen", "Accepted {organizerName}'s invitation" : "Einladung von {organizerName} angenommen", + "Participation marked as tentative" : "Teilnahme als vorläufig markiert", + "Invitation is delegated" : "Einladung ist delegiert", + "Not available" : "Nicht verfügbar", "Invitation declined" : "Einladung abgelehnt", "Declined {organizerName}'s invitation" : "Einladung von {organizerName} abgelehnt", - "Invitation is delegated" : "Einladung ist weitergeleitet", - "Participation marked as tentative" : "Teilnahme als vorläufig markiert", - "Invitation sent" : "Einladung verschickt", + "Availability will be checked" : "Verfügbarkeit wird geprüft", + "Invitation will be sent" : "Einladung wird verschickt", + "Failed to check availability" : "Verfügbarkeit konnte nicht geprüft werden", + "Failed to deliver invitation" : "Einladung konnte nicht zugestellt werden", + "Awaiting response" : "Warte auf Antwort", + "Checking availability" : "Verfügbarkeit prüfen", "Has not responded to {organizerName}'s invitation yet" : "Hat noch nicht auf die Einladung von {organizerName} geantwortet", - "Availability of attendees, resources and rooms" : "Verfügbarkeit von Teilnehmern, Resourcen und Räumen", + "Suggested times" : "Vorgeschlagene Zeiten", + "chairperson" : "Vorsitz", + "required participant" : "Benötigter Teilnehmer", + "non-participant" : "Nicht-Teilnehmer", + "optional participant" : "Optionaler Teilnehmer", "{organizer} (organizer)" : "{organizer} (Organisator)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Verfügbarkeit von Teilnehmern, Resourcen und Räumen", + "Suggestion accepted" : "Vorschlag angenommen", + "Previous date" : "Vorheriger Termin", + "Next date" : "Nächster Termin", + "Legend" : "Legende", + "Out of office" : "Nicht im Büro", + "Attendees:" : "Teilnehmer:", + "Done" : "Erledigt", + "Search room" : "Raum suchen", + "Room name" : "Raumname", + "Check room availability" : "Verfügbarkeit des Raums prüfen", "Free" : "Frei", "Busy (tentative)" : "Beschäftigt (vorläufig)", "Busy" : "Beschäftigt", - "Out of office" : "Nicht im Büro", "Unknown" : "Unbekannt", - "Accept" : "Annehmen", - "Decline" : "Ablehnen", - "Tentative" : "Vorläufig", + "Find a time" : "Zeit auswählen", "The invitation has been accepted successfully." : "Die Einladung wurde angenommen.", "Failed to accept the invitation." : "Die Einladung konnte nicht angenommen werden.", - "The invitation has been declined successfully." : "Die Einladung wurde erfolgreich abgelehnt.", + "The invitation has been declined successfully." : "Die Einladung wurde abgelehnt.", "Failed to decline the invitation." : "Die Einladung konnte nicht abgelehnt werden.", "Your participation has been marked as tentative." : "Deine Teilnahme wurde als vorläufig markiert.", "Failed to set the participation status to tentative." : "Deine Teilnahme konnte nicht als vorläufig markiert werden.", - "Create Talk room for this event" : "Besprechungsraum für diesen Termin erstellen", - "Show busy times" : "Belegte Zeiten anzeigen", + "Accept" : "Annehmen", + "Decline" : "Ablehnen", + "Tentative" : "Vorläufig", "No attendees yet" : "Keine Teilnehmer bislang", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} eingeladen, {confirmedCount} bestätigt", + "Please add at least one attendee to use the \"Find a time\" feature." : "Zum Verwenden der Funktion \"Zeit finden\", bitte mindestens einen Teilnehmer hinzufügen.", + "Successfully appended link to talk room to location." : "Link des Talk-Raums zur Ortsangabe hinzugefügt.", "Successfully appended link to talk room to description." : "Link zur Beschreibung des Besprechungsraums hinzugefügt.", "Error creating Talk room" : "Fehler beim Erstellen des Besprechungsraumes", - "Send email" : "E-Mail senden", + "Attendees" : "Teilnehmer", + "_%n more guest_::_%n more guests_" : ["%n weiterer Gast","%n weitere Gäste"], + "Remove group" : "Gruppe entfernen", + "Remove attendee" : "Teilnehmer entfernen", + "Request reply" : "Antwort anfordern", "Chairperson" : "Vorsitz", "Required participant" : "Benötigter Teilnehmer", "Optional participant" : "Optionaler Teilnehmer", "Non-participant" : "Nicht-Teilnehmer", - "Remove attendee" : "Teilnehmer entfernen", - "Search for emails, users or contacts" : "Suche nach E-Mails, Benutzern oder Kontakten", + "_%n member_::_%n members_" : ["%n Mitglied","%n Mitglieder"], + "Search for emails, users, contacts, contact groups or teams" : "Suche nach E-Mails, Benutzern, Kontakten, Kontaktgruppen oder Teams", "No match found" : "Keine Übereinstimmung gefunden", + "Note that members of circles get invited but are not synced yet." : "Beachte, dass Mitglieder von Kreisen eingeladen werden, aber noch nicht synchronisiert sind.", + "Note that members of contact groups get invited but are not synced yet." : "Beachte, dass Mitglieder von Kontaktgruppen eingeladen werden, aber noch nicht synchronisiert sind.", "(organizer)" : "(Organisator)", - "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Um das Versenden von Einladungen und deren Antworten zu ermöglichen, [linkopen] füge deine E-Mail-Adresse in den persönlichen Einstellungen hinzu.[linkclose].", + "Make {label} the organizer" : "{label} zum Organisator ernennen", + "Make {label} the organizer and attend" : "{label} zum Organisator ernennen und teilnehmen", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Um das Senden von Einladungen und deren Antworten zu ermöglichen, [linkopen] füge deine E-Mail-Adresse in den persönlichen Einstellungen hinzu.[linkclose].", "Remove color" : "Farbe entfernen", "Event title" : "Titel des Termins", - "All day" : "Ganztägig", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Die Einstellung ganztägig kann für sich wiederholende Termine nicht geändert werden.", - "from {startDate}" : "von {startDate}", - "from {startDate} at {startTime}" : "von {startDate} um {startTime}", - "to {endDate}" : "bis {endDate}", - "to {endDate} at {endTime}" : "bis {endDate} um {endTime}", + "From" : "Von", + "To" : "Bis", "Repeat" : "Wiederholen", - "End repeat" : "Wiederholung beenden", - "Select to end repeat" : "Auswählen um Wiederholung beenden", + "Repeat event" : "Termin wiederholen", + "_time_::_times_" : ["Mal","Mal"], "never" : "Niemals", "on date" : "am Datum", "after" : "Nach", - "_time_::_times_" : ["Mal","Mal"], + "End repeat" : "Wiederholung beenden", + "Select to end repeat" : "Auswählen um Wiederholung beenden", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Dieser Termin ist die Wiederholungsausnahme eines sich wiederholenden Termins. Du kannst keine Wiederholungsregel hinzufügen.", "first" : "ersten", - "third" : "dritten", - "fourth" : "vierten", - "fifth" : "fünften", - "second to last" : "vorletzten", - "last" : "letzten", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Änderungen an der Wiederholungsregel werden nur auf dieses und alle zukünftigen Wiederholungen angewendet.", "Repeat every" : "Wiederhole jeden", "By day of the month" : "Nach Tag des Monats", "On the" : "Am", + "_day_::_days_" : ["Tag","Tage"], + "_week_::_weeks_" : ["Woche","Wochen"], "_month_::_months_" : ["Monat","Monate"], "_year_::_years_" : ["Jahr","Jahre"], + "On specific day" : "An einem bestimmten Tag", "weekday" : "Wochentag", "weekend day" : "Wochenendtag", - "No recurrence" : "Keine Wiederholung", + "Does not repeat" : "Wiederholt sich nicht", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Die Wiederholungs-Definition dieses Termins wird nicht vollständig von Nextcloud unterstützt. Wenn du die Wiederholungs-Optionen bearbeitest, könnten bestimmte Wiederholungen verlorengehen.", - "Suggestions" : "Vorschläge", "No rooms or resources yet" : "Noch keine Räume oder Ressourcen", + "Resources" : "Ressourcen", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} Platz","{seatingCapacity} Plätze"], "Add resource" : "Ressource hinzufügen", "Has a projector" : "Hat einen Projektor", "Has a whiteboard" : "Hat ein Whiteboard", "Wheelchair accessible" : "Barrierefrei", "Remove resource" : "Ressource entfernen", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} Platz","{seatingCapacity} Plätze"], - "Projector" : "Projektor", - "Whiteboard" : "Whiteboard", "Search for resources or rooms" : "Nach Ressourcen oder Räumen suchen", "available" : "verfügbar", "unavailable" : "Nicht verfügbar", + "Show all rooms" : "Alle Räume anzeigen", + "Projector" : "Projektor", + "Whiteboard" : "Whiteboard", "Room type" : "Raum-Typ", "Any" : "Irgendein", "Minimum seating capacity" : "Mindestsitzplatzkapazität", - "More" : "Mehr", - "Update this occurrence" : "Diese Wiederholung aktualisieren", + "More details" : "Weitere Einzelheiten", "Update this and all future" : "Aktualisiere dieses und alle Künftigen", + "Update this occurrence" : "Diese Wiederholung aktualisieren", "Public calendar does not exist" : "Öffentlicher Kalender existiert nicht", "Maybe the share was deleted or has expired?" : "Vielleicht wurde die Freigabe gelöscht oder ist abgelaufen?", - "Please select a time zone:" : "Bitte eine Zeitzone wählen:", - "Pick a time" : "Zeit auswählen", - "Pick a date" : "Datum auswählen", "from {formattedDate}" : "Von {formattedDate}", "to {formattedDate}" : "bis {formattedDate}", "on {formattedDate}" : "am {formattedDate}", @@ -342,9 +433,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} um {formattedTime}", "Please enter a valid date" : "Bitte ein gültiges Datum angeben", "Please enter a valid date and time" : "Bitte gültiges Datum und Uhrzeit angeben", + "Select a time zone" : "Eine Zeitzone auswählen", + "Please select a time zone:" : "Bitte eine Zeitzone wählen:", + "Pick a time" : "Zeit auswählen", + "Pick a date" : "Datum auswählen", "Type to search time zone" : "Zum Suchen der Zeitzone tippen", "Global" : "Weltweit", - "Select date" : "Datum auswählen", + "Holidays in {region}" : "Feiertage in {region}", + "An error occurred, unable to read public calendars." : "Es ist ein Fehler aufgetreten, öffentliche Kalender können nicht gelesen werden.", + "An error occurred, unable to subscribe to calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht abonniert werden.", + "Public holiday calendars" : "Feiertagskalender", + "Public calendars" : "Öffentliche Kalender", + "No valid public calendars configured" : "Keine gültigen öffentlichen Kalender eingerichtet.", + "Speak to the server administrator to resolve this issue." : "Spreche bitte die Administration an, um dieses Problem zu lösen.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Feiertagskalender werden von Thunderbird bereitgestellt. Kalenderdaten werden von {website} heruntergeladen.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Diese öffentlichen Kalender werden von der Serveradministration vorgeschlagen. Kalenderdaten werden von der entsprechenden Webseite heruntergeladen.", + "By {authors}" : "Von {authors}", + "Subscribed" : "Abonniert", + "Subscribe" : "Abonnieren", + "Could not fetch slots" : "Abruf der Zeitfenster fehlgeschlagen", + "Select a date" : "Datum auswählen", "Select slot" : "Zeitfenster auswählen", "No slots available" : "Keine Zeitfenster verfügbar", "The slot for your appointment has been confirmed" : "Das Zeitfenster für deinen Termin wurde bestätigt", @@ -356,29 +464,30 @@ OC.L10N.register( "See all available slots" : "Alle verfügbaren Zeitfenster anzeigen", "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Das Zeitfenster für deinen Termin von {startDate} bis {endDate} ist nicht mehr verfügbar.", "Please book a different slot:" : "Buche bitte ein anderes Zeitfenster:", - "Book an appointment with {name}" : "Buche einen Termin mit {name}", + "Book an appointment with {name}" : "Einen Termin mit {name} buchen", "No public appointments found for {name}" : "Keine öffentlichen Termine für {name} gefunden", "Personal" : "Persönlich", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Die automatische Erkennung der Zeitzone hat als Ergebnis UTC ermittelt.\nDies ist meist das Ergebnis von Sicherheitsmaßnahmen deines Webbrowsers.\nBitte stelle deine Zeitzone manuell in den Kalendereinstellungen ein.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Die konfigurierte Zeitzone ({timezoneId}) wurde nicht gefunden. Rückfall auf UTC.\nBitte die Zeitzone in den Einstellungen ändern und dieses Problem melden.", - "No more events today" : "Heute keine weiteren Termine", - "No upcoming events" : "Keine anstehenden Termine", - "Create a new event" : "Neuen Termin erstellen", - "[Today]" : "[Heute]", - "[Tomorrow]" : "[Morgen]", - "[Yesterday]" : "[Gestern]", - "[Last] dddd" : "[Letzten] dddd", + "Availability of {displayName}" : "Verfügbarkeit von {displayName}", + "Edit event" : "Ereignis bearbeiten", "Event does not exist" : "Der Termin existiert nicht", "Duplicate" : "Duplizieren", "Delete this occurrence" : "Diese Wiederholung löschen", "Delete this and all future" : "Dieses und alle Künftigen löschen", - "Details" : "Details", - "Attendees" : "Teilnehmer", - "Resources" : "Ressourcen", + "All day" : "Ganztägig", + "Modifications wont get propagated to the organizer and other attendees" : "Änderungen werden nicht an den Organisator und andere Teilnehmer weitergegeben", + "Managing shared access" : "Geteilten Zugriff verwalten", + "Deny access" : "Zugriff verweigern", + "Invite" : "Einladen", + "_User requires access to your file_::_Users require access to your file_" : ["Benutzer benötigt Zugang zu deiner Datei","Benutzer benötigen Zugang zu deiner Datei"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Anhang erfordert geteilten Zugriff","Anhänge, die einen gemeinsamen Zugriff erfordern"], + "Untitled event" : "Unbenannter Termin", "Close" : "Schließen", - "Show more details" : "Weitere Einzelheiten anzeigen", + "Modifications will not get propagated to the organizer and other attendees" : "Änderungen werden nicht an den Organisator und andere Teilnehmer weitergegeben", "Subscribe to {name}" : "{name} abonnieren", "Export {name}" : "Exportiere {name}", + "Show availability" : "Verfügbarkeit anzeigen", "Anniversary" : "Jahrestag", "Appointment" : "Verabredung", "Business" : "Geschäftlich", @@ -406,36 +515,41 @@ OC.L10N.register( "on {time}" : "um {time}", "on {time} ({timezoneId})" : "um {time} ({timezoneId})", "Week {number} of {year}" : "Woche {number} aus {year}", - "Does not repeat" : "Wiederholt sich nicht", "Daily" : "Täglich", "Weekly" : "Wöchentlich", "Monthly" : "Monatlich", "Yearly" : "Jährlich", - "_Every %n day_::_Every %n days_" : ["Jeden %n Tag","Alle %n Tage"], - "_Every %n week_::_Every %n weeks_" : ["Jede %n Woche","Alle %n Wochen"], - "_Every %n month_::_Every %n months_" : ["Jeden %n Monat","Alle %n Monate"], - "_Every %n year_::_Every %n years_" : ["Jedes %n Jahr","Alle %n Jahre"], - "_on {weekday}_::_on {weekdays}_" : ["am {weekday}","am {weekdays}"], + "_Every %n day_::_Every %n days_" : ["Jeden Tag","Alle %n Tage"], + "_Every %n week_::_Every %n weeks_" : ["Jede Woche","Alle %n Wochen"], + "_Every %n month_::_Every %n months_" : ["Jeden Monat","Alle %n Monate"], + "_Every %n year_::_Every %n years_" : ["Jedes Jahr","Alle %n Jahre"], + "_on {weekday}_::_on {weekdays}_" : ["Am {weekday}","An {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["am Tag {dayOfMonthList}","an den Tagen {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "am {ordinalNumber} {byDaySet}", - "in {monthNames}" : "im {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "im {monthNames} am {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "im {monthNames} am {ordinalNumber} {byDaySet}", "until {untilDate}" : "bis {untilDate}", "_%n time_::_%n times_" : ["%n mal","%n mal"], - "Untitled event" : "Unbenannter Termin", + "second" : "Sekunde", + "third" : "dritten", + "fourth" : "vierten", + "fifth" : "fünften", + "second to last" : "vorletzten", + "last" : "letzten", "Untitled task" : "Unbenannte Aufgabe", - "Please ask your administrator to enable the Tasks App." : "Bitte deinen Administrator die Aufgaben-App (Tasks) zu aktivieren.", - "Prev" : "Voriges", - "Next" : "Nächstes", - "Prev year" : "Voriges Jahr", - "Next year" : "Nächstes Jahr", - "Year" : "Jahr", + "Please ask your administrator to enable the Tasks App." : "Bitte deine Administration, die Aufgaben-App (Tasks) zu aktivieren.", + "You are not allowed to edit this event as an attendee." : "Keine Berechtigung diese Veranstaltung als Teilnehmer zu bearbeiten.", "W" : "W", - "%n more" : "%n weitere", + "%n more" : "%n mehr", "No events to display" : "Keine Ereignisse zum Anzeigen", - "_+%n more_::_+%n more_" : ["+%n weitere","+%n weitere"], + "All participants declined" : "Alle Teilnehmenden haben abgelehnt", + "Please confirm your participation" : "Bitte Teilnahme bestätigen", + "You declined this event" : "Du hast diesen Termin abgelehnt", + "Your participation is tentative" : "Deine Teilnahme ist vorläufig", + "_+%n more_::_+%n more_" : ["+%n weiterer","+%n weitere"], "No events" : "Keine Termine", "Create a new event or change the visible time-range" : "Neuen Termin erstellen oder den sichtbaren Zeitbereich ändern", + "Failed to save event" : "Termin konnte nicht gespeichert werden", "It might have been deleted, or there was a typo in a link" : "Möglicherweise wurde dies gelöscht oder es gab einen Tippfehler in einem Link", "It might have been deleted, or there was a typo in the link" : "Möglicherweise wurde dies gelöscht oder es gab einen Tippfehler in einem Link", "Meeting room" : "Besprechungsraum", @@ -448,6 +562,8 @@ OC.L10N.register( "When shared hide this event" : "Wenn geteilt, zeige diesen Termin nicht an", "The visibility of this event in shared calendars." : "Sichtbarkeit dieses Termins in geteilten Kalendern.", "Add a location" : "Ort hinzufügen", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Beschreibung hinzufügen\n\n- Thema des Meetings\n- Tagesordnungspunkte\n- Alles, was die Teilnehmer vorbereiten müssen", + "Open Link" : "Link öffnen", "Add a description" : "Beschreibung hinzufügen", "Status" : "Status", "Confirmed" : "Bestätigt", @@ -461,135 +577,26 @@ OC.L10N.register( "Add this as a new category" : "Dies als neue Kategorie hinzufügen", "Custom color" : "Benutzerdefinierte Farbe", "Special color of this event. Overrides the calendar-color." : "Sonderfarbe für diesen Termin. Überschreibt die Kalenderfarbe.", - "Chat room for event" : "Chat-Raum für Termin", + "Error while sharing file" : "Fehler beim Teilen der Datei", + "Error while sharing file with user" : "Fehler beim Teilen der Datei mit Benutzer", + "Error creating a folder {folder}" : "Fehler beim Erstellen des Ordners {folder}", + "Attachment {fileName} already exists!" : "Anhang {fileName} existiert bereits", + "Attachment {fileName} added!" : "Anhang {fileName} hinzugefügt!", + "An error occurred during uploading file {fileName}" : "Fehler beim Hochladen der Datei {fileName}", + "An error occurred during getting file information" : "Es ist ein Fehler beim Abrufen von Dateiinformationen aufgetreten.", + "Talk conversation for event" : "Talk-Unterhaltung für ein Ereignis", + "An error occurred, unable to delete the calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht gelöscht werden.", "Imported {filename}" : "{filename} importiert ", - "Meditation" : "Meditation", - "Relaxing" : "Entspannen", - "Relax" : "Entspannen", - "Break" : "Pause", - "Commute" : "Pendelt", - "Commuting" : "Pendelt", - "Shuttle" : "Pendelverkehr", - "Invoice" : "Rechnung", - "Finance" : "Finanzen", - "Bank" : "Bank", - "Money" : "Geld", - "Wedding" : "Hochzeit", - "Dog" : "Hund", - "Concert" : "Konzert", - "Festival" : "Festival", - "Theater" : "Theater", - "Theatre" : "Theater", - "Presentation" : "Präsentation", - "Talk" : "Talk", - "Speech" : "Gespräch", - "Deadline" : "Abgabefrist", - "Submission" : "Einreichung", - "Reporting" : "Berichten", - "Camping" : "Camping", - "Camp" : "Zelten", - "Election" : "Wahl", - "Voting" : "Abstimmen", - "Vote" : "Stimme", - "Barbecue" : "Grillen", - "Barbeque" : "Grillen", - "Garden" : "Garten", - "Farm" : "Bauernhof", - "Movie" : "Film", - "Cinema" : "Kino", - "Graduation" : "Abschluss", - "Brainstorm" : "Ideenfindung", - "Review" : "Überprüfen", - "Audit" : "Überprüfung", - "Inspection" : "Überprüfung", - "Proofreading" : "Korrekturlesen", - "Baseball" : "Baseball", - "Meet" : "Treffen", - "Planning" : "Planung", - "Pointing" : "Hinweis", - "Retrospective" : "Rückblick", - "Office" : "Büro", - "Contributor week" : "Woche der Mitwirkenden", - "Mail" : "E-Mail", - "Soccer" : "Fußball", - "Football" : "Football", - "Gaming" : "Gaming", - "Drive" : "Fahren", - "Driving" : "Autofahren", - "Bicycle" : "Fahrrad", - "Cycle" : "Radfahren", - "Cycling" : "Radfahren", - "Biking" : "Fahrradfahren", - "Bike" : "Fahrrad", - "Podcast" : "Podcast", - "Basketball" : "Basketball", - "Fishing" : "Angeln", - "Hiking" : "Wandern", - "Hike" : "Wanderung", - "Art" : "Kunst", - "Exhibition" : "Ausstellung", - "Museum" : "Museum", - "Pilates" : "Pilates", - "Park" : "Park", - "Walk" : "Gehen", - "Studying" : "Studieren", - "Doctor" : "Arzt", - "Health" : "Gesundheit", - "Dentist" : "Zahnarzt", - "Hospital" : "Krankenhaus", - "Interview" : "Interview", - "Training" : "Training", - "Practice" : "Übung", - "Sports" : "Sport", - "Exercise" : "Bewegung", - "Work out" : "Training", - "Working out" : "Trainieren", - "Gym" : "Fitnessstudio", - "Barber" : "Rasur", - "Haircut" : "Friseur", - "Hairdresser" : "Friseur", - "Exam" : "Prüfung", - "Written test" : "Schriftliche Prüfung", - "Oral test" : "Mündliche Prüfung", - "Working" : "Arbeiten", - "New Years Eve" : "Silvesterabend", - "NYE" : "NYE", - "Fireworks" : "Feuerwerk", - "Running" : "Laufen", - "Go for a run" : "Laufen gehen", - "Marathon" : "Marathon", - "Video-conference" : "Videokonferenz", - "Conference-call" : "Konferenzanruf", - "Video-call" : "Videoanruf", - "Video-chat" : "Videochat", - "Video-meeting" : "Videomeeting", - "Call" : "Anruf", - "Calling" : "Anrufen", - "Christmas" : "Weihnachten", - "Conference" : "Konferenz", - "Pizza" : "Pizza", - "Travelling" : "Reisen", - "Trip" : "Reise", - "Journey" : "Reise", - "Collaborate" : "Zusammenarbeiten", - "Pair" : "Paar", - "Lecture" : "Vorlesung", - "Seminar" : "Seminar", - "Teaching" : "Unterrichten", - "Photograph" : "Fotografie", - "Party" : "Party", - "Celebration" : "Feier", - "Celebrate" : "Feiern", - "Birthday" : "Geburtstag", - "Shopping" : "Einkaufen", - "Groceries" : "Lebensmittel", - "Skate" : "Skaten", - "Skateboard" : "Skateboard", - "Wine tasting" : "Weinprobe", - "Golf" : "Golf", - "Dinner" : "Abendessen", - "Lunch" : "Mittagessen", + "This is an event reminder." : "Dies ist eine Terminerinnerung.", + "Error while parsing a PROPFIND error" : "Fehler beim Parsen eines PROPFIND-Fehlers", "Appointment not found" : "Termin nicht gefunden", - "User not found" : "Benutzer nicht gefunden" + "User not found" : "Benutzer nicht gefunden", + "Reminder" : "Erinnerung", + "+ Add reminder" : "+ Erinnerung hinzufügen", + "Select automatic slot" : "Automatischen Zeitbereich wählen", + "with" : "mit", + "Available times:" : "Verfügbare Zeiten:", + "Suggestions" : "Vorschläge", + "Details" : "Details" }, -"nplurals=2; plural=(n != 1);"); +"nplurals=2; plural=n != 1;"); diff --git a/l10n/de.json b/l10n/de.json index ec24c9c9679ba02e89b5c3fac63fa31165de4fb3..56e32cb0c7d5d01032f9504992460d06dc31fd99 100644 --- a/l10n/de.json +++ b/l10n/de.json @@ -1,137 +1,170 @@ { "translations": { + "Provided email-address is too long" : "Die eingegebene Adresse ist zu lang.", "User-Session unexpectedly expired" : "Sitzung unerwartet abgelaufen", "Provided email-address is not valid" : "Angegebene E-Mail-Adresse ist ungültig", "%s has published the calendar »%s«" : "%s hat den Kalender »%s« veröffentlicht", - "Unexpected error sending email. Please contact your administrator." : "Unerwarteter Fehler beim Senden der E-Mail. Bitte kontaktiere den Administrator.", - "Successfully sent email to %1$s" : "E-Mail erfolgreich an %1$s gesendet", + "Unexpected error sending email. Please contact your administrator." : "Unerwarteter Fehler beim Senden der E-Mail. Bitte kontaktiere die Administration.", + "Successfully sent email to %1$s" : "E-Mail an %1$s gesendet", "Hello," : "Hallo,", "We wanted to inform you that %s has published the calendar »%s«." : "Information: %s hat den Kalender »%s« veröffentlicht.", "Open »%s«" : "»%s« öffnen", "Cheers!" : "Noch einen schönen Tag!", "Upcoming events" : "Anstehende Termine", + "No more events today" : "Heute keine weiteren Termine", + "No upcoming events" : "Keine anstehenden Termine", + "More events" : "Weitere Termine", + "%1$s with %2$s" : "%1$s mit %2$s", + "Calendar" : "Kalender", + "New booking {booking}" : "Neue Buchung {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) hat den Termin \"{config_display_name}\" am {date_time} gebucht.", "Appointments" : "Termine", "Schedule appointment \"%s\"" : "Termin planen \"%s\"", "Schedule an appointment" : "Vereinbare einen Termin", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Bereite dich auf %s vor", - "Follow up for %s" : "Nachverfolgung für %s", - "Your appointment \"%s\" needs confirmation" : "Dein Termin \"%s\" benötigt eine Bestätigung", - "Dear %s, please confirm your booking" : "Hallo%s, bitte bestätige die Terminbuchung", + "Follow up for %s" : "Nachbereitung: %s", + "Your appointment \"%s\" with %s needs confirmation" : "Für deine Terminvereinbarung \"%s\" mit %s steht die Bestätigung noch aus.", + "Dear %s, please confirm your booking" : "Hallo %s, bitte bestätige die Terminbuchung", "Confirm" : "Bestätigen", + "Appointment with:" : "Termin mit:", + "Description:" : "Beschreibung:", "This confirmation link expires in %s hours." : "Dieser Bestätigungslink läuft in %s Stunden ab.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Wenn du den Termin doch noch absagen möchtest, wende dich bitte an deinen Organisator.", - "Appointment:" : "Termin:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Wenn du den Termin doch stornieren möchtest, wende dich bitte an deinen Organisator, indem du auf diese E-Mail antwortest oder dessen Profilseite besuchst.", + "Your appointment \"%s\" with %s has been accepted" : "Deine Terminvereinbarung \"%s\" mit %s wurde angenommen.", + "Dear %s, your booking has been accepted." : "Hallo %s, dein Buchung wurde akzeptiert.", + "Appointment for:" : "Termin für:", "Date:" : "Datum:", + "You will receive a link with the confirmation email" : "Du erhältst eine E-Mail mit einem Bestätigungslink", "Where:" : "Ort:", - "Description:" : "Beschreibung:", - "Calendar" : "Kalender", + "Comment:" : "Kommentar:", + "You have a new appointment booking \"%s\" from %s" : "Du hast eine neue Terminbuchung \"%s\" von %s.", + "Dear %s, %s (%s) booked an appointment with you." : "Hallo %s, %s (%s) hat einen Termin mit dir gebucht.", "A Calendar app for Nextcloud" : "Eine Kalender-App für Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Die Calendar-App ist die Oberfläche für Nextclouds CalDAV-Server. Termine können auf einfache Weise über verschiedene Geräte hinweg mit Nextcloud synchronisiert und online bearbeitet werden.\n\n* 🚀 ** Integration mit anderen Nextcloud Apps!** Aktuell Kontakte - weitere folgen.\n* 🌐 **WebCal-Unterstützung!** Möchtest du die Spieltage deines Lieblingsteams in deinem Kalender verfolgen? Kein Problem!\n* 🙋 **Teilnehmer!** Lade Teilnehmer zu deinen Terminen ein.\n* ⌚️ **Frei/Besetzt:** Sehe, wann deine Teilnehmer für ein Treffen verfügbar sind\n* ⏰ **Erinnerungen!** Erhalte Alarme für Termine innerhalb deines Browsers und per E-Mail.\n* 🔍 Suche! Finde deine Termine ganz einfach\n* ☑️ Aufgaben! Sehe deine Aufgaben mit Fälligkeitsdatum direkt in deinem Kalender\n* 🙈 **Wir erfinden das Rad nicht neu!** Die App basiert auf den großartigen [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) und [fullcalendar](https://github.com/fullcalendar/fullcalendar) Bibliotheken.", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Eine Kalender-App für Nextcloud. Termine von verschiedenen Geräten ganz einfach mit Ihrer Nextcloud synchronisieren und online bearbeiten.\n\n* 🚀 **Integration mit anderen Nextcloud-Apps!** Wie Kontakte, Talk, Aufgaben, Deck und Kreise\n* 🌐 **WebCal-Unterstützung!** Sollen die Spieltage deiner Lieblingsmannschaft in deinem Kalender stehen? Kein Problem!\n* 🙋 **Teilnehmer!** Lade Personen zu deinen Veranstaltungen ein.\n* ⌚ **Frei/Beschäftigt!** Sieh nach, wann deine Teilnehmer verfügbar sind.\n* ⏰ **Erinnerungen!** Erhalte Benachrichtigungen für Veranstaltungen direkt im Browser und per E-Mail.\n* 🔍 **Suche!** Finde deine Veranstaltungen ganz einfach.\n* ☑️ **Aufgaben!** Sieh Aufgaben oder Karten mit Fälligkeitsdatum direkt im Kalender.\n* 🔈 **Chatrooms!** Erstelle beim Buchen eines Meetings mit nur einem Klick einen zugehörigen Chatroom.\n* 📆 **Terminbuchung** Sende Personen einen Link, damit sie [mit dieser App](https://apps.nextcloud.com/apps/appointments) einen Termin mit dir buchen können.\n* 📎 **Anhänge!** Füge Veranstaltungsanhänge hinzu, lade sie hoch und sieh sie ein.\n* 🙈 **Wir erfinden das Rad nicht neu!** Basierend auf den großartigen [c-dav Bibliothek](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) und [fullcalendar](https://github.com/fullcalendar/fullcalendar) Bibliotheken.", "Previous day" : "Vorheriger Tag", "Previous week" : "Vorherige Woche", + "Previous year" : "Vorheriges Jahr", "Previous month" : "Vorheriger Monat", "Next day" : "Nächster Tag", "Next week" : "Nächste Woche", + "Next year" : "Nächstes Jahr", "Next month" : "Nächster Monat", - "New event" : "Neuer Termin", + "Create new event" : "Neuen Termin erstellen", + "Event" : "Ereignis", "Today" : "Heute", "Day" : "Tag", "Week" : "Woche", "Month" : "Monat", + "Year" : "Jahr", "List" : "Liste", + "Appointment link was copied to clipboard" : "Link für den Termin wurde in die Zwischenablage kopiert", + "Appointment link could not be copied to clipboard" : "Link für den Termin konnte nicht in die Zwischenablage kopiert werden", "Preview" : "Vorschau", "Copy link" : "Link kopieren", "Edit" : "Bearbeiten", "Delete" : "Löschen", - "Appointment link was copied to clipboard" : "Link für den Termin wurde in die Zwischenablage kopiert", - "Appointment link could not be copied to clipboard" : "Link für den Termin konnte nicht in die Zwischenablage kopiert werden", - "Add new" : "Neu hinzufügen", - "Untitled calendar" : "Unbenannter Kalender", - "Edit name" : "Name bearbeiten", - "Saving name …" : "Speichere Namen …", - "Edit color" : "Farbe bearbeiten", - "Saving color …" : "Speichere Farbe …", - "Copy private link" : "Privaten Link kopieren", - "Export" : "Exportieren", - "Unshare from me" : "Nicht mehr mit mir teilen", + "Appointment schedules" : "Terminpläne", + "Create new" : "Neu erstellen", "Disable calendar \"{calendar}\"" : "Kalender \"{calendar}\" deaktivieren", "Disable untitled calendar" : "Unbenannte Kalender deaktivieren", "Enable calendar \"{calendar}\"" : "Kalender \"{calendar}\" aktivieren", "Enable untitled calendar" : "Unbenannte Kalender aktivieren", "An error occurred, unable to change visibility of the calendar." : "Es ist ein Fehler aufgetreten, die Sichtbarkeit des Kalenders konnte nicht geändert werden.", - "An error occurred, unable to delete the calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht gelöscht werden.", - "Calendar link copied to clipboard." : "Kalender-Link in die Zwischenablage kopiert.", - "Calendar link could not be copied to clipboard." : "Kalender-Link konnte nicht in die Zwischenablage kopiert werden.", - "An error occurred, unable to rename the calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht umbenannt werden.", - "An error occurred, unable to change the calendar's color." : "Es ist ein Fehler aufgetreten, die Farbe des Kalenders konnte nicht geändert werden.", + "Untitled calendar" : "Unbenannter Kalender", + "Shared with you by" : "Geteilt mit dir von", + "Edit and share calendar" : "Kalender bearbeiten und teilen", + "Edit calendar" : "Kalender bearbeiten", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Kalenderfreigabe wird in {countdown} Sekunde beendet","Kalenderfreigabe wird in {countdown} Sekunden beendet"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Kalender wird in {countdown} Sekunden gelöscht","Kalender werden in {countdown} Sekunden gelöscht"], + "An error occurred, unable to create the calendar." : "Es ist ein Fehler aufgetreten, der Kalender konnte nicht erstellt werden.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Bitte einen gültigen Link eingeben (beginnend mit http://, https://, webcal://, oder webcals://)", + "Calendars" : "Kalender", + "Add new" : "Neu hinzufügen", + "New calendar" : "Neuer Kalender", + "Name for new calendar" : "Name für neuen Kalender", + "Creating calendar …" : "Erstelle Kalender …", + "New calendar with task list" : "Neuer Kalender mit Aufgabenliste", + "New subscription from link (read-only)" : "Neues Abonnement aus Link (schreibgeschützt)", + "Creating subscription …" : "Erstelle Abonnement …", + "Add public holiday calendar" : "Feiertagskalender hinzufügen", + "Add custom public calendar" : "Benutzerdefinierten öffentlichen Kalender hinzufügen", + "Calendar link copied to clipboard." : "Kalender-Link in die Zwischenablage kopiert.", + "Calendar link could not be copied to clipboard." : "Kalender-Link konnte nicht in die Zwischenablage kopiert werden.", + "Copy subscription link" : "Abonnement-Link kopieren", + "Copying link …" : "Link wird kopiert …", + "Copied link" : "Link kopiert", + "Could not copy link" : "Link konnte nicht kopiert werden", + "Export" : "Exportieren", + "Untitled item" : "Eintrag ohne Namen", + "Unknown calendar" : "Unbekannter Kalender", + "Could not load deleted calendars and objects" : "Gelöschte Kalender und Objekte konnten nicht geladen werden", + "Could not delete calendar or event" : "Kalender oder Termin konnte nicht gelöscht werden", + "Could not restore calendar or event" : "Kalender oder Termin konnte nicht wiederhergestellt werden", + "Do you really want to empty the trash bin?" : "Möchtest du wirklich den Papierkorb leeren?", + "Empty trash bin" : "Papierkorb leeren", + "Trash bin" : "Papierkorb", + "Loading deleted items." : "Lade gelöschte Elemente", + "You do not have any deleted items." : "Du hast keine gelöschten Elemente", + "Name" : "Name", + "Deleted" : "Gelöscht", + "Restore" : "Wiederherstellen", + "Delete permanently" : "Endgültig löschen", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Element im Papierkorb wird nach {numDays} Tagen gelöscht","Elemente im Papierkorb werden nach {numDays} Tagen gelöscht"], + "Could not update calendar order." : "Kalenderreihenfolge konnte nicht aktualisiert werden.", + "Shared calendars" : "Geteilte Kalender", + "Deck" : "Deck", + "Hidden" : "Versteckt", + "Internal link" : "Interner Link", + "A private link that can be used with external clients" : "Ein privater Link, der mit externen Clients verwendet werden kann.", + "Copy internal link" : "Internen Link kopieren", + "An error occurred, unable to publish calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht veröffentlicht werden.", + "An error occurred, unable to send email." : "Es ist ein Fehler aufgetreten, E-Mail konnte nicht versandt werden.", + "Embed code copied to clipboard." : "Einbettungscode in die Zwischenablage kopiert.", + "Embed code could not be copied to clipboard." : "Einbettungscode konnte nicht in die Zwischenablage kopiert werden.", + "Unpublishing calendar failed" : "Aufhebung der Veröffentlichung des Kalenders fehlgeschlagen", "Share link" : "Link teilen", - "Publish calendar" : "Kalender veröffentlichen", - "Publishing calendar" : "Veröffentliche Kalender", "Copy public link" : "Öffentlichen Link kopieren", "Send link to calendar via email" : "Link zum Kalender als E-Mail verschicken", "Enter one address" : "Eine Adresse eingeben", "Sending email …" : "Sende E-Mail …", - "Copy subscription link" : "Abonnement-Link kopieren", - "Copying link …" : "Link wird kopiert …", - "Copied link" : "Link kopiert", - "Could not copy link" : "Link konnte nicht kopiert werden", "Copy embedding code" : "Einbettungscode kopieren", "Copying code …" : "Kopiere Code …", "Copied code" : "Code kopiert", "Could not copy code" : "Code konnte nicht kopiert werden", "Delete share link" : "Freigabe-Link löschen", "Deleting share link …" : "Freigabe-Link löschen …", - "An error occurred, unable to publish calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht veröffentlicht werden.", - "An error occurred, unable to send email." : "Es ist ein Fehler aufgetreten, E-Mail konnte nicht versandt werden.", - "Embed code copied to clipboard." : "Einbettungscode in die Zwischenablage kopiert.", - "Embed code could not be copied to clipboard." : "Einbettungscode konnte nicht in die Zwischenablage kopiert werden.", - "Unpublishing calendar failed" : "Aufhebung der Veröffentlichung des Kalenders fehlgeschlagen", - "Share with users or groups" : "Mit Benutzern oder Gruppen teilen", - "No users or groups" : "Keine Benutzer oder Gruppen", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "Es ist ein Fehler beim Aufheben der Freigabe des Kalenders aufgetreten.", + "An error occurred, unable to change the permission of the share." : "Es ist ein Fehler aufgetreten, die Berechtigung für die Freigabe konnte nicht geändert werden.", "can edit" : "kann bearbeiten", "Unshare with {displayName}" : "Mit {displayName} nicht mehr teilen", - "An error occurred, unable to change the unshare the calendar." : "Es ist ein Fehler aufgetreten, die Freigabe des Kalenders konnte nicht aufgehoben werden.", - "An error occurred, unable to change the permission of the share." : "Es ist ein Fehler aufgetreten, die Berechtigung für die Freigabe konnte nicht geändert werden.", - "+ New calendar" : "+ Neuer Kalender", - "New calendar" : "Neuer Kalender", - "Name for new calendar" : "Name für neuen Kalender", - "Creating calendar …" : "Erstelle Kalender …", - "New calendar with task list" : "Neuer Kalender mit Aufgabenliste", - "New subscription from link (read-only)" : "Neues Abonnement aus Link (schreibgeschützt)", - "Creating subscription …" : "Erstelle Abonnement …", - "An error occurred, unable to create the calendar." : "Es ist ein Fehler aufgetreten, der Kalender konnte nicht erstellt werden.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Bitte einen gültigen Link eingeben (beginnend mit http://, https://, webcal://, oder webcals://)", - "Trash bin" : "Papierkorb", - "Loading deleted elements." : "Lade gelöschte Elemente.", - "You do not have any deleted elements." : "Du hast keine gelöschten Elemente.", - "Name" : "Name", - "Deleted" : "Gelöscht", - "Restore" : "Wiederherstellen", - "Delete permanently" : "Endgültig löschen", - "Empty trash bin" : "Papierkorb leeren", - "Untitled element" : "Unbenanntes Element", - "Unknown calendar" : "Unbekannter Kalender", - "Could not load deleted calendars and objects" : "Gelöschte Kalender und Objekte konnten nicht geladen werden", - "Could not restore calendar or event" : "Kalender oder Termin konnte nicht wiederhergestellt werden", - "Do you really want to empty the trash bin?" : "Möchtest du wirklich den Papierkorb leeren?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Elemente im Papierkorb werden nach {numDays} Tag gelöscht","Elemente im Papierkorb werden nach {numDays} Tagen gelöscht"], - "Could not update calendar order." : "Kalenderreihenfolge konnte nicht aktualisiert werden.", + "Share with users or groups" : "Mit Benutzern oder Gruppen teilen", + "No users or groups" : "Keine Benutzer oder Gruppen", + "Failed to save calendar name and color" : "Kalendername oder -farbe konnte nicht gespeichert werden.", + "Calendar name …" : "Kalender-Name …", + "Never show me as busy (set this calendar to transparent)" : "Mich nie als beschäftigt anzeigen (diesen Kalender auf transparent setzen)", + "Share calendar" : "Kalender teilen", + "Unshare from me" : "Nicht mehr mit mir teilen", + "Save" : "Speichern", "Import calendars" : "Kalender importieren", "Please select a calendar to import into …" : "Bitte wähle einen Kalender aus, in den importiert werden soll …", "Filename" : "Dateiname", - "Calendar to import into" : "Kalender in den importiert werden soll.", + "Calendar to import into" : "Kalender, in welchen importiert werden soll", "Cancel" : "Abbrechen", "_Import calendar_::_Import calendars_" : ["Kalender importieren","Kalender importieren"], + "Select the default location for attachments" : "Standard-Speicherort für Anhänge auswählen", + "Pick" : "Auswählen", + "Invalid location selected" : "Ungültiger Speicherort ausgewählt", + "Attachments folder successfully saved." : "Speicherort für Anhänge gespeichert", + "Error on saving attachments folder." : "Fehler beim Speichern des Speicherorts für Anhänge", + "Default attachments location" : "Standard-Speicherort für Anhänge", "{filename} could not be parsed" : "{filename} konnte nicht analysiert werden", "No valid files found, aborting import" : "Keine gültige Dateien gefunden, Import wird abgebrochen.", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n Termin importiert","%n Termine importiert"], "Import partially failed. Imported {accepted} out of {total}." : "Der Import ist teilweise fehlgeschlagen. {accepted} von {total} importiert.", - "_Successfully imported %n event_::_Successfully imported %n events_" : ["Erfolgreich %n Termin importiert","Erfolgreich %n Termine importiert"], "Automatic" : "Automatisch", "Automatic ({detected})" : "Automatisch ({detected})", "New setting was not saved successfully." : "Neue Einstellung konnte nicht gespeichert werden.", - "Shortcut overview" : "Übersicht der Tastaturkürzel", - "or" : "oder", "Navigation" : "Navigation", "Previous period" : "Vorherige Zeitspanne", "Next period" : "Nächste Zeitspanne", @@ -139,6 +172,7 @@ "Day view" : "Tagesansicht", "Week view" : "Wochenansicht", "Month view" : "Monatsansicht", + "Year view" : "Jahresansicht", "List view" : "Listenansicht", "Actions" : "Aktionen", "Create event" : "Termin erstellen", @@ -148,24 +182,29 @@ "Save edited event" : "Bearbeitetes Ereignis speichern", "Delete edited event" : "Bearbeitetes Ereignis löschen", "Duplicate event" : "Termin duplizieren", + "Shortcut overview" : "Übersicht der Tastaturkürzel", + "or" : "oder", + "Calendar settings" : "Kalender-Einstellungen", + "At event start" : "Zu Beginn des Termins", + "No reminder" : "Keine Erinnerung", + "Failed to save default calendar" : "Standardkalender konnte nicht gespeichert werden", + "CalDAV link copied to clipboard." : "CalDAV-Link in die Zwischenablage kopiert.", + "CalDAV link could not be copied to clipboard." : "CalDAV-Link konnte nicht in die Zwischenablage kopiert werden.", "Enable birthday calendar" : "Geburtstagskalender aktivieren", "Show tasks in calendar" : "Aufgaben im Kalender anzeigen", "Enable simplified editor" : "Einfachen Editor aktivieren", - "Limit visible events per view" : "Sichtbare Ereignisse pro Ansicht begrenzen", + "Limit the number of events displayed in the monthly view" : "Anzahl der in der Monatsansicht angezeigten Termine begrenzen", "Show weekends" : "Wochenenden anzeigen", "Show week numbers" : "Kalenderwochen anzeigen", "Time increments" : "Zeitschritte", + "Default calendar for incoming invitations" : "Standardkalender für eingehende Einladungen", "Default reminder" : "Standarderinnerung", "Copy primary CalDAV address" : "Primäre CalDAV-Adresse kopieren", "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV-Adresse kopieren", "Personal availability settings" : "Persönliche Einstellungen zur Verfügbarkeit", "Show keyboard shortcuts" : "Tastaturkürzel anzeigen", - "Calendar settings" : "Kalender-Einstellungen", - "No reminder" : "Keine Erinnerung", - "CalDAV link copied to clipboard." : "CalDAV-Link in die Zwischenablage kopiert.", - "CalDAV link could not be copied to clipboard." : "CalDAV-Link konnte nicht in die Zwischenablage kopiert werden.", - "Appointment was created successfully" : "Termin wurde erstellt", - "Appointment was updated successfully" : "Termin wurde aktualisiert", + "Appointment schedule successfully created" : "Terminplan wurde erstellt", + "Appointment schedule successfully updated" : "Terminplan wurde aktualisiert", "_{duration} minute_::_{duration} minutes_" : ["{duration} Minute","{duration} Minuten"], "0 minutes" : "0 Minuten", "_{duration} hour_::_{duration} hours_" : ["{duration} Stunde","{duration} Stunden"], @@ -176,7 +215,14 @@ "To configure appointments, add your email address in personal settings." : "Um Termine zu vereinbaren, füge deine E-Mail-Adresse in den persönlichen Einstellungen hinzu.", "Public – shown on the profile page" : "Öffentlich – wird auf der Profilseite angezeigt", "Private – only accessible via secret link" : "Privat – nur über geheimen Link sichtbar", + "Appointment schedule saved" : "Terminplan wurde gespeichert", + "Create appointment schedule" : "Terminplan erstellen", + "Edit appointment schedule" : "Terminplan bearbieten", + "Update" : "Aktualisieren", + "Appointment name" : "Terminname", "Location" : "Ort", + "Create a Talk room" : "Einen Gesprächsraum erstellen", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Für jeden gebuchten Termin wird ein eindeutiger Link generiert und mit der Bestätigungs-E-Mail versendet.", "Description" : "Beschreibung", "Visibility" : "Sichtbarkeit", "Duration" : "Dauer", @@ -194,6 +240,7 @@ "Friday" : "Freitag", "Saturday" : "Samstag", "Sunday" : "Sonntag", + "Weekdays" : "Wochentage", "Add time before and after the event" : "Zeit vor und nach dem Termin hinzufügen", "Before the event" : "Vor dem Termin", "After the event" : "Nach dem Termin", @@ -201,136 +248,180 @@ "Minimum time before next available slot" : "Mindestzeit bis zum nächsten verfügbaren Zeitfenster", "Max slots per day" : "Maximale Zeitfenster pro Tag", "Limit how far in the future appointments can be booked" : "Begrenzung, wie weit in der Zukunft Termine gebucht werden können", - "Create appointment" : "Termin erstellen", - "Edit appointment" : "Termin bearbeiten", - "Save" : "Speichern", - "Update" : "Aktualisieren", + "It seems a rate limit has been reached. Please try again later." : "Es scheint, dass ein Limit erreicht wurde. Bitte versuche es später noch einmal.", "Please confirm your reservation" : "Bitte bestätige deine Reservierung", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Wir haben dir eine E-Mail mit Details gesendet. Bitte bestätige deinen Termin über den Link in der E-Mail. Du kannst diese Seite jetzt schließen.", "Your name" : "Dein Name", "Your email address" : "Deine E-Mail-Adresse", "Please share anything that will help prepare for our meeting" : "Bitte sende uns alles, was zur Vorbereitung unseres Treffens beiträgt.", "Could not book the appointment. Please try again later or contact the organizer." : "Termin konnte nicht gebucht werden. Bitte versuche es später erneut oder wende dich an den Organisator.", - "Book the appointment" : "Den Termin buchen", - "Reminder" : "Erinnerung", + "Back" : "Zurück", + "Book appointment" : "Termin buchen", + "Error fetching Talk conversations." : "Fehler beim Abruf der Talk-Unterhaltungen.", + "Conversation does not have a valid URL." : "Die Unterhaltung hat keine gültige URL.", + "Successfully added Talk conversation link to location." : "Talk-Unterhaltungslink wurde zum Standort hinzugefügt.", + "Successfully added Talk conversation link to description." : "Talk-Unterhaltungslink wurde zur Beschreibung hinzugefügt.", + "Failed to apply Talk room." : "Talk-Raum konnte nicht angewendet werden.", + "Error creating Talk conversation" : "Fehler beim Erstellen der Talk-Unterhaltung", + "Select a Talk Room" : "Einen Talk-Raum wählen", + "Add Talk conversation" : "Talk-Unterhaltung hinzufügen", + "Fetching Talk rooms…" : "Talk-Räume abrufen…", + "No Talk room available" : "Kein Talk-Raum verfügbar", + "Create a new conversation" : "Neue Unterhaltung erstellen", + "Select conversation" : "Unterhaltung auswählen", + "on" : "am", + "at" : "um", "before at" : "vorher um", "Notification" : "Benachrichtigung", - "Email" : "E-Mail", + "Email" : "E-Mail-Adresse", "Audio notification" : "Audio-Benachrichtigung", "Other notification" : "Andere Benachrichtigung", "Relative to event" : "Relativ zum Termin", - "On date" : "Am Datum", + "On date" : "Zum Datum", "Edit time" : "Zeit ändern", "Save time" : "Zeit speichern", "Remove reminder" : "Erinnerung entfernen", - "on" : "am", - "at" : "um", - "+ Add reminder" : "+ Erinnerung hinzufügen", "Add reminder" : "Erinnerung hinzufügen", - "_second_::_seconds_" : ["Sekunde","Sekunden"], - "_minute_::_minutes_" : ["Minute","Minuten"], - "_hour_::_hours_" : ["Stunde","Stunden"], - "_day_::_days_" : ["Tag","Tage"], - "_week_::_weeks_" : ["Woche","Wochen"], + "seconds" : "Sekunden", + "minutes" : "Minuten", + "hours" : "Stunden", + "days" : "Tagen", + "weeks" : "Wochen", + "Choose a file to add as attachment" : "Datei auswählen, die als Anhang angefügt werden soll", + "Choose a file to share as a link" : "Datei auswählen welche als Link geteilt wird", + "Attachment {name} already exist!" : "Anhang {name} existiert bereits", + "Could not upload attachment(s)" : "Anhänge konnten nicht hochgeladen werden.", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Du bist dabei, eine Datei herunterzuladen. Bitte den Dateinamen vor dem Öffnen prüfen. Möchtest du fortfahren?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Du bist dabei, zu {host} zu navigieren. Möchtest du wirklich fortfahren? Link: {link}", + "Proceed" : "Fortsetzen", + "No attachments" : "Keine Anhänge", + "Add from Files" : "Anhang hinzufügen", + "Upload from device" : "Von Gerät hochladen", + "Delete file" : "Datei löschen", + "Confirmation" : "Bestätigung", + "_{count} attachment_::_{count} attachments_" : ["{count} Anhang","{count} Anhänge"], "Suggested" : "Vorgeschlagen", "Available" : "Verfügbar", - "Not available" : "Nicht verfügbar", - "Checking availability" : "Verfügbarkeit prüfen", "Invitation accepted" : "Einladung angenommen", "Accepted {organizerName}'s invitation" : "Einladung von {organizerName} angenommen", + "Participation marked as tentative" : "Teilnahme als vorläufig markiert", + "Invitation is delegated" : "Einladung ist delegiert", + "Not available" : "Nicht verfügbar", "Invitation declined" : "Einladung abgelehnt", "Declined {organizerName}'s invitation" : "Einladung von {organizerName} abgelehnt", - "Invitation is delegated" : "Einladung ist weitergeleitet", - "Participation marked as tentative" : "Teilnahme als vorläufig markiert", - "Invitation sent" : "Einladung verschickt", + "Availability will be checked" : "Verfügbarkeit wird geprüft", + "Invitation will be sent" : "Einladung wird verschickt", + "Failed to check availability" : "Verfügbarkeit konnte nicht geprüft werden", + "Failed to deliver invitation" : "Einladung konnte nicht zugestellt werden", + "Awaiting response" : "Warte auf Antwort", + "Checking availability" : "Verfügbarkeit prüfen", "Has not responded to {organizerName}'s invitation yet" : "Hat noch nicht auf die Einladung von {organizerName} geantwortet", - "Availability of attendees, resources and rooms" : "Verfügbarkeit von Teilnehmern, Resourcen und Räumen", + "Suggested times" : "Vorgeschlagene Zeiten", + "chairperson" : "Vorsitz", + "required participant" : "Benötigter Teilnehmer", + "non-participant" : "Nicht-Teilnehmer", + "optional participant" : "Optionaler Teilnehmer", "{organizer} (organizer)" : "{organizer} (Organisator)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Verfügbarkeit von Teilnehmern, Resourcen und Räumen", + "Suggestion accepted" : "Vorschlag angenommen", + "Previous date" : "Vorheriger Termin", + "Next date" : "Nächster Termin", + "Legend" : "Legende", + "Out of office" : "Nicht im Büro", + "Attendees:" : "Teilnehmer:", + "Done" : "Erledigt", + "Search room" : "Raum suchen", + "Room name" : "Raumname", + "Check room availability" : "Verfügbarkeit des Raums prüfen", "Free" : "Frei", "Busy (tentative)" : "Beschäftigt (vorläufig)", "Busy" : "Beschäftigt", - "Out of office" : "Nicht im Büro", "Unknown" : "Unbekannt", - "Accept" : "Annehmen", - "Decline" : "Ablehnen", - "Tentative" : "Vorläufig", + "Find a time" : "Zeit auswählen", "The invitation has been accepted successfully." : "Die Einladung wurde angenommen.", "Failed to accept the invitation." : "Die Einladung konnte nicht angenommen werden.", - "The invitation has been declined successfully." : "Die Einladung wurde erfolgreich abgelehnt.", + "The invitation has been declined successfully." : "Die Einladung wurde abgelehnt.", "Failed to decline the invitation." : "Die Einladung konnte nicht abgelehnt werden.", "Your participation has been marked as tentative." : "Deine Teilnahme wurde als vorläufig markiert.", "Failed to set the participation status to tentative." : "Deine Teilnahme konnte nicht als vorläufig markiert werden.", - "Create Talk room for this event" : "Besprechungsraum für diesen Termin erstellen", - "Show busy times" : "Belegte Zeiten anzeigen", + "Accept" : "Annehmen", + "Decline" : "Ablehnen", + "Tentative" : "Vorläufig", "No attendees yet" : "Keine Teilnehmer bislang", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} eingeladen, {confirmedCount} bestätigt", + "Please add at least one attendee to use the \"Find a time\" feature." : "Zum Verwenden der Funktion \"Zeit finden\", bitte mindestens einen Teilnehmer hinzufügen.", + "Successfully appended link to talk room to location." : "Link des Talk-Raums zur Ortsangabe hinzugefügt.", "Successfully appended link to talk room to description." : "Link zur Beschreibung des Besprechungsraums hinzugefügt.", "Error creating Talk room" : "Fehler beim Erstellen des Besprechungsraumes", - "Send email" : "E-Mail senden", + "Attendees" : "Teilnehmer", + "_%n more guest_::_%n more guests_" : ["%n weiterer Gast","%n weitere Gäste"], + "Remove group" : "Gruppe entfernen", + "Remove attendee" : "Teilnehmer entfernen", + "Request reply" : "Antwort anfordern", "Chairperson" : "Vorsitz", "Required participant" : "Benötigter Teilnehmer", "Optional participant" : "Optionaler Teilnehmer", "Non-participant" : "Nicht-Teilnehmer", - "Remove attendee" : "Teilnehmer entfernen", - "Search for emails, users or contacts" : "Suche nach E-Mails, Benutzern oder Kontakten", + "_%n member_::_%n members_" : ["%n Mitglied","%n Mitglieder"], + "Search for emails, users, contacts, contact groups or teams" : "Suche nach E-Mails, Benutzern, Kontakten, Kontaktgruppen oder Teams", "No match found" : "Keine Übereinstimmung gefunden", + "Note that members of circles get invited but are not synced yet." : "Beachte, dass Mitglieder von Kreisen eingeladen werden, aber noch nicht synchronisiert sind.", + "Note that members of contact groups get invited but are not synced yet." : "Beachte, dass Mitglieder von Kontaktgruppen eingeladen werden, aber noch nicht synchronisiert sind.", "(organizer)" : "(Organisator)", - "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Um das Versenden von Einladungen und deren Antworten zu ermöglichen, [linkopen] füge deine E-Mail-Adresse in den persönlichen Einstellungen hinzu.[linkclose].", + "Make {label} the organizer" : "{label} zum Organisator ernennen", + "Make {label} the organizer and attend" : "{label} zum Organisator ernennen und teilnehmen", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Um das Senden von Einladungen und deren Antworten zu ermöglichen, [linkopen] füge deine E-Mail-Adresse in den persönlichen Einstellungen hinzu.[linkclose].", "Remove color" : "Farbe entfernen", "Event title" : "Titel des Termins", - "All day" : "Ganztägig", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Die Einstellung ganztägig kann für sich wiederholende Termine nicht geändert werden.", - "from {startDate}" : "von {startDate}", - "from {startDate} at {startTime}" : "von {startDate} um {startTime}", - "to {endDate}" : "bis {endDate}", - "to {endDate} at {endTime}" : "bis {endDate} um {endTime}", + "From" : "Von", + "To" : "Bis", "Repeat" : "Wiederholen", - "End repeat" : "Wiederholung beenden", - "Select to end repeat" : "Auswählen um Wiederholung beenden", + "Repeat event" : "Termin wiederholen", + "_time_::_times_" : ["Mal","Mal"], "never" : "Niemals", "on date" : "am Datum", "after" : "Nach", - "_time_::_times_" : ["Mal","Mal"], + "End repeat" : "Wiederholung beenden", + "Select to end repeat" : "Auswählen um Wiederholung beenden", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Dieser Termin ist die Wiederholungsausnahme eines sich wiederholenden Termins. Du kannst keine Wiederholungsregel hinzufügen.", "first" : "ersten", - "third" : "dritten", - "fourth" : "vierten", - "fifth" : "fünften", - "second to last" : "vorletzten", - "last" : "letzten", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Änderungen an der Wiederholungsregel werden nur auf dieses und alle zukünftigen Wiederholungen angewendet.", "Repeat every" : "Wiederhole jeden", "By day of the month" : "Nach Tag des Monats", "On the" : "Am", + "_day_::_days_" : ["Tag","Tage"], + "_week_::_weeks_" : ["Woche","Wochen"], "_month_::_months_" : ["Monat","Monate"], "_year_::_years_" : ["Jahr","Jahre"], + "On specific day" : "An einem bestimmten Tag", "weekday" : "Wochentag", "weekend day" : "Wochenendtag", - "No recurrence" : "Keine Wiederholung", + "Does not repeat" : "Wiederholt sich nicht", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Die Wiederholungs-Definition dieses Termins wird nicht vollständig von Nextcloud unterstützt. Wenn du die Wiederholungs-Optionen bearbeitest, könnten bestimmte Wiederholungen verlorengehen.", - "Suggestions" : "Vorschläge", "No rooms or resources yet" : "Noch keine Räume oder Ressourcen", + "Resources" : "Ressourcen", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} Platz","{seatingCapacity} Plätze"], "Add resource" : "Ressource hinzufügen", "Has a projector" : "Hat einen Projektor", "Has a whiteboard" : "Hat ein Whiteboard", "Wheelchair accessible" : "Barrierefrei", "Remove resource" : "Ressource entfernen", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} Platz","{seatingCapacity} Plätze"], - "Projector" : "Projektor", - "Whiteboard" : "Whiteboard", "Search for resources or rooms" : "Nach Ressourcen oder Räumen suchen", "available" : "verfügbar", "unavailable" : "Nicht verfügbar", + "Show all rooms" : "Alle Räume anzeigen", + "Projector" : "Projektor", + "Whiteboard" : "Whiteboard", "Room type" : "Raum-Typ", "Any" : "Irgendein", "Minimum seating capacity" : "Mindestsitzplatzkapazität", - "More" : "Mehr", - "Update this occurrence" : "Diese Wiederholung aktualisieren", + "More details" : "Weitere Einzelheiten", "Update this and all future" : "Aktualisiere dieses und alle Künftigen", + "Update this occurrence" : "Diese Wiederholung aktualisieren", "Public calendar does not exist" : "Öffentlicher Kalender existiert nicht", "Maybe the share was deleted or has expired?" : "Vielleicht wurde die Freigabe gelöscht oder ist abgelaufen?", - "Please select a time zone:" : "Bitte eine Zeitzone wählen:", - "Pick a time" : "Zeit auswählen", - "Pick a date" : "Datum auswählen", "from {formattedDate}" : "Von {formattedDate}", "to {formattedDate}" : "bis {formattedDate}", "on {formattedDate}" : "am {formattedDate}", @@ -340,9 +431,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} um {formattedTime}", "Please enter a valid date" : "Bitte ein gültiges Datum angeben", "Please enter a valid date and time" : "Bitte gültiges Datum und Uhrzeit angeben", + "Select a time zone" : "Eine Zeitzone auswählen", + "Please select a time zone:" : "Bitte eine Zeitzone wählen:", + "Pick a time" : "Zeit auswählen", + "Pick a date" : "Datum auswählen", "Type to search time zone" : "Zum Suchen der Zeitzone tippen", "Global" : "Weltweit", - "Select date" : "Datum auswählen", + "Holidays in {region}" : "Feiertage in {region}", + "An error occurred, unable to read public calendars." : "Es ist ein Fehler aufgetreten, öffentliche Kalender können nicht gelesen werden.", + "An error occurred, unable to subscribe to calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht abonniert werden.", + "Public holiday calendars" : "Feiertagskalender", + "Public calendars" : "Öffentliche Kalender", + "No valid public calendars configured" : "Keine gültigen öffentlichen Kalender eingerichtet.", + "Speak to the server administrator to resolve this issue." : "Spreche bitte die Administration an, um dieses Problem zu lösen.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Feiertagskalender werden von Thunderbird bereitgestellt. Kalenderdaten werden von {website} heruntergeladen.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Diese öffentlichen Kalender werden von der Serveradministration vorgeschlagen. Kalenderdaten werden von der entsprechenden Webseite heruntergeladen.", + "By {authors}" : "Von {authors}", + "Subscribed" : "Abonniert", + "Subscribe" : "Abonnieren", + "Could not fetch slots" : "Abruf der Zeitfenster fehlgeschlagen", + "Select a date" : "Datum auswählen", "Select slot" : "Zeitfenster auswählen", "No slots available" : "Keine Zeitfenster verfügbar", "The slot for your appointment has been confirmed" : "Das Zeitfenster für deinen Termin wurde bestätigt", @@ -354,29 +462,30 @@ "See all available slots" : "Alle verfügbaren Zeitfenster anzeigen", "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Das Zeitfenster für deinen Termin von {startDate} bis {endDate} ist nicht mehr verfügbar.", "Please book a different slot:" : "Buche bitte ein anderes Zeitfenster:", - "Book an appointment with {name}" : "Buche einen Termin mit {name}", + "Book an appointment with {name}" : "Einen Termin mit {name} buchen", "No public appointments found for {name}" : "Keine öffentlichen Termine für {name} gefunden", "Personal" : "Persönlich", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Die automatische Erkennung der Zeitzone hat als Ergebnis UTC ermittelt.\nDies ist meist das Ergebnis von Sicherheitsmaßnahmen deines Webbrowsers.\nBitte stelle deine Zeitzone manuell in den Kalendereinstellungen ein.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Die konfigurierte Zeitzone ({timezoneId}) wurde nicht gefunden. Rückfall auf UTC.\nBitte die Zeitzone in den Einstellungen ändern und dieses Problem melden.", - "No more events today" : "Heute keine weiteren Termine", - "No upcoming events" : "Keine anstehenden Termine", - "Create a new event" : "Neuen Termin erstellen", - "[Today]" : "[Heute]", - "[Tomorrow]" : "[Morgen]", - "[Yesterday]" : "[Gestern]", - "[Last] dddd" : "[Letzten] dddd", + "Availability of {displayName}" : "Verfügbarkeit von {displayName}", + "Edit event" : "Ereignis bearbeiten", "Event does not exist" : "Der Termin existiert nicht", "Duplicate" : "Duplizieren", "Delete this occurrence" : "Diese Wiederholung löschen", "Delete this and all future" : "Dieses und alle Künftigen löschen", - "Details" : "Details", - "Attendees" : "Teilnehmer", - "Resources" : "Ressourcen", + "All day" : "Ganztägig", + "Modifications wont get propagated to the organizer and other attendees" : "Änderungen werden nicht an den Organisator und andere Teilnehmer weitergegeben", + "Managing shared access" : "Geteilten Zugriff verwalten", + "Deny access" : "Zugriff verweigern", + "Invite" : "Einladen", + "_User requires access to your file_::_Users require access to your file_" : ["Benutzer benötigt Zugang zu deiner Datei","Benutzer benötigen Zugang zu deiner Datei"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Anhang erfordert geteilten Zugriff","Anhänge, die einen gemeinsamen Zugriff erfordern"], + "Untitled event" : "Unbenannter Termin", "Close" : "Schließen", - "Show more details" : "Weitere Einzelheiten anzeigen", + "Modifications will not get propagated to the organizer and other attendees" : "Änderungen werden nicht an den Organisator und andere Teilnehmer weitergegeben", "Subscribe to {name}" : "{name} abonnieren", "Export {name}" : "Exportiere {name}", + "Show availability" : "Verfügbarkeit anzeigen", "Anniversary" : "Jahrestag", "Appointment" : "Verabredung", "Business" : "Geschäftlich", @@ -404,36 +513,41 @@ "on {time}" : "um {time}", "on {time} ({timezoneId})" : "um {time} ({timezoneId})", "Week {number} of {year}" : "Woche {number} aus {year}", - "Does not repeat" : "Wiederholt sich nicht", "Daily" : "Täglich", "Weekly" : "Wöchentlich", "Monthly" : "Monatlich", "Yearly" : "Jährlich", - "_Every %n day_::_Every %n days_" : ["Jeden %n Tag","Alle %n Tage"], - "_Every %n week_::_Every %n weeks_" : ["Jede %n Woche","Alle %n Wochen"], - "_Every %n month_::_Every %n months_" : ["Jeden %n Monat","Alle %n Monate"], - "_Every %n year_::_Every %n years_" : ["Jedes %n Jahr","Alle %n Jahre"], - "_on {weekday}_::_on {weekdays}_" : ["am {weekday}","am {weekdays}"], + "_Every %n day_::_Every %n days_" : ["Jeden Tag","Alle %n Tage"], + "_Every %n week_::_Every %n weeks_" : ["Jede Woche","Alle %n Wochen"], + "_Every %n month_::_Every %n months_" : ["Jeden Monat","Alle %n Monate"], + "_Every %n year_::_Every %n years_" : ["Jedes Jahr","Alle %n Jahre"], + "_on {weekday}_::_on {weekdays}_" : ["Am {weekday}","An {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["am Tag {dayOfMonthList}","an den Tagen {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "am {ordinalNumber} {byDaySet}", - "in {monthNames}" : "im {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "im {monthNames} am {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "im {monthNames} am {ordinalNumber} {byDaySet}", "until {untilDate}" : "bis {untilDate}", "_%n time_::_%n times_" : ["%n mal","%n mal"], - "Untitled event" : "Unbenannter Termin", + "second" : "Sekunde", + "third" : "dritten", + "fourth" : "vierten", + "fifth" : "fünften", + "second to last" : "vorletzten", + "last" : "letzten", "Untitled task" : "Unbenannte Aufgabe", - "Please ask your administrator to enable the Tasks App." : "Bitte deinen Administrator die Aufgaben-App (Tasks) zu aktivieren.", - "Prev" : "Voriges", - "Next" : "Nächstes", - "Prev year" : "Voriges Jahr", - "Next year" : "Nächstes Jahr", - "Year" : "Jahr", + "Please ask your administrator to enable the Tasks App." : "Bitte deine Administration, die Aufgaben-App (Tasks) zu aktivieren.", + "You are not allowed to edit this event as an attendee." : "Keine Berechtigung diese Veranstaltung als Teilnehmer zu bearbeiten.", "W" : "W", - "%n more" : "%n weitere", + "%n more" : "%n mehr", "No events to display" : "Keine Ereignisse zum Anzeigen", - "_+%n more_::_+%n more_" : ["+%n weitere","+%n weitere"], + "All participants declined" : "Alle Teilnehmenden haben abgelehnt", + "Please confirm your participation" : "Bitte Teilnahme bestätigen", + "You declined this event" : "Du hast diesen Termin abgelehnt", + "Your participation is tentative" : "Deine Teilnahme ist vorläufig", + "_+%n more_::_+%n more_" : ["+%n weiterer","+%n weitere"], "No events" : "Keine Termine", "Create a new event or change the visible time-range" : "Neuen Termin erstellen oder den sichtbaren Zeitbereich ändern", + "Failed to save event" : "Termin konnte nicht gespeichert werden", "It might have been deleted, or there was a typo in a link" : "Möglicherweise wurde dies gelöscht oder es gab einen Tippfehler in einem Link", "It might have been deleted, or there was a typo in the link" : "Möglicherweise wurde dies gelöscht oder es gab einen Tippfehler in einem Link", "Meeting room" : "Besprechungsraum", @@ -446,7 +560,7 @@ "When shared hide this event" : "Wenn geteilt, zeige diesen Termin nicht an", "The visibility of this event in shared calendars." : "Sichtbarkeit dieses Termins in geteilten Kalendern.", "Add a location" : "Ort hinzufügen", - "Add a description" : "Beschreibung hinzufügen", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Beschreibung hinzufügen\n\n- Thema des Meetings\n- Tagesordnungspunkte\n- Alles, was die Teilnehmer vorbereiten müssen", "Status" : "Status", "Confirmed" : "Bestätigt", "Canceled" : "Abgesagt", @@ -459,135 +573,26 @@ "Add this as a new category" : "Dies als neue Kategorie hinzufügen", "Custom color" : "Benutzerdefinierte Farbe", "Special color of this event. Overrides the calendar-color." : "Sonderfarbe für diesen Termin. Überschreibt die Kalenderfarbe.", - "Chat room for event" : "Chat-Raum für Termin", + "Error while sharing file" : "Fehler beim Teilen der Datei", + "Error while sharing file with user" : "Fehler beim Teilen der Datei mit Benutzer", + "Error creating a folder {folder}" : "Fehler beim Erstellen des Ordners {folder}", + "Attachment {fileName} already exists!" : "Anhang {fileName} existiert bereits", + "Attachment {fileName} added!" : "Anhang {fileName} hinzugefügt!", + "An error occurred during uploading file {fileName}" : "Fehler beim Hochladen der Datei {fileName}", + "An error occurred during getting file information" : "Es ist ein Fehler beim Abrufen von Dateiinformationen aufgetreten.", + "Talk conversation for event" : "Talk-Unterhaltung für ein Ereignis", + "An error occurred, unable to delete the calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht gelöscht werden.", "Imported {filename}" : "{filename} importiert ", - "Meditation" : "Meditation", - "Relaxing" : "Entspannen", - "Relax" : "Entspannen", - "Break" : "Pause", - "Commute" : "Pendelt", - "Commuting" : "Pendelt", - "Shuttle" : "Pendelverkehr", - "Invoice" : "Rechnung", - "Finance" : "Finanzen", - "Bank" : "Bank", - "Money" : "Geld", - "Wedding" : "Hochzeit", - "Dog" : "Hund", - "Concert" : "Konzert", - "Festival" : "Festival", - "Theater" : "Theater", - "Theatre" : "Theater", - "Presentation" : "Präsentation", - "Talk" : "Talk", - "Speech" : "Gespräch", - "Deadline" : "Abgabefrist", - "Submission" : "Einreichung", - "Reporting" : "Berichten", - "Camping" : "Camping", - "Camp" : "Zelten", - "Election" : "Wahl", - "Voting" : "Abstimmen", - "Vote" : "Stimme", - "Barbecue" : "Grillen", - "Barbeque" : "Grillen", - "Garden" : "Garten", - "Farm" : "Bauernhof", - "Movie" : "Film", - "Cinema" : "Kino", - "Graduation" : "Abschluss", - "Brainstorm" : "Ideenfindung", - "Review" : "Überprüfen", - "Audit" : "Überprüfung", - "Inspection" : "Überprüfung", - "Proofreading" : "Korrekturlesen", - "Baseball" : "Baseball", - "Meet" : "Treffen", - "Planning" : "Planung", - "Pointing" : "Hinweis", - "Retrospective" : "Rückblick", - "Office" : "Büro", - "Contributor week" : "Woche der Mitwirkenden", - "Mail" : "E-Mail", - "Soccer" : "Fußball", - "Football" : "Football", - "Gaming" : "Gaming", - "Drive" : "Fahren", - "Driving" : "Autofahren", - "Bicycle" : "Fahrrad", - "Cycle" : "Radfahren", - "Cycling" : "Radfahren", - "Biking" : "Fahrradfahren", - "Bike" : "Fahrrad", - "Podcast" : "Podcast", - "Basketball" : "Basketball", - "Fishing" : "Angeln", - "Hiking" : "Wandern", - "Hike" : "Wanderung", - "Art" : "Kunst", - "Exhibition" : "Ausstellung", - "Museum" : "Museum", - "Pilates" : "Pilates", - "Park" : "Park", - "Walk" : "Gehen", - "Studying" : "Studieren", - "Doctor" : "Arzt", - "Health" : "Gesundheit", - "Dentist" : "Zahnarzt", - "Hospital" : "Krankenhaus", - "Interview" : "Interview", - "Training" : "Training", - "Practice" : "Übung", - "Sports" : "Sport", - "Exercise" : "Bewegung", - "Work out" : "Training", - "Working out" : "Trainieren", - "Gym" : "Fitnessstudio", - "Barber" : "Rasur", - "Haircut" : "Friseur", - "Hairdresser" : "Friseur", - "Exam" : "Prüfung", - "Written test" : "Schriftliche Prüfung", - "Oral test" : "Mündliche Prüfung", - "Working" : "Arbeiten", - "New Years Eve" : "Silvesterabend", - "NYE" : "NYE", - "Fireworks" : "Feuerwerk", - "Running" : "Laufen", - "Go for a run" : "Laufen gehen", - "Marathon" : "Marathon", - "Video-conference" : "Videokonferenz", - "Conference-call" : "Konferenzanruf", - "Video-call" : "Videoanruf", - "Video-chat" : "Videochat", - "Video-meeting" : "Videomeeting", - "Call" : "Anruf", - "Calling" : "Anrufen", - "Christmas" : "Weihnachten", - "Conference" : "Konferenz", - "Pizza" : "Pizza", - "Travelling" : "Reisen", - "Trip" : "Reise", - "Journey" : "Reise", - "Collaborate" : "Zusammenarbeiten", - "Pair" : "Paar", - "Lecture" : "Vorlesung", - "Seminar" : "Seminar", - "Teaching" : "Unterrichten", - "Photograph" : "Fotografie", - "Party" : "Party", - "Celebration" : "Feier", - "Celebrate" : "Feiern", - "Birthday" : "Geburtstag", - "Shopping" : "Einkaufen", - "Groceries" : "Lebensmittel", - "Skate" : "Skaten", - "Skateboard" : "Skateboard", - "Wine tasting" : "Weinprobe", - "Golf" : "Golf", - "Dinner" : "Abendessen", - "Lunch" : "Mittagessen", + "This is an event reminder." : "Dies ist eine Terminerinnerung.", + "Error while parsing a PROPFIND error" : "Fehler beim Parsen eines PROPFIND-Fehlers", "Appointment not found" : "Termin nicht gefunden", - "User not found" : "Benutzer nicht gefunden" + "User not found" : "Benutzer nicht gefunden", + "Reminder" : "Erinnerung", + "+ Add reminder" : "+ Erinnerung hinzufügen", + "Select automatic slot" : "Automatischen Zeitbereich wählen", + "with" : "mit", + "Available times:" : "Verfügbare Zeiten:", + "Suggestions" : "Vorschläge", + "Details" : "Details" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/de_DE.js b/l10n/de_DE.js index 65ae46cab4148c08d962b8f7d27423bf9b6120cf..1fc85a5202fbf98014fc1c7c2beb6629e3ea70b7 100644 --- a/l10n/de_DE.js +++ b/l10n/de_DE.js @@ -1,139 +1,182 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Eingegebene E-Mail-Adresse ist zu lang", "User-Session unexpectedly expired" : "Sitzung unerwartet abgelaufen", "Provided email-address is not valid" : "Angegebene E-Mail-Adresse ist ungültig", "%s has published the calendar »%s«" : "%s hat den Kalender »%s« veröffentlicht", - "Unexpected error sending email. Please contact your administrator." : "Unerwarteter Fehler beim Senden der E-Mail. Bitte kontaktieren Sie den Administrator.", - "Successfully sent email to %1$s" : "E-Mail erfolgreich versandt an %1$s", + "Unexpected error sending email. Please contact your administrator." : "Unerwarteter Fehler beim Senden der E-Mail. Bitte kontaktieren Sie die Administration.", + "Successfully sent email to %1$s" : "E-Mail versandt an %1$s", "Hello," : "Hallo,", "We wanted to inform you that %s has published the calendar »%s«." : "Information: %s hat den Kalender »%s« veröffentlicht.", "Open »%s«" : "»%s« öffnen", "Cheers!" : "Noch einen schönen Tag!", "Upcoming events" : "Anstehende Termine", + "No more events today" : "Heute keine weiteren Termine", + "No upcoming events" : "Keine anstehenden Termine", + "More events" : "Weitere Termine", + "%1$s with %2$s" : "%1$s mit %2$s", + "Calendar" : "Kalender", + "New booking {booking}" : "Neue Buchung {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) hat den Termin \"{config_display_name}\" am {date_time} gebucht.", "Appointments" : "Termine", "Schedule appointment \"%s\"" : "Termin planen \"%s\"", "Schedule an appointment" : "Vereinbaren Sie einen Termin", - "Prepare for %s" : "Bereiten Sie sich auf %s vor", - "Follow up for %s" : "Nachverfolgung für %s", - "Your appointment \"%s\" needs confirmation" : "Ihr Termin \"%s\" benötigt eine Bestätigung", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Vorbereitung auf %s", + "Follow up for %s" : "Nachbereitung für %s", + "Your appointment \"%s\" with %s needs confirmation" : "Für Ihre Terminvereinbarung \"%s\" mit %s steht die Bestätigung noch aus.", "Dear %s, please confirm your booking" : "Sehr geehrte/r %s, bitte bestätigen Sie die Terminbuchung", "Confirm" : "Bestätigen", + "Appointment with:" : "Termin mit:", + "Description:" : "Beschreibung:", "This confirmation link expires in %s hours." : "Dieser Bestätigungslink läuft in %s Stunden ab.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Wenn Sie den Termin doch noch absagen möchten, wenden Sie sich bitte an Ihren Organisator.", - "Appointment:" : "Termin:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Wenn Sie den Termin dennoch stornieren möchten, wenden Sie sich bitte an Ihren Organisator, indem Sie auf diese E-Mail antworten oder dessen Profilseite besuchen.", + "Your appointment \"%s\" with %s has been accepted" : "Ihre Terminvereinbarung \"%s\" mit %s wurde angenommen.", + "Dear %s, your booking has been accepted." : "Hallo %s, Ihre Buchung wurde akzeptiert.", + "Appointment for:" : "Termin für:", "Date:" : "Datum:", + "You will receive a link with the confirmation email" : "Mit der Bestätigungs-E-Mail erhalten Sie einen Link", "Where:" : "Wo:", - "Description:" : "Beschreibung:", - "Calendar" : "Kalender", + "Comment:" : "Kommentar:", + "You have a new appointment booking \"%s\" from %s" : "Sie haben eine neue Terminbuchung \"%s\" von %s", + "Dear %s, %s (%s) booked an appointment with you." : "Hallo %s, %s (%s) hat einen Termin mit Ihnen gebucht.", "A Calendar app for Nextcloud" : "Eine Kalender-App für Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Die Calendar-App ist die Oberfläche für Nextclouds CalDAV-Server. Termine können auf einfache Weise über verschiedene Geräte hinweg mit Nextcloud synchronisiert und online bearbeitet werden.\n\n* 🚀 ** Integration mit anderen Nextcloud Apps!** Aktuell Kontakte - weitere folgen.\n* 🌐 **WebCal-Unterstützung!** Möchten Sie die Spieltage Ihres Lieblingsteams in Ihrem Kalender verfolgen? Kein Problem!\n* 🙋 **Teilnehmer!** Laden Sie Teilnehmer zu Ihren Terminen ein.\n* ⌚️ **Frei/Besetzt:** Sehen Sie, wann Ihre Teilnehmer für ein Treffen verfügbar sind\n* ⏰ **Erinnerungen!** Erhalten Sie Alarme für Termine innerhalb Ihres Browsers und per E-Mail.\n* 🔍 Suche! Finden Sie Ihre Termine ganz einfach\n* ☑️ Aufgaben! Sehen Sie Ihre Aufgaben mit Fälligkeitsdatum direkt in Ihrem Kalender\n* 🙈 **Wir erfinden das Rad nicht neu!** Die App basiert auf den großartigen [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) und [fullcalendar](https://github.com/fullcalendar/fullcalendar) Bibliotheken.", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Eine Kalender-App für Nextcloud. Termine von verschiedenen Geräten ganz einfach mit Ihrer Nextcloud synchronisieren und online bearbeiten.\n\n* 🚀 **Integration mit anderen Nextcloud-Apps!** Wie Kontakte, Talk, Aufgaben, Deck und Kreise\n* 🌐 **WebCal-Unterstützung!** Sollen die Spieltage Ihrer Lieblingsmannschaft in Ihrem Kalender stehen? Kein Problem!\n* 🙋 **Teilnehmer!** Laden Sie Personen zu Ihren Veranstaltungen ein.\n* ⌚ **Frei/Beschäftigt!** Sehen Sie, wann Ihre Teilnehmer verfügbar sind.\n* ⏰ **Erinnerungen!** Erhalten Sie Benachrichtigungen für Veranstaltungen direkt im Browser und per E-Mail.\n* 🔍 **Suche!** Finden Sie Ihre Veranstaltungen ganz einfach.\n* ☑️ **Aufgaben!** Sehen Sie Aufgaben oder Karten mit Fälligkeitsdatum direkt im Kalender.\n* 🔈 **Chatrooms!** Erstellen Sie beim Buchen eines Meetings mit nur einem Klick einen zugehörigen Chatroom.\n* 📆 **Terminbuchung** Senden Sie Personen einen Link, damit sie [mit dieser App](https://apps.nextcloud.com/apps/appointments) einen Termin mit Ihnen buchen können.\n* 📎 **Anhänge!** Fügen Sie Veranstaltungsanhänge hinzu, laden Sie sie hoch und sehen Sie sie ein.\n* 🙈 **Wir erfinden das Rad nicht neu!** Basierend auf den großartigen [c-dav Bibliothek](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) und [fullcalendar](https://github.com/fullcalendar/fullcalendar) Bibliotheken.", "Previous day" : "Vorheriger Tag", "Previous week" : "Vorherige Woche", + "Previous year" : "Vergangenes Jahr", "Previous month" : "Vorheriger Monat", "Next day" : "Nächster Tag", "Next week" : "Nächste Woche", + "Next year" : "Nächstes Jahr", "Next month" : "Nächster Monat", - "New event" : "Neuer Termin", + "Create new event" : "Neuen Termin erstellen", + "Event" : "Ereignis", "Today" : "Heute", "Day" : "Tag", "Week" : "Woche", "Month" : "Monat", + "Year" : "Jahr", "List" : "Liste", + "Appointment link was copied to clipboard" : "Termin-Link wurde in die Zwischenablage kopiert", + "Appointment link could not be copied to clipboard" : "Termin-Link konnte nicht in die Zwischenablage kopiert werden", "Preview" : "Vorschau", "Copy link" : "Link kopieren", "Edit" : "Bearbeiten", "Delete" : "Löschen", - "Appointment link was copied to clipboard" : "Termin-Link wurde in die Zwischenablage kopiert", - "Appointment link could not be copied to clipboard" : "Termin-Link konnte nicht in die Zwischenablage kopiert werden", - "Add new" : "Neu hinzufügen", - "Untitled calendar" : "Unbenannter Kalender", - "Edit name" : "Name bearbeiten", - "Saving name …" : "Speichere Namen …", - "Edit color" : "Farbe bearbeiten", - "Saving color …" : "Speichere Farbe …", - "Copy private link" : "Privaten Link kopieren", - "Export" : "Exportieren", - "Unshare from me" : "Nicht mehr mit mir teilen", + "Appointment schedules" : "Terminpläne", + "Create new" : "Neu erstellen", "Disable calendar \"{calendar}\"" : "Kalender \"{calendar}\" deaktivieren", "Disable untitled calendar" : "Kalender ohne Titel deaktivieren", "Enable calendar \"{calendar}\"" : "Kalender \"{calendar}\" aktivieren", "Enable untitled calendar" : "Kalender ohne Titel aktivieren", "An error occurred, unable to change visibility of the calendar." : "Es ist ein Fehler aufgetreten, die Sichtbarkeit des Kalenders konnte nicht geändert werden.", - "An error occurred, unable to delete the calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht gelöscht werden.", - "Calendar link copied to clipboard." : "Kalender-Link in die Zwischenablage kopiert.", - "Calendar link could not be copied to clipboard." : "Kalender-Link konnte nicht in die Zwischenablage kopiert werden.", - "An error occurred, unable to rename the calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht umbenannt werden.", - "An error occurred, unable to change the calendar's color." : "Es ist ein Fehler aufgetreten, die Farbe des Kalenders konnte nicht geändert werden.", + "Untitled calendar" : "Unbenannter Kalender", + "Shared with you by" : "Mit Ihnen geteilt von", + "Edit and share calendar" : "Kalender bearbeiten und teilen", + "Edit calendar" : "Kalender bearbeiten", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Kalenderfreigabe wird in {countdown} Sekunde beendet","Kalenderfreigabe wird in {countdown} Sekunden beendet"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Kalender wird in {countdown} Sekunden gelöscht","Kalender wird in {countdown} Sekunden gelöscht"], - "Share link" : "Link teilen", - "Publish calendar" : "Kalender veröffentlichen", - "Publishing calendar" : "Veröffentliche Kalender", - "Copy public link" : "Öffentlichen Link kopieren", - "Send link to calendar via email" : "Link zum Kalender als E-Mail verschicken", - "Enter one address" : "Eine einzige Adresse eingeben", - "Sending email …" : "Sende E-Mail …", - "Copy subscription link" : "Abonnement-Link kopieren", - "Copying link …" : "Link wird kopiert …", - "Copied link" : "Link kopiert", - "Could not copy link" : "Link konnte nicht kopiert werden", - "Copy embedding code" : "Einbettungscode kopieren", - "Copying code …" : "Kopiere Code …", - "Copied code" : "Code kopiert", - "Could not copy code" : "Code konnte nicht kopiert werden", - "Delete share link" : "Freigabe-Link löschen", - "Deleting share link …" : "Freigabe-Link löschen …", - "An error occurred, unable to publish calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht veröffentlicht werden.", - "An error occurred, unable to send email." : "Es ist ein Fehler aufgetreten, E-Mail konnte nicht versandt werden.", - "Embed code copied to clipboard." : "Einbettungscode in die Zwischenablage kopiert.", - "Embed code could not be copied to clipboard." : "Einbettungscode konnte nicht in die Zwischenablage kopiert werden.", - "Unpublishing calendar failed" : "Aufhebung der Veröffentlichung des Kalenders fehlgeschlagen", - "Share with users or groups" : "Mit Benutzern oder Gruppen teilen", - "No users or groups" : "Keine Benutzer oder Gruppen", - "can edit" : "kann bearbeiten", - "Unshare with {displayName}" : "Mit {displayName} nicht mehr teilen", - "An error occurred, unable to change the unshare the calendar." : "Es ist ein Fehler aufgetreten, die Freigabe des Kalenders konnte nicht aufgehoben werden.", - "An error occurred, unable to change the permission of the share." : "Es ist ein Fehler aufgetreten, die Berechtigung für die Freigabe konnte nicht geändert werden.", - "+ New calendar" : "+ Neuer Kalender", + "An error occurred, unable to create the calendar." : "Es ist ein Fehler aufgetreten, der Kalender konnte nicht erstellt werden.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Bitte geben Sie einen gültigen Link ein (beginnend mit http://, https://, webcal://, oder webcals://)", + "Calendars" : "Kalender", + "Add new" : "Neu hinzufügen", "New calendar" : "Neuer Kalender", "Name for new calendar" : "Name für neuen Kalender", "Creating calendar …" : "Erstelle Kalender …", "New calendar with task list" : "Neuer Kalender mit Aufgabenliste", "New subscription from link (read-only)" : "Neues Abonnement aus Link (schreibgeschützt)", "Creating subscription …" : "Erstelle Abonnement …", - "An error occurred, unable to create the calendar." : "Es ist ein Fehler aufgetreten, der Kalender konnte nicht erstellt werden.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Bitte geben Sie einen gültigen Link ein (beginnend mit http://, https://, webcal://, oder webcals://)", + "Add public holiday calendar" : "Feiertagskalender hinzufügen", + "Add custom public calendar" : "Benutzerdefinierten öffentlichen Kalender hinzufügen", + "Calendar link copied to clipboard." : "Kalender-Link in die Zwischenablage kopiert.", + "Calendar link could not be copied to clipboard." : "Kalender-Link konnte nicht in die Zwischenablage kopiert werden.", + "Copy subscription link" : "Abonnement-Link kopieren", + "Copying link …" : "Link wird kopiert …", + "Copied link" : "Link kopiert", + "Could not copy link" : "Link konnte nicht kopiert werden", + "Export" : "Exportieren", + "Untitled item" : "Eintrag ohne Namen", + "Unknown calendar" : "Unbekannter Kalender", + "Could not load deleted calendars and objects" : "Gelöschte Kalender und Objekte konnten nicht geladen werden", + "Could not delete calendar or event" : "Kalender oder Termin konnte nicht gelöscht werden", + "Could not restore calendar or event" : "Kalender oder Termin konnte nicht wiederhergestellt werden", + "Do you really want to empty the trash bin?" : "Möchten Sie wirklich den Papierkorb leeren?", + "Empty trash bin" : "Papierkorb leeren", "Trash bin" : "Papierkorb", - "Loading deleted elements." : "Lade gelöschte Elemente.", - "You do not have any deleted elements." : "Sie haben keine gelöschten Elemente.", + "Loading deleted items." : "Lade gelöschte Elemente.", + "You do not have any deleted items." : "Sie haben keine gelöschten Elemente.", "Name" : "Name", "Deleted" : "Gelöscht", "Restore" : "Wiederherstellen", "Delete permanently" : "Endgültig löschen", +<<<<<<< HEAD + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Elemente im Papierkorb werden nach {numDays} Tag gelöscht","Elemente im Papierkorb werden nach {numDays} Tagen gelöscht"], +======= "Empty trash bin" : "Papierkorb leeren", "Untitled element" : "Unbenanntes Element", "Unknown calendar" : "Unbekannter Kalender", "Could not load deleted calendars and objects" : "Gelöschte Kalender und Objekte konnten nicht geladen werden", "Could not restore calendar or event" : "Kalender oder Termin konnte nicht wiederhergestellt werden", "Do you really want to empty the trash bin?" : "Möchten Sie wirklich den Papierkorb leeren?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Elemente im Papierkorb werden nach {numDays} Tag gelöscht ","Elemente im Papierkorb werden nach {numDays} Tagen gelöscht"], + "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Elemente im Papierkorb werden nach {numDays} Tag gelöscht","Elemente im Papierkorb werden nach {numDays} Tagen gelöscht"], +>>>>>>> origin/main "Could not update calendar order." : "Kalenderreihenfolge konnte nicht aktualisiert werden.", + "Shared calendars" : "Freigegebene Kalender", + "Deck" : "Deck", + "Hidden" : "Verborgen", + "Internal link" : "Interner Link", + "A private link that can be used with external clients" : "Ein privater Link, der mit externen Clients verwendet werden kann", + "Copy internal link" : "Internen Link kopieren", + "An error occurred, unable to publish calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht veröffentlicht werden.", + "An error occurred, unable to send email." : "Es ist ein Fehler aufgetreten, E-Mail konnte nicht versandt werden.", + "Embed code copied to clipboard." : "Einbettungscode in die Zwischenablage kopiert.", + "Embed code could not be copied to clipboard." : "Einbettungscode konnte nicht in die Zwischenablage kopiert werden.", + "Unpublishing calendar failed" : "Aufhebung der Veröffentlichung des Kalenders fehlgeschlagen", + "Share link" : "Link teilen", + "Copy public link" : "Öffentlichen Link kopieren", + "Send link to calendar via email" : "Link zum Kalender als E-Mail verschicken", + "Enter one address" : "Eine einzige Adresse eingeben", + "Sending email …" : "Sende E-Mail …", + "Copy embedding code" : "Einbettungscode kopieren", + "Copying code …" : "Kopiere Code …", + "Copied code" : "Code kopiert", + "Could not copy code" : "Code konnte nicht kopiert werden", + "Delete share link" : "Freigabe-Link löschen", + "Deleting share link …" : "Freigabe-Link löschen …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "Es ist ein Fehler beim Aufheben der Freigabe des Kalenders aufgetreten.", + "An error occurred, unable to change the permission of the share." : "Es ist ein Fehler aufgetreten, die Berechtigung für die Freigabe konnte nicht geändert werden.", + "can edit" : "kann bearbeiten", + "Unshare with {displayName}" : "Mit {displayName} nicht mehr teilen", + "Share with users or groups" : "Mit Benutzern oder Gruppen teilen", + "No users or groups" : "Keine Benutzer oder Gruppen", + "Failed to save calendar name and color" : "Kalendername und -farbe konnten nicht gespeichert werden", + "Calendar name …" : "Kalendername …", + "Never show me as busy (set this calendar to transparent)" : "Mich nie als beschäftigt anzeigen (diesen Kalender auf transparent setzen)", + "Share calendar" : "Kalender teilen", + "Unshare from me" : "Nicht mehr mit mir teilen", + "Save" : "Speichern", "Import calendars" : "Kalender importieren", "Please select a calendar to import into …" : "Bitte wählen Sie einen Kalender aus, in den importiert werden soll …", "Filename" : "Dateiname", - "Calendar to import into" : "Kalender in den importiert werden soll.", + "Calendar to import into" : "Kalender, in den importiert werden soll", "Cancel" : "Abbrechen", "_Import calendar_::_Import calendars_" : ["Kalender importieren","Kalender importieren"], + "Select the default location for attachments" : "Standard-Speicherort für Anhänge auswählen", + "Pick" : "Auswählen", + "Invalid location selected" : "Ungültigen Speicherort ausgewählt", + "Attachments folder successfully saved." : "Anhangsordner gespeichert.", + "Error on saving attachments folder." : "Fehler beim Speichern des Anhangsordners.", + "Default attachments location" : "Standard-Speicherort für Anhänge", "{filename} could not be parsed" : "{filename} konnte nicht analysiert werden", "No valid files found, aborting import" : "Keine gültige Dateien gefunden, Import wird abgebrochen.", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n Termin importiert","%n Termine importiert"], "Import partially failed. Imported {accepted} out of {total}." : "Der Import ist teilweise fehlgeschlagen. {accepted} von {total} importiert.", - "_Successfully imported %n event_::_Successfully imported %n events_" : ["Erfolgreich %n Termin importiert","Erfolgreich %n Termine importiert"], "Automatic" : "Automatisch", "Automatic ({detected})" : "Automatisch ({detected})", "New setting was not saved successfully." : "Neue Einstellung konnte nicht gespeichert werden.", - "Shortcut overview" : "Übersicht der Tastaturkürzel", - "or" : "oder", "Navigation" : "Navigation", "Previous period" : "Vorherige Zeitspanne", "Next period" : "Nächste Zeitspanne", @@ -141,33 +184,42 @@ OC.L10N.register( "Day view" : "Tagesansicht", "Week view" : "Wochenansicht", "Month view" : "Monatsansicht", + "Year view" : "Jahresansicht", "List view" : "Listenansicht", "Actions" : "Aktionen", "Create event" : "Termin erstellen", "Show shortcuts" : "Tastaturkürzel anzeigen", +<<<<<<< HEAD "Editor" : "Editor", "Close editor" : "Bearbeitung schließen", - "Save edited event" : "Bearbeitetes Ereignis speichern", - "Delete edited event" : "Bearbeitetes Ereignis löschen", + "Save edited event" : "Bearbeiteten Termin speichern", + "Delete edited event" : "Bearbeiteten Termin löschen", "Duplicate event" : "Termin duplizieren", + "Shortcut overview" : "Übersicht der Tastaturkürzel", + "or" : "oder", + "Calendar settings" : "Kalender-Einstellungen", + "At event start" : "Zu Beginn des Termins", + "No reminder" : "Keine Erinnerung", + "Failed to save default calendar" : "Standardkalender konnte nicht gespeichert werden", + "CalDAV link copied to clipboard." : "CalDAV-Link in die Zwischenablage kopiert.", + "CalDAV link could not be copied to clipboard." : "CalDAV-Link konnte nicht in die Zwischenablage kopiert werden.", +======= +>>>>>>> origin/main "Enable birthday calendar" : "Geburtstagskalender aktivieren", "Show tasks in calendar" : "Aufgaben im Kalender anzeigen", "Enable simplified editor" : "Einfachen Editor aktivieren", - "Limit visible events per view" : "Sichtbare Ereignisse pro Ansicht begrenzen", + "Limit the number of events displayed in the monthly view" : "Anzahl der in der Monatsansicht angezeigten Termine begrenzen", "Show weekends" : "Wochenenden anzeigen", "Show week numbers" : "Kalenderwochen anzeigen", "Time increments" : "Zeitschritte", + "Default calendar for incoming invitations" : "Standardkalender für eingehende Einladungen", "Default reminder" : "Standarderinnerung", "Copy primary CalDAV address" : "Primäre CalDAV-Adresse kopieren", "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV-Adresse kopieren", "Personal availability settings" : "Persönliche Verfügbarkeitseinstellungen", "Show keyboard shortcuts" : "Tastaturkürzel anzeigen", - "Calendar settings" : "Kalender-Einstellungen", - "No reminder" : "Keine Erinnerung", - "CalDAV link copied to clipboard." : "CalDAV-Link in die Zwischenablage kopiert.", - "CalDAV link could not be copied to clipboard." : "CalDAV-Link konnte nicht in die Zwischenablage kopiert werden.", - "Appointment was created successfully" : "Termin wurde erstellt", - "Appointment was updated successfully" : "Termin wurde aktualisiert", + "Appointment schedule successfully created" : "Terminplan wurde erstellt", + "Appointment schedule successfully updated" : "Terminplan wurde aktualisiert", "_{duration} minute_::_{duration} minutes_" : ["{duration} Minute","{duration} Minuten"], "0 minutes" : "0 Minuten", "_{duration} hour_::_{duration} hours_" : ["{duration} Stunde","{duration} Stunden"], @@ -178,7 +230,14 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Um Termine zu vereinbaren, fügen Sie Ihre E-Mail-Adresse in den persönlichen Einstellungen hinzu.", "Public – shown on the profile page" : "Öffentlich – auf der Profilseite angezeigt", "Private – only accessible via secret link" : "Privat – nur über geheimen Link erreichbar", + "Appointment schedule saved" : "Terminplan gespeichert", + "Create appointment schedule" : "Terminplan erstellen", + "Edit appointment schedule" : "Terminplan bearbieten", + "Update" : "Aktualisieren", + "Appointment name" : "Terminname", "Location" : "Ort", + "Create a Talk room" : "Einen Talk-Raum erstellen", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Für jeden gebuchten Termin wird ein eindeutiger Link generiert und mit der Bestätigungs-E-Mail versendet", "Description" : "Beschreibung", "Visibility" : "Sichtbarkeit", "Duration" : "Dauer", @@ -196,6 +255,7 @@ OC.L10N.register( "Friday" : "Freitag", "Saturday" : "Samstag", "Sunday" : "Sonntag", + "Weekdays" : "Wochentage", "Add time before and after the event" : "Zeit vor und nach dem Termin hinzufügen", "Before the event" : "Vor dem Termin", "After the event" : "Nach dem Termin", @@ -203,136 +263,188 @@ OC.L10N.register( "Minimum time before next available slot" : "Mindestzeit bis zur nächsten verfügbaren Zeitfenster", "Max slots per day" : "Maximale Zeitfenster pro Tag", "Limit how far in the future appointments can be booked" : "Begrenzung, wie weit in der Zukunft Termine gebucht werden können", +<<<<<<< HEAD + "It seems a rate limit has been reached. Please try again later." : "Es scheint, dass ein Ratenlimit erreicht wurde. Bitte versuchen Sie es später noch einmal.", + "Please confirm your reservation" : "Bitte bestätigen Sie Ihre Reservierung", +======= "Create appointment" : "Termin erstellen", "Edit appointment" : "Termin bearbeiten", "Save" : "Speichern", "Update" : "Aktualisieren", - "Please confirm your reservation" : "Bitte bestätigen Sie Ihre Reservierung", + "Your appointment is booked" : "Ihr Termin ist gebucht", +>>>>>>> origin/main "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Wir haben Ihnen eine E-Mail mit Details gesendet. Bitte bestätigen Sie Ihren Termin über den Link in der E-Mail. Sie können diese Seite jetzt schließen.", "Your name" : "Ihr Name", "Your email address" : "Ihre E-Mail-Adresse", - "Please share anything that will help prepare for our meeting" : "Bitte senden Sie uns alles, was zur Vorbereitung unseres Treffens beiträgt.", + "Please share anything that will help prepare for our meeting" : "Bitte senden Sie uns alles, was zur Vorbereitung unseres Treffens beiträgt", "Could not book the appointment. Please try again later or contact the organizer." : "Termin konnte nicht gebucht werden. Bitte versuchen Sie es später erneut oder wenden Sie sich an den Organisator.", - "Book the appointment" : "Den Termin buchen", - "Reminder" : "Erinnerung", + "Back" : "Zurück", + "Book appointment" : "Termin buchen", + "Error fetching Talk conversations." : "Fehler beim Abruf der Talk-Unterhaltungen.", + "Conversation does not have a valid URL." : "Die Unterhaltung hat keine gültige URL.", + "Successfully added Talk conversation link to location." : "Talk-Unterhaltungslink wurde zum Standort hinzugefügt.", + "Successfully added Talk conversation link to description." : "Talk-Unterhaltungslink wurde zur Beschreibung hinzugefügt.", + "Failed to apply Talk room." : "Talk-Raum konnte nicht angewendet werden", + "Error creating Talk conversation" : "Fehler beim Erstellen der Talk-Unterhaltung", + "Select a Talk Room" : "Einen Talk-Raum wählen", + "Add Talk conversation" : "Talk-Unterhaltung hinzufügen", + "Fetching Talk rooms…" : "Talk-Räume abrufen…", + "No Talk room available" : "Kein Talk-Raum verfügbar", + "Create a new conversation" : "Neue Unterhaltung erstellen", + "Select conversation" : "Unterhaltung auswählen", + "on" : "am", + "at" : "um", "before at" : "vorher um", "Notification" : "Benachrichtigung", "Email" : "E-Mail", "Audio notification" : "Audio-Benachrichtigung", "Other notification" : "Andere Benachrichtigung", "Relative to event" : "Bezogen auf Termin", - "On date" : "Zum Datum", + "On date" : "Am Datum", "Edit time" : "Zeit ändern", "Save time" : "Zeit speichern", "Remove reminder" : "Erinnerung entfernen", - "on" : "am", - "at" : "um", - "+ Add reminder" : "+ Erinnerung hinzufügen", "Add reminder" : "Erinnerung hinzufügen", - "_second_::_seconds_" : ["Sekunde","Sekunden"], - "_minute_::_minutes_" : ["Minute","Minuten"], - "_hour_::_hours_" : ["Stunde","Stunden"], - "_day_::_days_" : ["Tag","Tage"], - "_week_::_weeks_" : ["Woche","Wochen"], + "seconds" : "Sekunden", + "minutes" : "Minuten", + "hours" : "Stunden", + "days" : "Tage", + "weeks" : "Wochen", + "Choose a file to add as attachment" : "Wählen Sie eine Datei, die als Anhang angefügt werden soll", + "Choose a file to share as a link" : "Wählen Sie eine Datei, die als Link geteilt werden soll", + "Attachment {name} already exist!" : "Anhang {name} existiert bereits", + "Could not upload attachment(s)" : "Anhänge konnten nicht hochgeladen werden", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Sie sind dabei, eine Datei herunterzuladen. Bitte den Dateinamen vor dem Öffnen prüfen. Möchten Sie fortfahren?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Sie sind dabei, zu {host} zu navigieren. Möchten Sie wirklich fortfahren? Link: {link}", + "Proceed" : "Fortsetzen", + "No attachments" : "Keine Anhänge", + "Add from Files" : "Aus Dateien auswählen", + "Upload from device" : "Von Gerät hochladen", + "Delete file" : "Datei löschen", + "Confirmation" : "Bestätigung", + "_{count} attachment_::_{count} attachments_" : ["{count} Anhang","{count} Anhänge"], "Suggested" : "Vorgeschlagen", "Available" : "Verfügbar", - "Not available" : "Nicht verfügbar", - "Checking availability" : "Verfügbarkeit prüfen", "Invitation accepted" : "Einladung angenommen", "Accepted {organizerName}'s invitation" : "Einladung von {organizerName} angenommen", + "Participation marked as tentative" : "Teilnahme als vorläufig markiert", + "Invitation is delegated" : "Einladung ist delegiert", + "Not available" : "Nicht verfügbar", "Invitation declined" : "Einladung abgelehnt", "Declined {organizerName}'s invitation" : "Einladung von {organizerName} abgelehnt", - "Invitation is delegated" : "Einladung ist delegiert", - "Participation marked as tentative" : "Teilnahme als vorläufig markiert", - "Invitation sent" : "Einladung verschickt", + "Availability will be checked" : "Verfügbarkeit wird geprüft", + "Invitation will be sent" : "Einladung wird verschickt", + "Failed to check availability" : "Verfügbarkeit konnte nicht geprüft werden", + "Failed to deliver invitation" : "Einladung konnte nicht zugestellt werden", + "Awaiting response" : "Warte auf Antwort", + "Checking availability" : "Verfügbarkeit prüfen", "Has not responded to {organizerName}'s invitation yet" : "Hat noch nicht auf die Einladung von {organizerName} geantwortet", - "Availability of attendees, resources and rooms" : "Verfügbarkeit von Teilnehmern, Resourcen und Räumen", + "Suggested times" : "Vorgeschlagene Zeiten", + "chairperson" : "Vorsitz", + "required participant" : "Benötigter Teilnehmer", + "non-participant" : "Nicht-Teilnehmer", + "optional participant" : "Optionaler Teilnehmer", "{organizer} (organizer)" : "{organizer} (Organisator)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Verfügbarkeit von Teilnehmern, Resourcen und Räumen", + "Suggestion accepted" : "Vorschlag angenommen", + "Previous date" : "Vorheriger Termin", + "Next date" : "Nächster Termin", + "Legend" : "Legende", + "Out of office" : "Nicht im Büro", + "Attendees:" : "Teilnehmer:", + "Done" : "Erledigt", + "Search room" : "Raum suchen", + "Room name" : "Raumname", + "Check room availability" : "Verfügbarkeit des Raums prüfen", "Free" : "Frei", "Busy (tentative)" : "Beschäftigt (vorläufig)", "Busy" : "Beschäftigt", - "Out of office" : "Nicht im Büro", "Unknown" : "Unbekannt", - "Accept" : "Annehmen", - "Decline" : "Ablehnen", - "Tentative" : "Vorläufig", + "Find a time" : "Zeit finden", "The invitation has been accepted successfully." : "Die Einladung wurde angenommen.", - "Failed to accept the invitation." : "Einladung konnte nicht angenommen werden.", + "Failed to accept the invitation." : "Einladung konnte nicht angenommen werden", "The invitation has been declined successfully." : "Die Einladung wurde abgelehnt.", - "Failed to decline the invitation." : "Fehler beim Ablehnen der Einladung.", + "Failed to decline the invitation." : "Einladung konnte nicht abgelehnt werden", "Your participation has been marked as tentative." : "Ihre Teilnahme wurde als vorläufig markiert.", - "Failed to set the participation status to tentative." : "Fehler beim Markieren Ihrer Teilnahme als vorläufig.", - "Create Talk room for this event" : "Besprechungsraum für diesen Termin erstellen", - "Show busy times" : "Belegte Zeiten anzeigen", + "Failed to set the participation status to tentative." : "Ihre Teilnahme konnte nicht als vorläufig markiert werden.", + "Accept" : "Annehmen", + "Decline" : "Ablehnen", + "Tentative" : "Vorläufig", "No attendees yet" : "Keine Teilnehmer bislang", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} eingeladen, {confirmedCount} bestätigt", + "Please add at least one attendee to use the \"Find a time\" feature." : "Zum Verwenden der Funktion \"Zeit finden\", bitte mindestens einen Teilnehmer hinzufügen.", + "Successfully appended link to talk room to location." : "Link des Talk-Raums zur Ortsangabe hinzugefügt.", "Successfully appended link to talk room to description." : "Link zur Beschreibung des Besprechungsraums hinzugefügt.", "Error creating Talk room" : "Fehler beim Erstellen des Besprechungsraumes", - "Send email" : "E-Mail senden", + "Attendees" : "Teilnehmer", + "_%n more guest_::_%n more guests_" : ["%n weiterer Gast","%n weitere Gäste"], + "Remove group" : "Gruppe entfernen", + "Remove attendee" : "Teilnehmer entfernen", + "Request reply" : "Antwort anfordern", "Chairperson" : "Vorsitz", "Required participant" : "Benötigter Teilnehmer", "Optional participant" : "Optionaler Teilnehmer", "Non-participant" : "Nicht-Teilnehmer", - "Remove attendee" : "Teilnehmer entfernen", - "Search for emails, users or contacts" : "Suche nach E-Mails, Benutzern oder Kontakten", + "_%n member_::_%n members_" : ["%n Mitglied","%n Mitglieder"], + "Search for emails, users, contacts, contact groups or teams" : "Suche nach E-Mails, Benutzern, Kontakten, Kontaktgruppen oder Teams", "No match found" : "Keine Übereinstimmung gefunden", + "Note that members of circles get invited but are not synced yet." : "Beachten Sie, dass Mitglieder von Kreisen eingeladen werden, aber noch nicht synchronisiert sind.", + "Note that members of contact groups get invited but are not synced yet." : "Beachten Sie, dass Mitglieder von Kontaktgruppen eingeladen werden, aber noch nicht synchronisiert sind.", "(organizer)" : "(Organisator)", + "Make {label} the organizer" : "{label} zum Organisator ernennen", + "Make {label} the organizer and attend" : "{label} zum Organisator ernennen und teilnehmen", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Um das Versenden von Einladungen und deren Antworten zu ermöglichen, [linkopen] fügen Sie Ihre E-Mail-Adresse in den persönlichen Einstellungen hinzu.[linkclose].", "Remove color" : "Farbe entfernen", "Event title" : "Titel des Termins", - "All day" : "Ganztägig", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Die Einstellung ganztägig kann für sich wiederholende Termine nicht geändert werden.", - "from {startDate}" : "von {startDate}", - "from {startDate} at {startTime}" : "von {startDate} um {startTime}", - "to {endDate}" : "bis {endDate}", - "to {endDate} at {endTime}" : "bis {endDate} um {endTime}", + "From" : "Von", + "To" : "Bis", "Repeat" : "Wiederholen", - "End repeat" : "Wiederholung beenden", - "Select to end repeat" : "Auswählen um Wiederholung beenden", + "Repeat event" : "Termin wiederholen", + "_time_::_times_" : ["Mal","Mal"], "never" : "Niemals", - "on date" : "zum Datum", + "on date" : "am Datum", "after" : "Nach", - "_time_::_times_" : ["Mal","Mal"], + "End repeat" : "Wiederholung beenden", + "Select to end repeat" : "Auswählen um Wiederholung beenden", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Dieser Termin ist die Wiederholungsausnahme eines sich wiederholenden Termins. Sie können keine Wiederholungsregel hinzufügen.", "first" : "ersten", - "third" : "dritten", - "fourth" : "vierten", - "fifth" : "fünften", - "second to last" : "vorletzten", - "last" : "letzten", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Änderungen an der Wiederholungsregel werden nur auf dieses und alle zukünftigen Vorkommen angewendet.", "Repeat every" : "Wiederhole jeden", "By day of the month" : "Nach Tag des Monats", "On the" : "Am", + "_day_::_days_" : ["Tag","Tage"], + "_week_::_weeks_" : ["Woche","Wochen"], "_month_::_months_" : ["Monat","Monate"], "_year_::_years_" : ["Jahr","Jahre"], + "On specific day" : "An einem bestimmten Tag", "weekday" : "Wochentag", "weekend day" : "Wochenendtag", - "No recurrence" : "Keine Wiederholung", + "Does not repeat" : "Wiederholt sich nicht", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Die Wiederholungs-Definition dieses Termins wird nicht vollständig von Nextcloud unterstützt. Wenn Sie die Wiederholungs-Optionen bearbeiten, könnten bestimmte Wiederholungen verlorengehen.", - "Suggestions" : "Vorschläge", "No rooms or resources yet" : "Noch keine Räume oder Ressourcen", + "Resources" : "Ressourcen", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} Platz","{seatingCapacity} Plätze"], "Add resource" : "Ressource hinzufügen", "Has a projector" : "Hat einen Projektor", "Has a whiteboard" : "Hat ein Whiteboard", "Wheelchair accessible" : "Barrierefrei", "Remove resource" : "Ressource entfernen", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} Platz","{seatingCapacity} Plätze"], - "Projector" : "Projektor", - "Whiteboard" : "Whiteboard", "Search for resources or rooms" : "Nach Ressourcen oder Räumen suchen", "available" : "Verfügbar", "unavailable" : "Nicht verfügbar", + "Show all rooms" : "Alle Räume anzeigen", + "Projector" : "Projektor", + "Whiteboard" : "Whiteboard", "Room type" : "Raum-Typ", "Any" : "Irgendein", "Minimum seating capacity" : "Mindestsitzplatzkapazität", - "More" : "Mehr", - "Update this occurrence" : "Dieses Vorkommen aktualisieren", + "More details" : "Weitere Einzelheiten", "Update this and all future" : "Aktualisiere dieses und alle Künftigen", + "Update this occurrence" : "Dieses Vorkommen aktualisieren", "Public calendar does not exist" : "Öffentlicher Kalender existiert nicht", "Maybe the share was deleted or has expired?" : "Vielleicht wurde die Freigabe gelöscht oder ist abgelaufen?", - "Please select a time zone:" : "Bitte eine Zeitzone wählen:", - "Pick a time" : "Zeit auswählen", - "Pick a date" : "Datum auswählen", "from {formattedDate}" : "Von {formattedDate}", "to {formattedDate}" : "bis {formattedDate}", "on {formattedDate}" : "am {formattedDate}", @@ -342,9 +454,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} um {formattedTime}", "Please enter a valid date" : "Bitte ein gültiges Datum angeben", "Please enter a valid date and time" : "Bitte gültiges Datum und Uhrzeit angeben", + "Select a time zone" : "Eine Zeitzone auswählen", + "Please select a time zone:" : "Bitte eine Zeitzone wählen:", + "Pick a time" : "Zeit auswählen", + "Pick a date" : "Datum auswählen", "Type to search time zone" : "Zum Suchen der Zeitzone tippen", "Global" : "Weltweit", - "Select date" : "Datum auswählen", + "Holidays in {region}" : "Feiertage in {region}", + "An error occurred, unable to read public calendars." : "Es ist ein Fehler aufgetreten, öffentliche Kalender können nicht gelesen werden.", + "An error occurred, unable to subscribe to calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht abonniert werden.", + "Public holiday calendars" : "Feiertagskalender", + "Public calendars" : "Öffentliche Kalender", + "No valid public calendars configured" : "Keine gültigen öffentlichen Kalender eingerichtet", + "Speak to the server administrator to resolve this issue." : "Sprechen Sie die Administration an, um dieses Problem zu lösen.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Feiertagskalender werden von Thunderbird bereitgestellt. Kalenderdaten werden von {website} heruntergeladen.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Diese öffentlichen Kalender werden von der Serveradministration vorgeschlagen. Kalenderdaten werden von der entsprechenden Webseite heruntergeladen.", + "By {authors}" : "Von {authors}", + "Subscribed" : "Abonniert", + "Subscribe" : "Abonnieren", + "Could not fetch slots" : "Abruf der Zeitfenster fehlgeschlagen", + "Select a date" : "Datum auswählen", "Select slot" : "Zeitfenster auswählen", "No slots available" : "Keine Zeitfenster verfügbar", "The slot for your appointment has been confirmed" : "Das Zeitfenster für Ihren Termin wurde bestätigt", @@ -361,24 +490,29 @@ OC.L10N.register( "Personal" : "Persönlich", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Die automatische Erkennung der Zeitzone hat als Ergebnis UTC ermittelt.\nDies ist meist das Ergebnis von Sicherheitsmaßnahmen Ihres Webbrowsers.\nBitte stellen Sie Ihre Zeitzone manuell in den Kalendereinstellungen ein.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Die konfigurierte Zeitzone ({timezoneId}) wurde nicht gefunden. Rückfall auf UTC.\nBitte die Zeitzone in den Einstellungen ändern und melden dieses Problem.", - "No more events today" : "Heute keine weiteren Termine", - "No upcoming events" : "Keine anstehenden Termine", - "Create a new event" : "Neuen Termin erstellen", - "[Today]" : "[Heute]", - "[Tomorrow]" : "[Morgen]", - "[Yesterday]" : "[Gestern]", - "[Last] dddd" : "[Letzten] dddd", + "Availability of {displayName}" : "Verfügbarkeit von {displayName}", + "Edit event" : "Ereignis bearbeiten", "Event does not exist" : "Der Termin existiert nicht", "Duplicate" : "Duplizieren", "Delete this occurrence" : "Dieses Vorkommen löschen", "Delete this and all future" : "Dieses und alle Künftigen löschen", - "Details" : "Details", - "Attendees" : "Teilnehmer", - "Resources" : "Ressourcen", + "All day" : "Ganztägig", + "Modifications wont get propagated to the organizer and other attendees" : "Änderungen werden nicht an den Organisator und andere Teilnehmer weitergegeben", + "Managing shared access" : "Geteilten Zugriff verwalten", + "Deny access" : "Zugriff verweigern", + "Invite" : "Einladen", + "_User requires access to your file_::_Users require access to your file_" : ["Benutzer benötigen Zugang zu Ihrer Datei","Benutzer benötigen Zugang zu Ihren Dateien"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Anhang erfordert geteilten Zugriff","Anhänge erfordern geteilten Zugriff"], + "Untitled event" : "Unbenannter Termin", "Close" : "Schließen", - "Show more details" : "Weitere Einzelheiten anzeigen", + "Modifications will not get propagated to the organizer and other attendees" : "Änderungen werden nicht an den Organisator und andere Teilnehmer weitergegeben", "Subscribe to {name}" : "{name} abonnieren", +<<<<<<< HEAD "Export {name}" : "{name} exportieren", + "Show availability" : "Verfügbarkeit anzeigen", +======= + "Export {name}" : "Exportiere {name}", +>>>>>>> origin/main "Anniversary" : "Jahrestag", "Appointment" : "Verabredung", "Business" : "Geschäftlich", @@ -406,7 +540,6 @@ OC.L10N.register( "on {time}" : "um {time}", "on {time} ({timezoneId})" : "um {time} ({timezoneId})", "Week {number} of {year}" : "Woche {number} aus {year}", - "Does not repeat" : "Wiederholt sich nicht", "Daily" : "Täglich", "Weekly" : "Wöchentlich", "Monthly" : "Monatlich", @@ -418,24 +551,30 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["am {weekday}","am {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["am Tag {dayOfMonthList}","an den Tagen {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "am {ordinalNumber} {byDaySet}", - "in {monthNames}" : "im {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "im {monthNames} am {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "im {monthNames} am {ordinalNumber} {byDaySet}", "until {untilDate}" : "bis {untilDate}", "_%n time_::_%n times_" : ["%n mal","%n mal"], - "Untitled event" : "Unbenannter Termin", + "second" : "zweiten", + "third" : "dritten", + "fourth" : "vierten", + "fifth" : "fünften", + "second to last" : "vorletzten", + "last" : "letzten", "Untitled task" : "Unbenannte Aufgabe", - "Please ask your administrator to enable the Tasks App." : "Bitten Sie Ihren Administrator die Aufgaben-App (Tasks) zu aktivieren.", - "Prev" : "Vorher", - "Next" : "Weiter", - "Prev year" : "Voriges Jahr", - "Next year" : "Nächstes Jahr", - "Year" : "Jahr", + "Please ask your administrator to enable the Tasks App." : "Bitten Sie Ihre Administration die Aufgaben-App (Tasks) zu aktivieren.", + "You are not allowed to edit this event as an attendee." : "Keine Berechtigung diese Veranstaltung als Teilnehmer zu bearbeiten.", "W" : "W", "%n more" : "%n weitere", - "No events to display" : "Keine Ereignisse zum Anzeigen", + "No events to display" : "Keine Termine zum Anzeigen", + "All participants declined" : "Alle Teilnehmer haben abgelehnt", + "Please confirm your participation" : "Bitte Teilnahme bestätigen", + "You declined this event" : "Sie haben diesen Termin abgelehnt", + "Your participation is tentative" : "Ihre Teilnahme ist vorläufig", "_+%n more_::_+%n more_" : ["+%n weitere","+%n weitere"], "No events" : "Keine Termine", "Create a new event or change the visible time-range" : "Neuen Termin erstellen oder den sichtbaren Zeitbereich ändern", + "Failed to save event" : "Termin konnte nicht gespeichert werden", "It might have been deleted, or there was a typo in a link" : "Möglicherweise wurde dies gelöscht oder es gab einen Tippfehler in einem Link", "It might have been deleted, or there was a typo in the link" : "Möglicherweise wurde dies gelöscht oder es gab einen Tippfehler in einem Link", "Meeting room" : "Besprechungsraum", @@ -448,7 +587,12 @@ OC.L10N.register( "When shared hide this event" : "Wenn geteilt, zeige diesen Termin nicht an", "The visibility of this event in shared calendars." : "Sichtbarkeit dieses Termins in geteilten Kalendern.", "Add a location" : "Ort hinzufügen", +<<<<<<< HEAD + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Beschreibung hinzufügen\n\n- Worum geht es bei diesem Meeting?\n- Tagesordnungspunkte\n- Alles, was die Teilnehmer vorbereiten sollen", +======= + "Open Link" : "Link öffnen", "Add a description" : "Beschreibung hinzufügen", +>>>>>>> origin/main "Status" : "Status", "Confirmed" : "Bestätigt", "Canceled" : "Abgesagt", @@ -461,8 +605,22 @@ OC.L10N.register( "Add this as a new category" : "Dies als neue Kategorie hinzufügen", "Custom color" : "Benutzerdefinierte Farbe", "Special color of this event. Overrides the calendar-color." : "Sonderfarbe für diesen Termin. Überschreibt die Kalenderfarbe.", - "Chat room for event" : "Chat-Raum für Termin", +<<<<<<< HEAD + "Error while sharing file" : "Fehler beim Teilen der Datei", + "Error while sharing file with user" : "Fehler beim Teilen der Datei mit Benutzer", + "Error creating a folder {folder}" : "Fehler beim Erstellen des Ordners {folder}", + "Attachment {fileName} already exists!" : "Anhang {fileName} existiert bereits", + "Attachment {fileName} added!" : "Anhang {fileName} hinzugefügt!", + "An error occurred during uploading file {fileName}" : "Es ist ein Fehler beim Hochladen der Datei {fileName} aufgetreten", + "An error occurred during getting file information" : "Es ist ein Fehler beim Abrufen von Dateiinformationen aufgetreten", + "Talk conversation for event" : "Talk-Unterhaltung für ein Ereignis", + "An error occurred, unable to delete the calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht gelöscht werden.", "Imported {filename}" : "{filename} importiert ", + "This is an event reminder." : "Dies ist eine Terminerinnerung.", + "Error while parsing a PROPFIND error" : "Fehler beim Parsen eines PROPFIND-Fehlers", +======= + "Chat room for event" : "Chat-Raum für Termin", + "Imported {filename}" : "{filename} importiert", "Meditation" : "Meditation", "Relaxing" : "Entspannen", "Relax" : "Entspannen", @@ -512,7 +670,7 @@ OC.L10N.register( "Contributor week" : "Woche der Mitwirkenden", "Mail" : "E-Mail", "Soccer" : "Fußball", - "Football" : "Football", + "Football" : "Fußball", "Gaming" : "Gaming", "Drive" : "Fahren", "Driving" : "Autofahren", @@ -589,7 +747,15 @@ OC.L10N.register( "Golf" : "Golf", "Dinner" : "Abendessen", "Lunch" : "Mittagessen", +>>>>>>> origin/main "Appointment not found" : "Termin nicht gefunden", - "User not found" : "Benutzer nicht gefunden" + "User not found" : "Benutzer nicht gefunden", + "Reminder" : "Erinnerung", + "+ Add reminder" : "+ Erinnerung hinzufügen", + "Select automatic slot" : "Automatischen Bereich wählen", + "with" : "mit", + "Available times:" : "Verfügbare Zeiten:", + "Suggestions" : "Vorschläge", + "Details" : "Details" }, -"nplurals=2; plural=(n != 1);"); +"nplurals=2; plural=n != 1;"); diff --git a/l10n/de_DE.json b/l10n/de_DE.json index 86d327485cd95037d255cf3df91cf41dd0ee7575..705e56a284fa553edfeeac6e6790864fffa8228b 100644 --- a/l10n/de_DE.json +++ b/l10n/de_DE.json @@ -1,137 +1,180 @@ { "translations": { + "Provided email-address is too long" : "Eingegebene E-Mail-Adresse ist zu lang", "User-Session unexpectedly expired" : "Sitzung unerwartet abgelaufen", "Provided email-address is not valid" : "Angegebene E-Mail-Adresse ist ungültig", "%s has published the calendar »%s«" : "%s hat den Kalender »%s« veröffentlicht", - "Unexpected error sending email. Please contact your administrator." : "Unerwarteter Fehler beim Senden der E-Mail. Bitte kontaktieren Sie den Administrator.", - "Successfully sent email to %1$s" : "E-Mail erfolgreich versandt an %1$s", + "Unexpected error sending email. Please contact your administrator." : "Unerwarteter Fehler beim Senden der E-Mail. Bitte kontaktieren Sie die Administration.", + "Successfully sent email to %1$s" : "E-Mail versandt an %1$s", "Hello," : "Hallo,", "We wanted to inform you that %s has published the calendar »%s«." : "Information: %s hat den Kalender »%s« veröffentlicht.", "Open »%s«" : "»%s« öffnen", "Cheers!" : "Noch einen schönen Tag!", "Upcoming events" : "Anstehende Termine", + "No more events today" : "Heute keine weiteren Termine", + "No upcoming events" : "Keine anstehenden Termine", + "More events" : "Weitere Termine", + "%1$s with %2$s" : "%1$s mit %2$s", + "Calendar" : "Kalender", + "New booking {booking}" : "Neue Buchung {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) hat den Termin \"{config_display_name}\" am {date_time} gebucht.", "Appointments" : "Termine", "Schedule appointment \"%s\"" : "Termin planen \"%s\"", "Schedule an appointment" : "Vereinbaren Sie einen Termin", - "Prepare for %s" : "Bereiten Sie sich auf %s vor", - "Follow up for %s" : "Nachverfolgung für %s", - "Your appointment \"%s\" needs confirmation" : "Ihr Termin \"%s\" benötigt eine Bestätigung", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Vorbereitung auf %s", + "Follow up for %s" : "Nachbereitung für %s", + "Your appointment \"%s\" with %s needs confirmation" : "Für Ihre Terminvereinbarung \"%s\" mit %s steht die Bestätigung noch aus.", "Dear %s, please confirm your booking" : "Sehr geehrte/r %s, bitte bestätigen Sie die Terminbuchung", "Confirm" : "Bestätigen", + "Appointment with:" : "Termin mit:", + "Description:" : "Beschreibung:", "This confirmation link expires in %s hours." : "Dieser Bestätigungslink läuft in %s Stunden ab.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Wenn Sie den Termin doch noch absagen möchten, wenden Sie sich bitte an Ihren Organisator.", - "Appointment:" : "Termin:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Wenn Sie den Termin dennoch stornieren möchten, wenden Sie sich bitte an Ihren Organisator, indem Sie auf diese E-Mail antworten oder dessen Profilseite besuchen.", + "Your appointment \"%s\" with %s has been accepted" : "Ihre Terminvereinbarung \"%s\" mit %s wurde angenommen.", + "Dear %s, your booking has been accepted." : "Hallo %s, Ihre Buchung wurde akzeptiert.", + "Appointment for:" : "Termin für:", "Date:" : "Datum:", + "You will receive a link with the confirmation email" : "Mit der Bestätigungs-E-Mail erhalten Sie einen Link", "Where:" : "Wo:", - "Description:" : "Beschreibung:", - "Calendar" : "Kalender", + "Comment:" : "Kommentar:", + "You have a new appointment booking \"%s\" from %s" : "Sie haben eine neue Terminbuchung \"%s\" von %s", + "Dear %s, %s (%s) booked an appointment with you." : "Hallo %s, %s (%s) hat einen Termin mit Ihnen gebucht.", "A Calendar app for Nextcloud" : "Eine Kalender-App für Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Die Calendar-App ist die Oberfläche für Nextclouds CalDAV-Server. Termine können auf einfache Weise über verschiedene Geräte hinweg mit Nextcloud synchronisiert und online bearbeitet werden.\n\n* 🚀 ** Integration mit anderen Nextcloud Apps!** Aktuell Kontakte - weitere folgen.\n* 🌐 **WebCal-Unterstützung!** Möchten Sie die Spieltage Ihres Lieblingsteams in Ihrem Kalender verfolgen? Kein Problem!\n* 🙋 **Teilnehmer!** Laden Sie Teilnehmer zu Ihren Terminen ein.\n* ⌚️ **Frei/Besetzt:** Sehen Sie, wann Ihre Teilnehmer für ein Treffen verfügbar sind\n* ⏰ **Erinnerungen!** Erhalten Sie Alarme für Termine innerhalb Ihres Browsers und per E-Mail.\n* 🔍 Suche! Finden Sie Ihre Termine ganz einfach\n* ☑️ Aufgaben! Sehen Sie Ihre Aufgaben mit Fälligkeitsdatum direkt in Ihrem Kalender\n* 🙈 **Wir erfinden das Rad nicht neu!** Die App basiert auf den großartigen [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) und [fullcalendar](https://github.com/fullcalendar/fullcalendar) Bibliotheken.", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Eine Kalender-App für Nextcloud. Termine von verschiedenen Geräten ganz einfach mit Ihrer Nextcloud synchronisieren und online bearbeiten.\n\n* 🚀 **Integration mit anderen Nextcloud-Apps!** Wie Kontakte, Talk, Aufgaben, Deck und Kreise\n* 🌐 **WebCal-Unterstützung!** Sollen die Spieltage Ihrer Lieblingsmannschaft in Ihrem Kalender stehen? Kein Problem!\n* 🙋 **Teilnehmer!** Laden Sie Personen zu Ihren Veranstaltungen ein.\n* ⌚ **Frei/Beschäftigt!** Sehen Sie, wann Ihre Teilnehmer verfügbar sind.\n* ⏰ **Erinnerungen!** Erhalten Sie Benachrichtigungen für Veranstaltungen direkt im Browser und per E-Mail.\n* 🔍 **Suche!** Finden Sie Ihre Veranstaltungen ganz einfach.\n* ☑️ **Aufgaben!** Sehen Sie Aufgaben oder Karten mit Fälligkeitsdatum direkt im Kalender.\n* 🔈 **Chatrooms!** Erstellen Sie beim Buchen eines Meetings mit nur einem Klick einen zugehörigen Chatroom.\n* 📆 **Terminbuchung** Senden Sie Personen einen Link, damit sie [mit dieser App](https://apps.nextcloud.com/apps/appointments) einen Termin mit Ihnen buchen können.\n* 📎 **Anhänge!** Fügen Sie Veranstaltungsanhänge hinzu, laden Sie sie hoch und sehen Sie sie ein.\n* 🙈 **Wir erfinden das Rad nicht neu!** Basierend auf den großartigen [c-dav Bibliothek](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) und [fullcalendar](https://github.com/fullcalendar/fullcalendar) Bibliotheken.", "Previous day" : "Vorheriger Tag", "Previous week" : "Vorherige Woche", + "Previous year" : "Vergangenes Jahr", "Previous month" : "Vorheriger Monat", "Next day" : "Nächster Tag", "Next week" : "Nächste Woche", + "Next year" : "Nächstes Jahr", "Next month" : "Nächster Monat", - "New event" : "Neuer Termin", + "Create new event" : "Neuen Termin erstellen", + "Event" : "Ereignis", "Today" : "Heute", "Day" : "Tag", "Week" : "Woche", "Month" : "Monat", + "Year" : "Jahr", "List" : "Liste", + "Appointment link was copied to clipboard" : "Termin-Link wurde in die Zwischenablage kopiert", + "Appointment link could not be copied to clipboard" : "Termin-Link konnte nicht in die Zwischenablage kopiert werden", "Preview" : "Vorschau", "Copy link" : "Link kopieren", "Edit" : "Bearbeiten", "Delete" : "Löschen", - "Appointment link was copied to clipboard" : "Termin-Link wurde in die Zwischenablage kopiert", - "Appointment link could not be copied to clipboard" : "Termin-Link konnte nicht in die Zwischenablage kopiert werden", - "Add new" : "Neu hinzufügen", - "Untitled calendar" : "Unbenannter Kalender", - "Edit name" : "Name bearbeiten", - "Saving name …" : "Speichere Namen …", - "Edit color" : "Farbe bearbeiten", - "Saving color …" : "Speichere Farbe …", - "Copy private link" : "Privaten Link kopieren", - "Export" : "Exportieren", - "Unshare from me" : "Nicht mehr mit mir teilen", + "Appointment schedules" : "Terminpläne", + "Create new" : "Neu erstellen", "Disable calendar \"{calendar}\"" : "Kalender \"{calendar}\" deaktivieren", "Disable untitled calendar" : "Kalender ohne Titel deaktivieren", "Enable calendar \"{calendar}\"" : "Kalender \"{calendar}\" aktivieren", "Enable untitled calendar" : "Kalender ohne Titel aktivieren", "An error occurred, unable to change visibility of the calendar." : "Es ist ein Fehler aufgetreten, die Sichtbarkeit des Kalenders konnte nicht geändert werden.", - "An error occurred, unable to delete the calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht gelöscht werden.", - "Calendar link copied to clipboard." : "Kalender-Link in die Zwischenablage kopiert.", - "Calendar link could not be copied to clipboard." : "Kalender-Link konnte nicht in die Zwischenablage kopiert werden.", - "An error occurred, unable to rename the calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht umbenannt werden.", - "An error occurred, unable to change the calendar's color." : "Es ist ein Fehler aufgetreten, die Farbe des Kalenders konnte nicht geändert werden.", + "Untitled calendar" : "Unbenannter Kalender", + "Shared with you by" : "Mit Ihnen geteilt von", + "Edit and share calendar" : "Kalender bearbeiten und teilen", + "Edit calendar" : "Kalender bearbeiten", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Kalenderfreigabe wird in {countdown} Sekunde beendet","Kalenderfreigabe wird in {countdown} Sekunden beendet"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Kalender wird in {countdown} Sekunden gelöscht","Kalender wird in {countdown} Sekunden gelöscht"], - "Share link" : "Link teilen", - "Publish calendar" : "Kalender veröffentlichen", - "Publishing calendar" : "Veröffentliche Kalender", - "Copy public link" : "Öffentlichen Link kopieren", - "Send link to calendar via email" : "Link zum Kalender als E-Mail verschicken", - "Enter one address" : "Eine einzige Adresse eingeben", - "Sending email …" : "Sende E-Mail …", - "Copy subscription link" : "Abonnement-Link kopieren", - "Copying link …" : "Link wird kopiert …", - "Copied link" : "Link kopiert", - "Could not copy link" : "Link konnte nicht kopiert werden", - "Copy embedding code" : "Einbettungscode kopieren", - "Copying code …" : "Kopiere Code …", - "Copied code" : "Code kopiert", - "Could not copy code" : "Code konnte nicht kopiert werden", - "Delete share link" : "Freigabe-Link löschen", - "Deleting share link …" : "Freigabe-Link löschen …", - "An error occurred, unable to publish calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht veröffentlicht werden.", - "An error occurred, unable to send email." : "Es ist ein Fehler aufgetreten, E-Mail konnte nicht versandt werden.", - "Embed code copied to clipboard." : "Einbettungscode in die Zwischenablage kopiert.", - "Embed code could not be copied to clipboard." : "Einbettungscode konnte nicht in die Zwischenablage kopiert werden.", - "Unpublishing calendar failed" : "Aufhebung der Veröffentlichung des Kalenders fehlgeschlagen", - "Share with users or groups" : "Mit Benutzern oder Gruppen teilen", - "No users or groups" : "Keine Benutzer oder Gruppen", - "can edit" : "kann bearbeiten", - "Unshare with {displayName}" : "Mit {displayName} nicht mehr teilen", - "An error occurred, unable to change the unshare the calendar." : "Es ist ein Fehler aufgetreten, die Freigabe des Kalenders konnte nicht aufgehoben werden.", - "An error occurred, unable to change the permission of the share." : "Es ist ein Fehler aufgetreten, die Berechtigung für die Freigabe konnte nicht geändert werden.", - "+ New calendar" : "+ Neuer Kalender", + "An error occurred, unable to create the calendar." : "Es ist ein Fehler aufgetreten, der Kalender konnte nicht erstellt werden.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Bitte geben Sie einen gültigen Link ein (beginnend mit http://, https://, webcal://, oder webcals://)", + "Calendars" : "Kalender", + "Add new" : "Neu hinzufügen", "New calendar" : "Neuer Kalender", "Name for new calendar" : "Name für neuen Kalender", "Creating calendar …" : "Erstelle Kalender …", "New calendar with task list" : "Neuer Kalender mit Aufgabenliste", "New subscription from link (read-only)" : "Neues Abonnement aus Link (schreibgeschützt)", "Creating subscription …" : "Erstelle Abonnement …", - "An error occurred, unable to create the calendar." : "Es ist ein Fehler aufgetreten, der Kalender konnte nicht erstellt werden.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Bitte geben Sie einen gültigen Link ein (beginnend mit http://, https://, webcal://, oder webcals://)", + "Add public holiday calendar" : "Feiertagskalender hinzufügen", + "Add custom public calendar" : "Benutzerdefinierten öffentlichen Kalender hinzufügen", + "Calendar link copied to clipboard." : "Kalender-Link in die Zwischenablage kopiert.", + "Calendar link could not be copied to clipboard." : "Kalender-Link konnte nicht in die Zwischenablage kopiert werden.", + "Copy subscription link" : "Abonnement-Link kopieren", + "Copying link …" : "Link wird kopiert …", + "Copied link" : "Link kopiert", + "Could not copy link" : "Link konnte nicht kopiert werden", + "Export" : "Exportieren", + "Untitled item" : "Eintrag ohne Namen", + "Unknown calendar" : "Unbekannter Kalender", + "Could not load deleted calendars and objects" : "Gelöschte Kalender und Objekte konnten nicht geladen werden", + "Could not delete calendar or event" : "Kalender oder Termin konnte nicht gelöscht werden", + "Could not restore calendar or event" : "Kalender oder Termin konnte nicht wiederhergestellt werden", + "Do you really want to empty the trash bin?" : "Möchten Sie wirklich den Papierkorb leeren?", + "Empty trash bin" : "Papierkorb leeren", "Trash bin" : "Papierkorb", - "Loading deleted elements." : "Lade gelöschte Elemente.", - "You do not have any deleted elements." : "Sie haben keine gelöschten Elemente.", + "Loading deleted items." : "Lade gelöschte Elemente.", + "You do not have any deleted items." : "Sie haben keine gelöschten Elemente.", "Name" : "Name", "Deleted" : "Gelöscht", "Restore" : "Wiederherstellen", "Delete permanently" : "Endgültig löschen", +<<<<<<< HEAD + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Elemente im Papierkorb werden nach {numDays} Tag gelöscht","Elemente im Papierkorb werden nach {numDays} Tagen gelöscht"], +======= "Empty trash bin" : "Papierkorb leeren", "Untitled element" : "Unbenanntes Element", "Unknown calendar" : "Unbekannter Kalender", "Could not load deleted calendars and objects" : "Gelöschte Kalender und Objekte konnten nicht geladen werden", "Could not restore calendar or event" : "Kalender oder Termin konnte nicht wiederhergestellt werden", "Do you really want to empty the trash bin?" : "Möchten Sie wirklich den Papierkorb leeren?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Elemente im Papierkorb werden nach {numDays} Tag gelöscht ","Elemente im Papierkorb werden nach {numDays} Tagen gelöscht"], + "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Elemente im Papierkorb werden nach {numDays} Tag gelöscht","Elemente im Papierkorb werden nach {numDays} Tagen gelöscht"], +>>>>>>> origin/main "Could not update calendar order." : "Kalenderreihenfolge konnte nicht aktualisiert werden.", + "Shared calendars" : "Freigegebene Kalender", + "Deck" : "Deck", + "Hidden" : "Verborgen", + "Internal link" : "Interner Link", + "A private link that can be used with external clients" : "Ein privater Link, der mit externen Clients verwendet werden kann", + "Copy internal link" : "Internen Link kopieren", + "An error occurred, unable to publish calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht veröffentlicht werden.", + "An error occurred, unable to send email." : "Es ist ein Fehler aufgetreten, E-Mail konnte nicht versandt werden.", + "Embed code copied to clipboard." : "Einbettungscode in die Zwischenablage kopiert.", + "Embed code could not be copied to clipboard." : "Einbettungscode konnte nicht in die Zwischenablage kopiert werden.", + "Unpublishing calendar failed" : "Aufhebung der Veröffentlichung des Kalenders fehlgeschlagen", + "Share link" : "Link teilen", + "Copy public link" : "Öffentlichen Link kopieren", + "Send link to calendar via email" : "Link zum Kalender als E-Mail verschicken", + "Enter one address" : "Eine einzige Adresse eingeben", + "Sending email …" : "Sende E-Mail …", + "Copy embedding code" : "Einbettungscode kopieren", + "Copying code …" : "Kopiere Code …", + "Copied code" : "Code kopiert", + "Could not copy code" : "Code konnte nicht kopiert werden", + "Delete share link" : "Freigabe-Link löschen", + "Deleting share link …" : "Freigabe-Link löschen …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "Es ist ein Fehler beim Aufheben der Freigabe des Kalenders aufgetreten.", + "An error occurred, unable to change the permission of the share." : "Es ist ein Fehler aufgetreten, die Berechtigung für die Freigabe konnte nicht geändert werden.", + "can edit" : "kann bearbeiten", + "Unshare with {displayName}" : "Mit {displayName} nicht mehr teilen", + "Share with users or groups" : "Mit Benutzern oder Gruppen teilen", + "No users or groups" : "Keine Benutzer oder Gruppen", + "Failed to save calendar name and color" : "Kalendername und -farbe konnten nicht gespeichert werden", + "Calendar name …" : "Kalendername …", + "Never show me as busy (set this calendar to transparent)" : "Mich nie als beschäftigt anzeigen (diesen Kalender auf transparent setzen)", + "Share calendar" : "Kalender teilen", + "Unshare from me" : "Nicht mehr mit mir teilen", + "Save" : "Speichern", "Import calendars" : "Kalender importieren", "Please select a calendar to import into …" : "Bitte wählen Sie einen Kalender aus, in den importiert werden soll …", "Filename" : "Dateiname", - "Calendar to import into" : "Kalender in den importiert werden soll.", + "Calendar to import into" : "Kalender, in den importiert werden soll", "Cancel" : "Abbrechen", "_Import calendar_::_Import calendars_" : ["Kalender importieren","Kalender importieren"], + "Select the default location for attachments" : "Standard-Speicherort für Anhänge auswählen", + "Pick" : "Auswählen", + "Invalid location selected" : "Ungültigen Speicherort ausgewählt", + "Attachments folder successfully saved." : "Anhangsordner gespeichert.", + "Error on saving attachments folder." : "Fehler beim Speichern des Anhangsordners.", + "Default attachments location" : "Standard-Speicherort für Anhänge", "{filename} could not be parsed" : "{filename} konnte nicht analysiert werden", "No valid files found, aborting import" : "Keine gültige Dateien gefunden, Import wird abgebrochen.", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n Termin importiert","%n Termine importiert"], "Import partially failed. Imported {accepted} out of {total}." : "Der Import ist teilweise fehlgeschlagen. {accepted} von {total} importiert.", - "_Successfully imported %n event_::_Successfully imported %n events_" : ["Erfolgreich %n Termin importiert","Erfolgreich %n Termine importiert"], "Automatic" : "Automatisch", "Automatic ({detected})" : "Automatisch ({detected})", "New setting was not saved successfully." : "Neue Einstellung konnte nicht gespeichert werden.", - "Shortcut overview" : "Übersicht der Tastaturkürzel", - "or" : "oder", "Navigation" : "Navigation", "Previous period" : "Vorherige Zeitspanne", "Next period" : "Nächste Zeitspanne", @@ -139,33 +182,42 @@ "Day view" : "Tagesansicht", "Week view" : "Wochenansicht", "Month view" : "Monatsansicht", + "Year view" : "Jahresansicht", "List view" : "Listenansicht", "Actions" : "Aktionen", "Create event" : "Termin erstellen", "Show shortcuts" : "Tastaturkürzel anzeigen", +<<<<<<< HEAD "Editor" : "Editor", "Close editor" : "Bearbeitung schließen", - "Save edited event" : "Bearbeitetes Ereignis speichern", - "Delete edited event" : "Bearbeitetes Ereignis löschen", + "Save edited event" : "Bearbeiteten Termin speichern", + "Delete edited event" : "Bearbeiteten Termin löschen", "Duplicate event" : "Termin duplizieren", + "Shortcut overview" : "Übersicht der Tastaturkürzel", + "or" : "oder", + "Calendar settings" : "Kalender-Einstellungen", + "At event start" : "Zu Beginn des Termins", + "No reminder" : "Keine Erinnerung", + "Failed to save default calendar" : "Standardkalender konnte nicht gespeichert werden", + "CalDAV link copied to clipboard." : "CalDAV-Link in die Zwischenablage kopiert.", + "CalDAV link could not be copied to clipboard." : "CalDAV-Link konnte nicht in die Zwischenablage kopiert werden.", +======= +>>>>>>> origin/main "Enable birthday calendar" : "Geburtstagskalender aktivieren", "Show tasks in calendar" : "Aufgaben im Kalender anzeigen", "Enable simplified editor" : "Einfachen Editor aktivieren", - "Limit visible events per view" : "Sichtbare Ereignisse pro Ansicht begrenzen", + "Limit the number of events displayed in the monthly view" : "Anzahl der in der Monatsansicht angezeigten Termine begrenzen", "Show weekends" : "Wochenenden anzeigen", "Show week numbers" : "Kalenderwochen anzeigen", "Time increments" : "Zeitschritte", + "Default calendar for incoming invitations" : "Standardkalender für eingehende Einladungen", "Default reminder" : "Standarderinnerung", "Copy primary CalDAV address" : "Primäre CalDAV-Adresse kopieren", "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV-Adresse kopieren", "Personal availability settings" : "Persönliche Verfügbarkeitseinstellungen", "Show keyboard shortcuts" : "Tastaturkürzel anzeigen", - "Calendar settings" : "Kalender-Einstellungen", - "No reminder" : "Keine Erinnerung", - "CalDAV link copied to clipboard." : "CalDAV-Link in die Zwischenablage kopiert.", - "CalDAV link could not be copied to clipboard." : "CalDAV-Link konnte nicht in die Zwischenablage kopiert werden.", - "Appointment was created successfully" : "Termin wurde erstellt", - "Appointment was updated successfully" : "Termin wurde aktualisiert", + "Appointment schedule successfully created" : "Terminplan wurde erstellt", + "Appointment schedule successfully updated" : "Terminplan wurde aktualisiert", "_{duration} minute_::_{duration} minutes_" : ["{duration} Minute","{duration} Minuten"], "0 minutes" : "0 Minuten", "_{duration} hour_::_{duration} hours_" : ["{duration} Stunde","{duration} Stunden"], @@ -176,7 +228,14 @@ "To configure appointments, add your email address in personal settings." : "Um Termine zu vereinbaren, fügen Sie Ihre E-Mail-Adresse in den persönlichen Einstellungen hinzu.", "Public – shown on the profile page" : "Öffentlich – auf der Profilseite angezeigt", "Private – only accessible via secret link" : "Privat – nur über geheimen Link erreichbar", + "Appointment schedule saved" : "Terminplan gespeichert", + "Create appointment schedule" : "Terminplan erstellen", + "Edit appointment schedule" : "Terminplan bearbieten", + "Update" : "Aktualisieren", + "Appointment name" : "Terminname", "Location" : "Ort", + "Create a Talk room" : "Einen Talk-Raum erstellen", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Für jeden gebuchten Termin wird ein eindeutiger Link generiert und mit der Bestätigungs-E-Mail versendet", "Description" : "Beschreibung", "Visibility" : "Sichtbarkeit", "Duration" : "Dauer", @@ -194,6 +253,7 @@ "Friday" : "Freitag", "Saturday" : "Samstag", "Sunday" : "Sonntag", + "Weekdays" : "Wochentage", "Add time before and after the event" : "Zeit vor und nach dem Termin hinzufügen", "Before the event" : "Vor dem Termin", "After the event" : "Nach dem Termin", @@ -201,136 +261,188 @@ "Minimum time before next available slot" : "Mindestzeit bis zur nächsten verfügbaren Zeitfenster", "Max slots per day" : "Maximale Zeitfenster pro Tag", "Limit how far in the future appointments can be booked" : "Begrenzung, wie weit in der Zukunft Termine gebucht werden können", +<<<<<<< HEAD + "It seems a rate limit has been reached. Please try again later." : "Es scheint, dass ein Ratenlimit erreicht wurde. Bitte versuchen Sie es später noch einmal.", + "Please confirm your reservation" : "Bitte bestätigen Sie Ihre Reservierung", +======= "Create appointment" : "Termin erstellen", "Edit appointment" : "Termin bearbeiten", "Save" : "Speichern", "Update" : "Aktualisieren", - "Please confirm your reservation" : "Bitte bestätigen Sie Ihre Reservierung", + "Your appointment is booked" : "Ihr Termin ist gebucht", +>>>>>>> origin/main "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Wir haben Ihnen eine E-Mail mit Details gesendet. Bitte bestätigen Sie Ihren Termin über den Link in der E-Mail. Sie können diese Seite jetzt schließen.", "Your name" : "Ihr Name", "Your email address" : "Ihre E-Mail-Adresse", - "Please share anything that will help prepare for our meeting" : "Bitte senden Sie uns alles, was zur Vorbereitung unseres Treffens beiträgt.", + "Please share anything that will help prepare for our meeting" : "Bitte senden Sie uns alles, was zur Vorbereitung unseres Treffens beiträgt", "Could not book the appointment. Please try again later or contact the organizer." : "Termin konnte nicht gebucht werden. Bitte versuchen Sie es später erneut oder wenden Sie sich an den Organisator.", - "Book the appointment" : "Den Termin buchen", - "Reminder" : "Erinnerung", + "Back" : "Zurück", + "Book appointment" : "Termin buchen", + "Error fetching Talk conversations." : "Fehler beim Abruf der Talk-Unterhaltungen.", + "Conversation does not have a valid URL." : "Die Unterhaltung hat keine gültige URL.", + "Successfully added Talk conversation link to location." : "Talk-Unterhaltungslink wurde zum Standort hinzugefügt.", + "Successfully added Talk conversation link to description." : "Talk-Unterhaltungslink wurde zur Beschreibung hinzugefügt.", + "Failed to apply Talk room." : "Talk-Raum konnte nicht angewendet werden", + "Error creating Talk conversation" : "Fehler beim Erstellen der Talk-Unterhaltung", + "Select a Talk Room" : "Einen Talk-Raum wählen", + "Add Talk conversation" : "Talk-Unterhaltung hinzufügen", + "Fetching Talk rooms…" : "Talk-Räume abrufen…", + "No Talk room available" : "Kein Talk-Raum verfügbar", + "Create a new conversation" : "Neue Unterhaltung erstellen", + "Select conversation" : "Unterhaltung auswählen", + "on" : "am", + "at" : "um", "before at" : "vorher um", "Notification" : "Benachrichtigung", "Email" : "E-Mail", "Audio notification" : "Audio-Benachrichtigung", "Other notification" : "Andere Benachrichtigung", "Relative to event" : "Bezogen auf Termin", - "On date" : "Zum Datum", + "On date" : "Am Datum", "Edit time" : "Zeit ändern", "Save time" : "Zeit speichern", "Remove reminder" : "Erinnerung entfernen", - "on" : "am", - "at" : "um", - "+ Add reminder" : "+ Erinnerung hinzufügen", "Add reminder" : "Erinnerung hinzufügen", - "_second_::_seconds_" : ["Sekunde","Sekunden"], - "_minute_::_minutes_" : ["Minute","Minuten"], - "_hour_::_hours_" : ["Stunde","Stunden"], - "_day_::_days_" : ["Tag","Tage"], - "_week_::_weeks_" : ["Woche","Wochen"], + "seconds" : "Sekunden", + "minutes" : "Minuten", + "hours" : "Stunden", + "days" : "Tage", + "weeks" : "Wochen", + "Choose a file to add as attachment" : "Wählen Sie eine Datei, die als Anhang angefügt werden soll", + "Choose a file to share as a link" : "Wählen Sie eine Datei, die als Link geteilt werden soll", + "Attachment {name} already exist!" : "Anhang {name} existiert bereits", + "Could not upload attachment(s)" : "Anhänge konnten nicht hochgeladen werden", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Sie sind dabei, eine Datei herunterzuladen. Bitte den Dateinamen vor dem Öffnen prüfen. Möchten Sie fortfahren?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Sie sind dabei, zu {host} zu navigieren. Möchten Sie wirklich fortfahren? Link: {link}", + "Proceed" : "Fortsetzen", + "No attachments" : "Keine Anhänge", + "Add from Files" : "Aus Dateien auswählen", + "Upload from device" : "Von Gerät hochladen", + "Delete file" : "Datei löschen", + "Confirmation" : "Bestätigung", + "_{count} attachment_::_{count} attachments_" : ["{count} Anhang","{count} Anhänge"], "Suggested" : "Vorgeschlagen", "Available" : "Verfügbar", - "Not available" : "Nicht verfügbar", - "Checking availability" : "Verfügbarkeit prüfen", "Invitation accepted" : "Einladung angenommen", "Accepted {organizerName}'s invitation" : "Einladung von {organizerName} angenommen", + "Participation marked as tentative" : "Teilnahme als vorläufig markiert", + "Invitation is delegated" : "Einladung ist delegiert", + "Not available" : "Nicht verfügbar", "Invitation declined" : "Einladung abgelehnt", "Declined {organizerName}'s invitation" : "Einladung von {organizerName} abgelehnt", - "Invitation is delegated" : "Einladung ist delegiert", - "Participation marked as tentative" : "Teilnahme als vorläufig markiert", - "Invitation sent" : "Einladung verschickt", + "Availability will be checked" : "Verfügbarkeit wird geprüft", + "Invitation will be sent" : "Einladung wird verschickt", + "Failed to check availability" : "Verfügbarkeit konnte nicht geprüft werden", + "Failed to deliver invitation" : "Einladung konnte nicht zugestellt werden", + "Awaiting response" : "Warte auf Antwort", + "Checking availability" : "Verfügbarkeit prüfen", "Has not responded to {organizerName}'s invitation yet" : "Hat noch nicht auf die Einladung von {organizerName} geantwortet", - "Availability of attendees, resources and rooms" : "Verfügbarkeit von Teilnehmern, Resourcen und Räumen", + "Suggested times" : "Vorgeschlagene Zeiten", + "chairperson" : "Vorsitz", + "required participant" : "Benötigter Teilnehmer", + "non-participant" : "Nicht-Teilnehmer", + "optional participant" : "Optionaler Teilnehmer", "{organizer} (organizer)" : "{organizer} (Organisator)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Verfügbarkeit von Teilnehmern, Resourcen und Räumen", + "Suggestion accepted" : "Vorschlag angenommen", + "Previous date" : "Vorheriger Termin", + "Next date" : "Nächster Termin", + "Legend" : "Legende", + "Out of office" : "Nicht im Büro", + "Attendees:" : "Teilnehmer:", + "Done" : "Erledigt", + "Search room" : "Raum suchen", + "Room name" : "Raumname", + "Check room availability" : "Verfügbarkeit des Raums prüfen", "Free" : "Frei", "Busy (tentative)" : "Beschäftigt (vorläufig)", "Busy" : "Beschäftigt", - "Out of office" : "Nicht im Büro", "Unknown" : "Unbekannt", - "Accept" : "Annehmen", - "Decline" : "Ablehnen", - "Tentative" : "Vorläufig", + "Find a time" : "Zeit finden", "The invitation has been accepted successfully." : "Die Einladung wurde angenommen.", - "Failed to accept the invitation." : "Einladung konnte nicht angenommen werden.", + "Failed to accept the invitation." : "Einladung konnte nicht angenommen werden", "The invitation has been declined successfully." : "Die Einladung wurde abgelehnt.", - "Failed to decline the invitation." : "Fehler beim Ablehnen der Einladung.", + "Failed to decline the invitation." : "Einladung konnte nicht abgelehnt werden", "Your participation has been marked as tentative." : "Ihre Teilnahme wurde als vorläufig markiert.", - "Failed to set the participation status to tentative." : "Fehler beim Markieren Ihrer Teilnahme als vorläufig.", - "Create Talk room for this event" : "Besprechungsraum für diesen Termin erstellen", - "Show busy times" : "Belegte Zeiten anzeigen", + "Failed to set the participation status to tentative." : "Ihre Teilnahme konnte nicht als vorläufig markiert werden.", + "Accept" : "Annehmen", + "Decline" : "Ablehnen", + "Tentative" : "Vorläufig", "No attendees yet" : "Keine Teilnehmer bislang", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} eingeladen, {confirmedCount} bestätigt", + "Please add at least one attendee to use the \"Find a time\" feature." : "Zum Verwenden der Funktion \"Zeit finden\", bitte mindestens einen Teilnehmer hinzufügen.", + "Successfully appended link to talk room to location." : "Link des Talk-Raums zur Ortsangabe hinzugefügt.", "Successfully appended link to talk room to description." : "Link zur Beschreibung des Besprechungsraums hinzugefügt.", "Error creating Talk room" : "Fehler beim Erstellen des Besprechungsraumes", - "Send email" : "E-Mail senden", + "Attendees" : "Teilnehmer", + "_%n more guest_::_%n more guests_" : ["%n weiterer Gast","%n weitere Gäste"], + "Remove group" : "Gruppe entfernen", + "Remove attendee" : "Teilnehmer entfernen", + "Request reply" : "Antwort anfordern", "Chairperson" : "Vorsitz", "Required participant" : "Benötigter Teilnehmer", "Optional participant" : "Optionaler Teilnehmer", "Non-participant" : "Nicht-Teilnehmer", - "Remove attendee" : "Teilnehmer entfernen", - "Search for emails, users or contacts" : "Suche nach E-Mails, Benutzern oder Kontakten", + "_%n member_::_%n members_" : ["%n Mitglied","%n Mitglieder"], + "Search for emails, users, contacts, contact groups or teams" : "Suche nach E-Mails, Benutzern, Kontakten, Kontaktgruppen oder Teams", "No match found" : "Keine Übereinstimmung gefunden", + "Note that members of circles get invited but are not synced yet." : "Beachten Sie, dass Mitglieder von Kreisen eingeladen werden, aber noch nicht synchronisiert sind.", + "Note that members of contact groups get invited but are not synced yet." : "Beachten Sie, dass Mitglieder von Kontaktgruppen eingeladen werden, aber noch nicht synchronisiert sind.", "(organizer)" : "(Organisator)", + "Make {label} the organizer" : "{label} zum Organisator ernennen", + "Make {label} the organizer and attend" : "{label} zum Organisator ernennen und teilnehmen", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Um das Versenden von Einladungen und deren Antworten zu ermöglichen, [linkopen] fügen Sie Ihre E-Mail-Adresse in den persönlichen Einstellungen hinzu.[linkclose].", "Remove color" : "Farbe entfernen", "Event title" : "Titel des Termins", - "All day" : "Ganztägig", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Die Einstellung ganztägig kann für sich wiederholende Termine nicht geändert werden.", - "from {startDate}" : "von {startDate}", - "from {startDate} at {startTime}" : "von {startDate} um {startTime}", - "to {endDate}" : "bis {endDate}", - "to {endDate} at {endTime}" : "bis {endDate} um {endTime}", + "From" : "Von", + "To" : "Bis", "Repeat" : "Wiederholen", - "End repeat" : "Wiederholung beenden", - "Select to end repeat" : "Auswählen um Wiederholung beenden", + "Repeat event" : "Termin wiederholen", + "_time_::_times_" : ["Mal","Mal"], "never" : "Niemals", - "on date" : "zum Datum", + "on date" : "am Datum", "after" : "Nach", - "_time_::_times_" : ["Mal","Mal"], + "End repeat" : "Wiederholung beenden", + "Select to end repeat" : "Auswählen um Wiederholung beenden", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Dieser Termin ist die Wiederholungsausnahme eines sich wiederholenden Termins. Sie können keine Wiederholungsregel hinzufügen.", "first" : "ersten", - "third" : "dritten", - "fourth" : "vierten", - "fifth" : "fünften", - "second to last" : "vorletzten", - "last" : "letzten", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Änderungen an der Wiederholungsregel werden nur auf dieses und alle zukünftigen Vorkommen angewendet.", "Repeat every" : "Wiederhole jeden", "By day of the month" : "Nach Tag des Monats", "On the" : "Am", + "_day_::_days_" : ["Tag","Tage"], + "_week_::_weeks_" : ["Woche","Wochen"], "_month_::_months_" : ["Monat","Monate"], "_year_::_years_" : ["Jahr","Jahre"], + "On specific day" : "An einem bestimmten Tag", "weekday" : "Wochentag", "weekend day" : "Wochenendtag", - "No recurrence" : "Keine Wiederholung", + "Does not repeat" : "Wiederholt sich nicht", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Die Wiederholungs-Definition dieses Termins wird nicht vollständig von Nextcloud unterstützt. Wenn Sie die Wiederholungs-Optionen bearbeiten, könnten bestimmte Wiederholungen verlorengehen.", - "Suggestions" : "Vorschläge", "No rooms or resources yet" : "Noch keine Räume oder Ressourcen", + "Resources" : "Ressourcen", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} Platz","{seatingCapacity} Plätze"], "Add resource" : "Ressource hinzufügen", "Has a projector" : "Hat einen Projektor", "Has a whiteboard" : "Hat ein Whiteboard", "Wheelchair accessible" : "Barrierefrei", "Remove resource" : "Ressource entfernen", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} Platz","{seatingCapacity} Plätze"], - "Projector" : "Projektor", - "Whiteboard" : "Whiteboard", "Search for resources or rooms" : "Nach Ressourcen oder Räumen suchen", "available" : "Verfügbar", "unavailable" : "Nicht verfügbar", + "Show all rooms" : "Alle Räume anzeigen", + "Projector" : "Projektor", + "Whiteboard" : "Whiteboard", "Room type" : "Raum-Typ", "Any" : "Irgendein", "Minimum seating capacity" : "Mindestsitzplatzkapazität", - "More" : "Mehr", - "Update this occurrence" : "Dieses Vorkommen aktualisieren", + "More details" : "Weitere Einzelheiten", "Update this and all future" : "Aktualisiere dieses und alle Künftigen", + "Update this occurrence" : "Dieses Vorkommen aktualisieren", "Public calendar does not exist" : "Öffentlicher Kalender existiert nicht", "Maybe the share was deleted or has expired?" : "Vielleicht wurde die Freigabe gelöscht oder ist abgelaufen?", - "Please select a time zone:" : "Bitte eine Zeitzone wählen:", - "Pick a time" : "Zeit auswählen", - "Pick a date" : "Datum auswählen", "from {formattedDate}" : "Von {formattedDate}", "to {formattedDate}" : "bis {formattedDate}", "on {formattedDate}" : "am {formattedDate}", @@ -340,9 +452,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} um {formattedTime}", "Please enter a valid date" : "Bitte ein gültiges Datum angeben", "Please enter a valid date and time" : "Bitte gültiges Datum und Uhrzeit angeben", + "Select a time zone" : "Eine Zeitzone auswählen", + "Please select a time zone:" : "Bitte eine Zeitzone wählen:", + "Pick a time" : "Zeit auswählen", + "Pick a date" : "Datum auswählen", "Type to search time zone" : "Zum Suchen der Zeitzone tippen", "Global" : "Weltweit", - "Select date" : "Datum auswählen", + "Holidays in {region}" : "Feiertage in {region}", + "An error occurred, unable to read public calendars." : "Es ist ein Fehler aufgetreten, öffentliche Kalender können nicht gelesen werden.", + "An error occurred, unable to subscribe to calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht abonniert werden.", + "Public holiday calendars" : "Feiertagskalender", + "Public calendars" : "Öffentliche Kalender", + "No valid public calendars configured" : "Keine gültigen öffentlichen Kalender eingerichtet", + "Speak to the server administrator to resolve this issue." : "Sprechen Sie die Administration an, um dieses Problem zu lösen.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Feiertagskalender werden von Thunderbird bereitgestellt. Kalenderdaten werden von {website} heruntergeladen.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Diese öffentlichen Kalender werden von der Serveradministration vorgeschlagen. Kalenderdaten werden von der entsprechenden Webseite heruntergeladen.", + "By {authors}" : "Von {authors}", + "Subscribed" : "Abonniert", + "Subscribe" : "Abonnieren", + "Could not fetch slots" : "Abruf der Zeitfenster fehlgeschlagen", + "Select a date" : "Datum auswählen", "Select slot" : "Zeitfenster auswählen", "No slots available" : "Keine Zeitfenster verfügbar", "The slot for your appointment has been confirmed" : "Das Zeitfenster für Ihren Termin wurde bestätigt", @@ -359,24 +488,29 @@ "Personal" : "Persönlich", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Die automatische Erkennung der Zeitzone hat als Ergebnis UTC ermittelt.\nDies ist meist das Ergebnis von Sicherheitsmaßnahmen Ihres Webbrowsers.\nBitte stellen Sie Ihre Zeitzone manuell in den Kalendereinstellungen ein.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Die konfigurierte Zeitzone ({timezoneId}) wurde nicht gefunden. Rückfall auf UTC.\nBitte die Zeitzone in den Einstellungen ändern und melden dieses Problem.", - "No more events today" : "Heute keine weiteren Termine", - "No upcoming events" : "Keine anstehenden Termine", - "Create a new event" : "Neuen Termin erstellen", - "[Today]" : "[Heute]", - "[Tomorrow]" : "[Morgen]", - "[Yesterday]" : "[Gestern]", - "[Last] dddd" : "[Letzten] dddd", + "Availability of {displayName}" : "Verfügbarkeit von {displayName}", + "Edit event" : "Ereignis bearbeiten", "Event does not exist" : "Der Termin existiert nicht", "Duplicate" : "Duplizieren", "Delete this occurrence" : "Dieses Vorkommen löschen", "Delete this and all future" : "Dieses und alle Künftigen löschen", - "Details" : "Details", - "Attendees" : "Teilnehmer", - "Resources" : "Ressourcen", + "All day" : "Ganztägig", + "Modifications wont get propagated to the organizer and other attendees" : "Änderungen werden nicht an den Organisator und andere Teilnehmer weitergegeben", + "Managing shared access" : "Geteilten Zugriff verwalten", + "Deny access" : "Zugriff verweigern", + "Invite" : "Einladen", + "_User requires access to your file_::_Users require access to your file_" : ["Benutzer benötigen Zugang zu Ihrer Datei","Benutzer benötigen Zugang zu Ihren Dateien"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Anhang erfordert geteilten Zugriff","Anhänge erfordern geteilten Zugriff"], + "Untitled event" : "Unbenannter Termin", "Close" : "Schließen", - "Show more details" : "Weitere Einzelheiten anzeigen", + "Modifications will not get propagated to the organizer and other attendees" : "Änderungen werden nicht an den Organisator und andere Teilnehmer weitergegeben", "Subscribe to {name}" : "{name} abonnieren", +<<<<<<< HEAD "Export {name}" : "{name} exportieren", + "Show availability" : "Verfügbarkeit anzeigen", +======= + "Export {name}" : "Exportiere {name}", +>>>>>>> origin/main "Anniversary" : "Jahrestag", "Appointment" : "Verabredung", "Business" : "Geschäftlich", @@ -404,7 +538,6 @@ "on {time}" : "um {time}", "on {time} ({timezoneId})" : "um {time} ({timezoneId})", "Week {number} of {year}" : "Woche {number} aus {year}", - "Does not repeat" : "Wiederholt sich nicht", "Daily" : "Täglich", "Weekly" : "Wöchentlich", "Monthly" : "Monatlich", @@ -416,24 +549,30 @@ "_on {weekday}_::_on {weekdays}_" : ["am {weekday}","am {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["am Tag {dayOfMonthList}","an den Tagen {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "am {ordinalNumber} {byDaySet}", - "in {monthNames}" : "im {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "im {monthNames} am {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "im {monthNames} am {ordinalNumber} {byDaySet}", "until {untilDate}" : "bis {untilDate}", "_%n time_::_%n times_" : ["%n mal","%n mal"], - "Untitled event" : "Unbenannter Termin", + "second" : "zweiten", + "third" : "dritten", + "fourth" : "vierten", + "fifth" : "fünften", + "second to last" : "vorletzten", + "last" : "letzten", "Untitled task" : "Unbenannte Aufgabe", - "Please ask your administrator to enable the Tasks App." : "Bitten Sie Ihren Administrator die Aufgaben-App (Tasks) zu aktivieren.", - "Prev" : "Vorher", - "Next" : "Weiter", - "Prev year" : "Voriges Jahr", - "Next year" : "Nächstes Jahr", - "Year" : "Jahr", + "Please ask your administrator to enable the Tasks App." : "Bitten Sie Ihre Administration die Aufgaben-App (Tasks) zu aktivieren.", + "You are not allowed to edit this event as an attendee." : "Keine Berechtigung diese Veranstaltung als Teilnehmer zu bearbeiten.", "W" : "W", "%n more" : "%n weitere", - "No events to display" : "Keine Ereignisse zum Anzeigen", + "No events to display" : "Keine Termine zum Anzeigen", + "All participants declined" : "Alle Teilnehmer haben abgelehnt", + "Please confirm your participation" : "Bitte Teilnahme bestätigen", + "You declined this event" : "Sie haben diesen Termin abgelehnt", + "Your participation is tentative" : "Ihre Teilnahme ist vorläufig", "_+%n more_::_+%n more_" : ["+%n weitere","+%n weitere"], "No events" : "Keine Termine", "Create a new event or change the visible time-range" : "Neuen Termin erstellen oder den sichtbaren Zeitbereich ändern", + "Failed to save event" : "Termin konnte nicht gespeichert werden", "It might have been deleted, or there was a typo in a link" : "Möglicherweise wurde dies gelöscht oder es gab einen Tippfehler in einem Link", "It might have been deleted, or there was a typo in the link" : "Möglicherweise wurde dies gelöscht oder es gab einen Tippfehler in einem Link", "Meeting room" : "Besprechungsraum", @@ -446,7 +585,12 @@ "When shared hide this event" : "Wenn geteilt, zeige diesen Termin nicht an", "The visibility of this event in shared calendars." : "Sichtbarkeit dieses Termins in geteilten Kalendern.", "Add a location" : "Ort hinzufügen", +<<<<<<< HEAD + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Beschreibung hinzufügen\n\n- Worum geht es bei diesem Meeting?\n- Tagesordnungspunkte\n- Alles, was die Teilnehmer vorbereiten sollen", +======= + "Open Link" : "Link öffnen", "Add a description" : "Beschreibung hinzufügen", +>>>>>>> origin/main "Status" : "Status", "Confirmed" : "Bestätigt", "Canceled" : "Abgesagt", @@ -459,8 +603,32 @@ "Add this as a new category" : "Dies als neue Kategorie hinzufügen", "Custom color" : "Benutzerdefinierte Farbe", "Special color of this event. Overrides the calendar-color." : "Sonderfarbe für diesen Termin. Überschreibt die Kalenderfarbe.", - "Chat room for event" : "Chat-Raum für Termin", +<<<<<<< HEAD + "Error while sharing file" : "Fehler beim Teilen der Datei", + "Error while sharing file with user" : "Fehler beim Teilen der Datei mit Benutzer", + "Error creating a folder {folder}" : "Fehler beim Erstellen des Ordners {folder}", + "Attachment {fileName} already exists!" : "Anhang {fileName} existiert bereits", + "Attachment {fileName} added!" : "Anhang {fileName} hinzugefügt!", + "An error occurred during uploading file {fileName}" : "Es ist ein Fehler beim Hochladen der Datei {fileName} aufgetreten", + "An error occurred during getting file information" : "Es ist ein Fehler beim Abrufen von Dateiinformationen aufgetreten", + "Talk conversation for event" : "Talk-Unterhaltung für ein Ereignis", + "An error occurred, unable to delete the calendar." : "Es ist ein Fehler aufgetreten, Kalender konnte nicht gelöscht werden.", "Imported {filename}" : "{filename} importiert ", + "This is an event reminder." : "Dies ist eine Terminerinnerung.", + "Error while parsing a PROPFIND error" : "Fehler beim Parsen eines PROPFIND-Fehlers", + "Appointment not found" : "Termin nicht gefunden", + "User not found" : "Benutzer nicht gefunden", + "Reminder" : "Erinnerung", + "+ Add reminder" : "+ Erinnerung hinzufügen", + "Select automatic slot" : "Automatischen Bereich wählen", + "with" : "mit", + "Available times:" : "Verfügbare Zeiten:", + "Suggestions" : "Vorschläge", + "Details" : "Details" +},"pluralForm" :"nplurals=2; plural=(n != 1);" +======= + "Chat room for event" : "Chat-Raum für Termin", + "Imported {filename}" : "{filename} importiert", "Meditation" : "Meditation", "Relaxing" : "Entspannen", "Relax" : "Entspannen", @@ -510,7 +678,7 @@ "Contributor week" : "Woche der Mitwirkenden", "Mail" : "E-Mail", "Soccer" : "Fußball", - "Football" : "Football", + "Football" : "Fußball", "Gaming" : "Gaming", "Drive" : "Fahren", "Driving" : "Autofahren", @@ -589,5 +757,6 @@ "Lunch" : "Mittagessen", "Appointment not found" : "Termin nicht gefunden", "User not found" : "Benutzer nicht gefunden" -},"pluralForm" :"nplurals=2; plural=(n != 1);" +},"pluralForm" :"nplurals=2; plural=n != 1;" +>>>>>>> origin/main } \ No newline at end of file diff --git a/l10n/el.js b/l10n/el.js index 530b008eecbd15a542581a877730bfd0e57aea3c..3115aff780f1ae9cf72cf36a07cc5b1f418c0687 100644 --- a/l10n/el.js +++ b/l10n/el.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Η παρεχόμενη διεύθυνση email είναι πολύ μεγάλη", "User-Session unexpectedly expired" : "Η συνεδρία-χρήστη έληξε απότομα", "Provided email-address is not valid" : "Η διεύθυνση email δεν είναι έγκυρη", "%s has published the calendar »%s«" : "Ο/η %s έχει δημοσιεύσει το ημερολόγιο »%s«", @@ -11,125 +12,155 @@ OC.L10N.register( "Open »%s«" : "Άνοιγμα »%s«", "Cheers!" : "Με εκτίμηση!", "Upcoming events" : "Προσεχή γεγονότα", + "No more events today" : "Δεν υπάρχουν άλλα γεγονότα για σήμερα", + "No upcoming events" : "Κανένα προσεχές γεγονός", + "More events" : "Περισσότερα γεγονότα", + "%1$s with %2$s" : "%1$s με %2$s", + "Calendar" : "Ημερολόγιο", + "New booking {booking}" : "Νέα κράτηση {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) έκλεισε το ραντεβού \"{config_display_name}\" στις {date_time}.", "Appointments" : "Ραντεβού", "Schedule appointment \"%s\"" : "Προγραμματίστε ραντεβού%s", "Schedule an appointment" : "Προγραμματίστε ένα ραντεβού", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Προετοιμασία για %s", "Follow up for %s" : "Επόμενο για %s", - "Your appointment \"%s\" needs confirmation" : "Το ραντεβού σας \"%s\" χρειάζεται επιβεβαίωση.", + "Your appointment \"%s\" with %s needs confirmation" : "Το ραντεβού σας \"%s\" με %s χρειάζεται επιβεβαίωση", "Dear %s, please confirm your booking" : "Αγαπητέ/ή %s, παρακαλώ επιβεβαιώστε την κράτησή σας", "Confirm" : "Επιβεβαιώνω", + "Description:" : "Περιγραφή:", "This confirmation link expires in %s hours." : "Αυτός ο σύνδεσμος επιβεβαίωσης λήγει σε %s ώρες", - "If you wish to cancel the appointment after all, please contact your organizer." : "Εάν τελικά επιθυμείτε να ακυρώσετε το ραντεβού σας, παρακαλούμε να ενημερώσετε τον διοργανωτή σας.", - "Appointment:" : "Ραντεβού:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Εάν τελικά θέλετε να ακυρώσετε το ραντεβού, επικοινωνήστε με τον διοργανωτή απαντώντας σε αυτό το email ή μεταβαίνοντας στη σελίδα του προφίλ του.", + "Your appointment \"%s\" with %s has been accepted" : "Το ραντεβού σας \"%s\" με %s χει γίνει αποδεκτό", + "Dear %s, your booking has been accepted." : "Αγαπητέ/ή %s, η κράτησή σας έχει γίνει αποδεκτή.", + "Appointment for:" : "Ραντεβού για:", "Date:" : "Ημερομηνία:", + "You will receive a link with the confirmation email" : "Θα λάβετε έναν σύνδεσμο με το email επιβεβαίωσης", "Where:" : "Που:", - "Description:" : "Περιγραφή:", - "Calendar" : "Ημερολόγιο", + "Comment:" : "Σχόλιο:", + "You have a new appointment booking \"%s\" from %s" : "Έχετε μια νέα κράτηση για το ραντεβού \"%s\" από τον/την %s", + "Dear %s, %s (%s) booked an appointment with you." : "Αγαπητέ/ή %s, %s (%s) έκανε κράτηση σε ένα ραντεβού σας.", "A Calendar app for Nextcloud" : "Eφαρμογή ημερολογίου για το Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Η εφαρμογή Ημερολόγιο είναι μια διεπαφή χρήστη για τον διακομιστή CalDAV του Nextcloud. Συνχρονίστε εύκολα τα συμβάντα σας από διάφορες συσκευές με το Nextcloud και επεξεργαστείτε τα online.\n\n* 🚀 **Συνεργάζεται με άλλες εφαρμογές Nextcloud!** Επί του παρόντος με τις Επαφές - και με άλλες στο μέλλον.\n* 🌐 **Υποστήριξη WebCal!** Θέλετε να δείτε το πρόγραμμα της αγαπημένης σας ομάδας στο ημερολόγιό σας; Κανένα πρόβλημα!\n* 🙋 **Συμμετέχοντες!** Προσκαλέστε άτομα στις εκδηλώσεις σας.\n* ⌚️ **Ελεύθερος/Απασχολημένος!** Δείτε τη διαθεσιμότητα των συνεργατών σας για συνάντηση\n* ⏰ **Υπενθυμίσεις!** Λάβετε ειδοποιήσεις για γεγονότα στον περιηγητή σας ή στο ηλ.ταχυδρομείο σας.\n* 🔍 Αναζήτηση! Εντοπίστε εύκολα γεγονότα που σας ενδιαφέρουν\n* ☑️ Εργασίες! Δείτε τις εργασίες με ημερομηνία λήξεως απευθείας στο ημερολόγιο.\n* 🙈 **Δεν ανακαλύπτουμε τον τροχό!** Με βάση τις βιβλιοθήκες [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) ", "Previous day" : "Προηγούμενη ημέρα", "Previous week" : "Προηγούμενη εβδομάδα", + "Previous year" : "Προηγούμενο έτος", "Previous month" : "Προηγούμενος μήνας", "Next day" : "Επόμενη ημέρα", "Next week" : "Επόμενη εβδομάδα", + "Next year" : "Επόμενο έτος", "Next month" : "Επόμενος μήνας", - "New event" : "Νέο γεγονός", + "Create new event" : "Δημιουργία νέου συμβάντος", + "Event" : "Συμβάν", "Today" : "Σήμερα", "Day" : "Ημέρα", "Week" : "Εβδομάδα", "Month" : "Μήνας", + "Year" : "Έτος", "List" : "Λίστα", + "Appointment link was copied to clipboard" : "Ο σύνδεσμος του ραντεβού αντιγράφηκε στο πρόχειρο.", + "Appointment link could not be copied to clipboard" : "Δεν ήταν δυνατή η αντιγραφή του συνδέσμου ραντεβού στο πρόχειρο.", "Preview" : "Προεπισκόπηση", "Copy link" : "Αντιγραφή συνδέσμου", "Edit" : "Επεξεργασία", "Delete" : "Διαγραφή", - "Appointment link was copied to clipboard" : "Ο σύνδεσμος του ραντεβού αντιγράφηκε στο πρόχειρο.", - "Appointment link could not be copied to clipboard" : "Δεν ήταν δυνατή η αντιγραφή του συνδέσμου ραντεβού στο πρόχειρο.", - "Add new" : "Προσθήκη νέου", - "Untitled calendar" : "Ημερολόγιο χωρίς τίτλο", - "Edit name" : "Επεξεργασία ονόματος", - "Saving name …" : "Αποθήκευση ονόματος …", - "Edit color" : "Επεξεργασία χρώματος", - "Saving color …" : "Αποθήκευση χρώματος …", - "Copy private link" : "Αντιγραφή ιδιωτικού συνδέσμου", - "Export" : "Εξαγωγή", - "Unshare from me" : "Διακοπή διαμοιρασμού με εμένα", + "Create new" : "Δημιουργία νέου", + "Disable calendar \"{calendar}\"" : "Απενεργοποίηση ημερολογίου \"{calendar}\"", + "Disable untitled calendar" : "Απενεργοποίηση ημερολογίου χωρίς τίτλο", + "Enable calendar \"{calendar}\"" : "Ενεργοποίηση ημερολογίου \"{calendar}\"", + "Enable untitled calendar" : "Ενεργοποίηση ημερολογίου χωρίς τίτλο", "An error occurred, unable to change visibility of the calendar." : "Παρουσιάστηκε σφάλμα, δεν δύναται να αλλάξει η εμφάνιση του ημερολογίου.", - "An error occurred, unable to delete the calendar." : "Παρουσιάστηκε σφάλμα, δεν δύναται να διαγραφή το ημερολόγιο.", - "Calendar link copied to clipboard." : "Ο σύνδεσμος ημερολογίου αντιγράφηκε στο πρόχειρο.", - "Calendar link could not be copied to clipboard." : "Ο σύνδεσμος ημερολογίου δεν μπορεί να αντιγραφή στο πρόχειρο.", - "An error occurred, unable to rename the calendar." : "Παρουσιάστηκε σφάλμα, δεν δύναται να αλλαχτεί το όνομα του ημερολογίου.", - "An error occurred, unable to change the calendar's color." : "Παρουσιάστηκε σφάλμα, δεν μπορεί να αλλάξει το χρώμα του ημερολογίου.", + "Untitled calendar" : "Ημερολόγιο χωρίς τίτλο", + "Shared with you by" : "Διαμοιρασμένα μαζί σας από", + "Edit and share calendar" : "Επεξεργασία και κοινή χρήση ημερολογίου", + "Edit calendar" : "Επεξεργασία ημερολογίου", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Αφαίρεση κοινής χρήσης ημερολογίου σε {countdown} δεύτερα","Αφαίρεση κοινής χρήσης ημερολογίου σε {countdown} δευτερόλεπτα"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Διαγραφή ημερολογίου σε {countdown} δεύτερα","Διαγραφή ημερολογίου σε {countdown} δευτερόλεπτα"], + "An error occurred, unable to create the calendar." : "Παρουσιάστηκε σφάλμα, δεν μπορεί να δημιουργηθεί το ημερολόγιο.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Παρακαλώ εισάγετε έγκυρο σύνδεσμο (ξεκινούν με http://, https://, webcal://, ή webcals://)", + "Calendars" : "Ημερολόγια", + "Add new" : "Προσθήκη νέου", + "New calendar" : "Νέο ημερολόγιο", + "Name for new calendar" : "Όνομα για νέο ημερολόγιο.", + "Creating calendar …" : "Δημιουργία ημερολογίου '...'", + "New calendar with task list" : "Νέο ημερολόγιο με λίστα εργασιών", + "New subscription from link (read-only)" : "Νέα συνδρομή από τον σύνδεσμο (μόνο για ανάγνωση)", + "Creating subscription …" : "Δημιουργία συνδρομής ...", + "Add public holiday calendar" : "Προσθήκη ημερολογίου αργιών", + "Add custom public calendar" : "Προσθήκη προσαρμοσμένου δημόσιου ημερολογίου", + "Calendar link copied to clipboard." : "Ο σύνδεσμος ημερολογίου αντιγράφηκε στο πρόχειρο.", + "Calendar link could not be copied to clipboard." : "Ο σύνδεσμος ημερολογίου δεν μπορεί να αντιγραφή στο πρόχειρο.", + "Copy subscription link" : "Αντιγραφή συνδέσμου συνδρομής", + "Copying link …" : "Αντιγραφή συνδέσμου '...'", + "Copied link" : "Αντιγραμμένος σύνδεσμος", + "Could not copy link" : "Ο σύνδεσμος δεν μπορεί να αντιγραφεί", + "Export" : "Εξαγωγή", + "Untitled item" : "Στοιχείο χωρίς όνομα", + "Unknown calendar" : "Άγνωστο ημερολόγιο", + "Could not load deleted calendars and objects" : "Δεν ήταν δυνατή η φόρτωση διαγραμμένων ημερολογίων και αντικειμένων", + "Could not delete calendar or event" : "Δεν ήταν δυνατή η διαγραφή ημερολογίου ή συμβάντος", + "Could not restore calendar or event" : "Δεν ήταν δυνατή η επαναφορά ημερολογίου ή συμβάντος", + "Do you really want to empty the trash bin?" : "Θέλετε να αδειάσετε τον κάδο απορριμμάτων;", + "Empty trash bin" : "Άδειασμα κάδου", + "Trash bin" : "Κάδος απορριμμάτων", + "Loading deleted items." : "Φόρτωση διαγραμμένων στοιχείων.", + "You do not have any deleted items." : "Δεν έχετε διαγραμμένα στοιχεία.", + "Name" : "Όνομα", + "Deleted" : "Διαγράφηκε", + "Restore" : "Επαναφορά", + "Delete permanently" : "Οριστική διαγραφή", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Τα στοιχεία στον κάδο απορριμμάτων διαγράφονται μετά από {numDays} ημέρα","Τα στοιχεία στον κάδο απορριμμάτων διαγράφονται μετά από {numDays} ημέρες"], + "Could not update calendar order." : "Δεν μπορεί να γίνει ενημέρωση εντολών ημερολογίου.", + "Shared calendars" : "Κοινόχρηστα ημερολόγια", + "Deck" : "Deck", + "Hidden" : "Κρυφός", + "Internal link" : "Εσωτερικός σύνδεσμος", + "A private link that can be used with external clients" : "Ένας ιδιωτικός σύνδεσμος που μπορεί να χρησιμοποιηθεί με τρίτες εφαρμογές", + "Copy internal link" : "Αντιγραφή εσωτερικού συνδέσμου", + "An error occurred, unable to publish calendar." : "Παρουσιάστηκε σφάλμα, δεν θα δημοσιευτεί το ημερολόγιο.", + "An error occurred, unable to send email." : "Παρουσιάστηκε σφάλμα, δεν θα σταλεί το email.", + "Embed code copied to clipboard." : "Ο ενσωματωμένος κώδικας αντιγράφηκε στο πρόχειρο.", + "Embed code could not be copied to clipboard." : "Ο ενσωματωμένος κώδικας δεν μπορεί να αντιγραφεί στο πρόχειρο.", + "Unpublishing calendar failed" : "Η κατάργηση δημοσιευμένου ημερολογίου απέτυχε", "Share link" : "Διαμοιρασμός συνδέσμου", - "Publish calendar" : "Δημοσίευση ημερολογίου", - "Publishing calendar" : "Δημοσίευση ημερολογίου", "Copy public link" : "Αντιγραφή δημόσιου συνδέσμου", "Send link to calendar via email" : "Αποστολή συνδέσμου στο ημερολόγιο μέσω email", "Enter one address" : "Εισαγωγή μίας διεύθυνσης", "Sending email …" : "Αποστολή email  '...'", - "Copy subscription link" : "Αντιγραφή συνδέσμου συνδρομής", - "Copying link …" : "Αντιγραφή συνδέσμου '...'", - "Copied link" : "Αντιγραμμένος σύνδεσμος", - "Could not copy link" : "Ο σύνδεσμος δεν μπορεί να αντιγραφεί", "Copy embedding code" : "Αντιγραφή ενσωματωμένου κώδικα", "Copying code …" : "Αντιγραφή κώδικα '...'", "Copied code" : "Αντιγραμμένος κώδικας", "Could not copy code" : "Ο κώδικας δεν μπορεί να αντιγραφεί", "Delete share link" : "Διαγραφή κοινόχρηστου συνδέσμου", "Deleting share link …" : "Διαγραφή κοινόχρηστου συνδέσμου '...'", - "An error occurred, unable to publish calendar." : "Παρουσιάστηκε σφάλμα, δεν θα δημοσιευτεί το ημερολόγιο.", - "An error occurred, unable to send email." : "Παρουσιάστηκε σφάλμα, δεν θα σταλεί το email.", - "Embed code copied to clipboard." : "Ο ενσωματωμένος κώδικας αντιγράφηκε στο πρόχειρο.", - "Embed code could not be copied to clipboard." : "Ο ενσωματωμένος κώδικας δεν μπορεί να αντιγραφεί στο πρόχειρο.", - "Unpublishing calendar failed" : "Η κατάργηση δημοσιευμένου ημερολογίου απέτυχε", - "Share with users or groups" : "Κοινή χρήση με χρήστες ή ομάδες", - "No users or groups" : "Δεν υπάρχουν χρήστες ή ομάδες", + "An error occurred while unsharing the calendar." : "Προέκυψε σφάλμα κατά την κατάργηση της κοινής χρήσης του ημερολογίου.", + "An error occurred, unable to change the permission of the share." : "Παρουσιάστηκε σφάλμα, δεν ήταν δυνατή η αλλαγή των δικαιωμάτων της κοινής χρήσης.", "can edit" : "δυνατότητα επεξεργασίας", "Unshare with {displayName}" : "Κατάργηση κοινής χρήσης με {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Παρουσιάστηκε σφάλμα, δεν είναι δυνατή η αλλαγή της κατάργησης της κοινής χρήσης του ημερολογίου.", - "An error occurred, unable to change the permission of the share." : "Παρουσιάστηκε σφάλμα, δεν ήταν δυνατή η αλλαγή των δικαιωμάτων της κοινής χρήσης.", - "+ New calendar" : "+ Νέο ημερολόγιο", - "New calendar" : "Νέο ημερολόγιο", - "Name for new calendar" : "Όνομα για νέο ημερολόγιο.", - "Creating calendar …" : "Δημιουργία ημερολογίου '...'", - "New calendar with task list" : "Νέο ημερολόγιο με λίστα εργασιών", - "New subscription from link (read-only)" : "Νέα συνδρομή από τον σύνδεσμο (μόνο για ανάγνωση)", - "Creating subscription …" : "Δημιουργία συνδρομής ...", - "An error occurred, unable to create the calendar." : "Παρουσιάστηκε σφάλμα, δεν μπορεί να δημιουργηθεί το ημερολόγιο.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Παρακαλώ εισάγετε έγκυρο σύνδεσμο (ξεκινούν με http://, https://, webcal://, ή webcals://)", - "Trash bin" : "Κάδος απορριμμάτων", - "Loading deleted elements." : "Φόρτωση διαγραμμένων στοιχείων.", - "You do not have any deleted elements." : "Δεν έχετε διαγραμμένα στοιχεία.", - "Name" : "Όνομα", - "Deleted" : "Διαγράφηκε", - "Restore" : "Επαναφορά", - "Delete permanently" : "Οριστική διαγραφή", - "Empty trash bin" : "Άδειασμα κάδου", - "Untitled element" : "Στοιχείο χωρίς όνομα", - "Unknown calendar" : "Άγνωστο ημερολόγιο", - "Could not load deleted calendars and objects" : "Δεν ήταν δυνατή η φόρτωση διαγραμμένων ημερολογίων και αντικειμένων", - "Could not restore calendar or event" : "Δεν ήταν δυνατή η επαναφορά ημερολογίου ή συμβάντος", - "Do you really want to empty the trash bin?" : "Θέλετε να αδειάσετε τον κάδο απορριμμάτων;", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Τα περιεχόμενα στον κάδο απορριμάτων θα διαγραφούν μετά από {numDays} ημέρα","Τα περιεχόμενα στον κάδο απορριμάτων θα διαγραφούν μετά από {numDays} ημέρες"], - "Could not update calendar order." : "Δεν μπορεί να γίνει ενημέρωση εντολών ημερολογίου.", + "Share with users or groups" : "Κοινή χρήση με χρήστες ή ομάδες", + "No users or groups" : "Δεν υπάρχουν χρήστες ή ομάδες", + "Failed to save calendar name and color" : "Απέτυχε η αποθήκευση του ονόματος και του χρώματος του ημερολογίου", + "Calendar name …" : "Όνομα ημερολογίου …", + "Share calendar" : "Κοινή χρήση ημερολογίου", + "Unshare from me" : "Διακοπή διαμοιρασμού με εμένα", + "Save" : "Αποθήκευση", "Import calendars" : "Εισαγωγή ημερολογίων", "Please select a calendar to import into …" : "Παρακαλώ επιλέξτε ημερολόγιο για εισαγωγή σε  ...", "Filename" : "Όνομα αρχείου", "Calendar to import into" : " Ημερολόγιο για εισαγωγή σε ", "Cancel" : "Ακύρωση", "_Import calendar_::_Import calendars_" : ["Εισαγωγή ημερολογίου","Εισαγωγή ημερολογίων"], + "Select the default location for attachments" : "Επιλέξτε την προεπιλεγμένη θέση για τα συνημμένα", + "Invalid location selected" : "Επιλέχθηκε μη έγκυρη τοποθεσία", + "Attachments folder successfully saved." : "Ο φάκελος συνημμένων αποθηκεύτηκε με επιτυχία.", + "Error on saving attachments folder." : "Σφάλμα κατά την αποθήκευση του φακέλου συνημμένων.", + "Default attachments location" : "Προεπιλεγμένη τοποθεσία συνημμένων", "{filename} could not be parsed" : "το {filename} δεν μπορεί να αναλυθεί", "No valid files found, aborting import" : "Δεν βρέθηκαν συμβατά αρχεία, ακύρωση εισαγωγής", - "Import partially failed. Imported {accepted} out of {total}." : "Η εισαγωγή απέτυχε εν μέρει. Εισήχθησαν {accepted} από {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Επιτυχής εισαγωγή %n συμβάν","Επιτυχής εισαγωγή %n συμβάντων"], + "Import partially failed. Imported {accepted} out of {total}." : "Η εισαγωγή απέτυχε εν μέρει. Εισήχθησαν {accepted} από {total}.", "Automatic" : "Αυτόματο", "Automatic ({detected})" : "Αυτόματα ({detected})", "New setting was not saved successfully." : "Οι νέες ρυθμίσεις δεν αποθηκεύτηκαν επιτυχώς.", - "Shortcut overview" : "Επισκόπηση συντόμευσης", - "or" : "ή", "Navigation" : "Πλοήγηση", "Previous period" : "Προηγούμενη περίοδος", "Next period" : "Επόμενη περίοδος", @@ -137,14 +168,26 @@ OC.L10N.register( "Day view" : "Εμφάνιση ημέρας", "Week view" : "Εμφάνιση εβδομάδας", "Month view" : "Εμφάνιση μήνα", + "Year view" : "Ετήσια προβολή", "List view" : "Προβολή λίστας", "Actions" : "Ενέργειες", "Create event" : "Δημιουργία συμβάντος", "Show shortcuts" : "Εμφάνιση συντομεύσεων", + "Editor" : "Επεξεργαστής", + "Close editor" : "Κλείσιμο του επεξεργαστή", + "Save edited event" : "Αποθήκευση επεξεργασμένης εκδήλωσης", + "Delete edited event" : "Διαγραφή επεξεργασμένης εκδήλωσης", + "Duplicate event" : "Αντιγραφή εκδήλωσης", + "Shortcut overview" : "Επισκόπηση συντόμευσης", + "or" : "ή", + "Calendar settings" : "Ρυθμίσεις ημερολογίου", + "No reminder" : "Χωρίς υπενθύμιση", + "CalDAV link copied to clipboard." : "Αντιγράφηκε στο πρόχειρο ο σύνδεσμος CalDAV", + "CalDAV link could not be copied to clipboard." : "Δεν αντιγράφηκε στο πρόχειρο ο σύνδεσμος CalDAV", "Enable birthday calendar" : "Ενεργοποίηση ημερολογίου γενεθλίων", "Show tasks in calendar" : "Εμφάνιση εργασιών στο ημερολόγιο", "Enable simplified editor" : "Ενεργοποίηση απλοποιημένου προγράμματος επεξεργασίας", - "Limit visible events per view" : "Περιορισμός ορατών γεγονότων ανά σελίδα", + "Limit the number of events displayed in the monthly view" : "Περιορισμός του αριθμού των συμβάντων που εμφανίζονται στη μηνιαία προβολή", "Show weekends" : "Εμφάνιση σαββατοκύριακων", "Show week numbers" : "Εμφάνιση αριθμού εβδομάδας", "Time increments" : "Χρόνος μεταξύ δυο ραντεβού", @@ -153,11 +196,6 @@ OC.L10N.register( "Copy iOS/macOS CalDAV address" : "Αντιγραφή διεύθυνσης iOS/macOS CalDAV", "Personal availability settings" : "Ρυθμίσεις προσωπικής διαθεσιμότητας", "Show keyboard shortcuts" : "Εμφάνιση συντομεύσεων πληκτρολογίου", - "No reminder" : "Χωρίς υπενθύμιση", - "CalDAV link copied to clipboard." : "Αντιγράφηκε στο πρόχειρο ο σύνδεσμος CalDAV", - "CalDAV link could not be copied to clipboard." : "Δεν αντιγράφηκε στο πρόχειρο ο σύνδεσμος CalDAV", - "Appointment was created successfully" : "Το ραντεβού σας δημιουργήθηκε επιτυχώς", - "Appointment was updated successfully" : "Το ραντεβού σας ενημερώθηκε επιτυχώς", "_{duration} minute_::_{duration} minutes_" : ["{duration} λεπτό","{duration} λεπτά"], "0 minutes" : "0 λεπτά", "_{duration} hour_::_{duration} hours_" : ["{duration} ώρα","{duration} ώρες"], @@ -168,7 +206,11 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Για να ρυθμίσετε τα ραντεβού σας, προσθέστε την διεύθυνση email στις προσωπικές ρυθμίσεις", "Public – shown on the profile page" : "Δημόσιο - εμφανίζεται στο προφίλ", "Private – only accessible via secret link" : "Ιδιωτικό - προσβάσιμο μόνο μέσω κρυφού συνδέσμου", + "Update" : "Ενημέρωση", + "Appointment name" : "Όνομα ραντεβού", "Location" : "Τοποθεσία", + "Create a Talk room" : "Δημιουργία δωματίου Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Ένας μοναδικός σύνδεσμος θα δημιουργηθεί για κάθε κλεισμένο ραντεβού και θα αποσταλεί μέσω του email επιβεβαίωσης.", "Description" : "Περιγραφή", "Visibility" : "Ορατότητα", "Duration" : "Διάρκεια", @@ -186,6 +228,7 @@ OC.L10N.register( "Friday" : "Παρασκευή", "Saturday" : "Σάββατο", "Sunday" : "Κυριακή", + "Weekdays" : "Καθημερινές", "Add time before and after the event" : "Προσθέστε χρόνο πριν και μετά από το γεγονός", "Before the event" : "Πριν το γεγονός", "After the event" : "Μετά το γεγονός", @@ -193,18 +236,17 @@ OC.L10N.register( "Minimum time before next available slot" : "Ελάχιστος χρόνος πριν το επόμενο διαθέσιμο κενό", "Max slots per day" : "Μέγιστες θέσεις ανά ημέρα", "Limit how far in the future appointments can be booked" : "Περιορίστε πόσο μακριά μπορούν να κανονιστούν μελλοντικά ραντεβού", - "Create appointment" : "Δημιουργία ραντεβού", - "Edit appointment" : "Επεξεργασία ραντεβού", - "Save" : "Αποθήκευση", - "Update" : "Ενημέρωση", "Please confirm your reservation" : "Επιβεβαιώστε την κράτησή σας", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Σας στείλαμε ενα email με τις λεπτομέρειες. Παρακαλούμε να επιβεβαιώσετε το ραντεβού κάνοντας χρήση του συνδέσμου στο email. Μπορείτε να κλείσετε αυτή την σελίδα ", "Your name" : "Το όνομά σας", "Your email address" : "Η διεύθυνση ηλεκτρονικού ταχυδρομείου σας", "Please share anything that will help prepare for our meeting" : "Παρακαλούμε να μοιραστείτε οτιδήποτε θα βοηθούσε στην προετοιμασία της συνάντησης", "Could not book the appointment. Please try again later or contact the organizer." : "Δεν μπορέσαμε να κανουμε την κράτηση του ραντεβού. Παρακαλώ δοκιμάστε ξανά αργότερα ή επικοινωνήστε με τον διοργανωτή", - "Book the appointment" : "Κλείστε το ραντεβού", - "Reminder" : "Υπενθύμιση", + "Back" : "Επιστροφή", + "Create a new conversation" : "Δημιουργία νέας συνομιλίας", + "Select conversation" : "Επιλέξτε συνομιλία", + "on" : "σε", + "at" : "στις", "before at" : "πριν από το", "Notification" : "Ειδοποίηση", "Email" : "Ηλ. ταχυδρομείο", @@ -215,114 +257,124 @@ OC.L10N.register( "Edit time" : "Επεξεργασία ώρας", "Save time" : "Εξοικονόμηση χρόνου", "Remove reminder" : "Διαγραφή υπενθύμισης", - "on" : "σε", - "at" : "στις", - "+ Add reminder" : "+ Προσθήκη υπενθύμισης", "Add reminder" : "Προσθήκη υπενθύμισης", - "_second_::_seconds_" : ["δευτερόλεπτο","δευτερόλεπτα"], - "_minute_::_minutes_" : ["λεπτό","λεπτά"], - "_hour_::_hours_" : ["ώρα","ώρες"], - "_day_::_days_" : ["ημέρα","ημέρες"], - "_week_::_weeks_" : ["εβδομάδα","εβδομάδες"], + "seconds" : "δευτερόλεπτα", + "minutes" : "λεπτά", + "hours" : "ώρες", + "days" : "ημέρες", + "weeks" : "εβδομάδες", + "Choose a file to add as attachment" : "Επιλέξτε ένα αρχείο για να προσθέσετε ως συνημμένο", + "Choose a file to share as a link" : "Επιλέξτε ένα αρχείο για κοινή χρήση ως σύνδεσμο", + "Attachment {name} already exist!" : "Το συνημμένο {name} υπάρχει ήδη", + "Could not upload attachment(s)" : "Δεν ήταν δυνατή η μεταφόρτωση συνημμένου(-ων)", + "No attachments" : "Χωρίς συνημμένα", + "Add from Files" : "Προσθήκη από τα Αρχεία", + "Upload from device" : "Μεταφόρτωση από συσκευή", + "Delete file" : "Διαγραφή αρχείου", + "Confirmation" : "Επιβεβαίωση", + "_{count} attachment_::_{count} attachments_" : ["{count} συνημμένo","{count} συνημμένα"], "Suggested" : "Προτεινόμενο", "Available" : "Διαθέσιμα", - "Not available" : "Δεν είναι διαθέσιμο", - "Checking availability" : "Έλεγχος διαθεσιμότητας", "Invitation accepted" : "Η πρόσκληση έγινε αποδεκτή.", "Accepted {organizerName}'s invitation" : "Αποδοχή της πρόσκλησης του/της {organizerName}", + "Participation marked as tentative" : "Η συμμετοχή χαρακτηρίστηκε ως με επιφύλαξη", + "Invitation is delegated" : "Η πρόσκληση παραπέμφθηκε", + "Not available" : "Δεν είναι διαθέσιμο", "Invitation declined" : "Η πρόσκληση απορρίφθηκε.", "Declined {organizerName}'s invitation" : "Απόρριψη της πρόσκλησης του {organizerName}", - "Invitation is delegated" : "Η πρόσκληση παραπέμφθηκε", - "Participation marked as tentative" : "Η συμμετοχή χαρακτηρίστηκε ως με επιφύλαξη", - "Invitation sent" : "Η πρόσκληση εστάλη", + "Awaiting response" : "Αναμονή απάντησης", + "Checking availability" : "Έλεγχος διαθεσιμότητας", "Has not responded to {organizerName}'s invitation yet" : "Δεν έχετε απαντήσει ακόμα στην πρόσκληση του/της {organizerName}", - "Availability of attendees, resources and rooms" : "Διαθεσιμότητα των συμμετεχόντων, των πόρων και των δωματίων", + "required participant" : "απαιτούμενος συμμετέχων", + "non-participant" : "μη συμμετέχων", + "optional participant" : "προαιρετικός συμμετέχων", "{organizer} (organizer)" : "{organizer} (διοργανωτής)", + "Availability of attendees, resources and rooms" : "Διαθεσιμότητα των συμμετεχόντων, των πόρων και των δωματίων", + "Suggestion accepted" : "Η πρόταση έγινε αποδεκτή", + "Out of office" : "Εκτός γραφείου", + "Attendees:" : "Συμμετέχοντες:", + "Done" : "Ολοκληρώθηκε", + "Room name" : "Όνομα δωματίου", + "Check room availability" : "Ελέγξτε τη διαθεσιμότητα δωματίου", "Free" : "Ελεύθερος", "Busy (tentative)" : "Απασχολημένος (με επιφύλαξη)", "Busy" : "Απασχολημένος", - "Out of office" : "Εκτός γραφείου", "Unknown" : "Άγνωστο", - "Accept" : "Αποδοχή", - "Decline" : "Απόρριψη", - "Tentative" : "Με επιφύλαξη", "The invitation has been accepted successfully." : "Η πρόσκληση έγινε αποδεκτή", "Failed to accept the invitation." : "Αποτυχία αποδοχής της πρόσκλησης", "The invitation has been declined successfully." : "Η πρόσκληση έχει απορριφθεί επιτυχώς", "Failed to decline the invitation." : "Αποτυχία απόρριψης της πρόσκλησης", "Your participation has been marked as tentative." : "Η συμμετοχή έχει χαρακτηρίστεί ως δοκιμαστική", "Failed to set the participation status to tentative." : "Αποτυχία αλλαγής κατάστασης συμμετοχής σε δοκιμαστική.", - "Create Talk room for this event" : "Δημιουργία δωματίου Talk για το γεγονός", - "Show busy times" : "Εμφάνιση απασχολημένων ωρών", + "Accept" : "Αποδοχή", + "Decline" : "Απόρριψη", + "Tentative" : "Με επιφύλαξη", "No attendees yet" : "Δεν υπάρχουν ακόμη συμμετέχοντες", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} προσκεκλημένοι, {confirmedCount} επιβεβαιωμένοι", + "Successfully appended link to talk room to location." : "Προσαρτήθηκε επιτυχώς στην τοποθεσία ο σύνδεσμος για το δωμάτιο συνομιλίας Talk", "Successfully appended link to talk room to description." : "Ο σύνδεσμος στο δωμάτιο Talk προστέθηκε με επιτυχία στην περιγραφή.", "Error creating Talk room" : "Σφάλμα δημιουργίας δωματίου Talk", - "Send email" : "Αποστολή email", + "Attendees" : "Συμμετέχοντες", + "Remove group" : "Αφαίρεση ομάδας", + "Remove attendee" : "Κατάργηση του συμμετέχοντα", + "Request reply" : "Αίτημα απάντησης", "Chairperson" : "Επικεφαλής", "Required participant" : "Απαιτείται συμμετοχή", "Optional participant" : "Προαιρετική συμμετοχή", "Non-participant" : "Μη-συμμετέχοντας", - "Remove attendee" : "Κατάργηση του συμμετέχοντα", - "Search for emails, users or contacts" : "Αναζήτηση για ηλ. διευθύνσεις, χρήστες ή επαφές", + "_%n member_::_%n members_" : ["%n μέλος","%n μέλη"], "No match found" : "Δεν βρέθηκε αποτέλεσμα.", + "Note that members of circles get invited but are not synced yet." : "Σημειώστε ότι τα μέλη των κύκλων προσκαλούνται αλλά δεν έχουν συγχρονιστεί ακόμα.", "(organizer)" : "(organizer)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Για να στείλετε προσκλήσεις και να χειριστείτε τις απαντήσεις, [linkopen]προσθέστε το email σας στις προσωπικές ρυθμίσεις [linkclose].", "Remove color" : "Αφαίρεση χρώματος", "Event title" : "Τίτλος γεγονότος", - "All day" : "Ολοήμερο", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Δεν είναι δυνατή η τροποποίηση της ρύθμισης ολοήμερου συμβάντος που αποτελεί μέρος σετ-επανάληψης.", - "from {startDate}" : "από {startDate}", - "from {startDate} at {startTime}" : "από {startDate} στις {startTime}", - "to {endDate}" : "έως {endDate}", - "to {endDate} at {endTime}" : "έως {endDate} στις {endTime}", + "From" : "Από", + "To" : "Έως", "Repeat" : "Επανάληψη", - "End repeat" : "Τέλος επανάληψης", - "Select to end repeat" : "Επιλέξτε για διακοπή επανάληψης", + "_time_::_times_" : ["φορά","φορές"], "never" : "ποτέ", "on date" : "την ημερομηνία", "after" : "μετά", - "_time_::_times_" : ["φορά","φορές"], + "End repeat" : "Τέλος επανάληψης", + "Select to end repeat" : "Επιλέξτε για διακοπή επανάληψης", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Αυτό το συμβάν είναι επανάληψη-εξαίρεση ενός σετ-επανάληψης. Δεν μπορείτε να προσθέσετε κανόνα επανάληψης σε αυτό.", "first" : "πρώτο", - "third" : "τρίτο", - "fourth" : "τέταρτο", - "fifth" : "πέμπτο", - "second to last" : "προτελευταίο", - "last" : "τελευταίο", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Οι αλλαγές στον κανόνα-επανάληψης θα ισχύουν μόνο για αυτό και για όλα τα μελλοντικά συμβάντα.", "Repeat every" : "Επανάληψη κάθε", "By day of the month" : "Την ημέρα του μήνα", "On the" : "Στο", + "_day_::_days_" : ["ημέρα","ημέρες"], + "_week_::_weeks_" : ["εβδομάδα","εβδομάδες"], "_month_::_months_" : ["μήνας","μήνες"], "_year_::_years_" : ["έτος","έτη"], "weekday" : "καθημερινή", "weekend day" : "ημέρα Σαββατοκύριακου", - "No recurrence" : "Καμμία επανάληψη", + "Does not repeat" : "Δεν επαναλαμβάνεται", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Ο τρόπος επανάληψης αυτού του συμβάντος δεν υποστηρίζεται πλήρως από το Nextcloud. Αν επεξεργαστείτε τις επιλογές επανάληψης, ορισμένες επαναλήψεις ενδέχεται να χαθούν.", - "Suggestions" : "Προτάσεις", "No rooms or resources yet" : "Κανένα δωμάτιο ή πόροι ακόμα", + "Resources" : "Πηγές", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} θέση","{seatingCapacity} θέσεις"], "Add resource" : "Προσθήκη πηγής", "Has a projector" : "Έχει προβολέα", "Has a whiteboard" : "Έχει λευκό πίνακα γραφής", "Wheelchair accessible" : "Προσβάσιμο με αναπηρικό καρότσι", "Remove resource" : "Αφαίρεση πόρου", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} θέση","{seatingCapacity} θέσεις"], - "Projector" : "Projector", - "Whiteboard" : "Λευκός πίνακας", "Search for resources or rooms" : "Αναζήτηση για πόρους ή δωμάτια", "available" : "διαθέσιμο", "unavailable" : "μη διαθέσιμο", + "Show all rooms" : "Εμφάνιση όλων των δωματίων", + "Projector" : "Projector", + "Whiteboard" : "Λευκός πίνακας", "Room type" : "Τύπος δωματίου", "Any" : "Οποιοδήποτε", "Minimum seating capacity" : "Ελάχιστος αριθμός θέσεων", - "More" : "Περισσότερα", - "Update this occurrence" : "Ενημερώστε αυτό το περιστατικό", + "More details" : "Λεπτομέρειες", "Update this and all future" : "Ενημερώστε αυτό και όλα τα μελλοντικά", + "Update this occurrence" : "Ενημερώστε αυτό το περιστατικό", "Public calendar does not exist" : "Το δημόσιο ημερολόγιο δεν υπάρχει", "Maybe the share was deleted or has expired?" : "Ίσως το κοινόχρηστο διαγράφηκε ή δεν υπάρχει;", - "Please select a time zone:" : "Παρακαλούμε επιλέξτε χρονική ζώνη:", - "Pick a time" : "Επιλογή χρόνου", - "Pick a date" : "Επιλογή ημερομηνίας", "from {formattedDate}" : "από {formattedDate}", "to {formattedDate}" : "έως {formattedDate}", "on {formattedDate}" : "σε {formattedDate}", @@ -332,9 +384,24 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} στις {formattedTime}", "Please enter a valid date" : "Παρακαλώ εισάγετε έγκυρη ημερομηνία", "Please enter a valid date and time" : "Παρακαλώ εισάγετε έγκυρη ημερομηνία και ώρα", + "Select a time zone" : "Επιλέξτε μια ζώνη ώρας", + "Please select a time zone:" : "Παρακαλούμε επιλέξτε χρονική ζώνη:", + "Pick a time" : "Επιλογή χρόνου", + "Pick a date" : "Επιλογή ημερομηνίας", "Type to search time zone" : "Πληκτρολογήστε για αναζήτηση χρονικής ζώνης", "Global" : "Καθολικό", - "Select date" : "Επιλέξτε ημερομηνία", + "Holidays in {region}" : "Αργίες σε {region}", + "An error occurred, unable to read public calendars." : "Παρουσιάστηκε ένα σφάλμα, αδυναμία ανάγνωσης δημόσιων ημερολογίων.", + "An error occurred, unable to subscribe to calendar." : "Παρουσιάστηκε ένα σφάλμα, αδυναμία εγγραφής στο ημερολόγιο.", + "Public holiday calendars" : "Ημερολόγια δημόσιων αργιών", + "Public calendars" : "Δημόσια ημερολόγια", + "No valid public calendars configured" : "Δεν έχουν διαμορφωθεί έγκυρα δημόσια ημερολόγια", + "Speak to the server administrator to resolve this issue." : "Μιλήστε με τον διαχειριστή του διακομιστή για να επιλυθεί αυτό το πρόβλημα.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Τα ημερολόγια δημόσιων αργιών παρέχονται από το Thunderbird. Τα δεδομένα του ημερολογίου θα ληφθούν από το {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Αυτά τα δημόσια ημερολόγια προτείνονται από τους διαχειριστές του διακομιστή. Τα δεδομένα του ημερολογίου θα ληφθούν από την αντίστοιχη ιστοσελίδα.", + "By {authors}" : "Από {authors}", + "Subscribed" : "Εγγεγραμμένα", + "Subscribe" : "Εγγραφή", "Select slot" : "Επιλογή θέσης", "No slots available" : "Καμμια διαθέσιμη θέση", "The slot for your appointment has been confirmed" : "H θέση σας για το ραντεβού σας έχει επιβεβαιωθεί", @@ -351,21 +418,19 @@ OC.L10N.register( "Personal" : "Προσωπικά", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Η αυτόματη επιλογή χρονικής ζώνης καθορίστηκε σε UTC.\nΑυτό συμβαίνει συνήθως λόγω ρυθμίσεων ασφαλείας του περιηγητή σας.\nΠαρακαλούμε επιλέξτε τη χρονική ζώνη χειροκίνητα από τις ρυθμίσεις ημερολογίου.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Η χρονική ζώνη ({timezoneId}) που καθορίσατε δεν βρέθηκε. Επαναφορά σε UTC.\nΠαρακαλούμε αλλάξτε τη χρονική ζώνη σας από τις ρυθμίσεις και αναφέρετε το σφάλμα.", - "No more events today" : "Δεν υπάρχουν άλλα γεγονότα για σήμερα", - "No upcoming events" : "Κανένα προσεχές γεγονός", - "Create a new event" : "Δημιουργία νέου γεγονότος", - "[Today]" : "[Σήμερα]", - "[Tomorrow]" : "[Αύριο]", - "[Yesterday]" : "[Χθες]", - "[Last] dddd" : "[Last] ηηηη", + "Edit event" : "Επεξεργασία συμβάντος", "Event does not exist" : "Δεν υπάρχει το γεγονός", + "Duplicate" : "Διπλότυπο", "Delete this occurrence" : "Διαγράψτε το περιστατικό", "Delete this and all future" : "Διαγράψτε αυτό και όλα τα μελλοντικά", - "Details" : "Λεπτομέρειες", - "Attendees" : "Συμμετέχοντες", - "Resources" : "Πηγές", + "All day" : "Ολοήμερο", + "Managing shared access" : "Διαχείριση κοινής πρόσβασης", + "Deny access" : "Άρνηση πρόσβασης", + "Invite" : "Πρόσκληση", + "_User requires access to your file_::_Users require access to your file_" : ["Ο χρήστης απαιτεί πρόσβαση στο αρχείο σας","Οι χρήστες χρειάζονται πρόσβαση στο αρχείο σας"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Συνημμένο που απαιτεί κοινόχρηστη πρόσβαση","Συνημμένα που απαιτούν κοινόχρηστη πρόσβαση"], + "Untitled event" : "Συμβάν χωρίς τίτλο", "Close" : "Κλείσιμο", - "Show more details" : "Δείτε περισσότερες λεπτομέρειες", "Subscribe to {name}" : "Εγγραφείτε στον {name}", "Export {name}" : "Εξαγωγη {name}", "Anniversary" : "Επέτειος", @@ -395,7 +460,6 @@ OC.L10N.register( "on {time}" : "στις {time}", "on {time} ({timezoneId})" : "στις {time} ({timezoneId})", "Week {number} of {year}" : "Εβδομάδα {number} του {year}", - "Does not repeat" : "Δεν επαναλαμβάνεται", "Daily" : "Ημερησίως", "Weekly" : "Εβδομαδιαίως", "Monthly" : "Μηνιαίως", @@ -407,18 +471,17 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["σε {weekday}","σε {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["σε ημέρα {dayOfMonthList}","σε ημέρες {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "την {ordinalNumber} {byDaySet}", - "in {monthNames}" : "τον {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "τον {monthNames} στις {ordinalNumber} {byDaySet}", "until {untilDate}" : "έως {untilDate}", "_%n time_::_%n times_" : ["%n φορά","%n φορές"], - "Untitled event" : "Συμβάν χωρίς τίτλο", + "second" : "δευτερόλεπτο", + "third" : "τρίτο", + "fourth" : "τέταρτο", + "fifth" : "πέμπτο", + "second to last" : "προτελευταίο", + "last" : "τελευταίο", "Untitled task" : "Εργασία χωρίς όνομα", "Please ask your administrator to enable the Tasks App." : "Παρακαλώ ζητήστε από τον διαχειριστή την ενεργοποίηση της εφαρμογής Εργασίες.", - "Prev" : "Προηγούμενο", - "Next" : "Επόμενο", - "Prev year" : "Προηγούμενο έτος", - "Next year" : "Επόμενο έτος", - "Year" : "Έτος", "W" : "Εβδ", "%n more" : "%n επιπλέον", "No events to display" : "Κανένα γεγονός για εμφάνιση", @@ -437,7 +500,6 @@ OC.L10N.register( "When shared hide this event" : "Απόκρυψη αυτού του συμβάντος, όταν κοινοποιείται", "The visibility of this event in shared calendars." : "Η ορατότητα του γεγονότος στα ημερολόγια κοινής χρήσης.", "Add a location" : "Προσθήκη τοποθεσίας", - "Add a description" : "Προσθήκη περιγραφής", "Status" : "Κατάσταση", "Confirmed" : "Επιβεβαιώθηκε", "Canceled" : "Ακυρώθηκε", @@ -450,132 +512,19 @@ OC.L10N.register( "Add this as a new category" : "Προσθήκη αυτού σε νέα κατηγορία", "Custom color" : "Προσαρμοσμένο χρώμα", "Special color of this event. Overrides the calendar-color." : "Ειδικό χρώμα αυτού του γεγονότος. Υπερισχύει του ημερολογίου.", - "Chat room for event" : "Χώρος άμεσων μηνυμάτων για το γεγονός ", + "Error while sharing file" : "Σφάλμα κατά τον διαμοιρασμό αρχείου", + "Error while sharing file with user" : "Σφάλμα κατά την κοινή χρήση του αρχείου με τον χρήστη", + "Attachment {fileName} already exists!" : "Το συνημμένο {name} υπάρχει ήδη!", + "An error occurred during getting file information" : "Εμφανίστηκε σφάλμα κατά τη λήψη πληροφοριών αρχείου", + "An error occurred, unable to delete the calendar." : "Παρουσιάστηκε σφάλμα, δεν δύναται να διαγραφή το ημερολόγιο.", "Imported {filename}" : "Εισηγμένο {filename}", - "Meditation" : "Διαλογισμός", - "Relaxing" : "Χαλάρωση", - "Relax" : "Ξεκούραση", - "Break" : "Διάλειμμα", - "Commute" : "Μετακίνηση προς την εργασία", - "Commuting" : "Μετακίνηση", - "Invoice" : "Tιμολόγιο", - "Finance" : "Χρηματοοικονομικά", - "Bank" : "Τράπεζα", - "Money" : "Χρήματα", - "Wedding" : "Γάμος", - "Dog" : "Σκύλος", - "Concert" : "Συναυλία", - "Festival" : "Φεστιβάλ", - "Theater" : "Θέατρο", - "Theatre" : "Θέατρο", - "Presentation" : "Παρουσίαση", - "Talk" : "Ομιλία", - "Speech" : "Λόγος", - "Deadline" : "Προθεσμία", - "Submission" : "Υποβολή", - "Reporting" : "Αναφορά", - "Camping" : "Κατασκήνωση", - "Camp" : "Κατασκήνωση", - "Election" : "Εκλογή", - "Voting" : "Ψηφοφορία", - "Vote" : "Ψήφος", - "Garden" : "Κήπος", - "Farm" : "Φάρμα", - "Movie" : "Ταινία", - "Cinema" : "Σινεμά", - "Graduation" : "Αποφοίτηση", - "Brainstorm" : "Καταιγισμός ιδεών", - "Review" : "Επισκόπηση", - "Audit" : "Έλεγχος", - "Inspection" : "Επιθεώρηση", - "Proofreading" : "Γρήγορη ανάγνωση", - "Baseball" : "Μπέιζμπολ", - "Meet" : "Συνάντηση", - "Planning" : "Σχεδιασμός", - "Pointing" : "Επισήμανση", - "Retrospective" : "Αναδρομικά", - "Office" : "Γραφείο", - "Contributor week" : "Εβδομάδα συνεργάτη", - "Mail" : "Αλληλογραφία", - "Soccer" : "Ποδόσφαιρο", - "Football" : "Ποδόσφαιρο", - "Gaming" : "Παιχνίδια", - "Drive" : "Οδήγηση", - "Driving" : "Οδήγηση", - "Bicycle" : "Ποδήλατο", - "Cycle" : "Cycle", - "Cycling" : "Ποδηλασία", - "Biking" : "Ποδηλασία", - "Bike" : "Ποδήλατο", - "Podcast" : "Podcast", - "Basketball" : "Μπάσκετ", - "Fishing" : "Ψάρεμα", - "Hiking" : "Πεζοπορία", - "Hike" : "Πεζοπόρος", - "Art" : "Τέχνη", - "Exhibition" : "Εκθεση", - "Museum" : "Μουσείο", - "Pilates" : "Πιλάτες", - "Park" : "Πάρκο", - "Walk" : "Περίπατος", - "Studying" : "Μελέτη", - "Doctor" : "Ιατρός", - "Health" : "Υγεία", - "Dentist" : "Οδοντίατρος", - "Hospital" : "Νοσοκομείο", - "Interview" : "Συνέντευξη", - "Training" : "Training", - "Practice" : "Πρακτική", - "Sports" : "Αθλήματα", - "Exercise" : "Ασκηση", - "Work out" : "Work out", - "Working out" : "Working out", - "Gym" : "Γυμναστήριο", - "Barber" : "Μπαρμπέρης", - "Haircut" : "Κόμμωση", - "Hairdresser" : "Κουρείο", - "Exam" : "Εξετάσεις", - "Written test" : "Γραπτή εξέταση", - "Oral test" : "Προφορική εξέταση", - "Working" : "Εργαζόμενος", - "New Years Eve" : "Πρωτοχρονιά", - "NYE" : "Νέα χρονιά", - "Fireworks" : "Πυροτεχνήματα", - "Running" : "Τρέξιμο", - "Go for a run" : "Πηγαίνετε για ένα τρέξιμο", - "Marathon" : "Μαραθώνιος", - "Video-conference" : "Τηλεδιάσκεψη", - "Conference-call" : "Κλήση τηλεδιάσκεψης", - "Video-call" : "Κλήση βίντεο", - "Video-chat" : "Video-chat", - "Video-meeting" : "Video-συνάντηση", - "Call" : "Κλήση", - "Calling" : "Σε κλήση", - "Christmas" : "Χριστούγεννα", - "Conference" : "Διάσκεψη", - "Pizza" : "Πίτσα", - "Travelling" : "Ταξιδεύοντας", - "Trip" : "Εκδρομή", - "Journey" : "Διαδρομή", - "Collaborate" : "Συνεργασία", - "Pair" : "Ζεύγος", - "Lecture" : "Διάλεξη", - "Seminar" : "Σεμινάριο", - "Teaching" : "Διδασκαλία", - "Photograph" : "Φωτογραφία", - "Party" : "Πάρτυ", - "Celebration" : "Εορτασμός", - "Celebrate" : "Εορτασμός", - "Birthday" : "Γενέθλια", - "Shopping" : "Ψώνια", - "Groceries" : "Ψώνια", - "Skate" : "Πατινάζ", - "Skateboard" : "Skateboard", - "Wine tasting" : "Γευσιγνωσία κρασιού", - "Golf" : "Γκόλφ", - "Dinner" : "Δείπνο", - "Lunch" : "Γεύμα", + "This is an event reminder." : "Αυτή είναι μια υπενθύμιση γεγονότος.", "Appointment not found" : "Το ραντεβού δεν βρέθηκε", - "User not found" : "Ο/Η χρήστης δεν βρέθηκε" + "User not found" : "Ο/Η χρήστης δεν βρέθηκε", + "Reminder" : "Υπενθύμιση", + "+ Add reminder" : "+ Προσθήκη υπενθύμισης", + "Available times:" : "Διαθέσιμες ώρες:", + "Suggestions" : "Προτάσεις", + "Details" : "Λεπτομέρειες" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/el.json b/l10n/el.json index fc4a784910b2cd97520db58c4176db6092fef876..55c9b4d421ca34b328f82992baadaf97c591976b 100644 --- a/l10n/el.json +++ b/l10n/el.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "Η παρεχόμενη διεύθυνση email είναι πολύ μεγάλη", "User-Session unexpectedly expired" : "Η συνεδρία-χρήστη έληξε απότομα", "Provided email-address is not valid" : "Η διεύθυνση email δεν είναι έγκυρη", "%s has published the calendar »%s«" : "Ο/η %s έχει δημοσιεύσει το ημερολόγιο »%s«", @@ -9,125 +10,155 @@ "Open »%s«" : "Άνοιγμα »%s«", "Cheers!" : "Με εκτίμηση!", "Upcoming events" : "Προσεχή γεγονότα", + "No more events today" : "Δεν υπάρχουν άλλα γεγονότα για σήμερα", + "No upcoming events" : "Κανένα προσεχές γεγονός", + "More events" : "Περισσότερα γεγονότα", + "%1$s with %2$s" : "%1$s με %2$s", + "Calendar" : "Ημερολόγιο", + "New booking {booking}" : "Νέα κράτηση {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) έκλεισε το ραντεβού \"{config_display_name}\" στις {date_time}.", "Appointments" : "Ραντεβού", "Schedule appointment \"%s\"" : "Προγραμματίστε ραντεβού%s", "Schedule an appointment" : "Προγραμματίστε ένα ραντεβού", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Προετοιμασία για %s", "Follow up for %s" : "Επόμενο για %s", - "Your appointment \"%s\" needs confirmation" : "Το ραντεβού σας \"%s\" χρειάζεται επιβεβαίωση.", + "Your appointment \"%s\" with %s needs confirmation" : "Το ραντεβού σας \"%s\" με %s χρειάζεται επιβεβαίωση", "Dear %s, please confirm your booking" : "Αγαπητέ/ή %s, παρακαλώ επιβεβαιώστε την κράτησή σας", "Confirm" : "Επιβεβαιώνω", + "Description:" : "Περιγραφή:", "This confirmation link expires in %s hours." : "Αυτός ο σύνδεσμος επιβεβαίωσης λήγει σε %s ώρες", - "If you wish to cancel the appointment after all, please contact your organizer." : "Εάν τελικά επιθυμείτε να ακυρώσετε το ραντεβού σας, παρακαλούμε να ενημερώσετε τον διοργανωτή σας.", - "Appointment:" : "Ραντεβού:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Εάν τελικά θέλετε να ακυρώσετε το ραντεβού, επικοινωνήστε με τον διοργανωτή απαντώντας σε αυτό το email ή μεταβαίνοντας στη σελίδα του προφίλ του.", + "Your appointment \"%s\" with %s has been accepted" : "Το ραντεβού σας \"%s\" με %s χει γίνει αποδεκτό", + "Dear %s, your booking has been accepted." : "Αγαπητέ/ή %s, η κράτησή σας έχει γίνει αποδεκτή.", + "Appointment for:" : "Ραντεβού για:", "Date:" : "Ημερομηνία:", + "You will receive a link with the confirmation email" : "Θα λάβετε έναν σύνδεσμο με το email επιβεβαίωσης", "Where:" : "Που:", - "Description:" : "Περιγραφή:", - "Calendar" : "Ημερολόγιο", + "Comment:" : "Σχόλιο:", + "You have a new appointment booking \"%s\" from %s" : "Έχετε μια νέα κράτηση για το ραντεβού \"%s\" από τον/την %s", + "Dear %s, %s (%s) booked an appointment with you." : "Αγαπητέ/ή %s, %s (%s) έκανε κράτηση σε ένα ραντεβού σας.", "A Calendar app for Nextcloud" : "Eφαρμογή ημερολογίου για το Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Η εφαρμογή Ημερολόγιο είναι μια διεπαφή χρήστη για τον διακομιστή CalDAV του Nextcloud. Συνχρονίστε εύκολα τα συμβάντα σας από διάφορες συσκευές με το Nextcloud και επεξεργαστείτε τα online.\n\n* 🚀 **Συνεργάζεται με άλλες εφαρμογές Nextcloud!** Επί του παρόντος με τις Επαφές - και με άλλες στο μέλλον.\n* 🌐 **Υποστήριξη WebCal!** Θέλετε να δείτε το πρόγραμμα της αγαπημένης σας ομάδας στο ημερολόγιό σας; Κανένα πρόβλημα!\n* 🙋 **Συμμετέχοντες!** Προσκαλέστε άτομα στις εκδηλώσεις σας.\n* ⌚️ **Ελεύθερος/Απασχολημένος!** Δείτε τη διαθεσιμότητα των συνεργατών σας για συνάντηση\n* ⏰ **Υπενθυμίσεις!** Λάβετε ειδοποιήσεις για γεγονότα στον περιηγητή σας ή στο ηλ.ταχυδρομείο σας.\n* 🔍 Αναζήτηση! Εντοπίστε εύκολα γεγονότα που σας ενδιαφέρουν\n* ☑️ Εργασίες! Δείτε τις εργασίες με ημερομηνία λήξεως απευθείας στο ημερολόγιο.\n* 🙈 **Δεν ανακαλύπτουμε τον τροχό!** Με βάση τις βιβλιοθήκες [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) ", "Previous day" : "Προηγούμενη ημέρα", "Previous week" : "Προηγούμενη εβδομάδα", + "Previous year" : "Προηγούμενο έτος", "Previous month" : "Προηγούμενος μήνας", "Next day" : "Επόμενη ημέρα", "Next week" : "Επόμενη εβδομάδα", + "Next year" : "Επόμενο έτος", "Next month" : "Επόμενος μήνας", - "New event" : "Νέο γεγονός", + "Create new event" : "Δημιουργία νέου συμβάντος", + "Event" : "Συμβάν", "Today" : "Σήμερα", "Day" : "Ημέρα", "Week" : "Εβδομάδα", "Month" : "Μήνας", + "Year" : "Έτος", "List" : "Λίστα", + "Appointment link was copied to clipboard" : "Ο σύνδεσμος του ραντεβού αντιγράφηκε στο πρόχειρο.", + "Appointment link could not be copied to clipboard" : "Δεν ήταν δυνατή η αντιγραφή του συνδέσμου ραντεβού στο πρόχειρο.", "Preview" : "Προεπισκόπηση", "Copy link" : "Αντιγραφή συνδέσμου", "Edit" : "Επεξεργασία", "Delete" : "Διαγραφή", - "Appointment link was copied to clipboard" : "Ο σύνδεσμος του ραντεβού αντιγράφηκε στο πρόχειρο.", - "Appointment link could not be copied to clipboard" : "Δεν ήταν δυνατή η αντιγραφή του συνδέσμου ραντεβού στο πρόχειρο.", - "Add new" : "Προσθήκη νέου", - "Untitled calendar" : "Ημερολόγιο χωρίς τίτλο", - "Edit name" : "Επεξεργασία ονόματος", - "Saving name …" : "Αποθήκευση ονόματος …", - "Edit color" : "Επεξεργασία χρώματος", - "Saving color …" : "Αποθήκευση χρώματος …", - "Copy private link" : "Αντιγραφή ιδιωτικού συνδέσμου", - "Export" : "Εξαγωγή", - "Unshare from me" : "Διακοπή διαμοιρασμού με εμένα", + "Create new" : "Δημιουργία νέου", + "Disable calendar \"{calendar}\"" : "Απενεργοποίηση ημερολογίου \"{calendar}\"", + "Disable untitled calendar" : "Απενεργοποίηση ημερολογίου χωρίς τίτλο", + "Enable calendar \"{calendar}\"" : "Ενεργοποίηση ημερολογίου \"{calendar}\"", + "Enable untitled calendar" : "Ενεργοποίηση ημερολογίου χωρίς τίτλο", "An error occurred, unable to change visibility of the calendar." : "Παρουσιάστηκε σφάλμα, δεν δύναται να αλλάξει η εμφάνιση του ημερολογίου.", - "An error occurred, unable to delete the calendar." : "Παρουσιάστηκε σφάλμα, δεν δύναται να διαγραφή το ημερολόγιο.", - "Calendar link copied to clipboard." : "Ο σύνδεσμος ημερολογίου αντιγράφηκε στο πρόχειρο.", - "Calendar link could not be copied to clipboard." : "Ο σύνδεσμος ημερολογίου δεν μπορεί να αντιγραφή στο πρόχειρο.", - "An error occurred, unable to rename the calendar." : "Παρουσιάστηκε σφάλμα, δεν δύναται να αλλαχτεί το όνομα του ημερολογίου.", - "An error occurred, unable to change the calendar's color." : "Παρουσιάστηκε σφάλμα, δεν μπορεί να αλλάξει το χρώμα του ημερολογίου.", + "Untitled calendar" : "Ημερολόγιο χωρίς τίτλο", + "Shared with you by" : "Διαμοιρασμένα μαζί σας από", + "Edit and share calendar" : "Επεξεργασία και κοινή χρήση ημερολογίου", + "Edit calendar" : "Επεξεργασία ημερολογίου", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Αφαίρεση κοινής χρήσης ημερολογίου σε {countdown} δεύτερα","Αφαίρεση κοινής χρήσης ημερολογίου σε {countdown} δευτερόλεπτα"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Διαγραφή ημερολογίου σε {countdown} δεύτερα","Διαγραφή ημερολογίου σε {countdown} δευτερόλεπτα"], + "An error occurred, unable to create the calendar." : "Παρουσιάστηκε σφάλμα, δεν μπορεί να δημιουργηθεί το ημερολόγιο.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Παρακαλώ εισάγετε έγκυρο σύνδεσμο (ξεκινούν με http://, https://, webcal://, ή webcals://)", + "Calendars" : "Ημερολόγια", + "Add new" : "Προσθήκη νέου", + "New calendar" : "Νέο ημερολόγιο", + "Name for new calendar" : "Όνομα για νέο ημερολόγιο.", + "Creating calendar …" : "Δημιουργία ημερολογίου '...'", + "New calendar with task list" : "Νέο ημερολόγιο με λίστα εργασιών", + "New subscription from link (read-only)" : "Νέα συνδρομή από τον σύνδεσμο (μόνο για ανάγνωση)", + "Creating subscription …" : "Δημιουργία συνδρομής ...", + "Add public holiday calendar" : "Προσθήκη ημερολογίου αργιών", + "Add custom public calendar" : "Προσθήκη προσαρμοσμένου δημόσιου ημερολογίου", + "Calendar link copied to clipboard." : "Ο σύνδεσμος ημερολογίου αντιγράφηκε στο πρόχειρο.", + "Calendar link could not be copied to clipboard." : "Ο σύνδεσμος ημερολογίου δεν μπορεί να αντιγραφή στο πρόχειρο.", + "Copy subscription link" : "Αντιγραφή συνδέσμου συνδρομής", + "Copying link …" : "Αντιγραφή συνδέσμου '...'", + "Copied link" : "Αντιγραμμένος σύνδεσμος", + "Could not copy link" : "Ο σύνδεσμος δεν μπορεί να αντιγραφεί", + "Export" : "Εξαγωγή", + "Untitled item" : "Στοιχείο χωρίς όνομα", + "Unknown calendar" : "Άγνωστο ημερολόγιο", + "Could not load deleted calendars and objects" : "Δεν ήταν δυνατή η φόρτωση διαγραμμένων ημερολογίων και αντικειμένων", + "Could not delete calendar or event" : "Δεν ήταν δυνατή η διαγραφή ημερολογίου ή συμβάντος", + "Could not restore calendar or event" : "Δεν ήταν δυνατή η επαναφορά ημερολογίου ή συμβάντος", + "Do you really want to empty the trash bin?" : "Θέλετε να αδειάσετε τον κάδο απορριμμάτων;", + "Empty trash bin" : "Άδειασμα κάδου", + "Trash bin" : "Κάδος απορριμμάτων", + "Loading deleted items." : "Φόρτωση διαγραμμένων στοιχείων.", + "You do not have any deleted items." : "Δεν έχετε διαγραμμένα στοιχεία.", + "Name" : "Όνομα", + "Deleted" : "Διαγράφηκε", + "Restore" : "Επαναφορά", + "Delete permanently" : "Οριστική διαγραφή", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Τα στοιχεία στον κάδο απορριμμάτων διαγράφονται μετά από {numDays} ημέρα","Τα στοιχεία στον κάδο απορριμμάτων διαγράφονται μετά από {numDays} ημέρες"], + "Could not update calendar order." : "Δεν μπορεί να γίνει ενημέρωση εντολών ημερολογίου.", + "Shared calendars" : "Κοινόχρηστα ημερολόγια", + "Deck" : "Deck", + "Hidden" : "Κρυφός", + "Internal link" : "Εσωτερικός σύνδεσμος", + "A private link that can be used with external clients" : "Ένας ιδιωτικός σύνδεσμος που μπορεί να χρησιμοποιηθεί με τρίτες εφαρμογές", + "Copy internal link" : "Αντιγραφή εσωτερικού συνδέσμου", + "An error occurred, unable to publish calendar." : "Παρουσιάστηκε σφάλμα, δεν θα δημοσιευτεί το ημερολόγιο.", + "An error occurred, unable to send email." : "Παρουσιάστηκε σφάλμα, δεν θα σταλεί το email.", + "Embed code copied to clipboard." : "Ο ενσωματωμένος κώδικας αντιγράφηκε στο πρόχειρο.", + "Embed code could not be copied to clipboard." : "Ο ενσωματωμένος κώδικας δεν μπορεί να αντιγραφεί στο πρόχειρο.", + "Unpublishing calendar failed" : "Η κατάργηση δημοσιευμένου ημερολογίου απέτυχε", "Share link" : "Διαμοιρασμός συνδέσμου", - "Publish calendar" : "Δημοσίευση ημερολογίου", - "Publishing calendar" : "Δημοσίευση ημερολογίου", "Copy public link" : "Αντιγραφή δημόσιου συνδέσμου", "Send link to calendar via email" : "Αποστολή συνδέσμου στο ημερολόγιο μέσω email", "Enter one address" : "Εισαγωγή μίας διεύθυνσης", "Sending email …" : "Αποστολή email  '...'", - "Copy subscription link" : "Αντιγραφή συνδέσμου συνδρομής", - "Copying link …" : "Αντιγραφή συνδέσμου '...'", - "Copied link" : "Αντιγραμμένος σύνδεσμος", - "Could not copy link" : "Ο σύνδεσμος δεν μπορεί να αντιγραφεί", "Copy embedding code" : "Αντιγραφή ενσωματωμένου κώδικα", "Copying code …" : "Αντιγραφή κώδικα '...'", "Copied code" : "Αντιγραμμένος κώδικας", "Could not copy code" : "Ο κώδικας δεν μπορεί να αντιγραφεί", "Delete share link" : "Διαγραφή κοινόχρηστου συνδέσμου", "Deleting share link …" : "Διαγραφή κοινόχρηστου συνδέσμου '...'", - "An error occurred, unable to publish calendar." : "Παρουσιάστηκε σφάλμα, δεν θα δημοσιευτεί το ημερολόγιο.", - "An error occurred, unable to send email." : "Παρουσιάστηκε σφάλμα, δεν θα σταλεί το email.", - "Embed code copied to clipboard." : "Ο ενσωματωμένος κώδικας αντιγράφηκε στο πρόχειρο.", - "Embed code could not be copied to clipboard." : "Ο ενσωματωμένος κώδικας δεν μπορεί να αντιγραφεί στο πρόχειρο.", - "Unpublishing calendar failed" : "Η κατάργηση δημοσιευμένου ημερολογίου απέτυχε", - "Share with users or groups" : "Κοινή χρήση με χρήστες ή ομάδες", - "No users or groups" : "Δεν υπάρχουν χρήστες ή ομάδες", + "An error occurred while unsharing the calendar." : "Προέκυψε σφάλμα κατά την κατάργηση της κοινής χρήσης του ημερολογίου.", + "An error occurred, unable to change the permission of the share." : "Παρουσιάστηκε σφάλμα, δεν ήταν δυνατή η αλλαγή των δικαιωμάτων της κοινής χρήσης.", "can edit" : "δυνατότητα επεξεργασίας", "Unshare with {displayName}" : "Κατάργηση κοινής χρήσης με {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Παρουσιάστηκε σφάλμα, δεν είναι δυνατή η αλλαγή της κατάργησης της κοινής χρήσης του ημερολογίου.", - "An error occurred, unable to change the permission of the share." : "Παρουσιάστηκε σφάλμα, δεν ήταν δυνατή η αλλαγή των δικαιωμάτων της κοινής χρήσης.", - "+ New calendar" : "+ Νέο ημερολόγιο", - "New calendar" : "Νέο ημερολόγιο", - "Name for new calendar" : "Όνομα για νέο ημερολόγιο.", - "Creating calendar …" : "Δημιουργία ημερολογίου '...'", - "New calendar with task list" : "Νέο ημερολόγιο με λίστα εργασιών", - "New subscription from link (read-only)" : "Νέα συνδρομή από τον σύνδεσμο (μόνο για ανάγνωση)", - "Creating subscription …" : "Δημιουργία συνδρομής ...", - "An error occurred, unable to create the calendar." : "Παρουσιάστηκε σφάλμα, δεν μπορεί να δημιουργηθεί το ημερολόγιο.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Παρακαλώ εισάγετε έγκυρο σύνδεσμο (ξεκινούν με http://, https://, webcal://, ή webcals://)", - "Trash bin" : "Κάδος απορριμμάτων", - "Loading deleted elements." : "Φόρτωση διαγραμμένων στοιχείων.", - "You do not have any deleted elements." : "Δεν έχετε διαγραμμένα στοιχεία.", - "Name" : "Όνομα", - "Deleted" : "Διαγράφηκε", - "Restore" : "Επαναφορά", - "Delete permanently" : "Οριστική διαγραφή", - "Empty trash bin" : "Άδειασμα κάδου", - "Untitled element" : "Στοιχείο χωρίς όνομα", - "Unknown calendar" : "Άγνωστο ημερολόγιο", - "Could not load deleted calendars and objects" : "Δεν ήταν δυνατή η φόρτωση διαγραμμένων ημερολογίων και αντικειμένων", - "Could not restore calendar or event" : "Δεν ήταν δυνατή η επαναφορά ημερολογίου ή συμβάντος", - "Do you really want to empty the trash bin?" : "Θέλετε να αδειάσετε τον κάδο απορριμμάτων;", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Τα περιεχόμενα στον κάδο απορριμάτων θα διαγραφούν μετά από {numDays} ημέρα","Τα περιεχόμενα στον κάδο απορριμάτων θα διαγραφούν μετά από {numDays} ημέρες"], - "Could not update calendar order." : "Δεν μπορεί να γίνει ενημέρωση εντολών ημερολογίου.", + "Share with users or groups" : "Κοινή χρήση με χρήστες ή ομάδες", + "No users or groups" : "Δεν υπάρχουν χρήστες ή ομάδες", + "Failed to save calendar name and color" : "Απέτυχε η αποθήκευση του ονόματος και του χρώματος του ημερολογίου", + "Calendar name …" : "Όνομα ημερολογίου …", + "Share calendar" : "Κοινή χρήση ημερολογίου", + "Unshare from me" : "Διακοπή διαμοιρασμού με εμένα", + "Save" : "Αποθήκευση", "Import calendars" : "Εισαγωγή ημερολογίων", "Please select a calendar to import into …" : "Παρακαλώ επιλέξτε ημερολόγιο για εισαγωγή σε  ...", "Filename" : "Όνομα αρχείου", "Calendar to import into" : " Ημερολόγιο για εισαγωγή σε ", "Cancel" : "Ακύρωση", "_Import calendar_::_Import calendars_" : ["Εισαγωγή ημερολογίου","Εισαγωγή ημερολογίων"], + "Select the default location for attachments" : "Επιλέξτε την προεπιλεγμένη θέση για τα συνημμένα", + "Invalid location selected" : "Επιλέχθηκε μη έγκυρη τοποθεσία", + "Attachments folder successfully saved." : "Ο φάκελος συνημμένων αποθηκεύτηκε με επιτυχία.", + "Error on saving attachments folder." : "Σφάλμα κατά την αποθήκευση του φακέλου συνημμένων.", + "Default attachments location" : "Προεπιλεγμένη τοποθεσία συνημμένων", "{filename} could not be parsed" : "το {filename} δεν μπορεί να αναλυθεί", "No valid files found, aborting import" : "Δεν βρέθηκαν συμβατά αρχεία, ακύρωση εισαγωγής", - "Import partially failed. Imported {accepted} out of {total}." : "Η εισαγωγή απέτυχε εν μέρει. Εισήχθησαν {accepted} από {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Επιτυχής εισαγωγή %n συμβάν","Επιτυχής εισαγωγή %n συμβάντων"], + "Import partially failed. Imported {accepted} out of {total}." : "Η εισαγωγή απέτυχε εν μέρει. Εισήχθησαν {accepted} από {total}.", "Automatic" : "Αυτόματο", "Automatic ({detected})" : "Αυτόματα ({detected})", "New setting was not saved successfully." : "Οι νέες ρυθμίσεις δεν αποθηκεύτηκαν επιτυχώς.", - "Shortcut overview" : "Επισκόπηση συντόμευσης", - "or" : "ή", "Navigation" : "Πλοήγηση", "Previous period" : "Προηγούμενη περίοδος", "Next period" : "Επόμενη περίοδος", @@ -135,14 +166,26 @@ "Day view" : "Εμφάνιση ημέρας", "Week view" : "Εμφάνιση εβδομάδας", "Month view" : "Εμφάνιση μήνα", + "Year view" : "Ετήσια προβολή", "List view" : "Προβολή λίστας", "Actions" : "Ενέργειες", "Create event" : "Δημιουργία συμβάντος", "Show shortcuts" : "Εμφάνιση συντομεύσεων", + "Editor" : "Επεξεργαστής", + "Close editor" : "Κλείσιμο του επεξεργαστή", + "Save edited event" : "Αποθήκευση επεξεργασμένης εκδήλωσης", + "Delete edited event" : "Διαγραφή επεξεργασμένης εκδήλωσης", + "Duplicate event" : "Αντιγραφή εκδήλωσης", + "Shortcut overview" : "Επισκόπηση συντόμευσης", + "or" : "ή", + "Calendar settings" : "Ρυθμίσεις ημερολογίου", + "No reminder" : "Χωρίς υπενθύμιση", + "CalDAV link copied to clipboard." : "Αντιγράφηκε στο πρόχειρο ο σύνδεσμος CalDAV", + "CalDAV link could not be copied to clipboard." : "Δεν αντιγράφηκε στο πρόχειρο ο σύνδεσμος CalDAV", "Enable birthday calendar" : "Ενεργοποίηση ημερολογίου γενεθλίων", "Show tasks in calendar" : "Εμφάνιση εργασιών στο ημερολόγιο", "Enable simplified editor" : "Ενεργοποίηση απλοποιημένου προγράμματος επεξεργασίας", - "Limit visible events per view" : "Περιορισμός ορατών γεγονότων ανά σελίδα", + "Limit the number of events displayed in the monthly view" : "Περιορισμός του αριθμού των συμβάντων που εμφανίζονται στη μηνιαία προβολή", "Show weekends" : "Εμφάνιση σαββατοκύριακων", "Show week numbers" : "Εμφάνιση αριθμού εβδομάδας", "Time increments" : "Χρόνος μεταξύ δυο ραντεβού", @@ -151,11 +194,6 @@ "Copy iOS/macOS CalDAV address" : "Αντιγραφή διεύθυνσης iOS/macOS CalDAV", "Personal availability settings" : "Ρυθμίσεις προσωπικής διαθεσιμότητας", "Show keyboard shortcuts" : "Εμφάνιση συντομεύσεων πληκτρολογίου", - "No reminder" : "Χωρίς υπενθύμιση", - "CalDAV link copied to clipboard." : "Αντιγράφηκε στο πρόχειρο ο σύνδεσμος CalDAV", - "CalDAV link could not be copied to clipboard." : "Δεν αντιγράφηκε στο πρόχειρο ο σύνδεσμος CalDAV", - "Appointment was created successfully" : "Το ραντεβού σας δημιουργήθηκε επιτυχώς", - "Appointment was updated successfully" : "Το ραντεβού σας ενημερώθηκε επιτυχώς", "_{duration} minute_::_{duration} minutes_" : ["{duration} λεπτό","{duration} λεπτά"], "0 minutes" : "0 λεπτά", "_{duration} hour_::_{duration} hours_" : ["{duration} ώρα","{duration} ώρες"], @@ -166,7 +204,11 @@ "To configure appointments, add your email address in personal settings." : "Για να ρυθμίσετε τα ραντεβού σας, προσθέστε την διεύθυνση email στις προσωπικές ρυθμίσεις", "Public – shown on the profile page" : "Δημόσιο - εμφανίζεται στο προφίλ", "Private – only accessible via secret link" : "Ιδιωτικό - προσβάσιμο μόνο μέσω κρυφού συνδέσμου", + "Update" : "Ενημέρωση", + "Appointment name" : "Όνομα ραντεβού", "Location" : "Τοποθεσία", + "Create a Talk room" : "Δημιουργία δωματίου Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Ένας μοναδικός σύνδεσμος θα δημιουργηθεί για κάθε κλεισμένο ραντεβού και θα αποσταλεί μέσω του email επιβεβαίωσης.", "Description" : "Περιγραφή", "Visibility" : "Ορατότητα", "Duration" : "Διάρκεια", @@ -184,6 +226,7 @@ "Friday" : "Παρασκευή", "Saturday" : "Σάββατο", "Sunday" : "Κυριακή", + "Weekdays" : "Καθημερινές", "Add time before and after the event" : "Προσθέστε χρόνο πριν και μετά από το γεγονός", "Before the event" : "Πριν το γεγονός", "After the event" : "Μετά το γεγονός", @@ -191,18 +234,17 @@ "Minimum time before next available slot" : "Ελάχιστος χρόνος πριν το επόμενο διαθέσιμο κενό", "Max slots per day" : "Μέγιστες θέσεις ανά ημέρα", "Limit how far in the future appointments can be booked" : "Περιορίστε πόσο μακριά μπορούν να κανονιστούν μελλοντικά ραντεβού", - "Create appointment" : "Δημιουργία ραντεβού", - "Edit appointment" : "Επεξεργασία ραντεβού", - "Save" : "Αποθήκευση", - "Update" : "Ενημέρωση", "Please confirm your reservation" : "Επιβεβαιώστε την κράτησή σας", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Σας στείλαμε ενα email με τις λεπτομέρειες. Παρακαλούμε να επιβεβαιώσετε το ραντεβού κάνοντας χρήση του συνδέσμου στο email. Μπορείτε να κλείσετε αυτή την σελίδα ", "Your name" : "Το όνομά σας", "Your email address" : "Η διεύθυνση ηλεκτρονικού ταχυδρομείου σας", "Please share anything that will help prepare for our meeting" : "Παρακαλούμε να μοιραστείτε οτιδήποτε θα βοηθούσε στην προετοιμασία της συνάντησης", "Could not book the appointment. Please try again later or contact the organizer." : "Δεν μπορέσαμε να κανουμε την κράτηση του ραντεβού. Παρακαλώ δοκιμάστε ξανά αργότερα ή επικοινωνήστε με τον διοργανωτή", - "Book the appointment" : "Κλείστε το ραντεβού", - "Reminder" : "Υπενθύμιση", + "Back" : "Επιστροφή", + "Create a new conversation" : "Δημιουργία νέας συνομιλίας", + "Select conversation" : "Επιλέξτε συνομιλία", + "on" : "σε", + "at" : "στις", "before at" : "πριν από το", "Notification" : "Ειδοποίηση", "Email" : "Ηλ. ταχυδρομείο", @@ -213,114 +255,124 @@ "Edit time" : "Επεξεργασία ώρας", "Save time" : "Εξοικονόμηση χρόνου", "Remove reminder" : "Διαγραφή υπενθύμισης", - "on" : "σε", - "at" : "στις", - "+ Add reminder" : "+ Προσθήκη υπενθύμισης", "Add reminder" : "Προσθήκη υπενθύμισης", - "_second_::_seconds_" : ["δευτερόλεπτο","δευτερόλεπτα"], - "_minute_::_minutes_" : ["λεπτό","λεπτά"], - "_hour_::_hours_" : ["ώρα","ώρες"], - "_day_::_days_" : ["ημέρα","ημέρες"], - "_week_::_weeks_" : ["εβδομάδα","εβδομάδες"], + "seconds" : "δευτερόλεπτα", + "minutes" : "λεπτά", + "hours" : "ώρες", + "days" : "ημέρες", + "weeks" : "εβδομάδες", + "Choose a file to add as attachment" : "Επιλέξτε ένα αρχείο για να προσθέσετε ως συνημμένο", + "Choose a file to share as a link" : "Επιλέξτε ένα αρχείο για κοινή χρήση ως σύνδεσμο", + "Attachment {name} already exist!" : "Το συνημμένο {name} υπάρχει ήδη", + "Could not upload attachment(s)" : "Δεν ήταν δυνατή η μεταφόρτωση συνημμένου(-ων)", + "No attachments" : "Χωρίς συνημμένα", + "Add from Files" : "Προσθήκη από τα Αρχεία", + "Upload from device" : "Μεταφόρτωση από συσκευή", + "Delete file" : "Διαγραφή αρχείου", + "Confirmation" : "Επιβεβαίωση", + "_{count} attachment_::_{count} attachments_" : ["{count} συνημμένo","{count} συνημμένα"], "Suggested" : "Προτεινόμενο", "Available" : "Διαθέσιμα", - "Not available" : "Δεν είναι διαθέσιμο", - "Checking availability" : "Έλεγχος διαθεσιμότητας", "Invitation accepted" : "Η πρόσκληση έγινε αποδεκτή.", "Accepted {organizerName}'s invitation" : "Αποδοχή της πρόσκλησης του/της {organizerName}", + "Participation marked as tentative" : "Η συμμετοχή χαρακτηρίστηκε ως με επιφύλαξη", + "Invitation is delegated" : "Η πρόσκληση παραπέμφθηκε", + "Not available" : "Δεν είναι διαθέσιμο", "Invitation declined" : "Η πρόσκληση απορρίφθηκε.", "Declined {organizerName}'s invitation" : "Απόρριψη της πρόσκλησης του {organizerName}", - "Invitation is delegated" : "Η πρόσκληση παραπέμφθηκε", - "Participation marked as tentative" : "Η συμμετοχή χαρακτηρίστηκε ως με επιφύλαξη", - "Invitation sent" : "Η πρόσκληση εστάλη", + "Awaiting response" : "Αναμονή απάντησης", + "Checking availability" : "Έλεγχος διαθεσιμότητας", "Has not responded to {organizerName}'s invitation yet" : "Δεν έχετε απαντήσει ακόμα στην πρόσκληση του/της {organizerName}", - "Availability of attendees, resources and rooms" : "Διαθεσιμότητα των συμμετεχόντων, των πόρων και των δωματίων", + "required participant" : "απαιτούμενος συμμετέχων", + "non-participant" : "μη συμμετέχων", + "optional participant" : "προαιρετικός συμμετέχων", "{organizer} (organizer)" : "{organizer} (διοργανωτής)", + "Availability of attendees, resources and rooms" : "Διαθεσιμότητα των συμμετεχόντων, των πόρων και των δωματίων", + "Suggestion accepted" : "Η πρόταση έγινε αποδεκτή", + "Out of office" : "Εκτός γραφείου", + "Attendees:" : "Συμμετέχοντες:", + "Done" : "Ολοκληρώθηκε", + "Room name" : "Όνομα δωματίου", + "Check room availability" : "Ελέγξτε τη διαθεσιμότητα δωματίου", "Free" : "Ελεύθερος", "Busy (tentative)" : "Απασχολημένος (με επιφύλαξη)", "Busy" : "Απασχολημένος", - "Out of office" : "Εκτός γραφείου", "Unknown" : "Άγνωστο", - "Accept" : "Αποδοχή", - "Decline" : "Απόρριψη", - "Tentative" : "Με επιφύλαξη", "The invitation has been accepted successfully." : "Η πρόσκληση έγινε αποδεκτή", "Failed to accept the invitation." : "Αποτυχία αποδοχής της πρόσκλησης", "The invitation has been declined successfully." : "Η πρόσκληση έχει απορριφθεί επιτυχώς", "Failed to decline the invitation." : "Αποτυχία απόρριψης της πρόσκλησης", "Your participation has been marked as tentative." : "Η συμμετοχή έχει χαρακτηρίστεί ως δοκιμαστική", "Failed to set the participation status to tentative." : "Αποτυχία αλλαγής κατάστασης συμμετοχής σε δοκιμαστική.", - "Create Talk room for this event" : "Δημιουργία δωματίου Talk για το γεγονός", - "Show busy times" : "Εμφάνιση απασχολημένων ωρών", + "Accept" : "Αποδοχή", + "Decline" : "Απόρριψη", + "Tentative" : "Με επιφύλαξη", "No attendees yet" : "Δεν υπάρχουν ακόμη συμμετέχοντες", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} προσκεκλημένοι, {confirmedCount} επιβεβαιωμένοι", + "Successfully appended link to talk room to location." : "Προσαρτήθηκε επιτυχώς στην τοποθεσία ο σύνδεσμος για το δωμάτιο συνομιλίας Talk", "Successfully appended link to talk room to description." : "Ο σύνδεσμος στο δωμάτιο Talk προστέθηκε με επιτυχία στην περιγραφή.", "Error creating Talk room" : "Σφάλμα δημιουργίας δωματίου Talk", - "Send email" : "Αποστολή email", + "Attendees" : "Συμμετέχοντες", + "Remove group" : "Αφαίρεση ομάδας", + "Remove attendee" : "Κατάργηση του συμμετέχοντα", + "Request reply" : "Αίτημα απάντησης", "Chairperson" : "Επικεφαλής", "Required participant" : "Απαιτείται συμμετοχή", "Optional participant" : "Προαιρετική συμμετοχή", "Non-participant" : "Μη-συμμετέχοντας", - "Remove attendee" : "Κατάργηση του συμμετέχοντα", - "Search for emails, users or contacts" : "Αναζήτηση για ηλ. διευθύνσεις, χρήστες ή επαφές", + "_%n member_::_%n members_" : ["%n μέλος","%n μέλη"], "No match found" : "Δεν βρέθηκε αποτέλεσμα.", + "Note that members of circles get invited but are not synced yet." : "Σημειώστε ότι τα μέλη των κύκλων προσκαλούνται αλλά δεν έχουν συγχρονιστεί ακόμα.", "(organizer)" : "(organizer)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Για να στείλετε προσκλήσεις και να χειριστείτε τις απαντήσεις, [linkopen]προσθέστε το email σας στις προσωπικές ρυθμίσεις [linkclose].", "Remove color" : "Αφαίρεση χρώματος", "Event title" : "Τίτλος γεγονότος", - "All day" : "Ολοήμερο", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Δεν είναι δυνατή η τροποποίηση της ρύθμισης ολοήμερου συμβάντος που αποτελεί μέρος σετ-επανάληψης.", - "from {startDate}" : "από {startDate}", - "from {startDate} at {startTime}" : "από {startDate} στις {startTime}", - "to {endDate}" : "έως {endDate}", - "to {endDate} at {endTime}" : "έως {endDate} στις {endTime}", + "From" : "Από", + "To" : "Έως", "Repeat" : "Επανάληψη", - "End repeat" : "Τέλος επανάληψης", - "Select to end repeat" : "Επιλέξτε για διακοπή επανάληψης", + "_time_::_times_" : ["φορά","φορές"], "never" : "ποτέ", "on date" : "την ημερομηνία", "after" : "μετά", - "_time_::_times_" : ["φορά","φορές"], + "End repeat" : "Τέλος επανάληψης", + "Select to end repeat" : "Επιλέξτε για διακοπή επανάληψης", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Αυτό το συμβάν είναι επανάληψη-εξαίρεση ενός σετ-επανάληψης. Δεν μπορείτε να προσθέσετε κανόνα επανάληψης σε αυτό.", "first" : "πρώτο", - "third" : "τρίτο", - "fourth" : "τέταρτο", - "fifth" : "πέμπτο", - "second to last" : "προτελευταίο", - "last" : "τελευταίο", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Οι αλλαγές στον κανόνα-επανάληψης θα ισχύουν μόνο για αυτό και για όλα τα μελλοντικά συμβάντα.", "Repeat every" : "Επανάληψη κάθε", "By day of the month" : "Την ημέρα του μήνα", "On the" : "Στο", + "_day_::_days_" : ["ημέρα","ημέρες"], + "_week_::_weeks_" : ["εβδομάδα","εβδομάδες"], "_month_::_months_" : ["μήνας","μήνες"], "_year_::_years_" : ["έτος","έτη"], "weekday" : "καθημερινή", "weekend day" : "ημέρα Σαββατοκύριακου", - "No recurrence" : "Καμμία επανάληψη", + "Does not repeat" : "Δεν επαναλαμβάνεται", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Ο τρόπος επανάληψης αυτού του συμβάντος δεν υποστηρίζεται πλήρως από το Nextcloud. Αν επεξεργαστείτε τις επιλογές επανάληψης, ορισμένες επαναλήψεις ενδέχεται να χαθούν.", - "Suggestions" : "Προτάσεις", "No rooms or resources yet" : "Κανένα δωμάτιο ή πόροι ακόμα", + "Resources" : "Πηγές", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} θέση","{seatingCapacity} θέσεις"], "Add resource" : "Προσθήκη πηγής", "Has a projector" : "Έχει προβολέα", "Has a whiteboard" : "Έχει λευκό πίνακα γραφής", "Wheelchair accessible" : "Προσβάσιμο με αναπηρικό καρότσι", "Remove resource" : "Αφαίρεση πόρου", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} θέση","{seatingCapacity} θέσεις"], - "Projector" : "Projector", - "Whiteboard" : "Λευκός πίνακας", "Search for resources or rooms" : "Αναζήτηση για πόρους ή δωμάτια", "available" : "διαθέσιμο", "unavailable" : "μη διαθέσιμο", + "Show all rooms" : "Εμφάνιση όλων των δωματίων", + "Projector" : "Projector", + "Whiteboard" : "Λευκός πίνακας", "Room type" : "Τύπος δωματίου", "Any" : "Οποιοδήποτε", "Minimum seating capacity" : "Ελάχιστος αριθμός θέσεων", - "More" : "Περισσότερα", - "Update this occurrence" : "Ενημερώστε αυτό το περιστατικό", + "More details" : "Λεπτομέρειες", "Update this and all future" : "Ενημερώστε αυτό και όλα τα μελλοντικά", + "Update this occurrence" : "Ενημερώστε αυτό το περιστατικό", "Public calendar does not exist" : "Το δημόσιο ημερολόγιο δεν υπάρχει", "Maybe the share was deleted or has expired?" : "Ίσως το κοινόχρηστο διαγράφηκε ή δεν υπάρχει;", - "Please select a time zone:" : "Παρακαλούμε επιλέξτε χρονική ζώνη:", - "Pick a time" : "Επιλογή χρόνου", - "Pick a date" : "Επιλογή ημερομηνίας", "from {formattedDate}" : "από {formattedDate}", "to {formattedDate}" : "έως {formattedDate}", "on {formattedDate}" : "σε {formattedDate}", @@ -330,9 +382,24 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} στις {formattedTime}", "Please enter a valid date" : "Παρακαλώ εισάγετε έγκυρη ημερομηνία", "Please enter a valid date and time" : "Παρακαλώ εισάγετε έγκυρη ημερομηνία και ώρα", + "Select a time zone" : "Επιλέξτε μια ζώνη ώρας", + "Please select a time zone:" : "Παρακαλούμε επιλέξτε χρονική ζώνη:", + "Pick a time" : "Επιλογή χρόνου", + "Pick a date" : "Επιλογή ημερομηνίας", "Type to search time zone" : "Πληκτρολογήστε για αναζήτηση χρονικής ζώνης", "Global" : "Καθολικό", - "Select date" : "Επιλέξτε ημερομηνία", + "Holidays in {region}" : "Αργίες σε {region}", + "An error occurred, unable to read public calendars." : "Παρουσιάστηκε ένα σφάλμα, αδυναμία ανάγνωσης δημόσιων ημερολογίων.", + "An error occurred, unable to subscribe to calendar." : "Παρουσιάστηκε ένα σφάλμα, αδυναμία εγγραφής στο ημερολόγιο.", + "Public holiday calendars" : "Ημερολόγια δημόσιων αργιών", + "Public calendars" : "Δημόσια ημερολόγια", + "No valid public calendars configured" : "Δεν έχουν διαμορφωθεί έγκυρα δημόσια ημερολόγια", + "Speak to the server administrator to resolve this issue." : "Μιλήστε με τον διαχειριστή του διακομιστή για να επιλυθεί αυτό το πρόβλημα.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Τα ημερολόγια δημόσιων αργιών παρέχονται από το Thunderbird. Τα δεδομένα του ημερολογίου θα ληφθούν από το {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Αυτά τα δημόσια ημερολόγια προτείνονται από τους διαχειριστές του διακομιστή. Τα δεδομένα του ημερολογίου θα ληφθούν από την αντίστοιχη ιστοσελίδα.", + "By {authors}" : "Από {authors}", + "Subscribed" : "Εγγεγραμμένα", + "Subscribe" : "Εγγραφή", "Select slot" : "Επιλογή θέσης", "No slots available" : "Καμμια διαθέσιμη θέση", "The slot for your appointment has been confirmed" : "H θέση σας για το ραντεβού σας έχει επιβεβαιωθεί", @@ -349,21 +416,19 @@ "Personal" : "Προσωπικά", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Η αυτόματη επιλογή χρονικής ζώνης καθορίστηκε σε UTC.\nΑυτό συμβαίνει συνήθως λόγω ρυθμίσεων ασφαλείας του περιηγητή σας.\nΠαρακαλούμε επιλέξτε τη χρονική ζώνη χειροκίνητα από τις ρυθμίσεις ημερολογίου.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Η χρονική ζώνη ({timezoneId}) που καθορίσατε δεν βρέθηκε. Επαναφορά σε UTC.\nΠαρακαλούμε αλλάξτε τη χρονική ζώνη σας από τις ρυθμίσεις και αναφέρετε το σφάλμα.", - "No more events today" : "Δεν υπάρχουν άλλα γεγονότα για σήμερα", - "No upcoming events" : "Κανένα προσεχές γεγονός", - "Create a new event" : "Δημιουργία νέου γεγονότος", - "[Today]" : "[Σήμερα]", - "[Tomorrow]" : "[Αύριο]", - "[Yesterday]" : "[Χθες]", - "[Last] dddd" : "[Last] ηηηη", + "Edit event" : "Επεξεργασία συμβάντος", "Event does not exist" : "Δεν υπάρχει το γεγονός", + "Duplicate" : "Διπλότυπο", "Delete this occurrence" : "Διαγράψτε το περιστατικό", "Delete this and all future" : "Διαγράψτε αυτό και όλα τα μελλοντικά", - "Details" : "Λεπτομέρειες", - "Attendees" : "Συμμετέχοντες", - "Resources" : "Πηγές", + "All day" : "Ολοήμερο", + "Managing shared access" : "Διαχείριση κοινής πρόσβασης", + "Deny access" : "Άρνηση πρόσβασης", + "Invite" : "Πρόσκληση", + "_User requires access to your file_::_Users require access to your file_" : ["Ο χρήστης απαιτεί πρόσβαση στο αρχείο σας","Οι χρήστες χρειάζονται πρόσβαση στο αρχείο σας"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Συνημμένο που απαιτεί κοινόχρηστη πρόσβαση","Συνημμένα που απαιτούν κοινόχρηστη πρόσβαση"], + "Untitled event" : "Συμβάν χωρίς τίτλο", "Close" : "Κλείσιμο", - "Show more details" : "Δείτε περισσότερες λεπτομέρειες", "Subscribe to {name}" : "Εγγραφείτε στον {name}", "Export {name}" : "Εξαγωγη {name}", "Anniversary" : "Επέτειος", @@ -393,7 +458,6 @@ "on {time}" : "στις {time}", "on {time} ({timezoneId})" : "στις {time} ({timezoneId})", "Week {number} of {year}" : "Εβδομάδα {number} του {year}", - "Does not repeat" : "Δεν επαναλαμβάνεται", "Daily" : "Ημερησίως", "Weekly" : "Εβδομαδιαίως", "Monthly" : "Μηνιαίως", @@ -405,18 +469,17 @@ "_on {weekday}_::_on {weekdays}_" : ["σε {weekday}","σε {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["σε ημέρα {dayOfMonthList}","σε ημέρες {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "την {ordinalNumber} {byDaySet}", - "in {monthNames}" : "τον {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "τον {monthNames} στις {ordinalNumber} {byDaySet}", "until {untilDate}" : "έως {untilDate}", "_%n time_::_%n times_" : ["%n φορά","%n φορές"], - "Untitled event" : "Συμβάν χωρίς τίτλο", + "second" : "δευτερόλεπτο", + "third" : "τρίτο", + "fourth" : "τέταρτο", + "fifth" : "πέμπτο", + "second to last" : "προτελευταίο", + "last" : "τελευταίο", "Untitled task" : "Εργασία χωρίς όνομα", "Please ask your administrator to enable the Tasks App." : "Παρακαλώ ζητήστε από τον διαχειριστή την ενεργοποίηση της εφαρμογής Εργασίες.", - "Prev" : "Προηγούμενο", - "Next" : "Επόμενο", - "Prev year" : "Προηγούμενο έτος", - "Next year" : "Επόμενο έτος", - "Year" : "Έτος", "W" : "Εβδ", "%n more" : "%n επιπλέον", "No events to display" : "Κανένα γεγονός για εμφάνιση", @@ -435,7 +498,6 @@ "When shared hide this event" : "Απόκρυψη αυτού του συμβάντος, όταν κοινοποιείται", "The visibility of this event in shared calendars." : "Η ορατότητα του γεγονότος στα ημερολόγια κοινής χρήσης.", "Add a location" : "Προσθήκη τοποθεσίας", - "Add a description" : "Προσθήκη περιγραφής", "Status" : "Κατάσταση", "Confirmed" : "Επιβεβαιώθηκε", "Canceled" : "Ακυρώθηκε", @@ -448,132 +510,19 @@ "Add this as a new category" : "Προσθήκη αυτού σε νέα κατηγορία", "Custom color" : "Προσαρμοσμένο χρώμα", "Special color of this event. Overrides the calendar-color." : "Ειδικό χρώμα αυτού του γεγονότος. Υπερισχύει του ημερολογίου.", - "Chat room for event" : "Χώρος άμεσων μηνυμάτων για το γεγονός ", + "Error while sharing file" : "Σφάλμα κατά τον διαμοιρασμό αρχείου", + "Error while sharing file with user" : "Σφάλμα κατά την κοινή χρήση του αρχείου με τον χρήστη", + "Attachment {fileName} already exists!" : "Το συνημμένο {name} υπάρχει ήδη!", + "An error occurred during getting file information" : "Εμφανίστηκε σφάλμα κατά τη λήψη πληροφοριών αρχείου", + "An error occurred, unable to delete the calendar." : "Παρουσιάστηκε σφάλμα, δεν δύναται να διαγραφή το ημερολόγιο.", "Imported {filename}" : "Εισηγμένο {filename}", - "Meditation" : "Διαλογισμός", - "Relaxing" : "Χαλάρωση", - "Relax" : "Ξεκούραση", - "Break" : "Διάλειμμα", - "Commute" : "Μετακίνηση προς την εργασία", - "Commuting" : "Μετακίνηση", - "Invoice" : "Tιμολόγιο", - "Finance" : "Χρηματοοικονομικά", - "Bank" : "Τράπεζα", - "Money" : "Χρήματα", - "Wedding" : "Γάμος", - "Dog" : "Σκύλος", - "Concert" : "Συναυλία", - "Festival" : "Φεστιβάλ", - "Theater" : "Θέατρο", - "Theatre" : "Θέατρο", - "Presentation" : "Παρουσίαση", - "Talk" : "Ομιλία", - "Speech" : "Λόγος", - "Deadline" : "Προθεσμία", - "Submission" : "Υποβολή", - "Reporting" : "Αναφορά", - "Camping" : "Κατασκήνωση", - "Camp" : "Κατασκήνωση", - "Election" : "Εκλογή", - "Voting" : "Ψηφοφορία", - "Vote" : "Ψήφος", - "Garden" : "Κήπος", - "Farm" : "Φάρμα", - "Movie" : "Ταινία", - "Cinema" : "Σινεμά", - "Graduation" : "Αποφοίτηση", - "Brainstorm" : "Καταιγισμός ιδεών", - "Review" : "Επισκόπηση", - "Audit" : "Έλεγχος", - "Inspection" : "Επιθεώρηση", - "Proofreading" : "Γρήγορη ανάγνωση", - "Baseball" : "Μπέιζμπολ", - "Meet" : "Συνάντηση", - "Planning" : "Σχεδιασμός", - "Pointing" : "Επισήμανση", - "Retrospective" : "Αναδρομικά", - "Office" : "Γραφείο", - "Contributor week" : "Εβδομάδα συνεργάτη", - "Mail" : "Αλληλογραφία", - "Soccer" : "Ποδόσφαιρο", - "Football" : "Ποδόσφαιρο", - "Gaming" : "Παιχνίδια", - "Drive" : "Οδήγηση", - "Driving" : "Οδήγηση", - "Bicycle" : "Ποδήλατο", - "Cycle" : "Cycle", - "Cycling" : "Ποδηλασία", - "Biking" : "Ποδηλασία", - "Bike" : "Ποδήλατο", - "Podcast" : "Podcast", - "Basketball" : "Μπάσκετ", - "Fishing" : "Ψάρεμα", - "Hiking" : "Πεζοπορία", - "Hike" : "Πεζοπόρος", - "Art" : "Τέχνη", - "Exhibition" : "Εκθεση", - "Museum" : "Μουσείο", - "Pilates" : "Πιλάτες", - "Park" : "Πάρκο", - "Walk" : "Περίπατος", - "Studying" : "Μελέτη", - "Doctor" : "Ιατρός", - "Health" : "Υγεία", - "Dentist" : "Οδοντίατρος", - "Hospital" : "Νοσοκομείο", - "Interview" : "Συνέντευξη", - "Training" : "Training", - "Practice" : "Πρακτική", - "Sports" : "Αθλήματα", - "Exercise" : "Ασκηση", - "Work out" : "Work out", - "Working out" : "Working out", - "Gym" : "Γυμναστήριο", - "Barber" : "Μπαρμπέρης", - "Haircut" : "Κόμμωση", - "Hairdresser" : "Κουρείο", - "Exam" : "Εξετάσεις", - "Written test" : "Γραπτή εξέταση", - "Oral test" : "Προφορική εξέταση", - "Working" : "Εργαζόμενος", - "New Years Eve" : "Πρωτοχρονιά", - "NYE" : "Νέα χρονιά", - "Fireworks" : "Πυροτεχνήματα", - "Running" : "Τρέξιμο", - "Go for a run" : "Πηγαίνετε για ένα τρέξιμο", - "Marathon" : "Μαραθώνιος", - "Video-conference" : "Τηλεδιάσκεψη", - "Conference-call" : "Κλήση τηλεδιάσκεψης", - "Video-call" : "Κλήση βίντεο", - "Video-chat" : "Video-chat", - "Video-meeting" : "Video-συνάντηση", - "Call" : "Κλήση", - "Calling" : "Σε κλήση", - "Christmas" : "Χριστούγεννα", - "Conference" : "Διάσκεψη", - "Pizza" : "Πίτσα", - "Travelling" : "Ταξιδεύοντας", - "Trip" : "Εκδρομή", - "Journey" : "Διαδρομή", - "Collaborate" : "Συνεργασία", - "Pair" : "Ζεύγος", - "Lecture" : "Διάλεξη", - "Seminar" : "Σεμινάριο", - "Teaching" : "Διδασκαλία", - "Photograph" : "Φωτογραφία", - "Party" : "Πάρτυ", - "Celebration" : "Εορτασμός", - "Celebrate" : "Εορτασμός", - "Birthday" : "Γενέθλια", - "Shopping" : "Ψώνια", - "Groceries" : "Ψώνια", - "Skate" : "Πατινάζ", - "Skateboard" : "Skateboard", - "Wine tasting" : "Γευσιγνωσία κρασιού", - "Golf" : "Γκόλφ", - "Dinner" : "Δείπνο", - "Lunch" : "Γεύμα", + "This is an event reminder." : "Αυτή είναι μια υπενθύμιση γεγονότος.", "Appointment not found" : "Το ραντεβού δεν βρέθηκε", - "User not found" : "Ο/Η χρήστης δεν βρέθηκε" + "User not found" : "Ο/Η χρήστης δεν βρέθηκε", + "Reminder" : "Υπενθύμιση", + "+ Add reminder" : "+ Προσθήκη υπενθύμισης", + "Available times:" : "Διαθέσιμες ώρες:", + "Suggestions" : "Προτάσεις", + "Details" : "Λεπτομέρειες" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/en_GB.js b/l10n/en_GB.js index cbf91526ba369788780dcea35b011d5cd9382fdb..cb1a86db58a7b440dd222c27a45fe644c0b98a91 100644 --- a/l10n/en_GB.js +++ b/l10n/en_GB.js @@ -1,6 +1,8 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Provided email-address is too long", + "User-Session unexpectedly expired" : "User-Session unexpectedly expired", "Provided email-address is not valid" : "Provided email address is not valid", "%s has published the calendar »%s«" : "%s has published the calendar »%s«", "Unexpected error sending email. Please contact your administrator." : "Unexpected error sending email. Please contact your administrator.", @@ -10,58 +12,228 @@ OC.L10N.register( "Open »%s«" : "Open »%s«", "Cheers!" : "Cheers!", "Upcoming events" : "Upcoming events", + "No more events today" : "No more events today", + "No upcoming events" : "No upcoming events", + "More events" : "More events", + "%1$s with %2$s" : "%1$s with %2$s", + "Calendar" : "Calendar", + "New booking {booking}" : "New booking {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}.", + "Appointments" : "Appointments", + "Schedule appointment \"%s\"" : "Schedule appointment \"%s\"", + "Schedule an appointment" : "Schedule an appointment", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Prepare for %s", + "Follow up for %s" : "Follow up for %s", + "Your appointment \"%s\" with %s needs confirmation" : "Your appointment \"%s\" with %s needs confirmation", + "Dear %s, please confirm your booking" : "Dear %s, please confirm your booking", "Confirm" : "Confirm", - "Where:" : "Where:", + "Appointment with:" : "Appointment with:", "Description:" : "Description:", - "Calendar" : "Calendar", + "This confirmation link expires in %s hours." : "This confirmation link expires in %s hours.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "If you wish to cancel the appointment after all, please contact your organiser by replying to this email or by visiting their profile page.", + "Your appointment \"%s\" with %s has been accepted" : "Your appointment \"%s\" with %s has been accepted", + "Dear %s, your booking has been accepted." : "Dear %s, your booking has been accepted.", + "Appointment for:" : "Appointment for:", + "Date:" : "Date:", + "You will receive a link with the confirmation email" : "You will receive a link with the confirmation email", + "Where:" : "Where:", + "Comment:" : "Comment:", + "You have a new appointment booking \"%s\" from %s" : "You have a new appointment booking \"%s\" from %s", + "Dear %s, %s (%s) booked an appointment with you." : "Dear %s, %s (%s) booked an appointment with you.", "A Calendar app for Nextcloud" : "A Calendar app for Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s match days in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events.\n* ⌚️ **Free/Busy!** See when your attendees are available to meet.\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email.\n* 🔍 Search! Find your events at ease.\n* ☑️ Tasks! See tasks with a due date directly in the calendar.\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", "Previous day" : "Previous day", "Previous week" : "Previous week", + "Previous year" : "Previous year", "Previous month" : "Previous month", "Next day" : "Next day", "Next week" : "Next week", + "Next year" : "Next year", "Next month" : "Next month", - "New event" : "New event", + "Create new event" : "Create new event", + "Event" : "Event", "Today" : "Today", "Day" : "Day", "Week" : "Week", "Month" : "Month", + "Year" : "Year", "List" : "List", + "Appointment link was copied to clipboard" : "Appointment link was copied to clipboard", + "Appointment link could not be copied to clipboard" : "Appointment link could not be copied to clipboard", "Preview" : "Preview", "Copy link" : "Copy link", "Edit" : "Edit", "Delete" : "Delete", - "Untitled calendar" : "Untitled calendar", - "Edit color" : "Edit colour", - "Copy private link" : "Copy private link", - "Export" : "Export", + "Appointment schedules" : "Appointment schedules", + "Create new" : "Create new", + "Disable calendar \"{calendar}\"" : "Disable calendar \"{calendar}\"", + "Disable untitled calendar" : "Disable untitled calendar", + "Enable calendar \"{calendar}\"" : "Enable calendar \"{calendar}\"", + "Enable untitled calendar" : "Enable untitled calendar", "An error occurred, unable to change visibility of the calendar." : "An error occurred, unable to change visibility of the calendar.", - "An error occurred, unable to delete the calendar." : "An error occurred, unable to delete the calendar.", + "Untitled calendar" : "Untitled calendar", + "Shared with you by" : "Shared with you by", + "Edit and share calendar" : "Edit and share calendar", + "Edit calendar" : "Edit calendar", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Unsharing the calendar in {countdown} second","Unsharing the calendar in {countdown} seconds"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Deleting the calendar in {countdown} second","Deleting the calendar in {countdown} seconds"], + "An error occurred, unable to create the calendar." : "An error occurred, unable to create the calendar.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)", + "Calendars" : "Calendars", + "Add new" : "Add new", + "New calendar" : "New calendar", + "Name for new calendar" : "Name for new calendar", + "Creating calendar …" : "Creating calendar …", + "New calendar with task list" : "New calendar with task list", + "New subscription from link (read-only)" : "New subscription from link (read-only)", + "Creating subscription …" : "Creating subscription …", + "Add public holiday calendar" : "Add public holiday calendar", + "Add custom public calendar" : "Add custom public calendar", "Calendar link copied to clipboard." : "Calendar link copied to clipboard.", "Calendar link could not be copied to clipboard." : "Calendar link could not be copied to clipboard.", - "An error occurred, unable to change the calendar's color." : "An error occurred, unable to change the calendar's colour.", - "Share link" : "Share link", - "Publish calendar" : "Publish calendar", - "Publishing calendar" : "Publishing calendar", - "Share with users or groups" : "Share with users or groups", - "can edit" : "can edit", - "New calendar" : "New calendar", + "Copy subscription link" : "Copy subscription link", + "Copying link …" : "Copying link …", + "Copied link" : "Copied link", + "Could not copy link" : "Could not copy link", + "Export" : "Export", + "Untitled item" : "Untitled item", + "Unknown calendar" : "Unknown calendar", + "Could not load deleted calendars and objects" : "Could not load deleted calendars and objects", + "Could not delete calendar or event" : "Could not delete calendar or event", + "Could not restore calendar or event" : "Could not restore calendar or event", + "Do you really want to empty the trash bin?" : "Do you really want to empty the trash bin?", + "Empty trash bin" : "Empty trash bin", + "Trash bin" : "Trash bin", + "Loading deleted items." : "Loading deleted items.", + "You do not have any deleted items." : "You do not have any deleted items.", "Name" : "Surname", "Deleted" : "Deleted", "Restore" : "Restore", "Delete permanently" : "Delete permanently", - "Empty trash bin" : "Empty trash bin", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Items in the trash bin are deleted after {numDays} day","Items in the trash bin are deleted after {numDays} days"], + "Could not update calendar order." : "Could not update calendar order.", + "Shared calendars" : "Shared calendars", + "Deck" : "Deck", + "Hidden" : "Hidden", + "Internal link" : "Internal link", + "A private link that can be used with external clients" : "A private link that can be used with external clients", + "Copy internal link" : "Copy internal link", + "An error occurred, unable to publish calendar." : "An error occurred, unable to publish calendar.", + "An error occurred, unable to send email." : "An error occurred, unable to send email.", + "Embed code copied to clipboard." : "Embed code copied to clipboard.", + "Embed code could not be copied to clipboard." : "Embed code could not be copied to clipboard.", + "Unpublishing calendar failed" : "Unpublishing calendar failed", + "Share link" : "Share link", + "Copy public link" : "Copy public link", + "Send link to calendar via email" : "Send link to calendar via email", + "Enter one address" : "Enter one address", + "Sending email …" : "Sending email …", + "Copy embedding code" : "Copy embedding code", + "Copying code …" : "Copying code …", + "Copied code" : "Copied code", + "Could not copy code" : "Could not copy code", + "Delete share link" : "Delete share link", + "Deleting share link …" : "Deleting share link …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "An error occurred while unsharing the calendar.", + "An error occurred, unable to change the permission of the share." : "An error occurred, unable to change the permission of the share.", + "can edit" : "can edit", + "Unshare with {displayName}" : "Unshare with {displayName}", + "Share with users or groups" : "Share with users or groups", + "No users or groups" : "No users or groups", + "Failed to save calendar name and color" : "Failed to save calendar name and colour", + "Calendar name …" : "Calendar name …", + "Never show me as busy (set this calendar to transparent)" : "Never show me as busy (set this calendar to transparent)", + "Share calendar" : "Share calendar", + "Unshare from me" : "Unshare from me", + "Save" : "Save", + "Import calendars" : "Import calendars", + "Please select a calendar to import into …" : "Please select a calendar to import into …", "Filename" : "Filename", + "Calendar to import into" : "Calendar to import into", "Cancel" : "Cancel", + "_Import calendar_::_Import calendars_" : ["Import calendar","Import calendars"], + "Select the default location for attachments" : "Select the default location for attachments", + "Pick" : "Pick", + "Invalid location selected" : "Invalid location selected", + "Attachments folder successfully saved." : "Attachments folder successfully saved.", + "Error on saving attachments folder." : "Error on saving attachments folder.", + "Default attachments location" : "Default attachments location", + "{filename} could not be parsed" : "{filename} could not be parsed", + "No valid files found, aborting import" : "No valid files found, aborting import", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Successfully imported %n event","Successfully imported %n events"], + "Import partially failed. Imported {accepted} out of {total}." : "Import partially failed. Imported {accepted} out of {total}.", "Automatic" : "Automatic", - "or" : "or", + "Automatic ({detected})" : "Automatic ({detected})", + "New setting was not saved successfully." : "New setting was not saved successfully.", + "Navigation" : "Navigation", + "Previous period" : "Previous period", + "Next period" : "Next period", + "Views" : "Views", + "Day view" : "Day view", + "Week view" : "Week view", + "Month view" : "Month view", + "Year view" : "Year view", "List view" : "List view", "Actions" : "Actions", + "Create event" : "Create event", + "Show shortcuts" : "Show shortcuts", + "Editor" : "Editor", + "Close editor" : "Close editor", + "Save edited event" : "Save edited event", + "Delete edited event" : "Delete edited event", + "Duplicate event" : "Duplicate event", + "Shortcut overview" : "Shortcut overview", + "or" : "or", + "Calendar settings" : "Calendar settings", + "At event start" : "At event start", + "No reminder" : "No reminder", + "Failed to save default calendar" : "Failed to save default calendar", + "CalDAV link copied to clipboard." : "CalDAV link copied to clipboard.", + "CalDAV link could not be copied to clipboard." : "CalDAV link could not be copied to clipboard.", + "Enable birthday calendar" : "Enable birthday calendar", + "Show tasks in calendar" : "Show tasks in calendar", + "Enable simplified editor" : "Enable simplified editor", + "Limit the number of events displayed in the monthly view" : "Limit the number of events displayed in the monthly view", + "Show weekends" : "Show weekends", "Show week numbers" : "Show week numbers", + "Time increments" : "Time increments", + "Default calendar for incoming invitations" : "Default calendar for incoming invitations", + "Default reminder" : "Default reminder", + "Copy primary CalDAV address" : "Copy primary CalDAV address", + "Copy iOS/macOS CalDAV address" : "Copy iOS/macOS CalDAV address", + "Personal availability settings" : "Personal availability settings", + "Show keyboard shortcuts" : "Show keyboard shortcuts", + "Appointment schedule successfully created" : "Appointment schedule successfully created", + "Appointment schedule successfully updated" : "Appointment schedule successfully updated", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minute","{duration} minutes"], + "0 minutes" : "0 minutes", + "_{duration} hour_::_{duration} hours_" : ["{duration} hour","{duration} hours"], + "_{duration} day_::_{duration} days_" : ["{duration} day","{duration} days"], + "_{duration} week_::_{duration} weeks_" : ["{duration} week","{duration} weeks"], + "_{duration} month_::_{duration} months_" : ["{duration} month","{duration} months"], + "_{duration} year_::_{duration} years_" : ["{duration} year","{duration} years"], + "To configure appointments, add your email address in personal settings." : "To configure appointments, add your email address in personal settings.", + "Public – shown on the profile page" : "Public – shown on the profile page", + "Private – only accessible via secret link" : "Private – only accessible via secret link", + "Appointment schedule saved" : "Appointment schedule saved", + "Create appointment schedule" : "Create appointment schedule", + "Edit appointment schedule" : "Edit appointment schedule", + "Update" : "Update", + "Appointment name" : "Appointment name", "Location" : "Location", + "Create a Talk room" : "Create a Talk room", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "A unique link will be generated for every booked appointment and sent via the confirmation email", "Description" : "Description", + "Visibility" : "Visibility", + "Duration" : "Duration", + "Increments" : "Increments", + "Additional calendars to check for conflicts" : "Additional calendars to check for conflicts", + "Pick time ranges where appointments are allowed" : "Pick time ranges where appointments are allowed", "to" : "to", + "Delete slot" : "Delete slot", + "No times set" : "No times set", "Add" : "Add", "Monday" : "Monday", "Tuesday" : "Tuesday", @@ -70,51 +242,359 @@ OC.L10N.register( "Friday" : "Friday", "Saturday" : "Saturday", "Sunday" : "Sunday", - "Save" : "Save", - "Update" : "Update", + "Weekdays" : "Weekdays", + "Add time before and after the event" : "Add time before and after the event", + "Before the event" : "Before the event", + "After the event" : "After the event", + "Planning restrictions" : "Planning restrictions", + "Minimum time before next available slot" : "Minimum time before next available slot", + "Max slots per day" : "Max slots per day", + "Limit how far in the future appointments can be booked" : "Limit how far in the future appointments can be booked", + "It seems a rate limit has been reached. Please try again later." : "It seems a rate limit has been reached. Please try again later.", + "Please confirm your reservation" : "Please confirm your reservation", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now.", + "Your name" : "Your name", "Your email address" : "Your email address", + "Please share anything that will help prepare for our meeting" : "Please share anything that will help prepare for our meeting", + "Could not book the appointment. Please try again later or contact the organizer." : "Could not book the appointment. Please try again later or contact the organiser.", + "Back" : "Back", + "Book appointment" : "Book appointment", + "Error fetching Talk conversations." : "Error fetching Talk conversations.", + "Conversation does not have a valid URL." : "Conversation does not have a valid URL.", + "Successfully added Talk conversation link to location." : "Successfully added Talk conversation link to location.", + "Successfully added Talk conversation link to description." : "Successfully added Talk conversation link to description.", + "Failed to apply Talk room." : "Failed to apply Talk room.", + "Error creating Talk conversation" : "Error creating Talk conversation", + "Select a Talk Room" : "Select a Talk Room", + "Add Talk conversation" : "Add Talk conversation", + "Fetching Talk rooms…" : "Fetching Talk rooms…", + "No Talk room available" : "No Talk room available", + "Create a new conversation" : "Create a new conversation", + "Select conversation" : "Select conversation", + "on" : "on", + "at" : "at", + "before at" : "before at", "Notification" : "Notification", "Email" : "Email", + "Audio notification" : "Audio notification", + "Other notification" : "Other notification", + "Relative to event" : "Relative to event", + "On date" : "On date", + "Edit time" : "Edit time", + "Save time" : "Save time", + "Remove reminder" : "Remove reminder", + "Add reminder" : "Add reminder", + "seconds" : "seconds", + "minutes" : "minutes", + "hours" : "hours", + "days" : "days", + "weeks" : "weeks", + "Choose a file to add as attachment" : "Choose a file to add as attachment", + "Choose a file to share as a link" : "Choose a file to share as a link", + "Attachment {name} already exist!" : "Attachment {name} already exist!", + "Could not upload attachment(s)" : "Could not upload attachment(s)", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "You are about to navigate to {host}. Are you sure to proceed? Link: {link}", + "Proceed" : "Proceed", + "No attachments" : "No attachments", + "Add from Files" : "Add from Files", + "Upload from device" : "Upload from device", + "Delete file" : "Delete file", + "Confirmation" : "Confirmation", + "_{count} attachment_::_{count} attachments_" : ["{count} attachment","{count} attachments"], + "Suggested" : "Suggested", "Available" : "Available", + "Invitation accepted" : "Invitation accepted", + "Accepted {organizerName}'s invitation" : "Accepted {organizerName}'s invitation", + "Participation marked as tentative" : "Participation marked as tentative", + "Invitation is delegated" : "Invitation is delegated", + "Not available" : "Not available", + "Invitation declined" : "Invitation declined", + "Declined {organizerName}'s invitation" : "Declined {organizerName}'s invitation", + "Availability will be checked" : "Availability will be checked", + "Invitation will be sent" : "Invitation will be sent", + "Failed to check availability" : "Failed to check availability", + "Failed to deliver invitation" : "Failed to deliver invitation", + "Awaiting response" : "Awaiting response", + "Checking availability" : "Checking availability", + "Has not responded to {organizerName}'s invitation yet" : "Has not responded to {organizerName}'s invitation yet", + "Suggested times" : "Suggested times", + "chairperson" : "chairperson", + "required participant" : "required participant", + "non-participant" : "non-participant", + "optional participant" : "optional participant", + "{organizer} (organizer)" : "{organizer} (organiser)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Availability of attendees, resources and rooms", + "Suggestion accepted" : "Suggestion accepted", + "Previous date" : "Previous date", + "Next date" : "Next date", + "Legend" : "Legend", + "Out of office" : "Out of office", + "Attendees:" : "Attendees:", + "Done" : "Done", + "Search room" : "Search room", + "Room name" : "Room name", + "Check room availability" : "Check room availability", + "Free" : "Free", + "Busy (tentative)" : "Busy (tentative)", "Busy" : "Busy", "Unknown" : "Unknown", + "Find a time" : "Find a time", + "The invitation has been accepted successfully." : "The invitation has been accepted successfully.", + "Failed to accept the invitation." : "Failed to accept the invitation.", + "The invitation has been declined successfully." : "The invitation has been declined successfully.", + "Failed to decline the invitation." : "Failed to decline the invitation.", + "Your participation has been marked as tentative." : "Your participation has been marked as tentative.", + "Failed to set the participation status to tentative." : "Failed to set the participation status to tentative.", "Accept" : "Accept", "Decline" : "Decline", "Tentative" : "Tentative", - "Send email" : "Send email", - "All day" : "All day", + "No attendees yet" : "No attendees yet", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} invited, {confirmedCount} confirmed", + "Please add at least one attendee to use the \"Find a time\" feature." : "Please add at least one attendee to use the \"Find a time\" feature.", + "Successfully appended link to talk room to location." : "Successfully appended link to talk room to location.", + "Successfully appended link to talk room to description." : "Successfully appended link to talk room to description.", + "Error creating Talk room" : "Error creating Talk room", + "Attendees" : "Attendees", + "_%n more guest_::_%n more guests_" : ["%n more guest","%n more guests"], + "Remove group" : "Remove group", + "Remove attendee" : "Remove attendee", + "Request reply" : "Request reply", + "Chairperson" : "Chairperson", + "Required participant" : "Required participant", + "Optional participant" : "Optional participant", + "Non-participant" : "Non-participant", + "_%n member_::_%n members_" : ["%n member","%n members"], + "Search for emails, users, contacts, contact groups or teams" : "Search for emails, users, contacts, contact groups or teams", + "No match found" : "No match found", + "Note that members of circles get invited but are not synced yet." : "Note that members of circles get invited but are not synced yet.", + "Note that members of contact groups get invited but are not synced yet." : "Note that members of contact groups get invited but are not synced yet.", + "(organizer)" : "(organiser)", + "Make {label} the organizer" : "Make {label} the organiser", + "Make {label} the organizer and attend" : "Make {label} the organiser and attend", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose].", + "Remove color" : "Remove colour", + "Event title" : "Event title", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Cannot modify all-day setting for events that are part of a recurrence-set.", + "From" : "From", + "To" : "To", "Repeat" : "Repeat", + "Repeat event" : "Repeat event", + "_time_::_times_" : ["time","times"], "never" : "never", + "on date" : "on date", "after" : "after", + "End repeat" : "End repeat", + "Select to end repeat" : "Select to end repeat", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it.", + "first" : "first", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Changes to the recurrence-rule will only apply to this and all future occurrences.", + "Repeat every" : "Repeat every", + "By day of the month" : "By day of the month", + "On the" : "On the", + "_day_::_days_" : ["day","days"], + "_week_::_weeks_" : ["week","weeks"], + "_month_::_months_" : ["month","months"], + "_year_::_years_" : ["year","years"], + "On specific day" : "On specific day", + "weekday" : "weekday", + "weekend day" : "weekend day", + "Does not repeat" : "Does not repeat", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost.", + "No rooms or resources yet" : "No rooms or resources yet", + "Resources" : "Resources", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seat","{seatingCapacity} seats"], + "Add resource" : "Add resource", + "Has a projector" : "Has a projector", + "Has a whiteboard" : "Has a whiteboard", + "Wheelchair accessible" : "Wheelchair accessible", + "Remove resource" : "Remove resource", + "Search for resources or rooms" : "Search for resources or rooms", "available" : "available", - "More" : "More", + "unavailable" : "unavailable", + "Show all rooms" : "Show all rooms", + "Projector" : "Projector", + "Whiteboard" : "Whiteboard", + "Room type" : "Room type", + "Any" : "Any", + "Minimum seating capacity" : "Minimum seating capacity", + "More details" : "More details", + "Update this and all future" : "Update this and all future", + "Update this occurrence" : "Update this occurrence", + "Public calendar does not exist" : "Public calendar does not exist", + "Maybe the share was deleted or has expired?" : "Maybe the share was deleted or has expired?", + "from {formattedDate}" : "from {formattedDate}", + "to {formattedDate}" : "to {formattedDate}", + "on {formattedDate}" : "on {formattedDate}", + "from {formattedDate} at {formattedTime}" : "from {formattedDate} at {formattedTime}", + "to {formattedDate} at {formattedTime}" : "to {formattedDate} at {formattedTime}", + "on {formattedDate} at {formattedTime}" : "on {formattedDate} at {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} at {formattedTime}", + "Please enter a valid date" : "Please enter a valid date", + "Please enter a valid date and time" : "Please enter a valid date and time", + "Select a time zone" : "Select a time zone", + "Please select a time zone:" : "Please select a time zone:", + "Pick a time" : "Pick a time", + "Pick a date" : "Pick a date", + "Type to search time zone" : "Type to search time zone", "Global" : "Global", + "Holidays in {region}" : "Holidays in {region}", + "An error occurred, unable to read public calendars." : "An error occurred, unable to read public calendars.", + "An error occurred, unable to subscribe to calendar." : "An error occurred, unable to subscribe to calendar.", + "Public holiday calendars" : "Public holiday calendars", + "Public calendars" : "Public calendars", + "No valid public calendars configured" : "No valid public calendars configured", + "Speak to the server administrator to resolve this issue." : "Speak to the server administrator to resolve this issue.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website.", + "By {authors}" : "By {authors}", + "Subscribed" : "Subscribed", + "Subscribe" : "Subscribe", + "Could not fetch slots" : "Could not fetch slots", + "Select a date" : "Select a date", + "Select slot" : "Select slot", + "No slots available" : "No slots available", + "The slot for your appointment has been confirmed" : "The slot for your appointment has been confirmed", + "Appointment Details:" : "Appointment Details:", + "Time:" : "Time:", + "Booked for:" : "Booked for:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Thank you. Your booking from {startDate} to {endDate} has been confirmed.", + "Book another appointment:" : "Book another appointment:", + "See all available slots" : "See all available slots", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "The slot for your appointment from {startDate} to {endDate} is not available any more.", + "Please book a different slot:" : "Please book a different slot:", + "Book an appointment with {name}" : "Book an appointment with {name}", + "No public appointments found for {name}" : "No public appointments found for {name}", "Personal" : "Personal", - "Details" : "Details", - "Attendees" : "Attendees", - "Resources" : "Resources", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue.", + "Availability of {displayName}" : "Availability of {displayName}", + "Edit event" : "Edit event", + "Event does not exist" : "Event does not exist", + "Duplicate" : "Duplicate", + "Delete this occurrence" : "Delete this occurrence", + "Delete this and all future" : "Delete this and all future", + "All day" : "All day", + "Modifications wont get propagated to the organizer and other attendees" : "Modifications won't get propagated to the organiser and other attendees", + "Managing shared access" : "Managing shared access", + "Deny access" : "Deny access", + "Invite" : "Invite", + "_User requires access to your file_::_Users require access to your file_" : ["User requires access to your file","Users require access to your file"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Attachment requires shared access","Attachments requiring shared access"], + "Untitled event" : "Untitled event", "Close" : "Close", + "Modifications will not get propagated to the organizer and other attendees" : "Modifications will not get propagated to the organizer and other attendees", + "Subscribe to {name}" : "Subscribe to {name}", + "Export {name}" : "Export {name}", + "Show availability" : "Show availability", "Anniversary" : "Anniversary", + "Appointment" : "Appointment", + "Business" : "Business", + "Education" : "Education", + "Holiday" : "Holiday", + "Meeting" : "Meeting", + "Miscellaneous" : "Miscellaneous", + "Non-working hours" : "Non-working hours", + "Not in office" : "Not in office", + "Phone call" : "Phone call", + "Sick day" : "Sick day", + "Special occasion" : "Special occasion", + "Travel" : "Travel", + "Vacation" : "Vacation", + "Midnight on the day the event starts" : "Midnight on the day the event starts", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n day before the event at {formattedHourMinute}","%n days before the event at {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n week before the event at {formattedHourMinute}","%n weeks before the event at {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "on the day of the event at {formattedHourMinute}", + "at the event's start" : "at the event's start", + "at the event's end" : "at the event's end", + "{time} before the event starts" : "{time} before the event starts", + "{time} before the event ends" : "{time} before the event ends", + "{time} after the event starts" : "{time} after the event starts", + "{time} after the event ends" : "{time} after the event ends", + "on {time}" : "on {time}", + "on {time} ({timezoneId})" : "on {time} ({timezoneId})", "Week {number} of {year}" : "Week {number} of {year}", "Daily" : "Daily", "Weekly" : "Weekly", - "Prev" : "Prev", - "Next" : "Next", + "Monthly" : "Monthly", + "Yearly" : "Yearly", + "_Every %n day_::_Every %n days_" : ["Every %n day","Every %n days"], + "_Every %n week_::_Every %n weeks_" : ["Every %n week","Every %n weeks"], + "_Every %n month_::_Every %n months_" : ["Every %n month","Every %n months"], + "_Every %n year_::_Every %n years_" : ["Every %n year","Every %n years"], + "_on {weekday}_::_on {weekdays}_" : ["on {weekday}","on {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["on day {dayOfMonthList}","on days {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "on the {ordinalNumber} {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "in {monthNames} on the {dayOfMonthList}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} on the {ordinalNumber} {byDaySet}", + "until {untilDate}" : "until {untilDate}", + "_%n time_::_%n times_" : ["%n time","%n times"], + "second" : "second", + "third" : "third", + "fourth" : "fourth", + "fifth" : "fifth", + "second to last" : "second to last", + "last" : "last", + "Untitled task" : "Untitled task", + "Please ask your administrator to enable the Tasks App." : "Please ask your administrator to enable the Tasks App.", + "You are not allowed to edit this event as an attendee." : "You are not allowed to edit this event as an attendee.", + "W" : "W", + "%n more" : "%n more", + "No events to display" : "No events to display", + "All participants declined" : "All participants declined", + "Please confirm your participation" : "Please confirm your participation", + "You declined this event" : "You declined this event", + "Your participation is tentative" : "Your participation is tentative", + "_+%n more_::_+%n more_" : ["+%n more","+%n more"], + "No events" : "No events", + "Create a new event or change the visible time-range" : "Create a new event or change the visible time-range", + "Failed to save event" : "Failed to save event", + "It might have been deleted, or there was a typo in a link" : "It might have been deleted, or there was a typo in a link", + "It might have been deleted, or there was a typo in the link" : "It might have been deleted, or there was a typo in the link", + "Meeting room" : "Meeting room", + "Lecture hall" : "Lecture hall", + "Seminar room" : "Seminar room", "Other" : "Other", + "When shared show" : "When shared show", "When shared show full event" : "When shared show full event", "When shared show only busy" : "When shared show only busy", "When shared hide this event" : "When shared hide this event", + "The visibility of this event in shared calendars." : "The visibility of this event in shared calendars.", + "Add a location" : "Add a location", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare", "Status" : "Status", "Confirmed" : "Confirmed", + "Canceled" : "Canceled", + "Confirmation about the overall status of the event." : "Confirmation about the overall status of the event.", + "Show as" : "Show as", + "Take this event into account when calculating free-busy information." : "Take this event into account when calculating free-busy information.", "Categories" : "Categories", + "Categories help you to structure and organize your events." : "Categories help you to structure and organize your events.", + "Search or add categories" : "Search or add categories", + "Add this as a new category" : "Add this as a new category", "Custom color" : "Custom colour", - "Presentation" : "Presentation", - "Talk" : "Talk", - "Review" : "Review", - "Office" : "Office", - "Mail" : "Mail", - "Health" : "Health", - "Birthday" : "Birthday", - "User not found" : "User not found" + "Special color of this event. Overrides the calendar-color." : "Special colour of this event. Overrides the calendar-colour.", + "Error while sharing file" : "Error while sharing file", + "Error while sharing file with user" : "Error while sharing file with user", + "Error creating a folder {folder}" : "Error creating a folder {folder}", + "Attachment {fileName} already exists!" : "Attachment {fileName} already exists!", + "Attachment {fileName} added!" : "Attachment {fileName} added!", + "An error occurred during uploading file {fileName}" : "An error occurred during uploading file {fileName}", + "An error occurred during getting file information" : "An error occurred during getting file information", + "Talk conversation for event" : "Talk conversation for event", + "An error occurred, unable to delete the calendar." : "An error occurred, unable to delete the calendar.", + "Imported {filename}" : "Imported {filename}", + "This is an event reminder." : "This is an event reminder.", + "Error while parsing a PROPFIND error" : "Error while parsing a PROPFIND error", + "Appointment not found" : "Appointment not found", + "User not found" : "User not found", + "Reminder" : "Reminder", + "+ Add reminder" : "+ Add reminder", + "Select automatic slot" : "Select automatic slot", + "with" : "with", + "Available times:" : "Available times:", + "Suggestions" : "Suggestions", + "Details" : "Details" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/en_GB.json b/l10n/en_GB.json index 96a67c34b3b57fc464e15b3218a8258ce15078c0..3417eb72e24d3b9d4827adeb198dffbf52e4980a 100644 --- a/l10n/en_GB.json +++ b/l10n/en_GB.json @@ -1,4 +1,6 @@ { "translations": { + "Provided email-address is too long" : "Provided email-address is too long", + "User-Session unexpectedly expired" : "User-Session unexpectedly expired", "Provided email-address is not valid" : "Provided email address is not valid", "%s has published the calendar »%s«" : "%s has published the calendar »%s«", "Unexpected error sending email. Please contact your administrator." : "Unexpected error sending email. Please contact your administrator.", @@ -8,58 +10,228 @@ "Open »%s«" : "Open »%s«", "Cheers!" : "Cheers!", "Upcoming events" : "Upcoming events", + "No more events today" : "No more events today", + "No upcoming events" : "No upcoming events", + "More events" : "More events", + "%1$s with %2$s" : "%1$s with %2$s", + "Calendar" : "Calendar", + "New booking {booking}" : "New booking {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}.", + "Appointments" : "Appointments", + "Schedule appointment \"%s\"" : "Schedule appointment \"%s\"", + "Schedule an appointment" : "Schedule an appointment", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Prepare for %s", + "Follow up for %s" : "Follow up for %s", + "Your appointment \"%s\" with %s needs confirmation" : "Your appointment \"%s\" with %s needs confirmation", + "Dear %s, please confirm your booking" : "Dear %s, please confirm your booking", "Confirm" : "Confirm", - "Where:" : "Where:", + "Appointment with:" : "Appointment with:", "Description:" : "Description:", - "Calendar" : "Calendar", + "This confirmation link expires in %s hours." : "This confirmation link expires in %s hours.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "If you wish to cancel the appointment after all, please contact your organiser by replying to this email or by visiting their profile page.", + "Your appointment \"%s\" with %s has been accepted" : "Your appointment \"%s\" with %s has been accepted", + "Dear %s, your booking has been accepted." : "Dear %s, your booking has been accepted.", + "Appointment for:" : "Appointment for:", + "Date:" : "Date:", + "You will receive a link with the confirmation email" : "You will receive a link with the confirmation email", + "Where:" : "Where:", + "Comment:" : "Comment:", + "You have a new appointment booking \"%s\" from %s" : "You have a new appointment booking \"%s\" from %s", + "Dear %s, %s (%s) booked an appointment with you." : "Dear %s, %s (%s) booked an appointment with you.", "A Calendar app for Nextcloud" : "A Calendar app for Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s match days in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events.\n* ⌚️ **Free/Busy!** See when your attendees are available to meet.\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email.\n* 🔍 Search! Find your events at ease.\n* ☑️ Tasks! See tasks with a due date directly in the calendar.\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries.", "Previous day" : "Previous day", "Previous week" : "Previous week", + "Previous year" : "Previous year", "Previous month" : "Previous month", "Next day" : "Next day", "Next week" : "Next week", + "Next year" : "Next year", "Next month" : "Next month", - "New event" : "New event", + "Create new event" : "Create new event", + "Event" : "Event", "Today" : "Today", "Day" : "Day", "Week" : "Week", "Month" : "Month", + "Year" : "Year", "List" : "List", + "Appointment link was copied to clipboard" : "Appointment link was copied to clipboard", + "Appointment link could not be copied to clipboard" : "Appointment link could not be copied to clipboard", "Preview" : "Preview", "Copy link" : "Copy link", "Edit" : "Edit", "Delete" : "Delete", - "Untitled calendar" : "Untitled calendar", - "Edit color" : "Edit colour", - "Copy private link" : "Copy private link", - "Export" : "Export", + "Appointment schedules" : "Appointment schedules", + "Create new" : "Create new", + "Disable calendar \"{calendar}\"" : "Disable calendar \"{calendar}\"", + "Disable untitled calendar" : "Disable untitled calendar", + "Enable calendar \"{calendar}\"" : "Enable calendar \"{calendar}\"", + "Enable untitled calendar" : "Enable untitled calendar", "An error occurred, unable to change visibility of the calendar." : "An error occurred, unable to change visibility of the calendar.", - "An error occurred, unable to delete the calendar." : "An error occurred, unable to delete the calendar.", + "Untitled calendar" : "Untitled calendar", + "Shared with you by" : "Shared with you by", + "Edit and share calendar" : "Edit and share calendar", + "Edit calendar" : "Edit calendar", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Unsharing the calendar in {countdown} second","Unsharing the calendar in {countdown} seconds"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Deleting the calendar in {countdown} second","Deleting the calendar in {countdown} seconds"], + "An error occurred, unable to create the calendar." : "An error occurred, unable to create the calendar.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)", + "Calendars" : "Calendars", + "Add new" : "Add new", + "New calendar" : "New calendar", + "Name for new calendar" : "Name for new calendar", + "Creating calendar …" : "Creating calendar …", + "New calendar with task list" : "New calendar with task list", + "New subscription from link (read-only)" : "New subscription from link (read-only)", + "Creating subscription …" : "Creating subscription …", + "Add public holiday calendar" : "Add public holiday calendar", + "Add custom public calendar" : "Add custom public calendar", "Calendar link copied to clipboard." : "Calendar link copied to clipboard.", "Calendar link could not be copied to clipboard." : "Calendar link could not be copied to clipboard.", - "An error occurred, unable to change the calendar's color." : "An error occurred, unable to change the calendar's colour.", - "Share link" : "Share link", - "Publish calendar" : "Publish calendar", - "Publishing calendar" : "Publishing calendar", - "Share with users or groups" : "Share with users or groups", - "can edit" : "can edit", - "New calendar" : "New calendar", + "Copy subscription link" : "Copy subscription link", + "Copying link …" : "Copying link …", + "Copied link" : "Copied link", + "Could not copy link" : "Could not copy link", + "Export" : "Export", + "Untitled item" : "Untitled item", + "Unknown calendar" : "Unknown calendar", + "Could not load deleted calendars and objects" : "Could not load deleted calendars and objects", + "Could not delete calendar or event" : "Could not delete calendar or event", + "Could not restore calendar or event" : "Could not restore calendar or event", + "Do you really want to empty the trash bin?" : "Do you really want to empty the trash bin?", + "Empty trash bin" : "Empty trash bin", + "Trash bin" : "Trash bin", + "Loading deleted items." : "Loading deleted items.", + "You do not have any deleted items." : "You do not have any deleted items.", "Name" : "Surname", "Deleted" : "Deleted", "Restore" : "Restore", "Delete permanently" : "Delete permanently", - "Empty trash bin" : "Empty trash bin", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Items in the trash bin are deleted after {numDays} day","Items in the trash bin are deleted after {numDays} days"], + "Could not update calendar order." : "Could not update calendar order.", + "Shared calendars" : "Shared calendars", + "Deck" : "Deck", + "Hidden" : "Hidden", + "Internal link" : "Internal link", + "A private link that can be used with external clients" : "A private link that can be used with external clients", + "Copy internal link" : "Copy internal link", + "An error occurred, unable to publish calendar." : "An error occurred, unable to publish calendar.", + "An error occurred, unable to send email." : "An error occurred, unable to send email.", + "Embed code copied to clipboard." : "Embed code copied to clipboard.", + "Embed code could not be copied to clipboard." : "Embed code could not be copied to clipboard.", + "Unpublishing calendar failed" : "Unpublishing calendar failed", + "Share link" : "Share link", + "Copy public link" : "Copy public link", + "Send link to calendar via email" : "Send link to calendar via email", + "Enter one address" : "Enter one address", + "Sending email …" : "Sending email …", + "Copy embedding code" : "Copy embedding code", + "Copying code …" : "Copying code …", + "Copied code" : "Copied code", + "Could not copy code" : "Could not copy code", + "Delete share link" : "Delete share link", + "Deleting share link …" : "Deleting share link …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "An error occurred while unsharing the calendar.", + "An error occurred, unable to change the permission of the share." : "An error occurred, unable to change the permission of the share.", + "can edit" : "can edit", + "Unshare with {displayName}" : "Unshare with {displayName}", + "Share with users or groups" : "Share with users or groups", + "No users or groups" : "No users or groups", + "Failed to save calendar name and color" : "Failed to save calendar name and colour", + "Calendar name …" : "Calendar name …", + "Never show me as busy (set this calendar to transparent)" : "Never show me as busy (set this calendar to transparent)", + "Share calendar" : "Share calendar", + "Unshare from me" : "Unshare from me", + "Save" : "Save", + "Import calendars" : "Import calendars", + "Please select a calendar to import into …" : "Please select a calendar to import into …", "Filename" : "Filename", + "Calendar to import into" : "Calendar to import into", "Cancel" : "Cancel", + "_Import calendar_::_Import calendars_" : ["Import calendar","Import calendars"], + "Select the default location for attachments" : "Select the default location for attachments", + "Pick" : "Pick", + "Invalid location selected" : "Invalid location selected", + "Attachments folder successfully saved." : "Attachments folder successfully saved.", + "Error on saving attachments folder." : "Error on saving attachments folder.", + "Default attachments location" : "Default attachments location", + "{filename} could not be parsed" : "{filename} could not be parsed", + "No valid files found, aborting import" : "No valid files found, aborting import", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Successfully imported %n event","Successfully imported %n events"], + "Import partially failed. Imported {accepted} out of {total}." : "Import partially failed. Imported {accepted} out of {total}.", "Automatic" : "Automatic", - "or" : "or", + "Automatic ({detected})" : "Automatic ({detected})", + "New setting was not saved successfully." : "New setting was not saved successfully.", + "Navigation" : "Navigation", + "Previous period" : "Previous period", + "Next period" : "Next period", + "Views" : "Views", + "Day view" : "Day view", + "Week view" : "Week view", + "Month view" : "Month view", + "Year view" : "Year view", "List view" : "List view", "Actions" : "Actions", + "Create event" : "Create event", + "Show shortcuts" : "Show shortcuts", + "Editor" : "Editor", + "Close editor" : "Close editor", + "Save edited event" : "Save edited event", + "Delete edited event" : "Delete edited event", + "Duplicate event" : "Duplicate event", + "Shortcut overview" : "Shortcut overview", + "or" : "or", + "Calendar settings" : "Calendar settings", + "At event start" : "At event start", + "No reminder" : "No reminder", + "Failed to save default calendar" : "Failed to save default calendar", + "CalDAV link copied to clipboard." : "CalDAV link copied to clipboard.", + "CalDAV link could not be copied to clipboard." : "CalDAV link could not be copied to clipboard.", + "Enable birthday calendar" : "Enable birthday calendar", + "Show tasks in calendar" : "Show tasks in calendar", + "Enable simplified editor" : "Enable simplified editor", + "Limit the number of events displayed in the monthly view" : "Limit the number of events displayed in the monthly view", + "Show weekends" : "Show weekends", "Show week numbers" : "Show week numbers", + "Time increments" : "Time increments", + "Default calendar for incoming invitations" : "Default calendar for incoming invitations", + "Default reminder" : "Default reminder", + "Copy primary CalDAV address" : "Copy primary CalDAV address", + "Copy iOS/macOS CalDAV address" : "Copy iOS/macOS CalDAV address", + "Personal availability settings" : "Personal availability settings", + "Show keyboard shortcuts" : "Show keyboard shortcuts", + "Appointment schedule successfully created" : "Appointment schedule successfully created", + "Appointment schedule successfully updated" : "Appointment schedule successfully updated", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minute","{duration} minutes"], + "0 minutes" : "0 minutes", + "_{duration} hour_::_{duration} hours_" : ["{duration} hour","{duration} hours"], + "_{duration} day_::_{duration} days_" : ["{duration} day","{duration} days"], + "_{duration} week_::_{duration} weeks_" : ["{duration} week","{duration} weeks"], + "_{duration} month_::_{duration} months_" : ["{duration} month","{duration} months"], + "_{duration} year_::_{duration} years_" : ["{duration} year","{duration} years"], + "To configure appointments, add your email address in personal settings." : "To configure appointments, add your email address in personal settings.", + "Public – shown on the profile page" : "Public – shown on the profile page", + "Private – only accessible via secret link" : "Private – only accessible via secret link", + "Appointment schedule saved" : "Appointment schedule saved", + "Create appointment schedule" : "Create appointment schedule", + "Edit appointment schedule" : "Edit appointment schedule", + "Update" : "Update", + "Appointment name" : "Appointment name", "Location" : "Location", + "Create a Talk room" : "Create a Talk room", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "A unique link will be generated for every booked appointment and sent via the confirmation email", "Description" : "Description", + "Visibility" : "Visibility", + "Duration" : "Duration", + "Increments" : "Increments", + "Additional calendars to check for conflicts" : "Additional calendars to check for conflicts", + "Pick time ranges where appointments are allowed" : "Pick time ranges where appointments are allowed", "to" : "to", + "Delete slot" : "Delete slot", + "No times set" : "No times set", "Add" : "Add", "Monday" : "Monday", "Tuesday" : "Tuesday", @@ -68,51 +240,359 @@ "Friday" : "Friday", "Saturday" : "Saturday", "Sunday" : "Sunday", - "Save" : "Save", - "Update" : "Update", + "Weekdays" : "Weekdays", + "Add time before and after the event" : "Add time before and after the event", + "Before the event" : "Before the event", + "After the event" : "After the event", + "Planning restrictions" : "Planning restrictions", + "Minimum time before next available slot" : "Minimum time before next available slot", + "Max slots per day" : "Max slots per day", + "Limit how far in the future appointments can be booked" : "Limit how far in the future appointments can be booked", + "It seems a rate limit has been reached. Please try again later." : "It seems a rate limit has been reached. Please try again later.", + "Please confirm your reservation" : "Please confirm your reservation", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now.", + "Your name" : "Your name", "Your email address" : "Your email address", + "Please share anything that will help prepare for our meeting" : "Please share anything that will help prepare for our meeting", + "Could not book the appointment. Please try again later or contact the organizer." : "Could not book the appointment. Please try again later or contact the organiser.", + "Back" : "Back", + "Book appointment" : "Book appointment", + "Error fetching Talk conversations." : "Error fetching Talk conversations.", + "Conversation does not have a valid URL." : "Conversation does not have a valid URL.", + "Successfully added Talk conversation link to location." : "Successfully added Talk conversation link to location.", + "Successfully added Talk conversation link to description." : "Successfully added Talk conversation link to description.", + "Failed to apply Talk room." : "Failed to apply Talk room.", + "Error creating Talk conversation" : "Error creating Talk conversation", + "Select a Talk Room" : "Select a Talk Room", + "Add Talk conversation" : "Add Talk conversation", + "Fetching Talk rooms…" : "Fetching Talk rooms…", + "No Talk room available" : "No Talk room available", + "Create a new conversation" : "Create a new conversation", + "Select conversation" : "Select conversation", + "on" : "on", + "at" : "at", + "before at" : "before at", "Notification" : "Notification", "Email" : "Email", + "Audio notification" : "Audio notification", + "Other notification" : "Other notification", + "Relative to event" : "Relative to event", + "On date" : "On date", + "Edit time" : "Edit time", + "Save time" : "Save time", + "Remove reminder" : "Remove reminder", + "Add reminder" : "Add reminder", + "seconds" : "seconds", + "minutes" : "minutes", + "hours" : "hours", + "days" : "days", + "weeks" : "weeks", + "Choose a file to add as attachment" : "Choose a file to add as attachment", + "Choose a file to share as a link" : "Choose a file to share as a link", + "Attachment {name} already exist!" : "Attachment {name} already exist!", + "Could not upload attachment(s)" : "Could not upload attachment(s)", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "You are about to navigate to {host}. Are you sure to proceed? Link: {link}", + "Proceed" : "Proceed", + "No attachments" : "No attachments", + "Add from Files" : "Add from Files", + "Upload from device" : "Upload from device", + "Delete file" : "Delete file", + "Confirmation" : "Confirmation", + "_{count} attachment_::_{count} attachments_" : ["{count} attachment","{count} attachments"], + "Suggested" : "Suggested", "Available" : "Available", + "Invitation accepted" : "Invitation accepted", + "Accepted {organizerName}'s invitation" : "Accepted {organizerName}'s invitation", + "Participation marked as tentative" : "Participation marked as tentative", + "Invitation is delegated" : "Invitation is delegated", + "Not available" : "Not available", + "Invitation declined" : "Invitation declined", + "Declined {organizerName}'s invitation" : "Declined {organizerName}'s invitation", + "Availability will be checked" : "Availability will be checked", + "Invitation will be sent" : "Invitation will be sent", + "Failed to check availability" : "Failed to check availability", + "Failed to deliver invitation" : "Failed to deliver invitation", + "Awaiting response" : "Awaiting response", + "Checking availability" : "Checking availability", + "Has not responded to {organizerName}'s invitation yet" : "Has not responded to {organizerName}'s invitation yet", + "Suggested times" : "Suggested times", + "chairperson" : "chairperson", + "required participant" : "required participant", + "non-participant" : "non-participant", + "optional participant" : "optional participant", + "{organizer} (organizer)" : "{organizer} (organiser)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Availability of attendees, resources and rooms", + "Suggestion accepted" : "Suggestion accepted", + "Previous date" : "Previous date", + "Next date" : "Next date", + "Legend" : "Legend", + "Out of office" : "Out of office", + "Attendees:" : "Attendees:", + "Done" : "Done", + "Search room" : "Search room", + "Room name" : "Room name", + "Check room availability" : "Check room availability", + "Free" : "Free", + "Busy (tentative)" : "Busy (tentative)", "Busy" : "Busy", "Unknown" : "Unknown", + "Find a time" : "Find a time", + "The invitation has been accepted successfully." : "The invitation has been accepted successfully.", + "Failed to accept the invitation." : "Failed to accept the invitation.", + "The invitation has been declined successfully." : "The invitation has been declined successfully.", + "Failed to decline the invitation." : "Failed to decline the invitation.", + "Your participation has been marked as tentative." : "Your participation has been marked as tentative.", + "Failed to set the participation status to tentative." : "Failed to set the participation status to tentative.", "Accept" : "Accept", "Decline" : "Decline", "Tentative" : "Tentative", - "Send email" : "Send email", - "All day" : "All day", + "No attendees yet" : "No attendees yet", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} invited, {confirmedCount} confirmed", + "Please add at least one attendee to use the \"Find a time\" feature." : "Please add at least one attendee to use the \"Find a time\" feature.", + "Successfully appended link to talk room to location." : "Successfully appended link to talk room to location.", + "Successfully appended link to talk room to description." : "Successfully appended link to talk room to description.", + "Error creating Talk room" : "Error creating Talk room", + "Attendees" : "Attendees", + "_%n more guest_::_%n more guests_" : ["%n more guest","%n more guests"], + "Remove group" : "Remove group", + "Remove attendee" : "Remove attendee", + "Request reply" : "Request reply", + "Chairperson" : "Chairperson", + "Required participant" : "Required participant", + "Optional participant" : "Optional participant", + "Non-participant" : "Non-participant", + "_%n member_::_%n members_" : ["%n member","%n members"], + "Search for emails, users, contacts, contact groups or teams" : "Search for emails, users, contacts, contact groups or teams", + "No match found" : "No match found", + "Note that members of circles get invited but are not synced yet." : "Note that members of circles get invited but are not synced yet.", + "Note that members of contact groups get invited but are not synced yet." : "Note that members of contact groups get invited but are not synced yet.", + "(organizer)" : "(organiser)", + "Make {label} the organizer" : "Make {label} the organiser", + "Make {label} the organizer and attend" : "Make {label} the organiser and attend", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose].", + "Remove color" : "Remove colour", + "Event title" : "Event title", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Cannot modify all-day setting for events that are part of a recurrence-set.", + "From" : "From", + "To" : "To", "Repeat" : "Repeat", + "Repeat event" : "Repeat event", + "_time_::_times_" : ["time","times"], "never" : "never", + "on date" : "on date", "after" : "after", + "End repeat" : "End repeat", + "Select to end repeat" : "Select to end repeat", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it.", + "first" : "first", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Changes to the recurrence-rule will only apply to this and all future occurrences.", + "Repeat every" : "Repeat every", + "By day of the month" : "By day of the month", + "On the" : "On the", + "_day_::_days_" : ["day","days"], + "_week_::_weeks_" : ["week","weeks"], + "_month_::_months_" : ["month","months"], + "_year_::_years_" : ["year","years"], + "On specific day" : "On specific day", + "weekday" : "weekday", + "weekend day" : "weekend day", + "Does not repeat" : "Does not repeat", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost.", + "No rooms or resources yet" : "No rooms or resources yet", + "Resources" : "Resources", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seat","{seatingCapacity} seats"], + "Add resource" : "Add resource", + "Has a projector" : "Has a projector", + "Has a whiteboard" : "Has a whiteboard", + "Wheelchair accessible" : "Wheelchair accessible", + "Remove resource" : "Remove resource", + "Search for resources or rooms" : "Search for resources or rooms", "available" : "available", - "More" : "More", + "unavailable" : "unavailable", + "Show all rooms" : "Show all rooms", + "Projector" : "Projector", + "Whiteboard" : "Whiteboard", + "Room type" : "Room type", + "Any" : "Any", + "Minimum seating capacity" : "Minimum seating capacity", + "More details" : "More details", + "Update this and all future" : "Update this and all future", + "Update this occurrence" : "Update this occurrence", + "Public calendar does not exist" : "Public calendar does not exist", + "Maybe the share was deleted or has expired?" : "Maybe the share was deleted or has expired?", + "from {formattedDate}" : "from {formattedDate}", + "to {formattedDate}" : "to {formattedDate}", + "on {formattedDate}" : "on {formattedDate}", + "from {formattedDate} at {formattedTime}" : "from {formattedDate} at {formattedTime}", + "to {formattedDate} at {formattedTime}" : "to {formattedDate} at {formattedTime}", + "on {formattedDate} at {formattedTime}" : "on {formattedDate} at {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} at {formattedTime}", + "Please enter a valid date" : "Please enter a valid date", + "Please enter a valid date and time" : "Please enter a valid date and time", + "Select a time zone" : "Select a time zone", + "Please select a time zone:" : "Please select a time zone:", + "Pick a time" : "Pick a time", + "Pick a date" : "Pick a date", + "Type to search time zone" : "Type to search time zone", "Global" : "Global", + "Holidays in {region}" : "Holidays in {region}", + "An error occurred, unable to read public calendars." : "An error occurred, unable to read public calendars.", + "An error occurred, unable to subscribe to calendar." : "An error occurred, unable to subscribe to calendar.", + "Public holiday calendars" : "Public holiday calendars", + "Public calendars" : "Public calendars", + "No valid public calendars configured" : "No valid public calendars configured", + "Speak to the server administrator to resolve this issue." : "Speak to the server administrator to resolve this issue.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website.", + "By {authors}" : "By {authors}", + "Subscribed" : "Subscribed", + "Subscribe" : "Subscribe", + "Could not fetch slots" : "Could not fetch slots", + "Select a date" : "Select a date", + "Select slot" : "Select slot", + "No slots available" : "No slots available", + "The slot for your appointment has been confirmed" : "The slot for your appointment has been confirmed", + "Appointment Details:" : "Appointment Details:", + "Time:" : "Time:", + "Booked for:" : "Booked for:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Thank you. Your booking from {startDate} to {endDate} has been confirmed.", + "Book another appointment:" : "Book another appointment:", + "See all available slots" : "See all available slots", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "The slot for your appointment from {startDate} to {endDate} is not available any more.", + "Please book a different slot:" : "Please book a different slot:", + "Book an appointment with {name}" : "Book an appointment with {name}", + "No public appointments found for {name}" : "No public appointments found for {name}", "Personal" : "Personal", - "Details" : "Details", - "Attendees" : "Attendees", - "Resources" : "Resources", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue.", + "Availability of {displayName}" : "Availability of {displayName}", + "Edit event" : "Edit event", + "Event does not exist" : "Event does not exist", + "Duplicate" : "Duplicate", + "Delete this occurrence" : "Delete this occurrence", + "Delete this and all future" : "Delete this and all future", + "All day" : "All day", + "Modifications wont get propagated to the organizer and other attendees" : "Modifications won't get propagated to the organiser and other attendees", + "Managing shared access" : "Managing shared access", + "Deny access" : "Deny access", + "Invite" : "Invite", + "_User requires access to your file_::_Users require access to your file_" : ["User requires access to your file","Users require access to your file"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Attachment requires shared access","Attachments requiring shared access"], + "Untitled event" : "Untitled event", "Close" : "Close", + "Modifications will not get propagated to the organizer and other attendees" : "Modifications will not get propagated to the organizer and other attendees", + "Subscribe to {name}" : "Subscribe to {name}", + "Export {name}" : "Export {name}", + "Show availability" : "Show availability", "Anniversary" : "Anniversary", + "Appointment" : "Appointment", + "Business" : "Business", + "Education" : "Education", + "Holiday" : "Holiday", + "Meeting" : "Meeting", + "Miscellaneous" : "Miscellaneous", + "Non-working hours" : "Non-working hours", + "Not in office" : "Not in office", + "Phone call" : "Phone call", + "Sick day" : "Sick day", + "Special occasion" : "Special occasion", + "Travel" : "Travel", + "Vacation" : "Vacation", + "Midnight on the day the event starts" : "Midnight on the day the event starts", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n day before the event at {formattedHourMinute}","%n days before the event at {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n week before the event at {formattedHourMinute}","%n weeks before the event at {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "on the day of the event at {formattedHourMinute}", + "at the event's start" : "at the event's start", + "at the event's end" : "at the event's end", + "{time} before the event starts" : "{time} before the event starts", + "{time} before the event ends" : "{time} before the event ends", + "{time} after the event starts" : "{time} after the event starts", + "{time} after the event ends" : "{time} after the event ends", + "on {time}" : "on {time}", + "on {time} ({timezoneId})" : "on {time} ({timezoneId})", "Week {number} of {year}" : "Week {number} of {year}", "Daily" : "Daily", "Weekly" : "Weekly", - "Prev" : "Prev", - "Next" : "Next", + "Monthly" : "Monthly", + "Yearly" : "Yearly", + "_Every %n day_::_Every %n days_" : ["Every %n day","Every %n days"], + "_Every %n week_::_Every %n weeks_" : ["Every %n week","Every %n weeks"], + "_Every %n month_::_Every %n months_" : ["Every %n month","Every %n months"], + "_Every %n year_::_Every %n years_" : ["Every %n year","Every %n years"], + "_on {weekday}_::_on {weekdays}_" : ["on {weekday}","on {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["on day {dayOfMonthList}","on days {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "on the {ordinalNumber} {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "in {monthNames} on the {dayOfMonthList}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} on the {ordinalNumber} {byDaySet}", + "until {untilDate}" : "until {untilDate}", + "_%n time_::_%n times_" : ["%n time","%n times"], + "second" : "second", + "third" : "third", + "fourth" : "fourth", + "fifth" : "fifth", + "second to last" : "second to last", + "last" : "last", + "Untitled task" : "Untitled task", + "Please ask your administrator to enable the Tasks App." : "Please ask your administrator to enable the Tasks App.", + "You are not allowed to edit this event as an attendee." : "You are not allowed to edit this event as an attendee.", + "W" : "W", + "%n more" : "%n more", + "No events to display" : "No events to display", + "All participants declined" : "All participants declined", + "Please confirm your participation" : "Please confirm your participation", + "You declined this event" : "You declined this event", + "Your participation is tentative" : "Your participation is tentative", + "_+%n more_::_+%n more_" : ["+%n more","+%n more"], + "No events" : "No events", + "Create a new event or change the visible time-range" : "Create a new event or change the visible time-range", + "Failed to save event" : "Failed to save event", + "It might have been deleted, or there was a typo in a link" : "It might have been deleted, or there was a typo in a link", + "It might have been deleted, or there was a typo in the link" : "It might have been deleted, or there was a typo in the link", + "Meeting room" : "Meeting room", + "Lecture hall" : "Lecture hall", + "Seminar room" : "Seminar room", "Other" : "Other", + "When shared show" : "When shared show", "When shared show full event" : "When shared show full event", "When shared show only busy" : "When shared show only busy", "When shared hide this event" : "When shared hide this event", + "The visibility of this event in shared calendars." : "The visibility of this event in shared calendars.", + "Add a location" : "Add a location", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare", "Status" : "Status", "Confirmed" : "Confirmed", + "Canceled" : "Canceled", + "Confirmation about the overall status of the event." : "Confirmation about the overall status of the event.", + "Show as" : "Show as", + "Take this event into account when calculating free-busy information." : "Take this event into account when calculating free-busy information.", "Categories" : "Categories", + "Categories help you to structure and organize your events." : "Categories help you to structure and organize your events.", + "Search or add categories" : "Search or add categories", + "Add this as a new category" : "Add this as a new category", "Custom color" : "Custom colour", - "Presentation" : "Presentation", - "Talk" : "Talk", - "Review" : "Review", - "Office" : "Office", - "Mail" : "Mail", - "Health" : "Health", - "Birthday" : "Birthday", - "User not found" : "User not found" + "Special color of this event. Overrides the calendar-color." : "Special colour of this event. Overrides the calendar-colour.", + "Error while sharing file" : "Error while sharing file", + "Error while sharing file with user" : "Error while sharing file with user", + "Error creating a folder {folder}" : "Error creating a folder {folder}", + "Attachment {fileName} already exists!" : "Attachment {fileName} already exists!", + "Attachment {fileName} added!" : "Attachment {fileName} added!", + "An error occurred during uploading file {fileName}" : "An error occurred during uploading file {fileName}", + "An error occurred during getting file information" : "An error occurred during getting file information", + "Talk conversation for event" : "Talk conversation for event", + "An error occurred, unable to delete the calendar." : "An error occurred, unable to delete the calendar.", + "Imported {filename}" : "Imported {filename}", + "This is an event reminder." : "This is an event reminder.", + "Error while parsing a PROPFIND error" : "Error while parsing a PROPFIND error", + "Appointment not found" : "Appointment not found", + "User not found" : "User not found", + "Reminder" : "Reminder", + "+ Add reminder" : "+ Add reminder", + "Select automatic slot" : "Select automatic slot", + "with" : "with", + "Available times:" : "Available times:", + "Suggestions" : "Suggestions", + "Details" : "Details" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/eo.js b/l10n/eo.js index 2443da6ae91fe3659b6b97990c05c92ca5958a72..4e91740de376b776bc1f27387e68e425cd7107dd 100644 --- a/l10n/eo.js +++ b/l10n/eo.js @@ -6,13 +6,18 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Ni volis sciigi vin, ke %s publikigis la kalendaron „%s“.", "Open »%s«" : "Malfermi „%s“", "Cheers!" : "Ĝis!", + "Upcoming events" : "Venontaj eventoj", + "No more events today" : "Ne plu eventoj hodiaŭ", + "No upcoming events" : "Neniuj venontaj eventoj", + "More events" : "Pliaj eventoj", + "Calendar" : "Kalendaro", + "New booking {booking}" : "Nova rezervo {booking}", "Confirm" : "Konfirmi", + "Description:" : "Priskribo:", "Date:" : "Dato:", "Where:" : "Kie:", - "Description:" : "Priskribo:", - "Calendar" : "Kalendaro", + "Comment:" : "Komento:", "A Calendar app for Nextcloud" : "Aplikaĵo pri kalendaro por Nextcloud", - "New event" : "Nova okazaĵo", "Today" : "Hodiaŭ", "Day" : "Tago", "Week" : "Semajno", @@ -21,68 +26,111 @@ OC.L10N.register( "Copy link" : "Kopii ligilon", "Edit" : "Modifi", "Delete" : "Forigi", - "Copy private link" : "Kopii privatan ligilon", - "Export" : "Eksporti", + "Create new" : "Krei nove", + "New calendar" : "Nova kalendaro", "Calendar link copied to clipboard." : "Kalendara ligilo kopiita al tondujo", "Calendar link could not be copied to clipboard." : "Kalendara ligilo ne eblis esti kopiita al tondujo", - "Share link" : "Kunhavigi ligilon", - "Delete share link" : "Forigi kunhavo-ligilon", - "Share with users or groups" : "Kunhavigi kun uzantoj aŭ grupoj", - "No users or groups" : "Neniu uzanto aŭ grupo", - "can edit" : "povas redakti", - "New calendar" : "Nova kalendaro", + "Export" : "Eksporti", + "Empty trash bin" : "Malpleni rubujon", "Name" : "Nomo", "Deleted" : "Forigita", "Restore" : "Restaŭri", "Delete permanently" : "Forigi por ĉiam", + "Deck" : "Kartaro", + "Hidden" : "Nevidebla", + "Internal link" : "Interna ligilo", + "Share link" : "Kunhavigi ligilon", + "Delete share link" : "Forigi kunhavo-ligilon", + "can edit" : "povas redakti", + "Share with users or groups" : "Kunhavigi kun uzantoj aŭ grupoj", + "No users or groups" : "Neniu uzanto aŭ grupo", + "Save" : "Konservi", "Filename" : "Dosiernomo", "Cancel" : "Nuligi", "Automatic" : "Aŭtomata", + "Previous period" : "Antaŭa periodo", "List view" : "Lista vido", "Actions" : "Agoj", + "Editor" : "Redaktilo", + "Close editor" : "Fermi redaktilon", + "or" : "aŭ", + "Enable birthday calendar" : "Ebligi naskiĝtaga kalendaro", + "Show tasks in calendar" : "Montri taskojn en la kalendaro", + "Enable simplified editor" : "Ebligi simpligitan redaktilon", + "Show weekends" : "Montri semajnfinojn", "Show week numbers" : "Montri numerojn de semajno", + "Show keyboard shortcuts" : "Montri klavarajn ŝparvojojn", + "Update" : "Ĝisdatigi", "Location" : "Loko", "Description" : "Priskribo", "to" : "al", "Add" : "Aldoni", - "Monday" : "lundo", - "Tuesday" : "mardo", - "Wednesday" : "merkredo", - "Thursday" : "ĵaŭdo", - "Friday" : "vendredo", - "Saturday" : "sabato", - "Sunday" : "dimanĉo", - "Save" : "Konservi", - "Update" : "Ĝisdatigi", + "Monday" : "Lundo", + "Tuesday" : "Mardo", + "Wednesday" : "Merkredo", + "Thursday" : "Ĵaŭdo", + "Friday" : "Vendredo", + "Saturday" : "Sabato", + "Sunday" : "Dimanĉo", + "Before the event" : "Antaŭe la evento", + "After the event" : "Post la evento", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Ni sendis al vi retmesaĝon kun detaloj. Bonvolu konfirmi vian rendevuon per la ligilo en la retpoŝto. Vi povas fermi ĉi tiun paĝon nun.", "Your email address" : "Via retpoŝta adreso", + "Notification" : "Atentigo", "Email" : "Retpoŝto", - "Available" : "Disponeblaj", + "seconds" : "sekundoj", + "minutes" : "minutoj", + "hours" : "horojn", + "days" : "tagojn", + "weeks" : "semajnoj", + "Choose a file to add as attachment" : "Elektu dosieron aldonotan kiel kunsendaĵon", + "Delete file" : "Forigi dosieron", + "Available" : "Disponeble", + "Not available" : "Ne disponeble", + "Out of office" : "Ekstere oficejo", + "Done" : "Farita", "Busy" : "Okupita", "Unknown" : "Nekonata", "Accept" : "Akcepti", "Decline" : "Malakcepti", "Tentative" : "Nekonfirmita", - "Send email" : "Sendi retpoŝtmesaĝon", - "All day" : "Tuttage", + "Attendees" : "Ĉeestontoj", + "Remove group" : "Forigi grupon", + "Required participant" : "Bezonata partoprenanto", + "Optional participant" : "Laŭvola partoprenanto", + "From" : "De", + "To" : "Al", "Repeat" : "Ripeti", "never" : "neniam", "after" : "post", - "More" : "Pli", + "first" : "Una", + "By day of the month" : "Per tago de la monato", + "On the" : "Je la", + "_day_::_days_" : ["tago","tagoj"], + "_week_::_weeks_" : ["semajno","semajnoj"], + "_month_::_months_" : ["Monato","Monatoj"], + "_year_::_years_" : ["Jaro","Jaroj"], + "weekday" : "Semajntago", + "weekend day" : "Semajnfintago", + "Resources" : "Rimedoj", + "on {formattedDate}" : "je la {formattedDate}", "Global" : "Monda", + "Subscribe" : "Aboni", + "Time:" : "Tempo:", "Personal" : "Persona", - "[Today]" : "[Hodiaŭ]", - "[Tomorrow]" : "[Morgaŭ]", - "[Yesterday]" : "[Hieraŭ]", - "Details" : "Detaloj", - "Attendees" : "Ĉeestontoj", - "Resources" : "Rimedoj", + "Edit event" : "Redakti okazaĵon", + "All day" : "Tuttage", + "Untitled event" : "Sentitola okazaĵo", "Close" : "Fermi", "Anniversary" : "Datreveno", "Week {number} of {year}" : "Semajno {number} en {year}", "Daily" : "Ĉiutage", "Weekly" : "Ĉiusemajne", - "Untitled event" : "Sentitola okazaĵo", - "Next" : "Sekva", + "second" : "sekundo", + "third" : "Tria", + "fourth" : "Kvara", + "fifth" : "Kvina", + "last" : "Lasta", "Other" : "Alia", "When shared show full event" : "Kiam kunhavigita, montri plenajn detalojn", "When shared show only busy" : "Kiam kunhavigita, montri nur kiel okupita", @@ -92,9 +140,7 @@ OC.L10N.register( "Canceled" : "Nuligita", "Categories" : "Kategorioj", "Add this as a new category" : "Aldoni tion kiel novan kategorion", - "Talk" : "Paroli", - "Mail" : "Retpoŝtilo", - "Birthday" : "Naskiĝotago", - "User not found" : "Netrovita uzanto" + "User not found" : "Netrovita uzanto", + "Details" : "Detaloj" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/eo.json b/l10n/eo.json index 65e437356898746b1a7f2d485cf0672693a1dd5b..0ace71d09f6db415c3bc730e048b2e0f18261d5c 100644 --- a/l10n/eo.json +++ b/l10n/eo.json @@ -4,13 +4,18 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Ni volis sciigi vin, ke %s publikigis la kalendaron „%s“.", "Open »%s«" : "Malfermi „%s“", "Cheers!" : "Ĝis!", + "Upcoming events" : "Venontaj eventoj", + "No more events today" : "Ne plu eventoj hodiaŭ", + "No upcoming events" : "Neniuj venontaj eventoj", + "More events" : "Pliaj eventoj", + "Calendar" : "Kalendaro", + "New booking {booking}" : "Nova rezervo {booking}", "Confirm" : "Konfirmi", + "Description:" : "Priskribo:", "Date:" : "Dato:", "Where:" : "Kie:", - "Description:" : "Priskribo:", - "Calendar" : "Kalendaro", + "Comment:" : "Komento:", "A Calendar app for Nextcloud" : "Aplikaĵo pri kalendaro por Nextcloud", - "New event" : "Nova okazaĵo", "Today" : "Hodiaŭ", "Day" : "Tago", "Week" : "Semajno", @@ -19,68 +24,111 @@ "Copy link" : "Kopii ligilon", "Edit" : "Modifi", "Delete" : "Forigi", - "Copy private link" : "Kopii privatan ligilon", - "Export" : "Eksporti", + "Create new" : "Krei nove", + "New calendar" : "Nova kalendaro", "Calendar link copied to clipboard." : "Kalendara ligilo kopiita al tondujo", "Calendar link could not be copied to clipboard." : "Kalendara ligilo ne eblis esti kopiita al tondujo", - "Share link" : "Kunhavigi ligilon", - "Delete share link" : "Forigi kunhavo-ligilon", - "Share with users or groups" : "Kunhavigi kun uzantoj aŭ grupoj", - "No users or groups" : "Neniu uzanto aŭ grupo", - "can edit" : "povas redakti", - "New calendar" : "Nova kalendaro", + "Export" : "Eksporti", + "Empty trash bin" : "Malpleni rubujon", "Name" : "Nomo", "Deleted" : "Forigita", "Restore" : "Restaŭri", "Delete permanently" : "Forigi por ĉiam", + "Deck" : "Kartaro", + "Hidden" : "Nevidebla", + "Internal link" : "Interna ligilo", + "Share link" : "Kunhavigi ligilon", + "Delete share link" : "Forigi kunhavo-ligilon", + "can edit" : "povas redakti", + "Share with users or groups" : "Kunhavigi kun uzantoj aŭ grupoj", + "No users or groups" : "Neniu uzanto aŭ grupo", + "Save" : "Konservi", "Filename" : "Dosiernomo", "Cancel" : "Nuligi", "Automatic" : "Aŭtomata", + "Previous period" : "Antaŭa periodo", "List view" : "Lista vido", "Actions" : "Agoj", + "Editor" : "Redaktilo", + "Close editor" : "Fermi redaktilon", + "or" : "aŭ", + "Enable birthday calendar" : "Ebligi naskiĝtaga kalendaro", + "Show tasks in calendar" : "Montri taskojn en la kalendaro", + "Enable simplified editor" : "Ebligi simpligitan redaktilon", + "Show weekends" : "Montri semajnfinojn", "Show week numbers" : "Montri numerojn de semajno", + "Show keyboard shortcuts" : "Montri klavarajn ŝparvojojn", + "Update" : "Ĝisdatigi", "Location" : "Loko", "Description" : "Priskribo", "to" : "al", "Add" : "Aldoni", - "Monday" : "lundo", - "Tuesday" : "mardo", - "Wednesday" : "merkredo", - "Thursday" : "ĵaŭdo", - "Friday" : "vendredo", - "Saturday" : "sabato", - "Sunday" : "dimanĉo", - "Save" : "Konservi", - "Update" : "Ĝisdatigi", + "Monday" : "Lundo", + "Tuesday" : "Mardo", + "Wednesday" : "Merkredo", + "Thursday" : "Ĵaŭdo", + "Friday" : "Vendredo", + "Saturday" : "Sabato", + "Sunday" : "Dimanĉo", + "Before the event" : "Antaŭe la evento", + "After the event" : "Post la evento", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Ni sendis al vi retmesaĝon kun detaloj. Bonvolu konfirmi vian rendevuon per la ligilo en la retpoŝto. Vi povas fermi ĉi tiun paĝon nun.", "Your email address" : "Via retpoŝta adreso", + "Notification" : "Atentigo", "Email" : "Retpoŝto", - "Available" : "Disponeblaj", + "seconds" : "sekundoj", + "minutes" : "minutoj", + "hours" : "horojn", + "days" : "tagojn", + "weeks" : "semajnoj", + "Choose a file to add as attachment" : "Elektu dosieron aldonotan kiel kunsendaĵon", + "Delete file" : "Forigi dosieron", + "Available" : "Disponeble", + "Not available" : "Ne disponeble", + "Out of office" : "Ekstere oficejo", + "Done" : "Farita", "Busy" : "Okupita", "Unknown" : "Nekonata", "Accept" : "Akcepti", "Decline" : "Malakcepti", "Tentative" : "Nekonfirmita", - "Send email" : "Sendi retpoŝtmesaĝon", - "All day" : "Tuttage", + "Attendees" : "Ĉeestontoj", + "Remove group" : "Forigi grupon", + "Required participant" : "Bezonata partoprenanto", + "Optional participant" : "Laŭvola partoprenanto", + "From" : "De", + "To" : "Al", "Repeat" : "Ripeti", "never" : "neniam", "after" : "post", - "More" : "Pli", + "first" : "Una", + "By day of the month" : "Per tago de la monato", + "On the" : "Je la", + "_day_::_days_" : ["tago","tagoj"], + "_week_::_weeks_" : ["semajno","semajnoj"], + "_month_::_months_" : ["Monato","Monatoj"], + "_year_::_years_" : ["Jaro","Jaroj"], + "weekday" : "Semajntago", + "weekend day" : "Semajnfintago", + "Resources" : "Rimedoj", + "on {formattedDate}" : "je la {formattedDate}", "Global" : "Monda", + "Subscribe" : "Aboni", + "Time:" : "Tempo:", "Personal" : "Persona", - "[Today]" : "[Hodiaŭ]", - "[Tomorrow]" : "[Morgaŭ]", - "[Yesterday]" : "[Hieraŭ]", - "Details" : "Detaloj", - "Attendees" : "Ĉeestontoj", - "Resources" : "Rimedoj", + "Edit event" : "Redakti okazaĵon", + "All day" : "Tuttage", + "Untitled event" : "Sentitola okazaĵo", "Close" : "Fermi", "Anniversary" : "Datreveno", "Week {number} of {year}" : "Semajno {number} en {year}", "Daily" : "Ĉiutage", "Weekly" : "Ĉiusemajne", - "Untitled event" : "Sentitola okazaĵo", - "Next" : "Sekva", + "second" : "sekundo", + "third" : "Tria", + "fourth" : "Kvara", + "fifth" : "Kvina", + "last" : "Lasta", "Other" : "Alia", "When shared show full event" : "Kiam kunhavigita, montri plenajn detalojn", "When shared show only busy" : "Kiam kunhavigita, montri nur kiel okupita", @@ -90,9 +138,7 @@ "Canceled" : "Nuligita", "Categories" : "Kategorioj", "Add this as a new category" : "Aldoni tion kiel novan kategorion", - "Talk" : "Paroli", - "Mail" : "Retpoŝtilo", - "Birthday" : "Naskiĝotago", - "User not found" : "Netrovita uzanto" + "User not found" : "Netrovita uzanto", + "Details" : "Detaloj" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/es.js b/l10n/es.js index 46b489dde487082747cd9a0acd02ac014a206246..f18d129d5c453a1de3730b84e248fc5d29bc0328 100644 --- a/l10n/es.js +++ b/l10n/es.js @@ -1,139 +1,171 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "La dirección de correo electrónico proporcionada es demasiado larga", "User-Session unexpectedly expired" : "La sesión caducó inesperádamente", "Provided email-address is not valid" : "El correo electrónico proporcionado no es válido", "%s has published the calendar »%s«" : "%s ha publicado el calendario »%s«", "Unexpected error sending email. Please contact your administrator." : "Error inesperado enviando correo. Por favor contacte con el administrador.", "Successfully sent email to %1$s" : "Correo enviado correctamente a %1$s", "Hello," : "Hola,", - "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte de que %s ha publicado el calendario »%s«.", + "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarle que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Upcoming events" : "Próximos eventos", + "No more events today" : "No hay más eventos hoy", + "No upcoming events" : "No hay eventos próximos", + "More events" : "Más eventos", + "%1$s with %2$s" : "%1$s con %2$s", + "Calendar" : "Calendario", + "New booking {booking}" : "Nueva reserva {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) ha reservado la cita \"{config_display_name}\" el {date_time}.", "Appointments" : "Citas", "Schedule appointment \"%s\"" : "Programar cita \"%s\"", "Schedule an appointment" : "Programar una cita", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Preparación para %s", "Follow up for %s" : "Seguimiento para %s", - "Your appointment \"%s\" needs confirmation" : "Tu cita \"%s\" necesita confirmación", - "Dear %s, please confirm your booking" : "Estimado %s, por favor confirma tu reserva", + "Your appointment \"%s\" with %s needs confirmation" : "Su cita \"%s\" con %s necesita confirmación", + "Dear %s, please confirm your booking" : "Estimado(a) %s, por favor confirme su reserva", "Confirm" : "Confirmar", + "Appointment with:" : "Cita con:", + "Description:" : "Descripción:", "This confirmation link expires in %s hours." : "Este enlace de confirmación expira en %s horas.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Si desea cancelar la cita después de todo, por favor contacta con el organizador.", - "Appointment:" : "Cita:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Si desea cancelar la cita después de todo, contacte al organizador respondiendo a este correo o visitando la página del perfil del mismo.", + "Your appointment \"%s\" with %s has been accepted" : "Su cita \"%s\" con %s ha sido aceptada", + "Dear %s, your booking has been accepted." : "Estimado(a) %s, su cita ha sido aceptada.", + "Appointment for:" : "Cita para:", "Date:" : "Fecha:", + "You will receive a link with the confirmation email" : "Recibirá un enlace con el correo electrónico con de confirmación", "Where:" : "Dónde:", - "Description:" : "Descripción:", - "Calendar" : "Calendario", + "Comment:" : "Comentario:", + "You have a new appointment booking \"%s\" from %s" : "Tiene una cita reservada \"%s\" por %s", + "Dear %s, %s (%s) booked an appointment with you." : "Estimado(a) %s, %s (%s) ha reservado una cita con Ud.", "A Calendar app for Nextcloud" : "Una app de calendario para Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "La app de Calendario es una interfaz para el servidor CalDAV de Nextcloud. Sincroniza fácilmente eventos de varios dispositivos con tu Nextcloud y edítalos en línea.\n\n* 🚀 **Integración con otras apps de Nextcloud.** Actualmente, Contactos. Y vendrán más.\n* 🌐 **Soporte de WebCal.** ¿Quieres ver los partidos de tu equipo favorito en tu calendario? ¡Sin problema!\n* 🙋 **Asistentes**. Invita gente a tus eventos.\n* ⌚️ **Libre/ocupado**. Comprueba cuándo tus asistentes están disponibles para la reunión.\n* ⏰ **Recordatorios.** Obtén alarmas de eventos en tu navegador y vía correo electrónico.\n🔍 **Búsqueda.** Encuentra tus eventos con facilidad.\n☑️ Tareas. ve las tareas con fecha de finalización directamente en el calendario.\n* 🙈 **No reinventamos la rueda.** Basada en las grandes librerías [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) y [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Día anterior", "Previous week" : "Semana anterior", + "Previous year" : "Año anterior", "Previous month" : "Mes anterior", "Next day" : "Día siguiente", "Next week" : "Semana siguiente", + "Next year" : "Año siguiente", "Next month" : "Mes siguiente", - "New event" : "Nuevo evento", + "Create new event" : "Crear evento nuevo", + "Event" : "Evento", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Año", "List" : "Lista", + "Appointment link was copied to clipboard" : "Enlace de la cita copiado al portapapeles", + "Appointment link could not be copied to clipboard" : "No se ha podido copiar el enlace de la cita al portapapeles", "Preview" : "Vista previa", "Copy link" : "Copiar enlace", "Edit" : "Editar", "Delete" : "Eliminar", - "Appointment link was copied to clipboard" : "Enlace de la cita copiado al portapapeles", - "Appointment link could not be copied to clipboard" : "No se ha podido copiar el enlace de la cita al portapapeles", - "Add new" : "Añadir nuevo", - "Untitled calendar" : "Calendario sin título", - "Edit name" : "Editar el nombre", - "Saving name …" : "Guardando nombre…", - "Edit color" : "Editar color", - "Saving color …" : "Guardando color…", - "Copy private link" : "Copiar enlace privado", - "Export" : "Exportar", - "Unshare from me" : "Dejar de compartir conmigo", + "Appointment schedules" : "Programación de citas", + "Create new" : "Crear nuevo", "Disable calendar \"{calendar}\"" : "Desactivar calendario \"{calendar}\"", "Disable untitled calendar" : "Desactivar el calendario sin título", "Enable calendar \"{calendar}\"" : "Activar calendario \"{calendar}\"", "Enable untitled calendar" : "Activar el calendario sin título", "An error occurred, unable to change visibility of the calendar." : "Se ha producido un error, no se ha podido cambiar la visibilidad del calendario.", - "An error occurred, unable to delete the calendar." : "Se ha producido un error, no se ha podido borrar el calendario.", - "Calendar link copied to clipboard." : "Enlace del calendario copiado al portapapeles.", - "Calendar link could not be copied to clipboard." : "El enlace de calendario no se ha podido copiar al portapapeles. ", - "An error occurred, unable to rename the calendar." : "Se ha producido un error, no se ha podido renombrar el calendario.", - "An error occurred, unable to change the calendar's color." : "Se ha producido un error, no se ha podido cambiar el color del calendario.", + "Untitled calendar" : "Calendario sin título", + "Shared with you by" : "Compartida con Ud. por", + "Edit and share calendar" : "Editar y compartir calendario", + "Edit calendar" : "Editar calendario", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Dejando de compartir el calendario en {countdown} segundo","Dejando de compartir el calendario en {countdown} segundos","Dejando de compartir el calendario en {countdown} segundos"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Borrando el calendario en {countdown} segundo","Eliminando el calendario en {countdown} segundos","Eliminando el calendario en {countdown} segundos"], + "An error occurred, unable to create the calendar." : "Se ha producido un error, no fue posible crear el calendario.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Por favor escriba un enlace válido (comenzando con http://, https://, webcal://, o webcals://)", + "Calendars" : "Calendarios", + "Add new" : "Añadir nuevo", + "New calendar" : "Nuevo calendario", + "Name for new calendar" : "Nombre del nuevo calendario", + "Creating calendar …" : "Creando calendario…", + "New calendar with task list" : "Nuevo calendario con lista de tareas", + "New subscription from link (read-only)" : "Nueva suscripción desde enlace (sólo lectura)", + "Creating subscription …" : "Creando suscripción…", + "Add public holiday calendar" : "Añadir calendario de días feriados públicos", + "Add custom public calendar" : "Añadir calendario público personalizado", + "Calendar link copied to clipboard." : "Enlace del calendario copiado al portapapeles.", + "Calendar link could not be copied to clipboard." : "El enlace de calendario no se ha podido copiar al portapapeles. ", + "Copy subscription link" : "Copiar enlace de suscripción", + "Copying link …" : "Copiando enlace …", + "Copied link" : "Enlace copiado", + "Could not copy link" : "No se ha podido copiar el enlace", + "Export" : "Exportar", + "Untitled item" : "Elemento sin nombre", + "Unknown calendar" : "Calendario desconocido", + "Could not load deleted calendars and objects" : "No es posible cargar calendarios u objetos eliminados", + "Could not delete calendar or event" : "No se ha podido eliminar un calendario o un evento", + "Could not restore calendar or event" : "No es posible restaurar el calendario o evento", + "Do you really want to empty the trash bin?" : "¿De verdad quieres vaciar la papelera?", + "Empty trash bin" : "Vaciar papelera", + "Trash bin" : "Papelera", + "Loading deleted items." : "Cargando elementos eliminados.", + "You do not have any deleted items." : "Usted no tiene elementos eliminados.", + "Name" : "Nombre", + "Deleted" : "Eliminado", + "Restore" : "Restaurar", + "Delete permanently" : "Eliminar permanentemente", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Los elementos en la papelera de reciclaje se eliminan después de {numDays} día","Los elementos en la papelera de reciclaje se eliminan después de {numDays} días","Los elementos en la papelera de reciclaje se eliminan después de {numDays} días"], + "Could not update calendar order." : "No se puede actualizar el orden del calendario.", + "Shared calendars" : "Calendarios compartido", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Internal link" : "Enlace interno", + "A private link that can be used with external clients" : "Un enlace privado que puede ser utilizado por clientes externos", + "Copy internal link" : "Copiar enlace interno", + "An error occurred, unable to publish calendar." : "Se ha producido un error, no se puede publicar el calendario.", + "An error occurred, unable to send email." : "Se ha producido un error, no se puede enviar el correo.", + "Embed code copied to clipboard." : "Código incrustado copiado al portapapeles.", + "Embed code could not be copied to clipboard." : "No se ha podido copiar al portapapeles el código incrustado.", + "Unpublishing calendar failed" : "Error al cancelar la publicación del calendario", "Share link" : "Compartir enlace", - "Publish calendar" : "Publicar calendario", - "Publishing calendar" : "Publicando calendario", "Copy public link" : "Copiar enlace público", "Send link to calendar via email" : "Enviado enlace al calendario por correo", "Enter one address" : "Escriba una dirección", "Sending email …" : "Enviando correo…", - "Copy subscription link" : "Copiar enlace de suscripción", - "Copying link …" : "Copiando enlace…", - "Copied link" : "Enlace copiado", - "Could not copy link" : "No se ha podido copiar el enlace", "Copy embedding code" : "Copiar código de insercción", - "Copying code …" : "Copiando código…", + "Copying code …" : "Copiando código …", "Copied code" : "Código copiado", "Could not copy code" : "No se ha podido copiar el código", "Delete share link" : "Eliminar enlace compartido", "Deleting share link …" : "Eliminando enlace compartido…", - "An error occurred, unable to publish calendar." : "Se ha producido un error, no se puede publicar el calendario.", - "An error occurred, unable to send email." : "Se ha producido un error, no se puede enviar el correo.", - "Embed code copied to clipboard." : "Código incrustado copiado al portapapeles.", - "Embed code could not be copied to clipboard." : "No se ha podido copiar al portapapeles el código incrustado.", - "Unpublishing calendar failed" : "Error al cancelar la publicación del calendario", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "No users or groups" : "No hay usuarios ni grupos.", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Equipo)", + "An error occurred while unsharing the calendar." : "Ocurrió un error al intentar dejar de compartir el calendario.", + "An error occurred, unable to change the permission of the share." : "Se ha producido un error, no fue posible cambiar los permisos del recurso compartido.", "can edit" : "puede editar", "Unshare with {displayName}" : "Dejar de compartir con {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Se ha producido un error, no fue posible cambiar el dejar de compartir el calendario.", - "An error occurred, unable to change the permission of the share." : "Se ha producido un error, no fue posible cambiar los permisos del recurso compartido.", - "+ New calendar" : "Nuevo calendario", - "New calendar" : "Nuevo calendario", - "Name for new calendar" : "Nombre del nuevo calendario", - "Creating calendar …" : "Creando calendario…", - "New calendar with task list" : "Nuevo calendario con lista de tareas", - "New subscription from link (read-only)" : "Nueva suscripción desde el enlace (sólo lectura)", - "Creating subscription …" : "Creando suscripción…", - "An error occurred, unable to create the calendar." : "Se ha producido un error, no fue posible crear el calendario.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Por favor escriba un enlace válido (comenzando con http://, https://, webcal://, o webcals://)", - "Trash bin" : "Papelera", - "Loading deleted elements." : "Cargando los elementos eliminados.", - "You do not have any deleted elements." : "No tienes elementos eliminados.", - "Name" : "Nombre", - "Deleted" : "Eliminado", - "Restore" : "Restaurar", - "Delete permanently" : "Eliminar permanentemente", - "Empty trash bin" : "Vaciar papelera", - "Untitled element" : "Elemento sin título", - "Unknown calendar" : "Calendario desconocido", - "Could not load deleted calendars and objects" : "No es posible cargar calendarios u objetos eliminados", - "Could not restore calendar or event" : "No es posible restaurar el calendario o evento", - "Do you really want to empty the trash bin?" : "¿De verdad quieres vaciar la papelera?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Los elementos de la papelera se eliminarán tras pasar {numDays} día","Los elementos de la papelera se eliminarán tras pasar {numDays} días","Los elementos de la papelera se eliminarán tras pasar {numDays} días"], - "Could not update calendar order." : "No se puede actualizar el orden del calendario.", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "No users or groups" : "No hay usuarios ni grupos.", + "Failed to save calendar name and color" : "Fallo al guardar el nombre del calendario y el color", + "Calendar name …" : "Nombre de calendario...", + "Never show me as busy (set this calendar to transparent)" : "Nunca me muestres como ocupado (establecer este calendario como transparente)", + "Share calendar" : "Compartir calendario", + "Unshare from me" : "Dejar de compartir conmigo", + "Save" : "Guardar", "Import calendars" : "Importar calendarios", "Please select a calendar to import into …" : "Por favor, selecciona un calendario al que importar…", "Filename" : "Nombre de archivo", "Calendar to import into" : "Calendario en el cual importar", "Cancel" : "Cancelar", "_Import calendar_::_Import calendars_" : ["Importar calendario","Importar calendarios","Importar calendarios"], + "Select the default location for attachments" : "Seleccione la ubicación por defecto para los adjuntos", + "Pick" : "Selecciona", + "Invalid location selected" : "Se seleccionó una ubicación inválida", + "Attachments folder successfully saved." : "La carpeta de adjuntos se guardó exitosamente.", + "Error on saving attachments folder." : "Error al guardar la carpeta de adjuntos.", + "Default attachments location" : "Ubicación por defecto de los adjuntos", "{filename} could not be parsed" : "{filename} no pudo ser analizado", "No valid files found, aborting import" : "No se han encontrado archivos válidos, cancelando la importación", - "Import partially failed. Imported {accepted} out of {total}." : "La importación ha fallado parcialmente. Importados {accepted} sobre {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Se ha importado con éxito %n evento.","Se han importado con éxito %n eventos.","Se han importado con éxito %n eventos."], + "Import partially failed. Imported {accepted} out of {total}." : "La importación ha fallado parcialmente. Importados {accepted} sobre {total}.", "Automatic" : "Automático", "Automatic ({detected})" : "Automático ({detected})", "New setting was not saved successfully." : "El nuevo ajuste no ha podido ser guardado correctamente.", - "Shortcut overview" : "Vista general de atajos", - "or" : "o", "Navigation" : "Navegación", "Previous period" : "Periodo anterior", "Next period" : "Periodo siguiente", @@ -141,6 +173,7 @@ OC.L10N.register( "Day view" : "Vista diaria", "Week view" : "Vista semanal", "Month view" : "Vista mensual", + "Year view" : "Vista anual", "List view" : "Vista de lista", "Actions" : "Acciones", "Create event" : "Crear evento", @@ -150,34 +183,47 @@ OC.L10N.register( "Save edited event" : "Guardar el evento editado", "Delete edited event" : "Borrar el evento editado", "Duplicate event" : "Evento duplicado", + "Shortcut overview" : "Vista general de atajos", + "or" : "o", + "Calendar settings" : "Configuración del calendario", + "At event start" : "Al inicio del evento", + "No reminder" : "No hay recordatorio", + "Failed to save default calendar" : "Fallo al guardar el calendario por defecto", + "CalDAV link copied to clipboard." : "El enlace de CalDAV copiado al portapapeles", + "CalDAV link could not be copied to clipboard." : "El enlace CalDAV no se puede copiar al portapapeles", "Enable birthday calendar" : "Permitir calendario de cumpleaños", "Show tasks in calendar" : "Ver tareas en el calendario", "Enable simplified editor" : "Activar editor simplificado", - "Limit visible events per view" : "Limite los eventos visibles por vista", + "Limit the number of events displayed in the monthly view" : "Limita el número de eventos mostrados en la vista mensual", "Show weekends" : "Mostrar fines de semana", - "Show week numbers" : "Mostrar numero de semana", + "Show week numbers" : "Mostrar número de semana", "Time increments" : "Incrementos de tiempo", + "Default calendar for incoming invitations" : "Calendario por defecto para aceptar invitaciones", "Default reminder" : "Recordatorio predeterminado", "Copy primary CalDAV address" : "Copiar dirección primaria de CalDAV", "Copy iOS/macOS CalDAV address" : "Copiar la dirección CalDAV iOS/macOS", "Personal availability settings" : "Ajustes de disponibilidad personal", "Show keyboard shortcuts" : "Mostrar atajos de teclado", - "No reminder" : "No hay recordatorio", - "CalDAV link copied to clipboard." : "El enlace de CalDAV copiado al portapapeles", - "CalDAV link could not be copied to clipboard." : "El enlace CalDAV no se puede copiar al portapapeles", - "Appointment was created successfully" : "Se ha creado la cita exitosamente", - "Appointment was updated successfully" : "Se ha actualizado la cita exitosamente", + "Appointment schedule successfully created" : "Horario de citas creado correctamente", + "Appointment schedule successfully updated" : "Horario de citas actualizado correctamente", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuto","{duration} minutos","{duration} minutos"], "0 minutes" : "0 minutos", - "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} horas","{duration} horas"], - "_{duration} day_::_{duration} days_" : ["{duration} día","{duration} días","{duration} días"], - "_{duration} week_::_{duration} weeks_" : ["{duration} semana","{duration} semanas","{duration} semanas"], - "_{duration} month_::_{duration} months_" : ["{duration} mes","{duration} meses","{duration} meses"], - "_{duration} year_::_{duration} years_" : ["{duration} año","{duration} años","{duration} años"], + "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} horas"], + "_{duration} day_::_{duration} days_" : ["{duration} día","{duration} días"], + "_{duration} week_::_{duration} weeks_" : ["{duration} semana","{duration} semanas"], + "_{duration} month_::_{duration} months_" : ["{duration} mes","{duration} meses"], + "_{duration} year_::_{duration} years_" : ["{duration} año","{duration} años"], "To configure appointments, add your email address in personal settings." : "Para configurar citas, añade tu dirección de correo en ajustes personales.", "Public – shown on the profile page" : "Público - visible en la página de perfil", "Private – only accessible via secret link" : "Privado - solamente accesible vía enlace secreto", + "Appointment schedule saved" : "Horario de citas guardado", + "Create appointment schedule" : "Horario de citas creado", + "Edit appointment schedule" : "Editar horario de citas", + "Update" : "Actualizar", + "Appointment name" : "Nombre de la cita", "Location" : "Ubicación", + "Create a Talk room" : "Crear una sala de Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Un enlace único será generado por cada cita agendada y será enviado a través del correo electrónico de confirmación", "Description" : "Descripción", "Visibility" : "Visibilidad", "Duration" : "Duración", @@ -186,7 +232,7 @@ OC.L10N.register( "Pick time ranges where appointments are allowed" : "Elegir rangos de tiempo para permitir citas", "to" : "para", "Delete slot" : "Eliminar espacio", - "No times set" : "No hay tiempo fijado", + "No times set" : "No hay tiempos definidos", "Add" : "Añadir", "Monday" : "Lunes", "Tuesday" : "Martes", @@ -195,25 +241,34 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", + "Weekdays" : "Días de semana", "Add time before and after the event" : "Añadir tiempo antes y después del evento", "Before the event" : "Antes del evento", "After the event" : "Después del evento", "Planning restrictions" : "Restricciones de planificación", - "Minimum time before next available slot" : "Intervalo de tiempo mínimo antes del siguiente hueco disponible", - "Max slots per day" : "Cantidad de huecos máxima al día", - "Limit how far in the future appointments can be booked" : "Limitar con cuánto adelanto se puede pedir una cita", - "Create appointment" : "Crear cita", - "Edit appointment" : "Editar cita", - "Save" : "Guardar", - "Update" : "Actualizar", + "Minimum time before next available slot" : "Tiempo mínimo antes del próximo espacio disponible", + "Max slots per day" : "Cantidad de espacios máximos al día", + "Limit how far in the future appointments can be booked" : "Limitar hasta qué punto en el futuro se pueden reservar citas.", + "It seems a rate limit has been reached. Please try again later." : "Parece haberse alcanzado un límite de solicitudes. Por favor, inténtelo de nuevo más tarde.", "Please confirm your reservation" : "Por favor, confirme su reserva", - "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Te hemos enviado un correo con los detalles. Por favor, confirma tu cita usando el enlace del correo. Ahora puedes cerrar esta página.", - "Your name" : "Tu nombre", - "Your email address" : "Tu dirección de correo", - "Please share anything that will help prepare for our meeting" : "Por favor, comparte algo que ayude a preparar nuestra reunión", - "Could not book the appointment. Please try again later or contact the organizer." : "No ha sido posible reservar una cita. Por favor, inténtalo más tarde o contacta con el organizador.", - "Book the appointment" : "Reservar la cita", - "Reminder" : "Recordatorio", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Le hemos enviado un correo con los detalles. Por favor, confirme su cita usando el enlace del correo. Ahora puede cerrar esta página.", + "Your name" : "Su nombre", + "Your email address" : "Su dirección de correo", + "Please share anything that will help prepare for our meeting" : "Por favor, comparta cualquier cosa que ayude a prepararnos para nuestra reunión.", + "Could not book the appointment. Please try again later or contact the organizer." : "No ha sido posible reservar una cita. Por favor, inténtelo más tarde o contacte al organizador.", + "Back" : "Atrás", + "Book appointment" : "Reservar cita", + "Error fetching Talk conversations." : "Error al obtener conversaciones de Talk.", + "Conversation does not have a valid URL." : "La conversación no tiene una URL válida.", + "Failed to apply Talk room." : "Error al guardar la sala Talk.", + "Select a Talk Room" : "Selecciona una sala de Talk", + "Add Talk conversation" : "Añade una conversación de Talk", + "Fetching Talk rooms…" : "Obteniendo salas de Talk...", + "No Talk room available" : "No hay ninguna sala de Talk disponible", + "Create a new conversation" : "Crear una conversación nueva", + "Select conversation" : "Selecciona conversación", + "on" : "activo", + "at" : "a", "before at" : "antes de las", "Notification" : "Notificación", "Email" : "Correo electrónico", @@ -224,114 +279,139 @@ OC.L10N.register( "Edit time" : "Hora de edición", "Save time" : "Guardar hora", "Remove reminder" : "Eliminar recordatorio", - "on" : "activo", - "at" : "a", - "+ Add reminder" : "+ Añadir recordatorio", "Add reminder" : "Añadir recordatorio", - "_second_::_seconds_" : ["segundo","segundos","segundos"], - "_minute_::_minutes_" : ["minuto","minutos","minutos"], - "_hour_::_hours_" : ["hora","horas","horas"], - "_day_::_days_" : ["día","días","días"], - "_week_::_weeks_" : ["semana","semanas","semanas"], + "seconds" : "seconds", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Escoja un archivo para adjuntar", + "Choose a file to share as a link" : "Escoja un archivo para compartir como enlace", + "Attachment {name} already exist!" : "¡El adjunto {name} ya existe!", + "Could not upload attachment(s)" : "No se pudo subir el/los adjunto(s)", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Estás a punto de navegar a {host}. ¿Estás seguro? Enlace: {link}", + "Proceed" : "Proceder", + "No attachments" : "Sin adjuntos", + "Add from Files" : "Añadir desde Archivos", + "Upload from device" : "Subir desde dispositivo", + "Delete file" : "Eliminar archivo", + "Confirmation" : "Confirmación", + "_{count} attachment_::_{count} attachments_" : ["{count} adjunto","{count} adjuntos","{count} adjuntos"], "Suggested" : "Sugerido", "Available" : "Disponible", - "Not available" : "No disponible", - "Checking availability" : "Comprobando disponibilidad", "Invitation accepted" : "Invitación aceptada", - "Accepted {organizerName}'s invitation" : "Aceptada la invitación de {organizerName}", + "Accepted {organizerName}'s invitation" : "Se aceptó la invitación de {organizerName}", + "Participation marked as tentative" : "Participación marcada como provisional", + "Invitation is delegated" : "Se ha delegado la invitación", + "Not available" : "No disponible", "Invitation declined" : "Invitación rechazada", "Declined {organizerName}'s invitation" : "Se ha rechazado la invitación de {organizerName}", - "Invitation is delegated" : "Se ha delegado la invitación", - "Participation marked as tentative" : "Participación marcada como provisional", - "Invitation sent" : "Invitación enviada", + "Availability will be checked" : "La disponibilidad se comprobará", + "Invitation will be sent" : "La invitación será enviada", + "Failed to check availability" : "Fallo al comprobar la disponibilidad", + "Failed to deliver invitation" : "Fallo al entregar la invitación", + "Awaiting response" : "Esperando respuesta", + "Checking availability" : "Comprobando disponibilidad", "Has not responded to {organizerName}'s invitation yet" : "Todavía no ha respondido a la invitación de {organizerName}.", - "Availability of attendees, resources and rooms" : "Disponibilidad de asistentes, recursos y habitaciones", + "chairperson" : "moderador", + "required participant" : "participante requerido", + "non-participant" : "no es participante", + "optional participant" : "participante opcional", "{organizer} (organizer)" : "{organizer} (organizador)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Disponibilidad de asistentes, recursos y habitaciones", + "Suggestion accepted" : "Sugerencia aceptada", + "Legend" : "Leyenda", + "Out of office" : "Fuera de la oficina", + "Attendees:" : "Asistentes:", + "Done" : "Listo", + "Search room" : "Buscar sala", + "Room name" : "Nombre de la sala", + "Check room availability" : "Comprueba la disponibilidad de la sala", "Free" : "Libre", "Busy (tentative)" : "Ocupado (provisional)", "Busy" : "Ocupado", - "Out of office" : "Fuera de la oficina", "Unknown" : "Desconocido", - "Accept" : "Acceptar", - "Decline" : "Declinar", - "Tentative" : "Pendiente", + "Find a time" : "Buscar una hora", "The invitation has been accepted successfully." : "La invitación se ha aceptado con éxito.", "Failed to accept the invitation." : "Fallo al aceptar la invitación.", "The invitation has been declined successfully." : "La invitación se ha declinado con éxito.", "Failed to decline the invitation." : "Fallo al declinar la invitación.", "Your participation has been marked as tentative." : "Se ha marcado tu participación como provisional.", "Failed to set the participation status to tentative." : "Fallo al marcar el estado de participación como provisional.", - "Create Talk room for this event" : "Crear sala de conversación para este evento", - "Show busy times" : "Mostrar horarios ocupados", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Pendiente", "No attendees yet" : "Aún no hay asistentes", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} invitados, {confirmedCount} confirmados", + "Successfully appended link to talk room to location." : "Se ha añadido correctamente el enlace a la sala de conversación.", "Successfully appended link to talk room to description." : "Enlace agregado con éxito en la descripción a la sala de conversación.", "Error creating Talk room" : "Error al crear la sala de conversación", - "Send email" : "Enviar email", + "Attendees" : "Asistentes", + "_%n more guest_::_%n more guests_" : ["%n invitado mas","%n mas invitados","%n mas invitados"], + "Remove group" : "Eliminar grupo", + "Remove attendee" : "Eliminar asistente", + "Request reply" : "Solicitar respuesta", "Chairperson" : "Presidente/a", "Required participant" : "Participante requerido", "Optional participant" : "Participante opcional", "Non-participant" : "No participa", - "Remove attendee" : "Eliminar asistente", - "Search for emails, users or contacts" : "Buscar correos, usuarios o contactos", + "_%n member_::_%n members_" : ["%n miembro","%n miembros","%n miembros"], "No match found" : "No se ha encontrado ningún resultado", + "Note that members of circles get invited but are not synced yet." : "Tenga en cuenta que los miembros de los círculos serán invitados pero aún no están sincronizados.", + "Note that members of contact groups get invited but are not synced yet." : "Ten en cuenta que los miembros de los grupos de contactos son invitados pero aún no están sincronizados.", "(organizer)" : "(organizador)", + "Make {label} the organizer" : "Haz a {label} el organizador", + "Make {label} the organizer and attend" : "Haz a {label} el organizador y asiste tú", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Para enviar invitaciones y gestionar las respuestas, [linkopen]añade tu dirección email en los ajustes personales[linkclose].", "Remove color" : "Quitar color", "Event title" : "Título del evento", - "All day" : "Todo el día", "Cannot modify all-day setting for events that are part of a recurrence-set." : "No se puede modificar el ajuste de todo el día en eventos que son parte de una serie recurrente.", - "from {startDate}" : "desde {startDate}", - "from {startDate} at {startTime}" : "desde {startDate} a las {startTime}", - "to {endDate}" : "hasta {endDate}", - "to {endDate} at {endTime}" : "hasta {endDate} a las {endTime}", + "From" : "De", + "To" : "A", "Repeat" : "Repetir", - "End repeat" : "Finalizar repetición", - "Select to end repeat" : "Seleccionar para finalizar la repetición", + "_time_::_times_" : ["vez","veces","veces"], "never" : "nunca", "on date" : "en fecha", "after" : "después de", - "_time_::_times_" : ["vez","veces","veces"], + "End repeat" : "Finalizar repetición", + "Select to end repeat" : "Seleccionar para finalizar la repetición", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Este evento es la excepción a la serie recurrente. No le puedes añadir una regla recurrente.", "first" : "primero", - "third" : "tercero", - "fourth" : "cuarto", - "fifth" : "quinto", - "second to last" : "penúltimo", - "last" : "último", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Los cambios en la regla de recurrencia solo se aplicarán a este y a todos los sucesos futuros.", "Repeat every" : "Repetir cada", "By day of the month" : "Por día del mes", "On the" : "En el", + "_day_::_days_" : ["día","días","días"], + "_week_::_weeks_" : ["semana","semanas","semanas"], "_month_::_months_" : ["mes","meses","meses"], "_year_::_years_" : ["año","años","años"], "weekday" : "día laborable", "weekend day" : "día de fin de semana", - "No recurrence" : "No recurrente", + "Does not repeat" : "No repetir", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud no admite totalmente la definición de recurrencia de este evento. Si edita las opciones de recurrencia, ciertas repeticiones pueden perderse.", - "Suggestions" : "Sugerencias", "No rooms or resources yet" : "Aún no hay salas ni recursos", + "Resources" : "Recursos", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asiento","{seatingCapacity} asientos","{seatingCapacity} asientos"], "Add resource" : "Añade recurso", "Has a projector" : "Tiene un proyector", "Has a whiteboard" : "Tiene una pizarra", "Wheelchair accessible" : "Accesible en silla de ruedas", "Remove resource" : "Quitar recurso", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asiento","{seatingCapacity} asientos","{seatingCapacity} asientos"], - "Projector" : "Proyector", - "Whiteboard" : "Pizarra blanca", "Search for resources or rooms" : "Buscar recursos o salas", "available" : "disponible", "unavailable" : "no disponible", + "Show all rooms" : "Muestra todas las salas", + "Projector" : "Proyector", + "Whiteboard" : "Pizarra blanca", "Room type" : "Tipo de sala", "Any" : "Cualquiera", "Minimum seating capacity" : "Capacidad mínima de los asientos", - "More" : "Más", - "Update this occurrence" : "Actualiza esta ocurrencia", + "More details" : "Más detalles", "Update this and all future" : "Actualiza esto y todo futuro", + "Update this occurrence" : "Actualiza esta ocurrencia", "Public calendar does not exist" : "Este calendario público no existe", "Maybe the share was deleted or has expired?" : "¿Puede ser que el recurso compartido haya sido borrado o haya caducado?", - "Please select a time zone:" : "Por favor seleccione una zona horaria:", - "Pick a time" : "Elige una hora", - "Pick a date" : "Elige una fecha", "from {formattedDate}" : "desde {formattedDate}", "to {formattedDate}" : "hasta {formattedDate}", "on {formattedDate}" : "en {formattedDate}", @@ -341,9 +421,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} a las {formattedTime}", "Please enter a valid date" : "Por favor especifique una fecha válida", "Please enter a valid date and time" : "Por favor especifique valores correctos de fecha y hora", + "Select a time zone" : "Selecciona una zona horaria", + "Please select a time zone:" : "Por favor seleccione una zona horaria:", + "Pick a time" : "Elija una hora", + "Pick a date" : "Elija una fecha", "Type to search time zone" : "Escribe para buscar la zona horaria", "Global" : "Global", - "Select date" : "Seleccionar fecha", + "Holidays in {region}" : "Días feriados en {region}", + "An error occurred, unable to read public calendars." : "Ocurrió un error, no se pueden leer los calendarios públicos.", + "An error occurred, unable to subscribe to calendar." : "Ocurrió un error, no fue posible suscribirse al calendario.", + "Public holiday calendars" : "Calendarios de días feriados públicos", + "Public calendars" : "Calendarios públicos", + "No valid public calendars configured" : "No hay calendarios públicos válidos configurados", + "Speak to the server administrator to resolve this issue." : "Converse con el administrador del servidor para resolver el problema", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Los calendarios de días feriados públicos son provistos por Thunderbird. Los datos del calendario serán descargados desde {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Estos calendarios públicos son sugeridos por el administrador del servidor. Los datos del calendario se descargarán desde el sitio web correspondiente.", + "By {authors}" : "Por {authors}", + "Subscribed" : "Suscrito", + "Subscribe" : "Suscribirse", + "Could not fetch slots" : "No se pudieron obtener los intervalos de tiempo", + "Select a date" : "Seleccione una fecha", "Select slot" : "Seleccionar hora", "No slots available" : "No hay horas disponibles", "The slot for your appointment has been confirmed" : "La hora de tu cita ha sido confirmada", @@ -360,24 +457,23 @@ OC.L10N.register( "Personal" : "Personal", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "La detección automática de la zona horaria determinó que tu zona horaria sea UTC. Esto es probablemente el resultado de las medidas de seguridad de su navegador web. Por favor establezca su zona horaria manualmente en la configuración del calendario. ", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "No se ha encontrado la zona horaria configurada ({timezoneId}). Volviendo a UTC.\nPor favor, cambia tu zona horaria en la configuración e informa de este problema.", - "No more events today" : "No hay más eventos hoy", - "No upcoming events" : "No hay eventos próximos", - "Create a new event" : "Crear un nuevo evento", - "[Today]" : "[Hoy]", - "[Tomorrow]" : "[Mañana]", - "[Yesterday]" : "[Ayer]", - "[Last] dddd" : "[Último] dddd", + "Availability of {displayName}" : "Disponibilidad de {displayName}", + "Edit event" : "Editar evento", "Event does not exist" : "el evento no existe", "Duplicate" : "Duplicar", "Delete this occurrence" : "Eliminar esta ocurrencia", "Delete this and all future" : "Eliminar este y los futuros", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "All day" : "Todo el día", + "Managing shared access" : "Administrando el acceso compartido", + "Deny access" : "Denegar acceso", + "Invite" : "Invitar", + "_User requires access to your file_::_Users require access to your file_" : ["El usuario requieren acceso a su archivo","Los usuarios requieren acceso a su archivo","Los usuarios requieren acceso a su archivo"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Adjunto que requiere acceso compartido","Adjuntos que requieren acceso compartido","Adjuntos que requieren acceso compartido"], + "Untitled event" : "Evento sin título", "Close" : "Cerrar", - "Show more details" : "Ver más detalles", "Subscribe to {name}" : "Subscribir a {name}", "Export {name}" : "Exportar {name}", + "Show availability" : "Mostrar disponibilidad", "Anniversary" : "Aniversario", "Appointment" : "Cita", "Business" : "Empresa", @@ -393,8 +489,8 @@ OC.L10N.register( "Travel" : "Viaje", "Vacation" : "Vacaciones", "Midnight on the day the event starts" : "Medianoche del día en el que comienza el evento", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n día antes del evento, a las {formattedHourMinute}","%n días antes del evento, a las {formattedHourMinute}","%n días antes del evento, a las {formattedHourMinute}"], - "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semana antes del evento, a las {formattedHourMinute}","%n semanas antes del evento, a las {formattedHourMinute}","%n semanas antes del evento, a las {formattedHourMinute}"], + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n día antes del evento, a las {formattedHourMinute}","%n días antes del evento, a las {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semana antes del evento, a las {formattedHourMinute}","%n semanas antes del evento, a las {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "en el día del evento, a las {formattedHourMinute}", "at the event's start" : "al comienzo del evento", "at the event's end" : "al final del evento", @@ -405,36 +501,35 @@ OC.L10N.register( "on {time}" : "a las {time}", "on {time} ({timezoneId})" : "a las {time} ({timezoneld})", "Week {number} of {year}" : "Semana {number} de {year}", - "Does not repeat" : "No repetir", "Daily" : "Diariamente", "Weekly" : "Semanalmente", "Monthly" : "Mensualmente", "Yearly" : "Anualmente", - "_Every %n day_::_Every %n days_" : ["Cada %n día","Cada %n días","Cada %n días"], - "_Every %n week_::_Every %n weeks_" : ["Cada %n semana","Cada %n semanas","Cada %n semanas"], - "_Every %n month_::_Every %n months_" : ["Cada %n mes","Cada %n meses","Cada %n meses"], - "_Every %n year_::_Every %n years_" : ["Cada %n año","Cada %n años","Cada %n años"], - "_on {weekday}_::_on {weekdays}_" : ["en {weekday}","en {weekdays}","en {weekdays}"], - "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["en día {dayOfMonthList}","en los días {dayOfMonthList}","en los días {dayOfMonthList}"], + "_Every %n day_::_Every %n days_" : ["Cada %n día","Cada %n días"], + "_Every %n week_::_Every %n weeks_" : ["Cada %n semana","Cada %n semanas"], + "_Every %n month_::_Every %n months_" : ["Cada %n mes","Cada %n meses"], + "_Every %n year_::_Every %n years_" : ["Cada %n año","Cada %n años"], + "_on {weekday}_::_on {weekdays}_" : ["en {weekday}","en {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["en día {dayOfMonthList}","en los días {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "en el {ordinalNumber} {byDaySet}", - "in {monthNames}" : "n {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "el {ordinalNumber} {byDaySet} de {monthNames} ", "until {untilDate}" : "hasta {untilDate}", "_%n time_::_%n times_" : ["%n vez","%n veces","%n veces"], - "Untitled event" : "Evento sin título", + "second" : "segundo", + "third" : "tercero", + "fourth" : "cuarto", + "fifth" : "quinto", + "second to last" : "penúltimo", + "last" : "último", "Untitled task" : "Tarea sin título", "Please ask your administrator to enable the Tasks App." : "Por favor, solicite a su administrador que permita la aplicación de tareas.", - "Prev" : "Anterior", - "Next" : "Siguiente", - "Prev year" : "Año anterior", - "Next year" : "Año siguiente", - "Year" : "Año", "W" : "S", "%n more" : "%n más", "No events to display" : "No hay eventos que mostrar", - "_+%n more_::_+%n more_" : ["+%n más","+%n más","+%n más"], + "_+%n more_::_+%n more_" : ["+%n más","+%n más"], "No events" : "No hay eventos", "Create a new event or change the visible time-range" : "Crea un evento nuevo o cambia el rango de horas visibles", + "Failed to save event" : "Fallo al guardar evento", "It might have been deleted, or there was a typo in a link" : "Puede haber sido borrado, o había una errata en el enlace", "It might have been deleted, or there was a typo in the link" : "Puede haber sido borrado, o había una errata en el enlace", "Meeting room" : "Sala de reuniones", @@ -447,6 +542,8 @@ OC.L10N.register( "When shared hide this event" : "Al compartir, ocultar este evento", "The visibility of this event in shared calendars." : "Visibilidad de este evento en calendarios compartidos", "Add a location" : "Añadir ubicación", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Añade una descripción\n\n- ¿De qué va esta reunión?\n- Orden del día\n- Algo que se tengan que preparar los participantes", + "Open Link" : "Abrir el enlace", "Add a description" : "Añadir una descripción", "Status" : "Estado", "Confirmed" : "Confirmado", @@ -459,136 +556,25 @@ OC.L10N.register( "Search or add categories" : "Buscar o añadir categorías", "Add this as a new category" : "Añadir esto como categoría nueva", "Custom color" : "Colores personalizados", - "Special color of this event. Overrides the calendar-color." : "Color especial de este evento. Se superpone al color de calendario.", - "Chat room for event" : "Sala de conversación para el evento", + "Special color of this event. Overrides the calendar-color." : "Color especial de este evento. Reemplazará al color de calendario.", + "Error while sharing file" : "Error al compartir archivo", + "Error while sharing file with user" : "Error al compartir el archivo con el usuario", + "Error creating a folder {folder}" : "Error creando la carpeta {folder}", + "Attachment {fileName} already exists!" : "¡El adjunto {fileName} ya existe!", + "An error occurred during getting file information" : "Ocurrió un error al obtener la información del archivo", + "Talk conversation for event" : "Conversación de Talk para el evento", + "An error occurred, unable to delete the calendar." : "Se ha producido un error, no se ha podido borrar el calendario.", "Imported {filename}" : "Importado {filename}", - "Meditation" : "Meditación", - "Relaxing" : "Relajante", - "Relax" : "Relajarse", - "Break" : "Pausa", - "Commute" : "Desplazamiento", - "Commuting" : "Desplazándose", - "Shuttle" : "Lanzadera", - "Invoice" : "Factura", - "Finance" : "Finanzas", - "Bank" : "Banco", - "Money" : "Dinero", - "Wedding" : "Boda", - "Dog" : "Perro", - "Concert" : "Concierto", - "Festival" : "Festival", - "Theater" : "Teatro", - "Theatre" : "Teatro", - "Presentation" : "Presentación", - "Talk" : "Coloquio", - "Speech" : "Discurso", - "Deadline" : "Entrega", - "Submission" : "Envío", - "Reporting" : "Informe", - "Camping" : "Camping", - "Camp" : "Campo", - "Election" : "Elección", - "Voting" : "Votación", - "Vote" : "Votar", - "Barbecue" : "Parrillada", - "Barbeque" : "Barbacoa", - "Garden" : "Jardín", - "Farm" : "Granja", - "Movie" : "Película", - "Cinema" : "Cine", - "Graduation" : "Graduación", - "Brainstorm" : "Lluvia de ideas", - "Review" : "Revisar", - "Audit" : "Auditoría", - "Inspection" : "Inspección", - "Proofreading" : "Corrección de pruebas", - "Baseball" : "Baseball", - "Meet" : "Reunirse", - "Planning" : "Planificando", - "Pointing" : "Señalando", - "Retrospective" : "Retrospectiva", - "Office" : "Oficina", - "Contributor week" : "Semana del colaborador", - "Mail" : "Correo electrónico", - "Soccer" : "Fútbol", - "Football" : "Rugby", - "Gaming" : "Video juegos", - "Drive" : "Conducir", - "Driving" : "Conducción", - "Bicycle" : "Bicicleta", - "Cycle" : "Bici", - "Cycling" : "Ciclismo", - "Biking" : "Pedaleando", - "Bike" : "Bici", - "Podcast" : "Podcast", - "Basketball" : "Baloncesto", - "Fishing" : "Pesca", - "Hiking" : "Excursionismo", - "Hike" : "Caminata", - "Art" : "Arte", - "Exhibition" : "Exhibición", - "Museum" : "Museo", - "Pilates" : "Pilates", - "Park" : "Parque", - "Walk" : "Caminata", - "Studying" : "Estudiando", - "Doctor" : "Médico", - "Health" : "Salud", - "Dentist" : "Dentista", - "Hospital" : "Hospital", - "Interview" : "Entrevista", - "Training" : "Formación", - "Practice" : "Práctica", - "Sports" : "Deportes", - "Exercise" : "Ejercicio", - "Work out" : "Rutina de ejercicio", - "Working out" : "Haciendo ejercicio", - "Gym" : "Gimnasio", - "Barber" : "Peluquero", - "Haircut" : "Corte de pelo", - "Hairdresser" : "Peluquería", - "Exam" : "Exámen", - "Written test" : "Test escrito", - "Oral test" : "Test oral", - "Working" : "Trabajando", - "New Years Eve" : "Nochevieja", - "NYE" : "Nochevieja", - "Fireworks" : "Fuegos artificiales", - "Running" : "Corriendo", - "Go for a run" : "Salir a correr", - "Marathon" : "Maratón", - "Video-conference" : "Videoconferencia", - "Conference-call" : "Llamada de conferencia", - "Video-call" : "Videollamada", - "Video-chat" : "Videochat", - "Video-meeting" : "Video-conferencia", - "Call" : "Llamada", - "Calling" : "Llamando", - "Christmas" : "Navidad", - "Conference" : "Conferencia", - "Pizza" : "Pizza", - "Travelling" : "Viajando", - "Trip" : "Viaje", - "Journey" : "Trayecto", - "Collaborate" : "Colaborar", - "Pair" : "Par", - "Lecture" : "Clase/Conferencia", - "Seminar" : "Seminario", - "Teaching" : "Cursos", - "Photograph" : "Fotografía", - "Party" : "Fiesta", - "Celebration" : "Celebración", - "Celebrate" : "Celebrar", - "Birthday" : "Cumpleaños", - "Shopping" : "Compras", - "Groceries" : "Comestibles", - "Skate" : "Patinar", - "Skateboard" : "Monopatín", - "Wine tasting" : "Catando vinos", - "Golf" : "Golf", - "Dinner" : "Cena", - "Lunch" : "Almuerzo", + "This is an event reminder." : "Esto es un recordatorio de evento.", + "Error while parsing a PROPFIND error" : "Error al analizar un error PROPFIND", "Appointment not found" : "Cita no encontrada", - "User not found" : "Usuario no encontrado" + "User not found" : "Usuario no encontrado", + "Reminder" : "Recordatorio", + "+ Add reminder" : "+ Añadir recordatorio", + "Select automatic slot" : "Seleccione un espacio de tiempo automático", + "with" : "con", + "Available times:" : "Horas disponibles:", + "Suggestions" : "Sugerencias", + "Details" : "Detalles" }, -"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); +"nplurals=2; plural=n != 1;"); diff --git a/l10n/es.json b/l10n/es.json index 72af9b42eb1253354a3a89fa440647ef1fe8018c..da5bddf0b19caa784754054ea06b27ad4d5a2c85 100644 --- a/l10n/es.json +++ b/l10n/es.json @@ -1,137 +1,169 @@ { "translations": { + "Provided email-address is too long" : "La dirección de correo electrónico proporcionada es demasiado larga", "User-Session unexpectedly expired" : "La sesión caducó inesperádamente", "Provided email-address is not valid" : "El correo electrónico proporcionado no es válido", "%s has published the calendar »%s«" : "%s ha publicado el calendario »%s«", "Unexpected error sending email. Please contact your administrator." : "Error inesperado enviando correo. Por favor contacte con el administrador.", "Successfully sent email to %1$s" : "Correo enviado correctamente a %1$s", "Hello," : "Hola,", - "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte de que %s ha publicado el calendario »%s«.", + "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarle que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Upcoming events" : "Próximos eventos", + "No more events today" : "No hay más eventos hoy", + "No upcoming events" : "No hay eventos próximos", + "More events" : "Más eventos", + "%1$s with %2$s" : "%1$s con %2$s", + "Calendar" : "Calendario", + "New booking {booking}" : "Nueva reserva {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) ha reservado la cita \"{config_display_name}\" el {date_time}.", "Appointments" : "Citas", "Schedule appointment \"%s\"" : "Programar cita \"%s\"", "Schedule an appointment" : "Programar una cita", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Preparación para %s", "Follow up for %s" : "Seguimiento para %s", - "Your appointment \"%s\" needs confirmation" : "Tu cita \"%s\" necesita confirmación", - "Dear %s, please confirm your booking" : "Estimado %s, por favor confirma tu reserva", + "Your appointment \"%s\" with %s needs confirmation" : "Su cita \"%s\" con %s necesita confirmación", + "Dear %s, please confirm your booking" : "Estimado(a) %s, por favor confirme su reserva", "Confirm" : "Confirmar", + "Appointment with:" : "Cita con:", + "Description:" : "Descripción:", "This confirmation link expires in %s hours." : "Este enlace de confirmación expira en %s horas.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Si desea cancelar la cita después de todo, por favor contacta con el organizador.", - "Appointment:" : "Cita:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Si desea cancelar la cita después de todo, contacte al organizador respondiendo a este correo o visitando la página del perfil del mismo.", + "Your appointment \"%s\" with %s has been accepted" : "Su cita \"%s\" con %s ha sido aceptada", + "Dear %s, your booking has been accepted." : "Estimado(a) %s, su cita ha sido aceptada.", + "Appointment for:" : "Cita para:", "Date:" : "Fecha:", + "You will receive a link with the confirmation email" : "Recibirá un enlace con el correo electrónico con de confirmación", "Where:" : "Dónde:", - "Description:" : "Descripción:", - "Calendar" : "Calendario", + "Comment:" : "Comentario:", + "You have a new appointment booking \"%s\" from %s" : "Tiene una cita reservada \"%s\" por %s", + "Dear %s, %s (%s) booked an appointment with you." : "Estimado(a) %s, %s (%s) ha reservado una cita con Ud.", "A Calendar app for Nextcloud" : "Una app de calendario para Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "La app de Calendario es una interfaz para el servidor CalDAV de Nextcloud. Sincroniza fácilmente eventos de varios dispositivos con tu Nextcloud y edítalos en línea.\n\n* 🚀 **Integración con otras apps de Nextcloud.** Actualmente, Contactos. Y vendrán más.\n* 🌐 **Soporte de WebCal.** ¿Quieres ver los partidos de tu equipo favorito en tu calendario? ¡Sin problema!\n* 🙋 **Asistentes**. Invita gente a tus eventos.\n* ⌚️ **Libre/ocupado**. Comprueba cuándo tus asistentes están disponibles para la reunión.\n* ⏰ **Recordatorios.** Obtén alarmas de eventos en tu navegador y vía correo electrónico.\n🔍 **Búsqueda.** Encuentra tus eventos con facilidad.\n☑️ Tareas. ve las tareas con fecha de finalización directamente en el calendario.\n* 🙈 **No reinventamos la rueda.** Basada en las grandes librerías [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) y [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Día anterior", "Previous week" : "Semana anterior", + "Previous year" : "Año anterior", "Previous month" : "Mes anterior", "Next day" : "Día siguiente", "Next week" : "Semana siguiente", + "Next year" : "Año siguiente", "Next month" : "Mes siguiente", - "New event" : "Nuevo evento", + "Create new event" : "Crear evento nuevo", + "Event" : "Evento", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Año", "List" : "Lista", + "Appointment link was copied to clipboard" : "Enlace de la cita copiado al portapapeles", + "Appointment link could not be copied to clipboard" : "No se ha podido copiar el enlace de la cita al portapapeles", "Preview" : "Vista previa", "Copy link" : "Copiar enlace", "Edit" : "Editar", "Delete" : "Eliminar", - "Appointment link was copied to clipboard" : "Enlace de la cita copiado al portapapeles", - "Appointment link could not be copied to clipboard" : "No se ha podido copiar el enlace de la cita al portapapeles", - "Add new" : "Añadir nuevo", - "Untitled calendar" : "Calendario sin título", - "Edit name" : "Editar el nombre", - "Saving name …" : "Guardando nombre…", - "Edit color" : "Editar color", - "Saving color …" : "Guardando color…", - "Copy private link" : "Copiar enlace privado", - "Export" : "Exportar", - "Unshare from me" : "Dejar de compartir conmigo", + "Appointment schedules" : "Programación de citas", + "Create new" : "Crear nuevo", "Disable calendar \"{calendar}\"" : "Desactivar calendario \"{calendar}\"", "Disable untitled calendar" : "Desactivar el calendario sin título", "Enable calendar \"{calendar}\"" : "Activar calendario \"{calendar}\"", "Enable untitled calendar" : "Activar el calendario sin título", "An error occurred, unable to change visibility of the calendar." : "Se ha producido un error, no se ha podido cambiar la visibilidad del calendario.", - "An error occurred, unable to delete the calendar." : "Se ha producido un error, no se ha podido borrar el calendario.", - "Calendar link copied to clipboard." : "Enlace del calendario copiado al portapapeles.", - "Calendar link could not be copied to clipboard." : "El enlace de calendario no se ha podido copiar al portapapeles. ", - "An error occurred, unable to rename the calendar." : "Se ha producido un error, no se ha podido renombrar el calendario.", - "An error occurred, unable to change the calendar's color." : "Se ha producido un error, no se ha podido cambiar el color del calendario.", + "Untitled calendar" : "Calendario sin título", + "Shared with you by" : "Compartida con Ud. por", + "Edit and share calendar" : "Editar y compartir calendario", + "Edit calendar" : "Editar calendario", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Dejando de compartir el calendario en {countdown} segundo","Dejando de compartir el calendario en {countdown} segundos","Dejando de compartir el calendario en {countdown} segundos"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Borrando el calendario en {countdown} segundo","Eliminando el calendario en {countdown} segundos","Eliminando el calendario en {countdown} segundos"], + "An error occurred, unable to create the calendar." : "Se ha producido un error, no fue posible crear el calendario.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Por favor escriba un enlace válido (comenzando con http://, https://, webcal://, o webcals://)", + "Calendars" : "Calendarios", + "Add new" : "Añadir nuevo", + "New calendar" : "Nuevo calendario", + "Name for new calendar" : "Nombre del nuevo calendario", + "Creating calendar …" : "Creando calendario…", + "New calendar with task list" : "Nuevo calendario con lista de tareas", + "New subscription from link (read-only)" : "Nueva suscripción desde enlace (sólo lectura)", + "Creating subscription …" : "Creando suscripción…", + "Add public holiday calendar" : "Añadir calendario de días feriados públicos", + "Add custom public calendar" : "Añadir calendario público personalizado", + "Calendar link copied to clipboard." : "Enlace del calendario copiado al portapapeles.", + "Calendar link could not be copied to clipboard." : "El enlace de calendario no se ha podido copiar al portapapeles. ", + "Copy subscription link" : "Copiar enlace de suscripción", + "Copying link …" : "Copiando enlace …", + "Copied link" : "Enlace copiado", + "Could not copy link" : "No se ha podido copiar el enlace", + "Export" : "Exportar", + "Untitled item" : "Elemento sin nombre", + "Unknown calendar" : "Calendario desconocido", + "Could not load deleted calendars and objects" : "No es posible cargar calendarios u objetos eliminados", + "Could not delete calendar or event" : "No se ha podido eliminar un calendario o un evento", + "Could not restore calendar or event" : "No es posible restaurar el calendario o evento", + "Do you really want to empty the trash bin?" : "¿De verdad quieres vaciar la papelera?", + "Empty trash bin" : "Vaciar papelera", + "Trash bin" : "Papelera", + "Loading deleted items." : "Cargando elementos eliminados.", + "You do not have any deleted items." : "Usted no tiene elementos eliminados.", + "Name" : "Nombre", + "Deleted" : "Eliminado", + "Restore" : "Restaurar", + "Delete permanently" : "Eliminar permanentemente", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Los elementos en la papelera de reciclaje se eliminan después de {numDays} día","Los elementos en la papelera de reciclaje se eliminan después de {numDays} días","Los elementos en la papelera de reciclaje se eliminan después de {numDays} días"], + "Could not update calendar order." : "No se puede actualizar el orden del calendario.", + "Shared calendars" : "Calendarios compartido", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Internal link" : "Enlace interno", + "A private link that can be used with external clients" : "Un enlace privado que puede ser utilizado por clientes externos", + "Copy internal link" : "Copiar enlace interno", + "An error occurred, unable to publish calendar." : "Se ha producido un error, no se puede publicar el calendario.", + "An error occurred, unable to send email." : "Se ha producido un error, no se puede enviar el correo.", + "Embed code copied to clipboard." : "Código incrustado copiado al portapapeles.", + "Embed code could not be copied to clipboard." : "No se ha podido copiar al portapapeles el código incrustado.", + "Unpublishing calendar failed" : "Error al cancelar la publicación del calendario", "Share link" : "Compartir enlace", - "Publish calendar" : "Publicar calendario", - "Publishing calendar" : "Publicando calendario", "Copy public link" : "Copiar enlace público", "Send link to calendar via email" : "Enviado enlace al calendario por correo", "Enter one address" : "Escriba una dirección", "Sending email …" : "Enviando correo…", - "Copy subscription link" : "Copiar enlace de suscripción", - "Copying link …" : "Copiando enlace…", - "Copied link" : "Enlace copiado", - "Could not copy link" : "No se ha podido copiar el enlace", "Copy embedding code" : "Copiar código de insercción", - "Copying code …" : "Copiando código…", + "Copying code …" : "Copiando código …", "Copied code" : "Código copiado", "Could not copy code" : "No se ha podido copiar el código", "Delete share link" : "Eliminar enlace compartido", "Deleting share link …" : "Eliminando enlace compartido…", - "An error occurred, unable to publish calendar." : "Se ha producido un error, no se puede publicar el calendario.", - "An error occurred, unable to send email." : "Se ha producido un error, no se puede enviar el correo.", - "Embed code copied to clipboard." : "Código incrustado copiado al portapapeles.", - "Embed code could not be copied to clipboard." : "No se ha podido copiar al portapapeles el código incrustado.", - "Unpublishing calendar failed" : "Error al cancelar la publicación del calendario", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "No users or groups" : "No hay usuarios ni grupos.", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Equipo)", + "An error occurred while unsharing the calendar." : "Ocurrió un error al intentar dejar de compartir el calendario.", + "An error occurred, unable to change the permission of the share." : "Se ha producido un error, no fue posible cambiar los permisos del recurso compartido.", "can edit" : "puede editar", "Unshare with {displayName}" : "Dejar de compartir con {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Se ha producido un error, no fue posible cambiar el dejar de compartir el calendario.", - "An error occurred, unable to change the permission of the share." : "Se ha producido un error, no fue posible cambiar los permisos del recurso compartido.", - "+ New calendar" : "Nuevo calendario", - "New calendar" : "Nuevo calendario", - "Name for new calendar" : "Nombre del nuevo calendario", - "Creating calendar …" : "Creando calendario…", - "New calendar with task list" : "Nuevo calendario con lista de tareas", - "New subscription from link (read-only)" : "Nueva suscripción desde el enlace (sólo lectura)", - "Creating subscription …" : "Creando suscripción…", - "An error occurred, unable to create the calendar." : "Se ha producido un error, no fue posible crear el calendario.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Por favor escriba un enlace válido (comenzando con http://, https://, webcal://, o webcals://)", - "Trash bin" : "Papelera", - "Loading deleted elements." : "Cargando los elementos eliminados.", - "You do not have any deleted elements." : "No tienes elementos eliminados.", - "Name" : "Nombre", - "Deleted" : "Eliminado", - "Restore" : "Restaurar", - "Delete permanently" : "Eliminar permanentemente", - "Empty trash bin" : "Vaciar papelera", - "Untitled element" : "Elemento sin título", - "Unknown calendar" : "Calendario desconocido", - "Could not load deleted calendars and objects" : "No es posible cargar calendarios u objetos eliminados", - "Could not restore calendar or event" : "No es posible restaurar el calendario o evento", - "Do you really want to empty the trash bin?" : "¿De verdad quieres vaciar la papelera?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Los elementos de la papelera se eliminarán tras pasar {numDays} día","Los elementos de la papelera se eliminarán tras pasar {numDays} días","Los elementos de la papelera se eliminarán tras pasar {numDays} días"], - "Could not update calendar order." : "No se puede actualizar el orden del calendario.", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "No users or groups" : "No hay usuarios ni grupos.", + "Failed to save calendar name and color" : "Fallo al guardar el nombre del calendario y el color", + "Calendar name …" : "Nombre de calendario...", + "Never show me as busy (set this calendar to transparent)" : "Nunca me muestres como ocupado (establecer este calendario como transparente)", + "Share calendar" : "Compartir calendario", + "Unshare from me" : "Dejar de compartir conmigo", + "Save" : "Guardar", "Import calendars" : "Importar calendarios", "Please select a calendar to import into …" : "Por favor, selecciona un calendario al que importar…", "Filename" : "Nombre de archivo", "Calendar to import into" : "Calendario en el cual importar", "Cancel" : "Cancelar", "_Import calendar_::_Import calendars_" : ["Importar calendario","Importar calendarios","Importar calendarios"], + "Select the default location for attachments" : "Seleccione la ubicación por defecto para los adjuntos", + "Pick" : "Selecciona", + "Invalid location selected" : "Se seleccionó una ubicación inválida", + "Attachments folder successfully saved." : "La carpeta de adjuntos se guardó exitosamente.", + "Error on saving attachments folder." : "Error al guardar la carpeta de adjuntos.", + "Default attachments location" : "Ubicación por defecto de los adjuntos", "{filename} could not be parsed" : "{filename} no pudo ser analizado", "No valid files found, aborting import" : "No se han encontrado archivos válidos, cancelando la importación", - "Import partially failed. Imported {accepted} out of {total}." : "La importación ha fallado parcialmente. Importados {accepted} sobre {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Se ha importado con éxito %n evento.","Se han importado con éxito %n eventos.","Se han importado con éxito %n eventos."], + "Import partially failed. Imported {accepted} out of {total}." : "La importación ha fallado parcialmente. Importados {accepted} sobre {total}.", "Automatic" : "Automático", "Automatic ({detected})" : "Automático ({detected})", "New setting was not saved successfully." : "El nuevo ajuste no ha podido ser guardado correctamente.", - "Shortcut overview" : "Vista general de atajos", - "or" : "o", "Navigation" : "Navegación", "Previous period" : "Periodo anterior", "Next period" : "Periodo siguiente", @@ -139,6 +171,7 @@ "Day view" : "Vista diaria", "Week view" : "Vista semanal", "Month view" : "Vista mensual", + "Year view" : "Vista anual", "List view" : "Vista de lista", "Actions" : "Acciones", "Create event" : "Crear evento", @@ -148,34 +181,47 @@ "Save edited event" : "Guardar el evento editado", "Delete edited event" : "Borrar el evento editado", "Duplicate event" : "Evento duplicado", + "Shortcut overview" : "Vista general de atajos", + "or" : "o", + "Calendar settings" : "Configuración del calendario", + "At event start" : "Al inicio del evento", + "No reminder" : "No hay recordatorio", + "Failed to save default calendar" : "Fallo al guardar el calendario por defecto", + "CalDAV link copied to clipboard." : "El enlace de CalDAV copiado al portapapeles", + "CalDAV link could not be copied to clipboard." : "El enlace CalDAV no se puede copiar al portapapeles", "Enable birthday calendar" : "Permitir calendario de cumpleaños", "Show tasks in calendar" : "Ver tareas en el calendario", "Enable simplified editor" : "Activar editor simplificado", - "Limit visible events per view" : "Limite los eventos visibles por vista", + "Limit the number of events displayed in the monthly view" : "Limita el número de eventos mostrados en la vista mensual", "Show weekends" : "Mostrar fines de semana", - "Show week numbers" : "Mostrar numero de semana", + "Show week numbers" : "Mostrar número de semana", "Time increments" : "Incrementos de tiempo", + "Default calendar for incoming invitations" : "Calendario por defecto para aceptar invitaciones", "Default reminder" : "Recordatorio predeterminado", "Copy primary CalDAV address" : "Copiar dirección primaria de CalDAV", "Copy iOS/macOS CalDAV address" : "Copiar la dirección CalDAV iOS/macOS", "Personal availability settings" : "Ajustes de disponibilidad personal", "Show keyboard shortcuts" : "Mostrar atajos de teclado", - "No reminder" : "No hay recordatorio", - "CalDAV link copied to clipboard." : "El enlace de CalDAV copiado al portapapeles", - "CalDAV link could not be copied to clipboard." : "El enlace CalDAV no se puede copiar al portapapeles", - "Appointment was created successfully" : "Se ha creado la cita exitosamente", - "Appointment was updated successfully" : "Se ha actualizado la cita exitosamente", + "Appointment schedule successfully created" : "Horario de citas creado correctamente", + "Appointment schedule successfully updated" : "Horario de citas actualizado correctamente", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuto","{duration} minutos","{duration} minutos"], "0 minutes" : "0 minutos", - "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} horas","{duration} horas"], - "_{duration} day_::_{duration} days_" : ["{duration} día","{duration} días","{duration} días"], - "_{duration} week_::_{duration} weeks_" : ["{duration} semana","{duration} semanas","{duration} semanas"], - "_{duration} month_::_{duration} months_" : ["{duration} mes","{duration} meses","{duration} meses"], - "_{duration} year_::_{duration} years_" : ["{duration} año","{duration} años","{duration} años"], + "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} horas"], + "_{duration} day_::_{duration} days_" : ["{duration} día","{duration} días"], + "_{duration} week_::_{duration} weeks_" : ["{duration} semana","{duration} semanas"], + "_{duration} month_::_{duration} months_" : ["{duration} mes","{duration} meses"], + "_{duration} year_::_{duration} years_" : ["{duration} año","{duration} años"], "To configure appointments, add your email address in personal settings." : "Para configurar citas, añade tu dirección de correo en ajustes personales.", "Public – shown on the profile page" : "Público - visible en la página de perfil", "Private – only accessible via secret link" : "Privado - solamente accesible vía enlace secreto", + "Appointment schedule saved" : "Horario de citas guardado", + "Create appointment schedule" : "Horario de citas creado", + "Edit appointment schedule" : "Editar horario de citas", + "Update" : "Actualizar", + "Appointment name" : "Nombre de la cita", "Location" : "Ubicación", + "Create a Talk room" : "Crear una sala de Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Un enlace único será generado por cada cita agendada y será enviado a través del correo electrónico de confirmación", "Description" : "Descripción", "Visibility" : "Visibilidad", "Duration" : "Duración", @@ -184,7 +230,7 @@ "Pick time ranges where appointments are allowed" : "Elegir rangos de tiempo para permitir citas", "to" : "para", "Delete slot" : "Eliminar espacio", - "No times set" : "No hay tiempo fijado", + "No times set" : "No hay tiempos definidos", "Add" : "Añadir", "Monday" : "Lunes", "Tuesday" : "Martes", @@ -193,25 +239,34 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", + "Weekdays" : "Días de semana", "Add time before and after the event" : "Añadir tiempo antes y después del evento", "Before the event" : "Antes del evento", "After the event" : "Después del evento", "Planning restrictions" : "Restricciones de planificación", - "Minimum time before next available slot" : "Intervalo de tiempo mínimo antes del siguiente hueco disponible", - "Max slots per day" : "Cantidad de huecos máxima al día", - "Limit how far in the future appointments can be booked" : "Limitar con cuánto adelanto se puede pedir una cita", - "Create appointment" : "Crear cita", - "Edit appointment" : "Editar cita", - "Save" : "Guardar", - "Update" : "Actualizar", + "Minimum time before next available slot" : "Tiempo mínimo antes del próximo espacio disponible", + "Max slots per day" : "Cantidad de espacios máximos al día", + "Limit how far in the future appointments can be booked" : "Limitar hasta qué punto en el futuro se pueden reservar citas.", + "It seems a rate limit has been reached. Please try again later." : "Parece haberse alcanzado un límite de solicitudes. Por favor, inténtelo de nuevo más tarde.", "Please confirm your reservation" : "Por favor, confirme su reserva", - "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Te hemos enviado un correo con los detalles. Por favor, confirma tu cita usando el enlace del correo. Ahora puedes cerrar esta página.", - "Your name" : "Tu nombre", - "Your email address" : "Tu dirección de correo", - "Please share anything that will help prepare for our meeting" : "Por favor, comparte algo que ayude a preparar nuestra reunión", - "Could not book the appointment. Please try again later or contact the organizer." : "No ha sido posible reservar una cita. Por favor, inténtalo más tarde o contacta con el organizador.", - "Book the appointment" : "Reservar la cita", - "Reminder" : "Recordatorio", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Le hemos enviado un correo con los detalles. Por favor, confirme su cita usando el enlace del correo. Ahora puede cerrar esta página.", + "Your name" : "Su nombre", + "Your email address" : "Su dirección de correo", + "Please share anything that will help prepare for our meeting" : "Por favor, comparta cualquier cosa que ayude a prepararnos para nuestra reunión.", + "Could not book the appointment. Please try again later or contact the organizer." : "No ha sido posible reservar una cita. Por favor, inténtelo más tarde o contacte al organizador.", + "Back" : "Atrás", + "Book appointment" : "Reservar cita", + "Error fetching Talk conversations." : "Error al obtener conversaciones de Talk.", + "Conversation does not have a valid URL." : "La conversación no tiene una URL válida.", + "Failed to apply Talk room." : "Error al guardar la sala Talk.", + "Select a Talk Room" : "Selecciona una sala de Talk", + "Add Talk conversation" : "Añade una conversación de Talk", + "Fetching Talk rooms…" : "Obteniendo salas de Talk...", + "No Talk room available" : "No hay ninguna sala de Talk disponible", + "Create a new conversation" : "Crear una conversación nueva", + "Select conversation" : "Selecciona conversación", + "on" : "activo", + "at" : "a", "before at" : "antes de las", "Notification" : "Notificación", "Email" : "Correo electrónico", @@ -222,114 +277,139 @@ "Edit time" : "Hora de edición", "Save time" : "Guardar hora", "Remove reminder" : "Eliminar recordatorio", - "on" : "activo", - "at" : "a", - "+ Add reminder" : "+ Añadir recordatorio", "Add reminder" : "Añadir recordatorio", - "_second_::_seconds_" : ["segundo","segundos","segundos"], - "_minute_::_minutes_" : ["minuto","minutos","minutos"], - "_hour_::_hours_" : ["hora","horas","horas"], - "_day_::_days_" : ["día","días","días"], - "_week_::_weeks_" : ["semana","semanas","semanas"], + "seconds" : "seconds", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Escoja un archivo para adjuntar", + "Choose a file to share as a link" : "Escoja un archivo para compartir como enlace", + "Attachment {name} already exist!" : "¡El adjunto {name} ya existe!", + "Could not upload attachment(s)" : "No se pudo subir el/los adjunto(s)", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Estás a punto de navegar a {host}. ¿Estás seguro? Enlace: {link}", + "Proceed" : "Proceder", + "No attachments" : "Sin adjuntos", + "Add from Files" : "Añadir desde Archivos", + "Upload from device" : "Subir desde dispositivo", + "Delete file" : "Eliminar archivo", + "Confirmation" : "Confirmación", + "_{count} attachment_::_{count} attachments_" : ["{count} adjunto","{count} adjuntos","{count} adjuntos"], "Suggested" : "Sugerido", "Available" : "Disponible", - "Not available" : "No disponible", - "Checking availability" : "Comprobando disponibilidad", "Invitation accepted" : "Invitación aceptada", - "Accepted {organizerName}'s invitation" : "Aceptada la invitación de {organizerName}", + "Accepted {organizerName}'s invitation" : "Se aceptó la invitación de {organizerName}", + "Participation marked as tentative" : "Participación marcada como provisional", + "Invitation is delegated" : "Se ha delegado la invitación", + "Not available" : "No disponible", "Invitation declined" : "Invitación rechazada", "Declined {organizerName}'s invitation" : "Se ha rechazado la invitación de {organizerName}", - "Invitation is delegated" : "Se ha delegado la invitación", - "Participation marked as tentative" : "Participación marcada como provisional", - "Invitation sent" : "Invitación enviada", + "Availability will be checked" : "La disponibilidad se comprobará", + "Invitation will be sent" : "La invitación será enviada", + "Failed to check availability" : "Fallo al comprobar la disponibilidad", + "Failed to deliver invitation" : "Fallo al entregar la invitación", + "Awaiting response" : "Esperando respuesta", + "Checking availability" : "Comprobando disponibilidad", "Has not responded to {organizerName}'s invitation yet" : "Todavía no ha respondido a la invitación de {organizerName}.", - "Availability of attendees, resources and rooms" : "Disponibilidad de asistentes, recursos y habitaciones", + "chairperson" : "moderador", + "required participant" : "participante requerido", + "non-participant" : "no es participante", + "optional participant" : "participante opcional", "{organizer} (organizer)" : "{organizer} (organizador)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Disponibilidad de asistentes, recursos y habitaciones", + "Suggestion accepted" : "Sugerencia aceptada", + "Legend" : "Leyenda", + "Out of office" : "Fuera de la oficina", + "Attendees:" : "Asistentes:", + "Done" : "Listo", + "Search room" : "Buscar sala", + "Room name" : "Nombre de la sala", + "Check room availability" : "Comprueba la disponibilidad de la sala", "Free" : "Libre", "Busy (tentative)" : "Ocupado (provisional)", "Busy" : "Ocupado", - "Out of office" : "Fuera de la oficina", "Unknown" : "Desconocido", - "Accept" : "Acceptar", - "Decline" : "Declinar", - "Tentative" : "Pendiente", + "Find a time" : "Buscar una hora", "The invitation has been accepted successfully." : "La invitación se ha aceptado con éxito.", "Failed to accept the invitation." : "Fallo al aceptar la invitación.", "The invitation has been declined successfully." : "La invitación se ha declinado con éxito.", "Failed to decline the invitation." : "Fallo al declinar la invitación.", "Your participation has been marked as tentative." : "Se ha marcado tu participación como provisional.", "Failed to set the participation status to tentative." : "Fallo al marcar el estado de participación como provisional.", - "Create Talk room for this event" : "Crear sala de conversación para este evento", - "Show busy times" : "Mostrar horarios ocupados", + "Accept" : "Aceptar", + "Decline" : "Declinar", + "Tentative" : "Pendiente", "No attendees yet" : "Aún no hay asistentes", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} invitados, {confirmedCount} confirmados", + "Successfully appended link to talk room to location." : "Se ha añadido correctamente el enlace a la sala de conversación.", "Successfully appended link to talk room to description." : "Enlace agregado con éxito en la descripción a la sala de conversación.", "Error creating Talk room" : "Error al crear la sala de conversación", - "Send email" : "Enviar email", + "Attendees" : "Asistentes", + "_%n more guest_::_%n more guests_" : ["%n invitado mas","%n mas invitados","%n mas invitados"], + "Remove group" : "Eliminar grupo", + "Remove attendee" : "Eliminar asistente", + "Request reply" : "Solicitar respuesta", "Chairperson" : "Presidente/a", "Required participant" : "Participante requerido", "Optional participant" : "Participante opcional", "Non-participant" : "No participa", - "Remove attendee" : "Eliminar asistente", - "Search for emails, users or contacts" : "Buscar correos, usuarios o contactos", + "_%n member_::_%n members_" : ["%n miembro","%n miembros","%n miembros"], "No match found" : "No se ha encontrado ningún resultado", + "Note that members of circles get invited but are not synced yet." : "Tenga en cuenta que los miembros de los círculos serán invitados pero aún no están sincronizados.", + "Note that members of contact groups get invited but are not synced yet." : "Ten en cuenta que los miembros de los grupos de contactos son invitados pero aún no están sincronizados.", "(organizer)" : "(organizador)", + "Make {label} the organizer" : "Haz a {label} el organizador", + "Make {label} the organizer and attend" : "Haz a {label} el organizador y asiste tú", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Para enviar invitaciones y gestionar las respuestas, [linkopen]añade tu dirección email en los ajustes personales[linkclose].", "Remove color" : "Quitar color", "Event title" : "Título del evento", - "All day" : "Todo el día", "Cannot modify all-day setting for events that are part of a recurrence-set." : "No se puede modificar el ajuste de todo el día en eventos que son parte de una serie recurrente.", - "from {startDate}" : "desde {startDate}", - "from {startDate} at {startTime}" : "desde {startDate} a las {startTime}", - "to {endDate}" : "hasta {endDate}", - "to {endDate} at {endTime}" : "hasta {endDate} a las {endTime}", + "From" : "De", + "To" : "A", "Repeat" : "Repetir", - "End repeat" : "Finalizar repetición", - "Select to end repeat" : "Seleccionar para finalizar la repetición", + "_time_::_times_" : ["vez","veces","veces"], "never" : "nunca", "on date" : "en fecha", "after" : "después de", - "_time_::_times_" : ["vez","veces","veces"], + "End repeat" : "Finalizar repetición", + "Select to end repeat" : "Seleccionar para finalizar la repetición", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Este evento es la excepción a la serie recurrente. No le puedes añadir una regla recurrente.", "first" : "primero", - "third" : "tercero", - "fourth" : "cuarto", - "fifth" : "quinto", - "second to last" : "penúltimo", - "last" : "último", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Los cambios en la regla de recurrencia solo se aplicarán a este y a todos los sucesos futuros.", "Repeat every" : "Repetir cada", "By day of the month" : "Por día del mes", "On the" : "En el", + "_day_::_days_" : ["día","días","días"], + "_week_::_weeks_" : ["semana","semanas","semanas"], "_month_::_months_" : ["mes","meses","meses"], "_year_::_years_" : ["año","años","años"], "weekday" : "día laborable", "weekend day" : "día de fin de semana", - "No recurrence" : "No recurrente", + "Does not repeat" : "No repetir", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud no admite totalmente la definición de recurrencia de este evento. Si edita las opciones de recurrencia, ciertas repeticiones pueden perderse.", - "Suggestions" : "Sugerencias", "No rooms or resources yet" : "Aún no hay salas ni recursos", + "Resources" : "Recursos", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asiento","{seatingCapacity} asientos","{seatingCapacity} asientos"], "Add resource" : "Añade recurso", "Has a projector" : "Tiene un proyector", "Has a whiteboard" : "Tiene una pizarra", "Wheelchair accessible" : "Accesible en silla de ruedas", "Remove resource" : "Quitar recurso", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asiento","{seatingCapacity} asientos","{seatingCapacity} asientos"], - "Projector" : "Proyector", - "Whiteboard" : "Pizarra blanca", "Search for resources or rooms" : "Buscar recursos o salas", "available" : "disponible", "unavailable" : "no disponible", + "Show all rooms" : "Muestra todas las salas", + "Projector" : "Proyector", + "Whiteboard" : "Pizarra blanca", "Room type" : "Tipo de sala", "Any" : "Cualquiera", "Minimum seating capacity" : "Capacidad mínima de los asientos", - "More" : "Más", - "Update this occurrence" : "Actualiza esta ocurrencia", + "More details" : "Más detalles", "Update this and all future" : "Actualiza esto y todo futuro", + "Update this occurrence" : "Actualiza esta ocurrencia", "Public calendar does not exist" : "Este calendario público no existe", "Maybe the share was deleted or has expired?" : "¿Puede ser que el recurso compartido haya sido borrado o haya caducado?", - "Please select a time zone:" : "Por favor seleccione una zona horaria:", - "Pick a time" : "Elige una hora", - "Pick a date" : "Elige una fecha", "from {formattedDate}" : "desde {formattedDate}", "to {formattedDate}" : "hasta {formattedDate}", "on {formattedDate}" : "en {formattedDate}", @@ -339,9 +419,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} a las {formattedTime}", "Please enter a valid date" : "Por favor especifique una fecha válida", "Please enter a valid date and time" : "Por favor especifique valores correctos de fecha y hora", + "Select a time zone" : "Selecciona una zona horaria", + "Please select a time zone:" : "Por favor seleccione una zona horaria:", + "Pick a time" : "Elija una hora", + "Pick a date" : "Elija una fecha", "Type to search time zone" : "Escribe para buscar la zona horaria", "Global" : "Global", - "Select date" : "Seleccionar fecha", + "Holidays in {region}" : "Días feriados en {region}", + "An error occurred, unable to read public calendars." : "Ocurrió un error, no se pueden leer los calendarios públicos.", + "An error occurred, unable to subscribe to calendar." : "Ocurrió un error, no fue posible suscribirse al calendario.", + "Public holiday calendars" : "Calendarios de días feriados públicos", + "Public calendars" : "Calendarios públicos", + "No valid public calendars configured" : "No hay calendarios públicos válidos configurados", + "Speak to the server administrator to resolve this issue." : "Converse con el administrador del servidor para resolver el problema", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Los calendarios de días feriados públicos son provistos por Thunderbird. Los datos del calendario serán descargados desde {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Estos calendarios públicos son sugeridos por el administrador del servidor. Los datos del calendario se descargarán desde el sitio web correspondiente.", + "By {authors}" : "Por {authors}", + "Subscribed" : "Suscrito", + "Subscribe" : "Suscribirse", + "Could not fetch slots" : "No se pudieron obtener los intervalos de tiempo", + "Select a date" : "Seleccione una fecha", "Select slot" : "Seleccionar hora", "No slots available" : "No hay horas disponibles", "The slot for your appointment has been confirmed" : "La hora de tu cita ha sido confirmada", @@ -358,24 +455,23 @@ "Personal" : "Personal", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "La detección automática de la zona horaria determinó que tu zona horaria sea UTC. Esto es probablemente el resultado de las medidas de seguridad de su navegador web. Por favor establezca su zona horaria manualmente en la configuración del calendario. ", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "No se ha encontrado la zona horaria configurada ({timezoneId}). Volviendo a UTC.\nPor favor, cambia tu zona horaria en la configuración e informa de este problema.", - "No more events today" : "No hay más eventos hoy", - "No upcoming events" : "No hay eventos próximos", - "Create a new event" : "Crear un nuevo evento", - "[Today]" : "[Hoy]", - "[Tomorrow]" : "[Mañana]", - "[Yesterday]" : "[Ayer]", - "[Last] dddd" : "[Último] dddd", + "Availability of {displayName}" : "Disponibilidad de {displayName}", + "Edit event" : "Editar evento", "Event does not exist" : "el evento no existe", "Duplicate" : "Duplicar", "Delete this occurrence" : "Eliminar esta ocurrencia", "Delete this and all future" : "Eliminar este y los futuros", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "All day" : "Todo el día", + "Managing shared access" : "Administrando el acceso compartido", + "Deny access" : "Denegar acceso", + "Invite" : "Invitar", + "_User requires access to your file_::_Users require access to your file_" : ["El usuario requieren acceso a su archivo","Los usuarios requieren acceso a su archivo","Los usuarios requieren acceso a su archivo"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Adjunto que requiere acceso compartido","Adjuntos que requieren acceso compartido","Adjuntos que requieren acceso compartido"], + "Untitled event" : "Evento sin título", "Close" : "Cerrar", - "Show more details" : "Ver más detalles", "Subscribe to {name}" : "Subscribir a {name}", "Export {name}" : "Exportar {name}", + "Show availability" : "Mostrar disponibilidad", "Anniversary" : "Aniversario", "Appointment" : "Cita", "Business" : "Empresa", @@ -391,8 +487,8 @@ "Travel" : "Viaje", "Vacation" : "Vacaciones", "Midnight on the day the event starts" : "Medianoche del día en el que comienza el evento", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n día antes del evento, a las {formattedHourMinute}","%n días antes del evento, a las {formattedHourMinute}","%n días antes del evento, a las {formattedHourMinute}"], - "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semana antes del evento, a las {formattedHourMinute}","%n semanas antes del evento, a las {formattedHourMinute}","%n semanas antes del evento, a las {formattedHourMinute}"], + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n día antes del evento, a las {formattedHourMinute}","%n días antes del evento, a las {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semana antes del evento, a las {formattedHourMinute}","%n semanas antes del evento, a las {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "en el día del evento, a las {formattedHourMinute}", "at the event's start" : "al comienzo del evento", "at the event's end" : "al final del evento", @@ -403,36 +499,35 @@ "on {time}" : "a las {time}", "on {time} ({timezoneId})" : "a las {time} ({timezoneld})", "Week {number} of {year}" : "Semana {number} de {year}", - "Does not repeat" : "No repetir", "Daily" : "Diariamente", "Weekly" : "Semanalmente", "Monthly" : "Mensualmente", "Yearly" : "Anualmente", - "_Every %n day_::_Every %n days_" : ["Cada %n día","Cada %n días","Cada %n días"], - "_Every %n week_::_Every %n weeks_" : ["Cada %n semana","Cada %n semanas","Cada %n semanas"], - "_Every %n month_::_Every %n months_" : ["Cada %n mes","Cada %n meses","Cada %n meses"], - "_Every %n year_::_Every %n years_" : ["Cada %n año","Cada %n años","Cada %n años"], - "_on {weekday}_::_on {weekdays}_" : ["en {weekday}","en {weekdays}","en {weekdays}"], - "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["en día {dayOfMonthList}","en los días {dayOfMonthList}","en los días {dayOfMonthList}"], + "_Every %n day_::_Every %n days_" : ["Cada %n día","Cada %n días"], + "_Every %n week_::_Every %n weeks_" : ["Cada %n semana","Cada %n semanas"], + "_Every %n month_::_Every %n months_" : ["Cada %n mes","Cada %n meses"], + "_Every %n year_::_Every %n years_" : ["Cada %n año","Cada %n años"], + "_on {weekday}_::_on {weekdays}_" : ["en {weekday}","en {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["en día {dayOfMonthList}","en los días {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "en el {ordinalNumber} {byDaySet}", - "in {monthNames}" : "n {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "el {ordinalNumber} {byDaySet} de {monthNames} ", "until {untilDate}" : "hasta {untilDate}", "_%n time_::_%n times_" : ["%n vez","%n veces","%n veces"], - "Untitled event" : "Evento sin título", + "second" : "segundo", + "third" : "tercero", + "fourth" : "cuarto", + "fifth" : "quinto", + "second to last" : "penúltimo", + "last" : "último", "Untitled task" : "Tarea sin título", "Please ask your administrator to enable the Tasks App." : "Por favor, solicite a su administrador que permita la aplicación de tareas.", - "Prev" : "Anterior", - "Next" : "Siguiente", - "Prev year" : "Año anterior", - "Next year" : "Año siguiente", - "Year" : "Año", "W" : "S", "%n more" : "%n más", "No events to display" : "No hay eventos que mostrar", - "_+%n more_::_+%n more_" : ["+%n más","+%n más","+%n más"], + "_+%n more_::_+%n more_" : ["+%n más","+%n más"], "No events" : "No hay eventos", "Create a new event or change the visible time-range" : "Crea un evento nuevo o cambia el rango de horas visibles", + "Failed to save event" : "Fallo al guardar evento", "It might have been deleted, or there was a typo in a link" : "Puede haber sido borrado, o había una errata en el enlace", "It might have been deleted, or there was a typo in the link" : "Puede haber sido borrado, o había una errata en el enlace", "Meeting room" : "Sala de reuniones", @@ -445,6 +540,8 @@ "When shared hide this event" : "Al compartir, ocultar este evento", "The visibility of this event in shared calendars." : "Visibilidad de este evento en calendarios compartidos", "Add a location" : "Añadir ubicación", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Añade una descripción\n\n- ¿De qué va esta reunión?\n- Orden del día\n- Algo que se tengan que preparar los participantes", + "Open Link" : "Abrir el enlace", "Add a description" : "Añadir una descripción", "Status" : "Estado", "Confirmed" : "Confirmado", @@ -457,136 +554,25 @@ "Search or add categories" : "Buscar o añadir categorías", "Add this as a new category" : "Añadir esto como categoría nueva", "Custom color" : "Colores personalizados", - "Special color of this event. Overrides the calendar-color." : "Color especial de este evento. Se superpone al color de calendario.", - "Chat room for event" : "Sala de conversación para el evento", + "Special color of this event. Overrides the calendar-color." : "Color especial de este evento. Reemplazará al color de calendario.", + "Error while sharing file" : "Error al compartir archivo", + "Error while sharing file with user" : "Error al compartir el archivo con el usuario", + "Error creating a folder {folder}" : "Error creando la carpeta {folder}", + "Attachment {fileName} already exists!" : "¡El adjunto {fileName} ya existe!", + "An error occurred during getting file information" : "Ocurrió un error al obtener la información del archivo", + "Talk conversation for event" : "Conversación de Talk para el evento", + "An error occurred, unable to delete the calendar." : "Se ha producido un error, no se ha podido borrar el calendario.", "Imported {filename}" : "Importado {filename}", - "Meditation" : "Meditación", - "Relaxing" : "Relajante", - "Relax" : "Relajarse", - "Break" : "Pausa", - "Commute" : "Desplazamiento", - "Commuting" : "Desplazándose", - "Shuttle" : "Lanzadera", - "Invoice" : "Factura", - "Finance" : "Finanzas", - "Bank" : "Banco", - "Money" : "Dinero", - "Wedding" : "Boda", - "Dog" : "Perro", - "Concert" : "Concierto", - "Festival" : "Festival", - "Theater" : "Teatro", - "Theatre" : "Teatro", - "Presentation" : "Presentación", - "Talk" : "Coloquio", - "Speech" : "Discurso", - "Deadline" : "Entrega", - "Submission" : "Envío", - "Reporting" : "Informe", - "Camping" : "Camping", - "Camp" : "Campo", - "Election" : "Elección", - "Voting" : "Votación", - "Vote" : "Votar", - "Barbecue" : "Parrillada", - "Barbeque" : "Barbacoa", - "Garden" : "Jardín", - "Farm" : "Granja", - "Movie" : "Película", - "Cinema" : "Cine", - "Graduation" : "Graduación", - "Brainstorm" : "Lluvia de ideas", - "Review" : "Revisar", - "Audit" : "Auditoría", - "Inspection" : "Inspección", - "Proofreading" : "Corrección de pruebas", - "Baseball" : "Baseball", - "Meet" : "Reunirse", - "Planning" : "Planificando", - "Pointing" : "Señalando", - "Retrospective" : "Retrospectiva", - "Office" : "Oficina", - "Contributor week" : "Semana del colaborador", - "Mail" : "Correo electrónico", - "Soccer" : "Fútbol", - "Football" : "Rugby", - "Gaming" : "Video juegos", - "Drive" : "Conducir", - "Driving" : "Conducción", - "Bicycle" : "Bicicleta", - "Cycle" : "Bici", - "Cycling" : "Ciclismo", - "Biking" : "Pedaleando", - "Bike" : "Bici", - "Podcast" : "Podcast", - "Basketball" : "Baloncesto", - "Fishing" : "Pesca", - "Hiking" : "Excursionismo", - "Hike" : "Caminata", - "Art" : "Arte", - "Exhibition" : "Exhibición", - "Museum" : "Museo", - "Pilates" : "Pilates", - "Park" : "Parque", - "Walk" : "Caminata", - "Studying" : "Estudiando", - "Doctor" : "Médico", - "Health" : "Salud", - "Dentist" : "Dentista", - "Hospital" : "Hospital", - "Interview" : "Entrevista", - "Training" : "Formación", - "Practice" : "Práctica", - "Sports" : "Deportes", - "Exercise" : "Ejercicio", - "Work out" : "Rutina de ejercicio", - "Working out" : "Haciendo ejercicio", - "Gym" : "Gimnasio", - "Barber" : "Peluquero", - "Haircut" : "Corte de pelo", - "Hairdresser" : "Peluquería", - "Exam" : "Exámen", - "Written test" : "Test escrito", - "Oral test" : "Test oral", - "Working" : "Trabajando", - "New Years Eve" : "Nochevieja", - "NYE" : "Nochevieja", - "Fireworks" : "Fuegos artificiales", - "Running" : "Corriendo", - "Go for a run" : "Salir a correr", - "Marathon" : "Maratón", - "Video-conference" : "Videoconferencia", - "Conference-call" : "Llamada de conferencia", - "Video-call" : "Videollamada", - "Video-chat" : "Videochat", - "Video-meeting" : "Video-conferencia", - "Call" : "Llamada", - "Calling" : "Llamando", - "Christmas" : "Navidad", - "Conference" : "Conferencia", - "Pizza" : "Pizza", - "Travelling" : "Viajando", - "Trip" : "Viaje", - "Journey" : "Trayecto", - "Collaborate" : "Colaborar", - "Pair" : "Par", - "Lecture" : "Clase/Conferencia", - "Seminar" : "Seminario", - "Teaching" : "Cursos", - "Photograph" : "Fotografía", - "Party" : "Fiesta", - "Celebration" : "Celebración", - "Celebrate" : "Celebrar", - "Birthday" : "Cumpleaños", - "Shopping" : "Compras", - "Groceries" : "Comestibles", - "Skate" : "Patinar", - "Skateboard" : "Monopatín", - "Wine tasting" : "Catando vinos", - "Golf" : "Golf", - "Dinner" : "Cena", - "Lunch" : "Almuerzo", + "This is an event reminder." : "Esto es un recordatorio de evento.", + "Error while parsing a PROPFIND error" : "Error al analizar un error PROPFIND", "Appointment not found" : "Cita no encontrada", - "User not found" : "Usuario no encontrado" + "User not found" : "Usuario no encontrado", + "Reminder" : "Recordatorio", + "+ Add reminder" : "+ Añadir recordatorio", + "Select automatic slot" : "Seleccione un espacio de tiempo automático", + "with" : "con", + "Available times:" : "Horas disponibles:", + "Suggestions" : "Sugerencias", + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_419.js b/l10n/es_419.js index 8cc2d0f458c47e9608c700e9a9936772a25e895f..c38effb044b60e6fb11fb8a63af9a1a9030b5cd9 100644 --- a/l10n/es_419.js +++ b/l10n/es_419.js @@ -6,11 +6,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -20,22 +19,26 @@ OC.L10N.register( "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -47,34 +50,34 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -82,8 +85,6 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_419.json b/l10n/es_419.json index 6532f6b266cecd2c64aba87b6e8f445a51cd40f5..610bf0493380ad6b6c77f3c62decb47b4f8eed9d 100644 --- a/l10n/es_419.json +++ b/l10n/es_419.json @@ -4,11 +4,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -18,22 +17,26 @@ "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -45,34 +48,34 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -80,8 +83,6 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_AR.js b/l10n/es_AR.js index 2bce23f0e7466a8c6da371d3f37f11e46639604b..f7d4213e159654d642a0242e8e0d2d4140d54986 100644 --- a/l10n/es_AR.js +++ b/l10n/es_AR.js @@ -6,8 +6,8 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Upcoming events" : "Próximos eventos", - "Confirm" : "Confirmar", "Calendar" : "Calendario", + "Confirm" : "Confirmar", "A Calendar app for Nextcloud" : "Una aplicación de calendario para Nextcloud", "Previous day" : "Día previo", "Previous week" : "Semana previa", @@ -15,40 +15,47 @@ OC.L10N.register( "Next day" : "Proximo día", "Next week" : "Proxima semana", "Next month" : "Proximo mes", - "New event" : "Nuevo evento", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Año", "List" : "Lista", "Preview" : "Vista previa", "Copy link" : "Copiar enlace", "Edit" : "Editar", "Delete" : "Borrar", - "Edit name" : "Editar nombre", - "Edit color" : "Editar color", - "Export" : "Exportar", - "Share link" : "Compartir link", - "Copy public link" : "Copiar link publico", - "Copied link" : "Link copiado", - "Copied code" : "Código copiado", - "Share with users or groups" : "Compartir con usuarios o grupos", - "No users or groups" : "No hay usuarios ni grupos.", - "can edit" : "puede editar", + "Create new" : "Crear nuevo", + "Calendars" : "Calendarios", "New calendar" : "Nuevo calendario", "New calendar with task list" : "Nuevo calendario con listado de tareas", + "Copied link" : "Link copiado", + "Export" : "Exportar", + "Empty trash bin" : "Vaciar la papelera", "Name" : "Nombre", "Deleted" : "Eliminado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Copy internal link" : "Copiar enlace interno", + "Share link" : "Compartir link", + "Copy public link" : "Copiar link publico", + "Copied code" : "Código copiado", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con usuarios o grupos", + "No users or groups" : "No hay usuarios ni grupos.", + "Save" : "Guardar", "Filename" : "Nombre de archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", "List view" : "Vista de lista", "Actions" : "Acciones", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", + "Visibility" : "Visibilidad", "to" : "para", "Add" : "Añadir", "Monday" : "Lunes", @@ -58,35 +65,46 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Su dirección de correo electrónico", + "Back" : "Volver", "Notification" : "Notificación", "Email" : "Correo electrónico", + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Seleccione el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Available" : "Disponible", + "Not available" : "No disponible", + "Legend" : "Leyenda", + "Done" : "Terminado", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", + "Remove group" : "Eliminar grupo", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "first" : "primero", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribirse", + "Select a date" : "Elija una fecha", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", + "second" : "segundo", + "last" : "último", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -94,8 +112,6 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categoría", - "Movie" : "Película", - "Mail" : "Correo Electrónico", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_AR.json b/l10n/es_AR.json index 8e334b945f95ae12f1fa0e89a1db44a6e4fb7e2f..35d33b9538f37272d6349b318a1c37bf4eb01484 100644 --- a/l10n/es_AR.json +++ b/l10n/es_AR.json @@ -4,8 +4,8 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", "Upcoming events" : "Próximos eventos", - "Confirm" : "Confirmar", "Calendar" : "Calendario", + "Confirm" : "Confirmar", "A Calendar app for Nextcloud" : "Una aplicación de calendario para Nextcloud", "Previous day" : "Día previo", "Previous week" : "Semana previa", @@ -13,40 +13,47 @@ "Next day" : "Proximo día", "Next week" : "Proxima semana", "Next month" : "Proximo mes", - "New event" : "Nuevo evento", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Año", "List" : "Lista", "Preview" : "Vista previa", "Copy link" : "Copiar enlace", "Edit" : "Editar", "Delete" : "Borrar", - "Edit name" : "Editar nombre", - "Edit color" : "Editar color", - "Export" : "Exportar", - "Share link" : "Compartir link", - "Copy public link" : "Copiar link publico", - "Copied link" : "Link copiado", - "Copied code" : "Código copiado", - "Share with users or groups" : "Compartir con usuarios o grupos", - "No users or groups" : "No hay usuarios ni grupos.", - "can edit" : "puede editar", + "Create new" : "Crear nuevo", + "Calendars" : "Calendarios", "New calendar" : "Nuevo calendario", "New calendar with task list" : "Nuevo calendario con listado de tareas", + "Copied link" : "Link copiado", + "Export" : "Exportar", + "Empty trash bin" : "Vaciar la papelera", "Name" : "Nombre", "Deleted" : "Eliminado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Copy internal link" : "Copiar enlace interno", + "Share link" : "Compartir link", + "Copy public link" : "Copiar link publico", + "Copied code" : "Código copiado", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con usuarios o grupos", + "No users or groups" : "No hay usuarios ni grupos.", + "Save" : "Guardar", "Filename" : "Nombre de archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", "List view" : "Vista de lista", "Actions" : "Acciones", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", + "Visibility" : "Visibilidad", "to" : "para", "Add" : "Añadir", "Monday" : "Lunes", @@ -56,35 +63,46 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Su dirección de correo electrónico", + "Back" : "Volver", "Notification" : "Notificación", "Email" : "Correo electrónico", + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Seleccione el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Available" : "Disponible", + "Not available" : "No disponible", + "Legend" : "Leyenda", + "Done" : "Terminado", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", + "Remove group" : "Eliminar grupo", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "first" : "primero", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribirse", + "Select a date" : "Elija una fecha", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", + "second" : "segundo", + "last" : "último", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -92,8 +110,6 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categoría", - "Movie" : "Película", - "Mail" : "Correo Electrónico", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_CL.js b/l10n/es_CL.js index 59bdfa3fb6f29ea86f7cfac749426b49d03aef4e..51f9e7a98cf43f25b0c8ff0db12e0910dd65d133 100644 --- a/l10n/es_CL.js +++ b/l10n/es_CL.js @@ -6,11 +6,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -20,22 +19,28 @@ OC.L10N.register( "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", + "Calendars" : "Calendarios", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Empty trash bin" : "Vaciar papelera de reciclaje", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -47,34 +52,35 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", + "second" : "segundo", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -82,9 +88,7 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "User not found" : "No se encontró el usuario", + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_CL.json b/l10n/es_CL.json index 75c5ef68197428f1653af25b906ac248e5638772..82dae4cf77406c37c576e28a0ce00573b3953b35 100644 --- a/l10n/es_CL.json +++ b/l10n/es_CL.json @@ -4,11 +4,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -18,22 +17,28 @@ "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", + "Calendars" : "Calendarios", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Empty trash bin" : "Vaciar papelera de reciclaje", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -45,34 +50,35 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", + "second" : "segundo", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -80,9 +86,7 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "User not found" : "No se encontró el usuario", + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_CO.js b/l10n/es_CO.js index 7c5f478461da2761b2bd2dddab5e7749364bb102..d7051d5152e1e00dd4b03983fbc792283d5302cb 100644 --- a/l10n/es_CO.js +++ b/l10n/es_CO.js @@ -8,11 +8,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -22,23 +21,27 @@ OC.L10N.register( "Copy link" : "Copiar enlace", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir enlace", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Empty trash bin" : "Vacíar la papelera", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", - "Empty trash bin" : "Vacíar la papelera", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir enlace", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -50,34 +53,34 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -85,9 +88,7 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "User not found" : "No se encontró el usuario", + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_CO.json b/l10n/es_CO.json index 994e00da272c6a9a705a774a0e5a0bbaa07baa54..e51c1a1bc62e78966781d44c1189caac69efac7a 100644 --- a/l10n/es_CO.json +++ b/l10n/es_CO.json @@ -6,11 +6,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -20,23 +19,27 @@ "Copy link" : "Copiar enlace", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir enlace", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Empty trash bin" : "Vacíar la papelera", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", - "Empty trash bin" : "Vacíar la papelera", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir enlace", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -48,34 +51,34 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -83,9 +86,7 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "User not found" : "No se encontró el usuario", + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_CR.js b/l10n/es_CR.js index 59bdfa3fb6f29ea86f7cfac749426b49d03aef4e..5a227bae31006b0f825ed4deccaa48edf13eb430 100644 --- a/l10n/es_CR.js +++ b/l10n/es_CR.js @@ -6,11 +6,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -20,22 +19,26 @@ OC.L10N.register( "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -47,34 +50,34 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -82,9 +85,7 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "User not found" : "No se encontró el usuario", + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_CR.json b/l10n/es_CR.json index 75c5ef68197428f1653af25b906ac248e5638772..763c8c773e8fbea9752700f545d42c4e0340bc78 100644 --- a/l10n/es_CR.json +++ b/l10n/es_CR.json @@ -4,11 +4,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -18,22 +17,26 @@ "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -45,34 +48,34 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -80,9 +83,7 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "User not found" : "No se encontró el usuario", + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_DO.js b/l10n/es_DO.js index 59bdfa3fb6f29ea86f7cfac749426b49d03aef4e..5a227bae31006b0f825ed4deccaa48edf13eb430 100644 --- a/l10n/es_DO.js +++ b/l10n/es_DO.js @@ -6,11 +6,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -20,22 +19,26 @@ OC.L10N.register( "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -47,34 +50,34 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -82,9 +85,7 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "User not found" : "No se encontró el usuario", + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_DO.json b/l10n/es_DO.json index 75c5ef68197428f1653af25b906ac248e5638772..763c8c773e8fbea9752700f545d42c4e0340bc78 100644 --- a/l10n/es_DO.json +++ b/l10n/es_DO.json @@ -4,11 +4,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -18,22 +17,26 @@ "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -45,34 +48,34 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -80,9 +83,7 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "User not found" : "No se encontró el usuario", + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_EC.js b/l10n/es_EC.js index 59bdfa3fb6f29ea86f7cfac749426b49d03aef4e..80066b0cc7bed2130619e9e3b37dd051a31a4384 100644 --- a/l10n/es_EC.js +++ b/l10n/es_EC.js @@ -1,44 +1,220 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "La dirección de correo electrónico proporcionada es demasiado larga", + "User-Session unexpectedly expired" : "La sesión de usuario ha expirado inesperadamente", + "Provided email-address is not valid" : "La dirección de correo electrónico proporcionada no es válida", "%s has published the calendar »%s«" : "%s ha publicado el calendario »%s«", + "Unexpected error sending email. Please contact your administrator." : "Error inesperado al enviar el correo electrónico. Por favor, contacta a tu administrador.", + "Successfully sent email to %1$s" : "Correo electrónico enviado correctamente a %1$s", "Hello," : "Hola,", "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Upcoming events" : "Próximos eventos", + "No more events today" : "No hay más eventos hoy", + "No upcoming events" : "No hay próximos eventos", + "More events" : "Más eventos", + "%1$s with %2$s" : "%1$s con %2$s", + "Calendar" : "Calendario", + "New booking {booking}" : "Nueva reserva {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) reservó la cita \"{config_display_name}\" el {date_time}.", + "Appointments" : "Citas", + "Schedule appointment \"%s\"" : "Programar cita \"%s\"", + "Schedule an appointment" : "Programar una cita", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Preparar para %s", + "Follow up for %s" : "Hacer seguimiento de %s", + "Your appointment \"%s\" with %s needs confirmation" : "Tu cita \"%s\" con %s necesita confirmación", + "Dear %s, please confirm your booking" : "Estimado/a %s, por favor confirma tu reserva", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "This confirmation link expires in %s hours." : "Este enlace de confirmación caduca en %s horas.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Si deseas cancelar la cita, por favor contacta al organizador respondiendo a este correo electrónico o visitando su página de perfil.", + "Your appointment \"%s\" with %s has been accepted" : "Tu cita \"%s\" con %s ha sido aceptada", + "Dear %s, your booking has been accepted." : "Estimado/a %s, tu reserva ha sido aceptada.", + "Appointment for:" : "Cita para:", + "Date:" : "Fecha:", + "Where:" : "Dónde:", + "Comment:" : "Comentario:", + "You have a new appointment booking \"%s\" from %s" : "Tienes una nueva reserva de cita \"%s\" de %s", + "Dear %s, %s (%s) booked an appointment with you." : "Estimado/a %s, %s (%s) ha reservado una cita contigo.", + "A Calendar app for Nextcloud" : "Una aplicación de calendario para Nextcloud", + "Previous day" : "Día anterior", + "Previous week" : "Semana anterior", + "Previous year" : "Año anterior", + "Previous month" : "Mes anterior", + "Next day" : "Día siguiente", + "Next week" : "Semana siguiente", + "Next year" : "Año siguiente", + "Next month" : "Mes siguiente", + "Create new event" : "Crear nuevo evento", + "Event" : "Evento", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Año", "List" : "Lista", + "Appointment link was copied to clipboard" : "El enlace de la cita se copió al portapapeles", + "Appointment link could not be copied to clipboard" : "No se pudo copiar el enlace de la cita al portapapeles", "Preview" : "Previsualizar", "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", + "Create new" : "Crear nuevo", + "Disable calendar \"{calendar}\"" : "Desactivar calendario \"{calendar}\"", + "Disable untitled calendar" : "Desactivar calendario sin título", + "Enable calendar \"{calendar}\"" : "Activar calendario \"{calendar}\"", + "Enable untitled calendar" : "Activar calendario sin título", + "An error occurred, unable to change visibility of the calendar." : "Ocurrió un error, no se pudo cambiar la visibilidad del calendario.", + "Untitled calendar" : "Calendario sin título", + "Shared with you by" : "Compartido contigo por", + "Edit and share calendar" : "Editar y compartir calendario", + "Edit calendar" : "Editar calendario", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Dejar de compartir el calendario en {countdown} segundo","Dejar de compartir el calendario en {countdown} segundos","Dejar de compartir el calendario en {countdown} segundos"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Eliminando el calendario en {countdown} segundo","Eliminando el calendario en {countdown} segundos","Eliminando el calendario en {countdown} segundos"], + "An error occurred, unable to create the calendar." : "Ocurrió un error, no se pudo crear el calendario.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Por favor, ingresa un enlace válido (que comience con http://, https://, webcal:// o webcals://)", + "Calendars" : "Calendarios", + "Add new" : "Agregar nuevo", "New calendar" : "Nuevo calendario", + "Name for new calendar" : "Nombre para el nuevo calendario", + "Creating calendar …" : "Creando calendario …", + "New calendar with task list" : "Nuevo calendario con lista de tareas", + "New subscription from link (read-only)" : "Nueva suscripción desde enlace (solo lectura)", + "Creating subscription …" : "Creando suscripción …", + "Add public holiday calendar" : "Agregar calendario de días festivos", + "Calendar link copied to clipboard." : "Enlace del calendario copiado al portapapeles.", + "Calendar link could not be copied to clipboard." : "No se pudo copiar el enlace del calendario al portapapeles.", + "Copy subscription link" : "Copiar enlace de suscripción", + "Copying link …" : "Copiando enlace …", + "Copied link" : "Enlace copiado", + "Could not copy link" : "No se pudo copiar el enlace", + "Export" : "Exportar", + "Untitled item" : "Elemento sin título", + "Unknown calendar" : "Calendario desconocido", + "Could not load deleted calendars and objects" : "No se pudieron cargar los calendarios y objetos eliminados", + "Could not delete calendar or event" : "No se pudo eliminar el calendario o el evento", + "Could not restore calendar or event" : "No se pudo restaurar el calendario o evento", + "Do you really want to empty the trash bin?" : "¿Realmente deseas vaciar la papelera?", + "Empty trash bin" : "Eliminar papelera de reciclaje", + "Trash bin" : "Papelera", + "Loading deleted items." : "Cargando elementos eliminados.", + "You do not have any deleted items." : "No tienes elementos eliminados.", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Los elementos en la papelera se eliminan después de {numDays} día","Los elementos en la papelera se eliminan después de {numDays} días","Los elementos en la papelera se eliminan después de {numDays} días"], + "Could not update calendar order." : "No se pudo actualizar el orden del calendario.", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Internal link" : "Enlace interno", + "A private link that can be used with external clients" : "Un enlace privado que puede usarse con clientes externos", + "Copy internal link" : "Copiar enlace interno", + "An error occurred, unable to publish calendar." : "Ocurrió un error, no se pudo publicar el calendario.", + "An error occurred, unable to send email." : "Ocurrió un error, no se pudo enviar el correo electrónico.", + "Embed code copied to clipboard." : "Código de incrustación copiado al portapapeles.", + "Embed code could not be copied to clipboard." : "No se pudo copiar el código de incrustación al portapapeles.", + "Unpublishing calendar failed" : "No se pudo publicar el calendario", + "Share link" : "Compartir liga", + "Copy public link" : "Copiar enlace público", + "Send link to calendar via email" : "Enviar enlace del calendario por correo electrónico", + "Enter one address" : "Ingresa una dirección", + "Sending email …" : "Enviando correo electrónico …", + "Copy embedding code" : "Copiar código de incrustación", + "Copying code …" : "Copiando código …", + "Copied code" : "Código copiado", + "Could not copy code" : "No se pudo copiar el código", + "Delete share link" : "Eliminar enlace compartido", + "Deleting share link …" : "Eliminando enlace compartido …", + "An error occurred while unsharing the calendar." : "Ocurrió un error al dejar de compartir el calendario.", + "An error occurred, unable to change the permission of the share." : "Ocurrió un error, no se pudo cambiar el permiso de la compartición.", + "can edit" : "puede editar", + "Unshare with {displayName}" : "Dejar de compartir con {displayName}", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "No users or groups" : "Sin usuarios ni grupos", + "Failed to save calendar name and color" : "Error al guardar el nombre y el color del calendario", + "Calendar name …" : "Nombre del calendario …", + "Share calendar" : "Compartir calendario", + "Unshare from me" : "Dejar de compartir conmigo", + "Save" : "Guardar", + "Import calendars" : "Importar calendarios", + "Please select a calendar to import into …" : "Selecciona un calendario para importar en …", "Filename" : "Nombre del archivo", + "Calendar to import into" : "Calendario para importar en", "Cancel" : "Cancelar", + "_Import calendar_::_Import calendars_" : ["Importar calendario","Importar calendarios","Importar calendarios"], + "Select the default location for attachments" : "Selecciona la ubicación predeterminada para los adjuntos", + "Invalid location selected" : "Ubicación seleccionada no válida", + "Attachments folder successfully saved." : "Carpeta de adjuntos guardada correctamente.", + "Error on saving attachments folder." : "Error al guardar la carpeta de adjuntos.", + "Default attachments location" : "Ubicación predeterminada para adjuntos", + "{filename} could not be parsed" : "No se pudo analizar {filename}", + "No valid files found, aborting import" : "No se encontraron archivos válidos, se cancela la importación", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Se importó correctamente %n evento","Se importaron correctamente %n eventos","Se importaron correctamente %n eventos"], + "Import partially failed. Imported {accepted} out of {total}." : "La importación falló parcialmente. Se importaron {accepted} de {total}.", "Automatic" : "Automático", - "or" : "o", + "Automatic ({detected})" : "Automático ({detected})", + "New setting was not saved successfully." : "No se guardó correctamente la nueva configuración.", + "Navigation" : "Navegación", + "Previous period" : "Periodo anterior", + "Next period" : "Periodo siguiente", + "Views" : "Vistas", + "Day view" : "Vista diaria", + "Week view" : "Vista semanal", + "Month view" : "Vista mensual", + "Year view" : "Vista anual", "List view" : "Vista de lista", "Actions" : "Acciones", + "Create event" : "Crear evento", + "Show shortcuts" : "Mostrar accesos directos", + "Editor" : "Editor", + "Close editor" : "Cerrar editor", + "Save edited event" : "Guardar evento editado", + "Delete edited event" : "Eliminar evento editado", + "Duplicate event" : "Duplicar evento", + "Shortcut overview" : "Resumen de accesos directos", + "or" : "o", + "Calendar settings" : "Configuración del calendario", + "No reminder" : "Sin recordatorio", + "CalDAV link copied to clipboard." : "Enlace CalDAV copiado al portapapeles.", + "CalDAV link could not be copied to clipboard." : "No se pudo copiar el enlace CalDAV al portapapeles.", + "Enable birthday calendar" : "Habilitar calendario de cumpleaños", + "Show tasks in calendar" : "Mostrar tareas en el calendario", + "Enable simplified editor" : "Habilitar editor simplificado", + "Limit the number of events displayed in the monthly view" : "Limitar la cantidad de eventos mostrados en la vista mensual", + "Show weekends" : "Mostrar fines de semana", "Show week numbers" : "Mostrar número de semana", + "Time increments" : "Incrementos de tiempo", + "Default reminder" : "Recordatorio predeterminado", + "Copy primary CalDAV address" : "Copiar dirección CalDAV principal", + "Copy iOS/macOS CalDAV address" : "Copiar dirección CalDAV para iOS/macOS", + "Personal availability settings" : "Configuración de disponibilidad personal", + "Show keyboard shortcuts" : "Mostrar accesos directos de teclado", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minuto","{duration} minutos","{duration} minutos"], + "0 minutes" : "0 minutos", + "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} horas","{duration} horas"], + "_{duration} day_::_{duration} days_" : ["{duration} día","{duration} días","{duration} días"], + "_{duration} week_::_{duration} weeks_" : ["{duration} semana","{duration} semanas","{duration} semanas"], + "_{duration} month_::_{duration} months_" : ["{duration} mes","{duration} meses","{duration} meses"], + "_{duration} year_::_{duration} years_" : ["{duration} año","{duration} años","{duration} años"], + "To configure appointments, add your email address in personal settings." : "Para configurar las citas, agrega tu dirección de correo electrónico en la configuración personal.", + "Public – shown on the profile page" : "Público: se muestra en la página de perfil", + "Private – only accessible via secret link" : "Privado: solo accesible mediante enlace secreto", + "Update" : "Actualizar", + "Appointment name" : "Nombre de la cita", "Location" : "Ubicación", "Description" : "Descripción", + "Visibility" : "Visibilidad", + "Duration" : "Duración", + "Increments" : "Incrementos", + "Additional calendars to check for conflicts" : "Calendarios adicionales para verificar conflictos", + "Pick time ranges where appointments are allowed" : "Selecciona rangos de tiempo en los que se permiten citas", "to" : "para", + "Delete slot" : "Eliminar ranura", + "No times set" : "No se han establecido horarios", "Add" : "Agregar", "Monday" : "Lunes", "Tuesday" : "Martes", @@ -47,44 +223,279 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", + "Add time before and after the event" : "Agregar tiempo antes y después del evento", + "Before the event" : "Antes del evento", + "After the event" : "Después del evento", + "Planning restrictions" : "Restricciones de planificación", + "Minimum time before next available slot" : "Tiempo mínimo antes del próximo espacio disponible", + "Max slots per day" : "Máximo de espacios por día", + "Limit how far in the future appointments can be booked" : "Limitar qué tan lejos en el futuro se pueden reservar citas", + "Please confirm your reservation" : "Confirma tu reserva", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Te hemos enviado un correo electrónico con los detalles. Confirma tu cita utilizando el enlace del correo electrónico. Puedes cerrar esta página ahora.", + "Your name" : "Tu nombre", "Your email address" : "Tu dirección de correo electrónico", + "Please share anything that will help prepare for our meeting" : "Por favor, comparte cualquier información que ayude a prepararnos para nuestra reunión", + "Could not book the appointment. Please try again later or contact the organizer." : "No se pudo reservar la cita. Inténtalo de nuevo más tarde o contacta al organizador.", + "Select conversation" : "Seleccionar conversación", + "on" : "el", + "at" : "a las", + "before at" : "antes a las", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Audio notification" : "Notificación de audio", + "Other notification" : "Otra notificación", + "Relative to event" : "Relativo al evento", + "On date" : "En fecha", + "Edit time" : "Editar hora", + "Save time" : "Guardar hora", + "Remove reminder" : "Eliminar recordatorio", + "Add reminder" : "Agregar recordatorio", + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Choose a file to share as a link" : "Elige un archivo para compartir como enlace", + "Attachment {name} already exist!" : "¡El adjunto {name} ya existe!", + "No attachments" : "Sin adjuntos", + "Add from Files" : "Agregar desde Archivos", + "Upload from device" : "Subir desde el dispositivo", + "Delete file" : "Borrar archivo", + "Confirmation" : "Confirmación", + "_{count} attachment_::_{count} attachments_" : ["{count} adjunto","{count} adjuntos","{count} adjuntos"], + "Suggested" : "Sugerido", + "Available" : "Disponible", + "Invitation accepted" : "Invitación aceptada", + "Accepted {organizerName}'s invitation" : "Aceptó la invitación de {organizerName}", + "Participation marked as tentative" : "Participación marcada como tentativa", + "Invitation is delegated" : "La invitación ha sido delegada", + "Not available" : "No disponible", + "Invitation declined" : "Invitación rechazada", + "Declined {organizerName}'s invitation" : "Rechazó la invitación de {organizerName}", + "Checking availability" : "Verificando disponibilidad", + "Has not responded to {organizerName}'s invitation yet" : "No ha respondido a la invitación de {organizerName} aún", + "{organizer} (organizer)" : "{organizer} (organizador)", + "Availability of attendees, resources and rooms" : "Disponibilidad de asistentes, recursos y salas", + "Legend" : "Leyenda", + "Out of office" : "Fuera de la oficina", + "Attendees:" : "Asistentes:", + "Done" : "Hecho", + "Room name" : "Nombre de la sala", + "Free" : "Disponible", + "Busy (tentative)" : "Ocupado (tentativo)", + "Busy" : "Ocupado", "Unknown" : "Desconocido", + "The invitation has been accepted successfully." : "La invitación se aceptó correctamente.", + "Failed to accept the invitation." : "No se pudo aceptar la invitación.", + "The invitation has been declined successfully." : "La invitación se rechazó correctamente.", + "Failed to decline the invitation." : "No se pudo rechazar la invitación.", + "Your participation has been marked as tentative." : "Tu participación se ha marcado como tentativa.", + "Failed to set the participation status to tentative." : "No se pudo establecer el estado de participación como tentativa.", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "No attendees yet" : "Aún no hay asistentes", + "Successfully appended link to talk room to description." : "Enlace a la sala de Talk se agregó correctamente a la descripción.", + "Error creating Talk room" : "Error al crear la sala de Talk", + "Attendees" : "Asistentes", + "Remove group" : "Eliminar grupo", + "Remove attendee" : "Eliminar asistente", + "Chairperson" : "Presidente", + "Required participant" : "Participante requerido", + "Optional participant" : "Participante opcional", + "Non-participant" : "No participante", + "No match found" : "No se encontraron coincidencias", + "(organizer)" : "(organizador)", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Para enviar invitaciones y manejar respuestas, [linkopen]agrega tu dirección de correo electrónico en la configuración personal[linkclose].", + "Remove color" : "Eliminar color", + "Event title" : "Título del evento", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "No se puede modificar la configuración de todo el día para eventos que forman parte de un conjunto de repeticiones.", + "From" : "De", + "To" : "A", "Repeat" : "Repetir", + "_time_::_times_" : ["hora","veces","veces"], "never" : "nunca", + "on date" : "en la fecha", "after" : "después", + "End repeat" : "Finalizar repetición", + "Select to end repeat" : "Seleccionar para finalizar la repetición", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Este evento es una excepción de la recurrencia de un conjunto de repeticiones. No puedes agregar una regla de recurrencia a él.", + "first" : "primero", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Los cambios en la regla de recurrencia solo se aplicarán a esta y a todas las siguientes ocurrencias.", + "Repeat every" : "Repetir cada", + "By day of the month" : "Por día del mes", + "On the" : "El", + "_day_::_days_" : ["día","días","días"], + "_week_::_weeks_" : ["semana","semanas","semanas"], + "_month_::_months_" : ["mes","meses","meses"], + "_year_::_years_" : ["año","años","años"], + "weekday" : "día de la semana", + "weekend day" : "día de fin de semana", + "Does not repeat" : "No se repite", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "La definición de recurrencia de este evento no es completamente compatible con Nextcloud. Si editas las opciones de recurrencia, es posible que se pierdan ciertas repeticiones.", + "No rooms or resources yet" : "Aún no hay salas o recursos", + "Resources" : "Recursos", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asiento","{seatingCapacity} asientos","{seatingCapacity} asientos"], + "Add resource" : "Agregar recurso", + "Has a projector" : "Tiene proyector", + "Has a whiteboard" : "Tiene pizarra", + "Wheelchair accessible" : "Accesible en silla de ruedas", + "Remove resource" : "Eliminar recurso", + "Search for resources or rooms" : "Buscar recursos o salas", "available" : "disponible", - "More" : "Más", + "unavailable" : "no disponible", + "Projector" : "Proyector", + "Whiteboard" : "Pizarra", + "Room type" : "Tipo de sala", + "Any" : "Cualquiera", + "Minimum seating capacity" : "Capacidad mínima de asientos", + "Update this and all future" : "Actualizar esta y todas las siguientes", + "Update this occurrence" : "Actualizar esta ocurrencia", + "Public calendar does not exist" : "El calendario público no existe", + "Maybe the share was deleted or has expired?" : "¿Tal vez la compartición fue eliminada o ha expirado?", + "from {formattedDate}" : "desde {formattedDate}", + "to {formattedDate}" : "hasta {formattedDate}", + "on {formattedDate}" : "el {formattedDate}", + "from {formattedDate} at {formattedTime}" : "desde {formattedDate} a las {formattedTime}", + "to {formattedDate} at {formattedTime}" : "hasta {formattedDate} a las {formattedTime}", + "on {formattedDate} at {formattedTime}" : "el {formattedDate} a las {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} a las {formattedTime}", + "Please enter a valid date" : "Ingresa una fecha válida", + "Please enter a valid date and time" : "Ingresa una fecha y hora válidas", + "Please select a time zone:" : "Selecciona una zona horaria:", + "Pick a time" : "Seleccionar una hora", + "Pick a date" : "Selecciona una fecha", + "Type to search time zone" : "Escribe para buscar la zona horaria", "Global" : "Global", + "Holidays in {region}" : "Vacaciones en {región}", + "Public holiday calendars" : "Calendarios de días festivos públicos", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Los calendarios de días festivos públicos son proporcionados por Thunderbird. Los datos del calendario se descargarán desde {website}", + "By {authors}" : "Por {authors}", + "Subscribed" : "Suscrito", + "Subscribe" : "Suscribir", + "Select slot" : "Seleccionar intervalo", + "No slots available" : "No hay intervalos disponibles", + "The slot for your appointment has been confirmed" : "El intervalo para tu cita ha sido confirmado", + "Appointment Details:" : "Detalles de la cita:", + "Time:" : "Hora:", + "Booked for:" : "Reservado para:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Gracias. Tu reserva desde {startDate} hasta {endDate} ha sido confirmada.", + "Book another appointment:" : "Reservar otra cita:", + "See all available slots" : "Ver todos los intervalos disponibles", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "El intervalo para tu cita desde {startDate} hasta {endDate} ya no está disponible.", + "Please book a different slot:" : "Por favor, reserva un intervalo diferente:", + "Book an appointment with {name}" : "Reservar una cita con {name}", + "No public appointments found for {name}" : "No se encontraron citas públicas para {name}", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "La detección automática de la zona horaria determinó que tu zona horaria es UTC.\n Esto es probablemente el resultado de medidas de seguridad de tu navegador web.\n Por favor, establece tu zona horaria manualmente en la configuración del calendario.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "No se encontró tu zona horaria configurada ({timezoneId}). Se usará UTC.\n Por favor, cambia tu zona horaria en la configuración y reporta este problema.", + "Edit event" : "Editar evento", + "Event does not exist" : "El evento no existe", + "Duplicate" : "Duplicar", + "Delete this occurrence" : "Eliminar esta ocurrencia", + "Delete this and all future" : "Eliminar esta y todas las siguientes", + "All day" : "Todo el día", + "Managing shared access" : "Gestionar acceso compartido", + "Deny access" : "Denegar acceso", + "Invite" : "Invitar", + "_User requires access to your file_::_Users require access to your file_" : ["El usuario necesita acceso a tu archivo","Los usuarios necesitan acceso a tu archivo","Los usuarios necesitan acceso a tu archivo"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["El adjunto requiere acceso compartido","Los adjuntos requieren acceso compartido","Los adjuntos requieren acceso compartido"], + "Untitled event" : "Evento sin título", "Close" : "Cerrar", + "Subscribe to {name}" : "Suscribirse a {name}", + "Export {name}" : "Exportar {name}", "Anniversary" : "Aniversario", + "Appointment" : "Cita", + "Business" : "Negocios", + "Education" : "Educación", + "Holiday" : "Vacaciones", + "Meeting" : "Reunión", + "Miscellaneous" : "Varios", + "Non-working hours" : "Horas no laborables", + "Not in office" : "No en la oficina", + "Phone call" : "Llamada telefónica", + "Sick day" : "Día de enfermedad", + "Special occasion" : "Ocasión especial", + "Travel" : "Viaje", + "Vacation" : "Vacaciones", + "Midnight on the day the event starts" : "Medianoche en el día en que comienza el evento", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n día antes del evento a las {formattedHourMinute}","%n días antes del evento a las {formattedHourMinute}","%n días antes del evento a las {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semana antes del evento a las {formattedHourMinute}","%n semanas antes del evento a las {formattedHourMinute}","%n semanas antes del evento a las {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "el día del evento a las {formattedHourMinute}", + "at the event's start" : "al comienzo del evento", + "at the event's end" : "al final del evento", + "{time} before the event starts" : "{time} antes de que el evento comience", + "{time} before the event ends" : "{time} antes de que el evento termine", + "{time} after the event starts" : "{time} después de que el evento comienza", + "{time} after the event ends" : "{time} después de que el evento termina", + "on {time}" : "en {time}", + "on {time} ({timezoneId})" : "en {time} ({timezoneId})", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", + "Monthly" : "Mensual", + "Yearly" : "Anual", + "_Every %n day_::_Every %n days_" : ["Cada %n día","Cada %n días","Cada %n días"], + "_Every %n week_::_Every %n weeks_" : ["Cada %n semana","Cada %n semanas","Cada %n semanas"], + "_Every %n month_::_Every %n months_" : ["Cada %n mes","Cada %n meses","Cada %n meses"], + "_Every %n year_::_Every %n years_" : ["Cada %n año","Cada %n años","Cada %n años"], + "_on {weekday}_::_on {weekdays}_" : ["en {weekday}","en {weekdays}","en {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["en el día {dayOfMonthList}","en los días {dayOfMonthList}","en los días {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "en el {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "en {monthNames} el {ordinalNumber} {byDaySet}", + "until {untilDate}" : "hasta {untilDate}", + "_%n time_::_%n times_" : ["%n vez","%n veces","%n veces"], + "second" : "segundo", + "third" : "tercero", + "fourth" : "cuarto", + "fifth" : "quinto", + "second to last" : "penúltimo", + "last" : "último", + "Untitled task" : "Tarea sin título", + "Please ask your administrator to enable the Tasks App." : "Pide a tu administrador que habilite la aplicación de Tareas.", + "W" : "S", + "%n more" : "%n más", + "No events to display" : "No hay eventos para mostrar", + "_+%n more_::_+%n more_" : ["+%n más","+%n más","+%n más"], + "No events" : "No hay eventos", + "Create a new event or change the visible time-range" : "Crea un evento nuevo o cambia el rango de tiempo visible", + "It might have been deleted, or there was a typo in a link" : "Puede que se haya eliminado o haya un error de escritura en el enlace", + "It might have been deleted, or there was a typo in the link" : "Puede que se haya eliminado o haya un error de escritura en el enlace", + "Meeting room" : "Sala de reuniones", + "Lecture hall" : "Aula", + "Seminar room" : "Sala de seminarios", "Other" : "Otro", + "When shared show" : "Cuando se comparte, mostrar", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", "When shared hide this event" : "Al compartir, ocultar este evento ", + "The visibility of this event in shared calendars." : "La visibilidad de este evento en calendarios compartidos.", + "Add a location" : "Agregar una ubicación", "Status" : "Estatus", "Confirmed" : "Confirmado", + "Canceled" : "Cancelada", + "Confirmation about the overall status of the event." : "Confirmación sobre el estado general del evento.", + "Show as" : "Mostrar como", + "Take this event into account when calculating free-busy information." : "Tener en cuenta este evento al calcular la información de disponibilidad ocupado-libre.", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "Categories help you to structure and organize your events." : "Las categorías te ayudan a estructurar y organizar tus eventos.", + "Search or add categories" : "Buscar o agregar categorías", + "Add this as a new category" : "Agregar esto como una nueva categoría", + "Custom color" : "Color personalizado", + "Special color of this event. Overrides the calendar-color." : "Color especial de este evento. Anula el color del calendario.", + "Error while sharing file" : "Error al compartir el archivo", + "Error while sharing file with user" : "Error al compartir el archivo con el usuario", + "Attachment {fileName} already exists!" : "¡El adjunto {fileName} ya existe!", + "An error occurred during getting file information" : "Ocurrió un error al obtener la información del archivo", + "An error occurred, unable to delete the calendar." : "Ocurrió un error, no se pudo eliminar el calendario.", + "Imported {filename}" : "Importado {filename}", + "This is an event reminder." : "Esto es un recordatorio de evento.", + "Appointment not found" : "Cita no encontrada", + "User not found" : "No se encontró el usuario", + "Reminder" : "Recordatorio", + "+ Add reminder" : "+ Agregar recordatorio", + "Suggestions" : "Sugerencias", + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_EC.json b/l10n/es_EC.json index 75c5ef68197428f1653af25b906ac248e5638772..cd0a18e1313318cf9556c441d7d3d4a78124daf1 100644 --- a/l10n/es_EC.json +++ b/l10n/es_EC.json @@ -1,42 +1,218 @@ { "translations": { + "Provided email-address is too long" : "La dirección de correo electrónico proporcionada es demasiado larga", + "User-Session unexpectedly expired" : "La sesión de usuario ha expirado inesperadamente", + "Provided email-address is not valid" : "La dirección de correo electrónico proporcionada no es válida", "%s has published the calendar »%s«" : "%s ha publicado el calendario »%s«", + "Unexpected error sending email. Please contact your administrator." : "Error inesperado al enviar el correo electrónico. Por favor, contacta a tu administrador.", + "Successfully sent email to %1$s" : "Correo electrónico enviado correctamente a %1$s", "Hello," : "Hola,", "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Upcoming events" : "Próximos eventos", + "No more events today" : "No hay más eventos hoy", + "No upcoming events" : "No hay próximos eventos", + "More events" : "Más eventos", + "%1$s with %2$s" : "%1$s con %2$s", + "Calendar" : "Calendario", + "New booking {booking}" : "Nueva reserva {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) reservó la cita \"{config_display_name}\" el {date_time}.", + "Appointments" : "Citas", + "Schedule appointment \"%s\"" : "Programar cita \"%s\"", + "Schedule an appointment" : "Programar una cita", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Preparar para %s", + "Follow up for %s" : "Hacer seguimiento de %s", + "Your appointment \"%s\" with %s needs confirmation" : "Tu cita \"%s\" con %s necesita confirmación", + "Dear %s, please confirm your booking" : "Estimado/a %s, por favor confirma tu reserva", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "This confirmation link expires in %s hours." : "Este enlace de confirmación caduca en %s horas.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Si deseas cancelar la cita, por favor contacta al organizador respondiendo a este correo electrónico o visitando su página de perfil.", + "Your appointment \"%s\" with %s has been accepted" : "Tu cita \"%s\" con %s ha sido aceptada", + "Dear %s, your booking has been accepted." : "Estimado/a %s, tu reserva ha sido aceptada.", + "Appointment for:" : "Cita para:", + "Date:" : "Fecha:", + "Where:" : "Dónde:", + "Comment:" : "Comentario:", + "You have a new appointment booking \"%s\" from %s" : "Tienes una nueva reserva de cita \"%s\" de %s", + "Dear %s, %s (%s) booked an appointment with you." : "Estimado/a %s, %s (%s) ha reservado una cita contigo.", + "A Calendar app for Nextcloud" : "Una aplicación de calendario para Nextcloud", + "Previous day" : "Día anterior", + "Previous week" : "Semana anterior", + "Previous year" : "Año anterior", + "Previous month" : "Mes anterior", + "Next day" : "Día siguiente", + "Next week" : "Semana siguiente", + "Next year" : "Año siguiente", + "Next month" : "Mes siguiente", + "Create new event" : "Crear nuevo evento", + "Event" : "Evento", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Año", "List" : "Lista", + "Appointment link was copied to clipboard" : "El enlace de la cita se copió al portapapeles", + "Appointment link could not be copied to clipboard" : "No se pudo copiar el enlace de la cita al portapapeles", "Preview" : "Previsualizar", "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", + "Create new" : "Crear nuevo", + "Disable calendar \"{calendar}\"" : "Desactivar calendario \"{calendar}\"", + "Disable untitled calendar" : "Desactivar calendario sin título", + "Enable calendar \"{calendar}\"" : "Activar calendario \"{calendar}\"", + "Enable untitled calendar" : "Activar calendario sin título", + "An error occurred, unable to change visibility of the calendar." : "Ocurrió un error, no se pudo cambiar la visibilidad del calendario.", + "Untitled calendar" : "Calendario sin título", + "Shared with you by" : "Compartido contigo por", + "Edit and share calendar" : "Editar y compartir calendario", + "Edit calendar" : "Editar calendario", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Dejar de compartir el calendario en {countdown} segundo","Dejar de compartir el calendario en {countdown} segundos","Dejar de compartir el calendario en {countdown} segundos"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Eliminando el calendario en {countdown} segundo","Eliminando el calendario en {countdown} segundos","Eliminando el calendario en {countdown} segundos"], + "An error occurred, unable to create the calendar." : "Ocurrió un error, no se pudo crear el calendario.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Por favor, ingresa un enlace válido (que comience con http://, https://, webcal:// o webcals://)", + "Calendars" : "Calendarios", + "Add new" : "Agregar nuevo", "New calendar" : "Nuevo calendario", + "Name for new calendar" : "Nombre para el nuevo calendario", + "Creating calendar …" : "Creando calendario …", + "New calendar with task list" : "Nuevo calendario con lista de tareas", + "New subscription from link (read-only)" : "Nueva suscripción desde enlace (solo lectura)", + "Creating subscription …" : "Creando suscripción …", + "Add public holiday calendar" : "Agregar calendario de días festivos", + "Calendar link copied to clipboard." : "Enlace del calendario copiado al portapapeles.", + "Calendar link could not be copied to clipboard." : "No se pudo copiar el enlace del calendario al portapapeles.", + "Copy subscription link" : "Copiar enlace de suscripción", + "Copying link …" : "Copiando enlace …", + "Copied link" : "Enlace copiado", + "Could not copy link" : "No se pudo copiar el enlace", + "Export" : "Exportar", + "Untitled item" : "Elemento sin título", + "Unknown calendar" : "Calendario desconocido", + "Could not load deleted calendars and objects" : "No se pudieron cargar los calendarios y objetos eliminados", + "Could not delete calendar or event" : "No se pudo eliminar el calendario o el evento", + "Could not restore calendar or event" : "No se pudo restaurar el calendario o evento", + "Do you really want to empty the trash bin?" : "¿Realmente deseas vaciar la papelera?", + "Empty trash bin" : "Eliminar papelera de reciclaje", + "Trash bin" : "Papelera", + "Loading deleted items." : "Cargando elementos eliminados.", + "You do not have any deleted items." : "No tienes elementos eliminados.", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Los elementos en la papelera se eliminan después de {numDays} día","Los elementos en la papelera se eliminan después de {numDays} días","Los elementos en la papelera se eliminan después de {numDays} días"], + "Could not update calendar order." : "No se pudo actualizar el orden del calendario.", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Internal link" : "Enlace interno", + "A private link that can be used with external clients" : "Un enlace privado que puede usarse con clientes externos", + "Copy internal link" : "Copiar enlace interno", + "An error occurred, unable to publish calendar." : "Ocurrió un error, no se pudo publicar el calendario.", + "An error occurred, unable to send email." : "Ocurrió un error, no se pudo enviar el correo electrónico.", + "Embed code copied to clipboard." : "Código de incrustación copiado al portapapeles.", + "Embed code could not be copied to clipboard." : "No se pudo copiar el código de incrustación al portapapeles.", + "Unpublishing calendar failed" : "No se pudo publicar el calendario", + "Share link" : "Compartir liga", + "Copy public link" : "Copiar enlace público", + "Send link to calendar via email" : "Enviar enlace del calendario por correo electrónico", + "Enter one address" : "Ingresa una dirección", + "Sending email …" : "Enviando correo electrónico …", + "Copy embedding code" : "Copiar código de incrustación", + "Copying code …" : "Copiando código …", + "Copied code" : "Código copiado", + "Could not copy code" : "No se pudo copiar el código", + "Delete share link" : "Eliminar enlace compartido", + "Deleting share link …" : "Eliminando enlace compartido …", + "An error occurred while unsharing the calendar." : "Ocurrió un error al dejar de compartir el calendario.", + "An error occurred, unable to change the permission of the share." : "Ocurrió un error, no se pudo cambiar el permiso de la compartición.", + "can edit" : "puede editar", + "Unshare with {displayName}" : "Dejar de compartir con {displayName}", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "No users or groups" : "Sin usuarios ni grupos", + "Failed to save calendar name and color" : "Error al guardar el nombre y el color del calendario", + "Calendar name …" : "Nombre del calendario …", + "Share calendar" : "Compartir calendario", + "Unshare from me" : "Dejar de compartir conmigo", + "Save" : "Guardar", + "Import calendars" : "Importar calendarios", + "Please select a calendar to import into …" : "Selecciona un calendario para importar en …", "Filename" : "Nombre del archivo", + "Calendar to import into" : "Calendario para importar en", "Cancel" : "Cancelar", + "_Import calendar_::_Import calendars_" : ["Importar calendario","Importar calendarios","Importar calendarios"], + "Select the default location for attachments" : "Selecciona la ubicación predeterminada para los adjuntos", + "Invalid location selected" : "Ubicación seleccionada no válida", + "Attachments folder successfully saved." : "Carpeta de adjuntos guardada correctamente.", + "Error on saving attachments folder." : "Error al guardar la carpeta de adjuntos.", + "Default attachments location" : "Ubicación predeterminada para adjuntos", + "{filename} could not be parsed" : "No se pudo analizar {filename}", + "No valid files found, aborting import" : "No se encontraron archivos válidos, se cancela la importación", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Se importó correctamente %n evento","Se importaron correctamente %n eventos","Se importaron correctamente %n eventos"], + "Import partially failed. Imported {accepted} out of {total}." : "La importación falló parcialmente. Se importaron {accepted} de {total}.", "Automatic" : "Automático", - "or" : "o", + "Automatic ({detected})" : "Automático ({detected})", + "New setting was not saved successfully." : "No se guardó correctamente la nueva configuración.", + "Navigation" : "Navegación", + "Previous period" : "Periodo anterior", + "Next period" : "Periodo siguiente", + "Views" : "Vistas", + "Day view" : "Vista diaria", + "Week view" : "Vista semanal", + "Month view" : "Vista mensual", + "Year view" : "Vista anual", "List view" : "Vista de lista", "Actions" : "Acciones", + "Create event" : "Crear evento", + "Show shortcuts" : "Mostrar accesos directos", + "Editor" : "Editor", + "Close editor" : "Cerrar editor", + "Save edited event" : "Guardar evento editado", + "Delete edited event" : "Eliminar evento editado", + "Duplicate event" : "Duplicar evento", + "Shortcut overview" : "Resumen de accesos directos", + "or" : "o", + "Calendar settings" : "Configuración del calendario", + "No reminder" : "Sin recordatorio", + "CalDAV link copied to clipboard." : "Enlace CalDAV copiado al portapapeles.", + "CalDAV link could not be copied to clipboard." : "No se pudo copiar el enlace CalDAV al portapapeles.", + "Enable birthday calendar" : "Habilitar calendario de cumpleaños", + "Show tasks in calendar" : "Mostrar tareas en el calendario", + "Enable simplified editor" : "Habilitar editor simplificado", + "Limit the number of events displayed in the monthly view" : "Limitar la cantidad de eventos mostrados en la vista mensual", + "Show weekends" : "Mostrar fines de semana", "Show week numbers" : "Mostrar número de semana", + "Time increments" : "Incrementos de tiempo", + "Default reminder" : "Recordatorio predeterminado", + "Copy primary CalDAV address" : "Copiar dirección CalDAV principal", + "Copy iOS/macOS CalDAV address" : "Copiar dirección CalDAV para iOS/macOS", + "Personal availability settings" : "Configuración de disponibilidad personal", + "Show keyboard shortcuts" : "Mostrar accesos directos de teclado", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minuto","{duration} minutos","{duration} minutos"], + "0 minutes" : "0 minutos", + "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} horas","{duration} horas"], + "_{duration} day_::_{duration} days_" : ["{duration} día","{duration} días","{duration} días"], + "_{duration} week_::_{duration} weeks_" : ["{duration} semana","{duration} semanas","{duration} semanas"], + "_{duration} month_::_{duration} months_" : ["{duration} mes","{duration} meses","{duration} meses"], + "_{duration} year_::_{duration} years_" : ["{duration} año","{duration} años","{duration} años"], + "To configure appointments, add your email address in personal settings." : "Para configurar las citas, agrega tu dirección de correo electrónico en la configuración personal.", + "Public – shown on the profile page" : "Público: se muestra en la página de perfil", + "Private – only accessible via secret link" : "Privado: solo accesible mediante enlace secreto", + "Update" : "Actualizar", + "Appointment name" : "Nombre de la cita", "Location" : "Ubicación", "Description" : "Descripción", + "Visibility" : "Visibilidad", + "Duration" : "Duración", + "Increments" : "Incrementos", + "Additional calendars to check for conflicts" : "Calendarios adicionales para verificar conflictos", + "Pick time ranges where appointments are allowed" : "Selecciona rangos de tiempo en los que se permiten citas", "to" : "para", + "Delete slot" : "Eliminar ranura", + "No times set" : "No se han establecido horarios", "Add" : "Agregar", "Monday" : "Lunes", "Tuesday" : "Martes", @@ -45,44 +221,279 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", + "Add time before and after the event" : "Agregar tiempo antes y después del evento", + "Before the event" : "Antes del evento", + "After the event" : "Después del evento", + "Planning restrictions" : "Restricciones de planificación", + "Minimum time before next available slot" : "Tiempo mínimo antes del próximo espacio disponible", + "Max slots per day" : "Máximo de espacios por día", + "Limit how far in the future appointments can be booked" : "Limitar qué tan lejos en el futuro se pueden reservar citas", + "Please confirm your reservation" : "Confirma tu reserva", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Te hemos enviado un correo electrónico con los detalles. Confirma tu cita utilizando el enlace del correo electrónico. Puedes cerrar esta página ahora.", + "Your name" : "Tu nombre", "Your email address" : "Tu dirección de correo electrónico", + "Please share anything that will help prepare for our meeting" : "Por favor, comparte cualquier información que ayude a prepararnos para nuestra reunión", + "Could not book the appointment. Please try again later or contact the organizer." : "No se pudo reservar la cita. Inténtalo de nuevo más tarde o contacta al organizador.", + "Select conversation" : "Seleccionar conversación", + "on" : "el", + "at" : "a las", + "before at" : "antes a las", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Audio notification" : "Notificación de audio", + "Other notification" : "Otra notificación", + "Relative to event" : "Relativo al evento", + "On date" : "En fecha", + "Edit time" : "Editar hora", + "Save time" : "Guardar hora", + "Remove reminder" : "Eliminar recordatorio", + "Add reminder" : "Agregar recordatorio", + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Choose a file to share as a link" : "Elige un archivo para compartir como enlace", + "Attachment {name} already exist!" : "¡El adjunto {name} ya existe!", + "No attachments" : "Sin adjuntos", + "Add from Files" : "Agregar desde Archivos", + "Upload from device" : "Subir desde el dispositivo", + "Delete file" : "Borrar archivo", + "Confirmation" : "Confirmación", + "_{count} attachment_::_{count} attachments_" : ["{count} adjunto","{count} adjuntos","{count} adjuntos"], + "Suggested" : "Sugerido", + "Available" : "Disponible", + "Invitation accepted" : "Invitación aceptada", + "Accepted {organizerName}'s invitation" : "Aceptó la invitación de {organizerName}", + "Participation marked as tentative" : "Participación marcada como tentativa", + "Invitation is delegated" : "La invitación ha sido delegada", + "Not available" : "No disponible", + "Invitation declined" : "Invitación rechazada", + "Declined {organizerName}'s invitation" : "Rechazó la invitación de {organizerName}", + "Checking availability" : "Verificando disponibilidad", + "Has not responded to {organizerName}'s invitation yet" : "No ha respondido a la invitación de {organizerName} aún", + "{organizer} (organizer)" : "{organizer} (organizador)", + "Availability of attendees, resources and rooms" : "Disponibilidad de asistentes, recursos y salas", + "Legend" : "Leyenda", + "Out of office" : "Fuera de la oficina", + "Attendees:" : "Asistentes:", + "Done" : "Hecho", + "Room name" : "Nombre de la sala", + "Free" : "Disponible", + "Busy (tentative)" : "Ocupado (tentativo)", + "Busy" : "Ocupado", "Unknown" : "Desconocido", + "The invitation has been accepted successfully." : "La invitación se aceptó correctamente.", + "Failed to accept the invitation." : "No se pudo aceptar la invitación.", + "The invitation has been declined successfully." : "La invitación se rechazó correctamente.", + "Failed to decline the invitation." : "No se pudo rechazar la invitación.", + "Your participation has been marked as tentative." : "Tu participación se ha marcado como tentativa.", + "Failed to set the participation status to tentative." : "No se pudo establecer el estado de participación como tentativa.", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "No attendees yet" : "Aún no hay asistentes", + "Successfully appended link to talk room to description." : "Enlace a la sala de Talk se agregó correctamente a la descripción.", + "Error creating Talk room" : "Error al crear la sala de Talk", + "Attendees" : "Asistentes", + "Remove group" : "Eliminar grupo", + "Remove attendee" : "Eliminar asistente", + "Chairperson" : "Presidente", + "Required participant" : "Participante requerido", + "Optional participant" : "Participante opcional", + "Non-participant" : "No participante", + "No match found" : "No se encontraron coincidencias", + "(organizer)" : "(organizador)", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Para enviar invitaciones y manejar respuestas, [linkopen]agrega tu dirección de correo electrónico en la configuración personal[linkclose].", + "Remove color" : "Eliminar color", + "Event title" : "Título del evento", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "No se puede modificar la configuración de todo el día para eventos que forman parte de un conjunto de repeticiones.", + "From" : "De", + "To" : "A", "Repeat" : "Repetir", + "_time_::_times_" : ["hora","veces","veces"], "never" : "nunca", + "on date" : "en la fecha", "after" : "después", + "End repeat" : "Finalizar repetición", + "Select to end repeat" : "Seleccionar para finalizar la repetición", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Este evento es una excepción de la recurrencia de un conjunto de repeticiones. No puedes agregar una regla de recurrencia a él.", + "first" : "primero", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Los cambios en la regla de recurrencia solo se aplicarán a esta y a todas las siguientes ocurrencias.", + "Repeat every" : "Repetir cada", + "By day of the month" : "Por día del mes", + "On the" : "El", + "_day_::_days_" : ["día","días","días"], + "_week_::_weeks_" : ["semana","semanas","semanas"], + "_month_::_months_" : ["mes","meses","meses"], + "_year_::_years_" : ["año","años","años"], + "weekday" : "día de la semana", + "weekend day" : "día de fin de semana", + "Does not repeat" : "No se repite", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "La definición de recurrencia de este evento no es completamente compatible con Nextcloud. Si editas las opciones de recurrencia, es posible que se pierdan ciertas repeticiones.", + "No rooms or resources yet" : "Aún no hay salas o recursos", + "Resources" : "Recursos", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asiento","{seatingCapacity} asientos","{seatingCapacity} asientos"], + "Add resource" : "Agregar recurso", + "Has a projector" : "Tiene proyector", + "Has a whiteboard" : "Tiene pizarra", + "Wheelchair accessible" : "Accesible en silla de ruedas", + "Remove resource" : "Eliminar recurso", + "Search for resources or rooms" : "Buscar recursos o salas", "available" : "disponible", - "More" : "Más", + "unavailable" : "no disponible", + "Projector" : "Proyector", + "Whiteboard" : "Pizarra", + "Room type" : "Tipo de sala", + "Any" : "Cualquiera", + "Minimum seating capacity" : "Capacidad mínima de asientos", + "Update this and all future" : "Actualizar esta y todas las siguientes", + "Update this occurrence" : "Actualizar esta ocurrencia", + "Public calendar does not exist" : "El calendario público no existe", + "Maybe the share was deleted or has expired?" : "¿Tal vez la compartición fue eliminada o ha expirado?", + "from {formattedDate}" : "desde {formattedDate}", + "to {formattedDate}" : "hasta {formattedDate}", + "on {formattedDate}" : "el {formattedDate}", + "from {formattedDate} at {formattedTime}" : "desde {formattedDate} a las {formattedTime}", + "to {formattedDate} at {formattedTime}" : "hasta {formattedDate} a las {formattedTime}", + "on {formattedDate} at {formattedTime}" : "el {formattedDate} a las {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} a las {formattedTime}", + "Please enter a valid date" : "Ingresa una fecha válida", + "Please enter a valid date and time" : "Ingresa una fecha y hora válidas", + "Please select a time zone:" : "Selecciona una zona horaria:", + "Pick a time" : "Seleccionar una hora", + "Pick a date" : "Selecciona una fecha", + "Type to search time zone" : "Escribe para buscar la zona horaria", "Global" : "Global", + "Holidays in {region}" : "Vacaciones en {región}", + "Public holiday calendars" : "Calendarios de días festivos públicos", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Los calendarios de días festivos públicos son proporcionados por Thunderbird. Los datos del calendario se descargarán desde {website}", + "By {authors}" : "Por {authors}", + "Subscribed" : "Suscrito", + "Subscribe" : "Suscribir", + "Select slot" : "Seleccionar intervalo", + "No slots available" : "No hay intervalos disponibles", + "The slot for your appointment has been confirmed" : "El intervalo para tu cita ha sido confirmado", + "Appointment Details:" : "Detalles de la cita:", + "Time:" : "Hora:", + "Booked for:" : "Reservado para:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Gracias. Tu reserva desde {startDate} hasta {endDate} ha sido confirmada.", + "Book another appointment:" : "Reservar otra cita:", + "See all available slots" : "Ver todos los intervalos disponibles", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "El intervalo para tu cita desde {startDate} hasta {endDate} ya no está disponible.", + "Please book a different slot:" : "Por favor, reserva un intervalo diferente:", + "Book an appointment with {name}" : "Reservar una cita con {name}", + "No public appointments found for {name}" : "No se encontraron citas públicas para {name}", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "La detección automática de la zona horaria determinó que tu zona horaria es UTC.\n Esto es probablemente el resultado de medidas de seguridad de tu navegador web.\n Por favor, establece tu zona horaria manualmente en la configuración del calendario.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "No se encontró tu zona horaria configurada ({timezoneId}). Se usará UTC.\n Por favor, cambia tu zona horaria en la configuración y reporta este problema.", + "Edit event" : "Editar evento", + "Event does not exist" : "El evento no existe", + "Duplicate" : "Duplicar", + "Delete this occurrence" : "Eliminar esta ocurrencia", + "Delete this and all future" : "Eliminar esta y todas las siguientes", + "All day" : "Todo el día", + "Managing shared access" : "Gestionar acceso compartido", + "Deny access" : "Denegar acceso", + "Invite" : "Invitar", + "_User requires access to your file_::_Users require access to your file_" : ["El usuario necesita acceso a tu archivo","Los usuarios necesitan acceso a tu archivo","Los usuarios necesitan acceso a tu archivo"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["El adjunto requiere acceso compartido","Los adjuntos requieren acceso compartido","Los adjuntos requieren acceso compartido"], + "Untitled event" : "Evento sin título", "Close" : "Cerrar", + "Subscribe to {name}" : "Suscribirse a {name}", + "Export {name}" : "Exportar {name}", "Anniversary" : "Aniversario", + "Appointment" : "Cita", + "Business" : "Negocios", + "Education" : "Educación", + "Holiday" : "Vacaciones", + "Meeting" : "Reunión", + "Miscellaneous" : "Varios", + "Non-working hours" : "Horas no laborables", + "Not in office" : "No en la oficina", + "Phone call" : "Llamada telefónica", + "Sick day" : "Día de enfermedad", + "Special occasion" : "Ocasión especial", + "Travel" : "Viaje", + "Vacation" : "Vacaciones", + "Midnight on the day the event starts" : "Medianoche en el día en que comienza el evento", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n día antes del evento a las {formattedHourMinute}","%n días antes del evento a las {formattedHourMinute}","%n días antes del evento a las {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semana antes del evento a las {formattedHourMinute}","%n semanas antes del evento a las {formattedHourMinute}","%n semanas antes del evento a las {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "el día del evento a las {formattedHourMinute}", + "at the event's start" : "al comienzo del evento", + "at the event's end" : "al final del evento", + "{time} before the event starts" : "{time} antes de que el evento comience", + "{time} before the event ends" : "{time} antes de que el evento termine", + "{time} after the event starts" : "{time} después de que el evento comienza", + "{time} after the event ends" : "{time} después de que el evento termina", + "on {time}" : "en {time}", + "on {time} ({timezoneId})" : "en {time} ({timezoneId})", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", + "Monthly" : "Mensual", + "Yearly" : "Anual", + "_Every %n day_::_Every %n days_" : ["Cada %n día","Cada %n días","Cada %n días"], + "_Every %n week_::_Every %n weeks_" : ["Cada %n semana","Cada %n semanas","Cada %n semanas"], + "_Every %n month_::_Every %n months_" : ["Cada %n mes","Cada %n meses","Cada %n meses"], + "_Every %n year_::_Every %n years_" : ["Cada %n año","Cada %n años","Cada %n años"], + "_on {weekday}_::_on {weekdays}_" : ["en {weekday}","en {weekdays}","en {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["en el día {dayOfMonthList}","en los días {dayOfMonthList}","en los días {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "en el {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "en {monthNames} el {ordinalNumber} {byDaySet}", + "until {untilDate}" : "hasta {untilDate}", + "_%n time_::_%n times_" : ["%n vez","%n veces","%n veces"], + "second" : "segundo", + "third" : "tercero", + "fourth" : "cuarto", + "fifth" : "quinto", + "second to last" : "penúltimo", + "last" : "último", + "Untitled task" : "Tarea sin título", + "Please ask your administrator to enable the Tasks App." : "Pide a tu administrador que habilite la aplicación de Tareas.", + "W" : "S", + "%n more" : "%n más", + "No events to display" : "No hay eventos para mostrar", + "_+%n more_::_+%n more_" : ["+%n más","+%n más","+%n más"], + "No events" : "No hay eventos", + "Create a new event or change the visible time-range" : "Crea un evento nuevo o cambia el rango de tiempo visible", + "It might have been deleted, or there was a typo in a link" : "Puede que se haya eliminado o haya un error de escritura en el enlace", + "It might have been deleted, or there was a typo in the link" : "Puede que se haya eliminado o haya un error de escritura en el enlace", + "Meeting room" : "Sala de reuniones", + "Lecture hall" : "Aula", + "Seminar room" : "Sala de seminarios", "Other" : "Otro", + "When shared show" : "Cuando se comparte, mostrar", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", "When shared hide this event" : "Al compartir, ocultar este evento ", + "The visibility of this event in shared calendars." : "La visibilidad de este evento en calendarios compartidos.", + "Add a location" : "Agregar una ubicación", "Status" : "Estatus", "Confirmed" : "Confirmado", + "Canceled" : "Cancelada", + "Confirmation about the overall status of the event." : "Confirmación sobre el estado general del evento.", + "Show as" : "Mostrar como", + "Take this event into account when calculating free-busy information." : "Tener en cuenta este evento al calcular la información de disponibilidad ocupado-libre.", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "Categories help you to structure and organize your events." : "Las categorías te ayudan a estructurar y organizar tus eventos.", + "Search or add categories" : "Buscar o agregar categorías", + "Add this as a new category" : "Agregar esto como una nueva categoría", + "Custom color" : "Color personalizado", + "Special color of this event. Overrides the calendar-color." : "Color especial de este evento. Anula el color del calendario.", + "Error while sharing file" : "Error al compartir el archivo", + "Error while sharing file with user" : "Error al compartir el archivo con el usuario", + "Attachment {fileName} already exists!" : "¡El adjunto {fileName} ya existe!", + "An error occurred during getting file information" : "Ocurrió un error al obtener la información del archivo", + "An error occurred, unable to delete the calendar." : "Ocurrió un error, no se pudo eliminar el calendario.", + "Imported {filename}" : "Importado {filename}", + "This is an event reminder." : "Esto es un recordatorio de evento.", + "Appointment not found" : "Cita no encontrada", + "User not found" : "No se encontró el usuario", + "Reminder" : "Recordatorio", + "+ Add reminder" : "+ Agregar recordatorio", + "Suggestions" : "Sugerencias", + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_GT.js b/l10n/es_GT.js index 847bf079629dee8fe1efd6a355657ad2e51bb520..3d953441f3ed8e3297d5f97dd8d8fa48fef14cc7 100644 --- a/l10n/es_GT.js +++ b/l10n/es_GT.js @@ -6,11 +6,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -20,23 +19,27 @@ OC.L10N.register( "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", "Show keyboard shortcuts" : "Mostrar atajos de teclado", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -48,34 +51,37 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Choose a file to share as a link" : "Selecciona un archivo para compartir como enlace", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", + "From" : "De", + "To" : "Para", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -83,9 +89,7 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "User not found" : "No se encontró el usuario", + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_GT.json b/l10n/es_GT.json index 841cfe10bc564dce707c80e55e42362859f5391d..c9864e61bdb3ce2e31a42ee3c77e9fc8aa0de31d 100644 --- a/l10n/es_GT.json +++ b/l10n/es_GT.json @@ -4,11 +4,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -18,23 +17,27 @@ "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", "Show keyboard shortcuts" : "Mostrar atajos de teclado", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -46,34 +49,37 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Choose a file to share as a link" : "Selecciona un archivo para compartir como enlace", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", + "From" : "De", + "To" : "Para", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -81,9 +87,7 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "User not found" : "No se encontró el usuario", + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_HN.js b/l10n/es_HN.js index 8cc2d0f458c47e9608c700e9a9936772a25e895f..c38effb044b60e6fb11fb8a63af9a1a9030b5cd9 100644 --- a/l10n/es_HN.js +++ b/l10n/es_HN.js @@ -6,11 +6,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -20,22 +19,26 @@ OC.L10N.register( "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -47,34 +50,34 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -82,8 +85,6 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_HN.json b/l10n/es_HN.json index 6532f6b266cecd2c64aba87b6e8f445a51cd40f5..610bf0493380ad6b6c77f3c62decb47b4f8eed9d 100644 --- a/l10n/es_HN.json +++ b/l10n/es_HN.json @@ -4,11 +4,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -18,22 +17,26 @@ "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -45,34 +48,34 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -80,8 +83,6 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_MX.js b/l10n/es_MX.js index 1cbcb15dc8ea36e7aa47726b5bd230c6c77fe35b..6e5b703a0dea62d32b6337074d27c3a8113b3be6 100644 --- a/l10n/es_MX.js +++ b/l10n/es_MX.js @@ -1,48 +1,238 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "La dirección de correo electrónico proporcionada es demasiado larga", + "User-Session unexpectedly expired" : "La sesión de usuario expiró inesperadamente", + "Provided email-address is not valid" : "La dirección de correo electrónico proporcionada es inválida", "%s has published the calendar »%s«" : "%s ha publicado el calendario »%s«", + "Unexpected error sending email. Please contact your administrator." : "Error inesperado al enviar el correo electrónico. Por favor, contacte a su administrador.", + "Successfully sent email to %1$s" : "Correo electrónico enviado exitosamente a %1$s", "Hello," : "Hola,", "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Upcoming events" : "Próximos eventos", + "No more events today" : "No hay más eventos hoy", + "No upcoming events" : "No hay eventos próximos", + "More events" : "Más eventos", + "%1$s with %2$s" : "%1$s con %2$s", + "Calendar" : "Calendario", + "New booking {booking}" : "Nueva reservación {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) reservó la cita \"{config_display_name}\" el {date_time}.", "Appointments" : "Citas", + "Schedule appointment \"%s\"" : "Programar cita \"%s\"", + "Schedule an appointment" : "Programar una cita", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Preparación para %s", + "Follow up for %s" : "Seguimiento para %s", + "Your appointment \"%s\" with %s needs confirmation" : "Su cita \"%s\" con %s necesita confirmación", + "Dear %s, please confirm your booking" : "Estimado(a) %s, por favor, confirme su reservación", "Confirm" : "Confirmar", - "Where:" : "Dónde:", + "Appointment with:" : "Cita con:", "Description:" : "Descripción:", - "Calendar" : "Calendario", + "This confirmation link expires in %s hours." : "Este enlace de confirmación caduca en %s horas.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Si desea cancelar la cita después de todo, por favor, contacte al organizador respondiendo a este correo o visite su página del perfil.", + "Your appointment \"%s\" with %s has been accepted" : "Su cita \"%s\" con %s ha sido aceptada", + "Dear %s, your booking has been accepted." : "Estimado(a) %s, su reservación ha sido aceptada.", + "Appointment for:" : "Cita para:", + "Date:" : "Fecha:", + "You will receive a link with the confirmation email" : "Recibirá un enlace con el correo electrónico con de confirmación", + "Where:" : "Dónde:", + "Comment:" : "Comentario:", + "You have a new appointment booking \"%s\" from %s" : "Tiene una nueva reservación \"%s\" de %s", + "Dear %s, %s (%s) booked an appointment with you." : "Estimado(a) %s, %s (%s) ha reservado una cita con Ud.", "A Calendar app for Nextcloud" : "Una aplicación de Calendario para Nextcloud", - "New event" : "Nuevo evento", + "Previous day" : "Día anterior", + "Previous week" : "Semana anterior", + "Previous year" : "Año anterior", + "Previous month" : "Mes anterior", + "Next day" : "Próximo día", + "Next week" : "Próxima semana", + "Next year" : "Próximo año", + "Next month" : "Próximo mes", + "Create new event" : "Crear nuevo evento", + "Event" : "Evento", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Año", "List" : "Lista", + "Appointment link was copied to clipboard" : "El enlace de la cita se copió al portapapeles", + "Appointment link could not be copied to clipboard" : "No se pudo copiar el enlace de la cita al portapapeles", "Preview" : "Previsualizar", "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Copy public link" : "Copiar enlace público", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", + "Appointment schedules" : "Cronograma de citas", + "Create new" : "Crear nuevo", + "Disable calendar \"{calendar}\"" : "Deshabilitar calendario \"{calendar}\"", + "Disable untitled calendar" : "Deshabilitar calendario sin título", + "Enable calendar \"{calendar}\"" : "Habilitar calendario \"{calendar}\"", + "Enable untitled calendar" : "Habilitar calendario sin título", + "An error occurred, unable to change visibility of the calendar." : "Ocurrió un error, no se pudo cambiar la visibilidad del calendario.", + "Untitled calendar" : "Calendario sin título", + "Shared with you by" : "Compartido con Ud. por", + "Edit and share calendar" : "Editar y compartir calendario", + "Edit calendar" : "Editar calendario", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Dejando de compartir el calendario en {countdown} segundo","Dejando de compartir el calendario en {countdown} segundos","Dejando de compartir el calendario en {countdown} segundos"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Eliminando el calendario en {countdown} segundo","Eliminando el calendario en {countdown} segundos","Eliminando el calendario en {countdown} segundos"], + "An error occurred, unable to create the calendar." : "Ocurrió un error, no se pudo crear el calendario.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Por favor, ingrese un enlace válido (comenzando con http://, https://, webcal:// o webcals://)", + "Calendars" : "Calendarios", + "Add new" : "Añadir nuevo", "New calendar" : "Nuevo calendario", + "Name for new calendar" : "Nombre del nuevo calendario", + "Creating calendar …" : "Creando calendario …", + "New calendar with task list" : "Nuevo calendario con lista de tareas", + "New subscription from link (read-only)" : "Nueva suscripción desde enlace (sólo lectura)", + "Creating subscription …" : "Creando suscripción …", + "Add public holiday calendar" : "Añadir calendario público de días feriados", + "Add custom public calendar" : "Añadir calendario público personalizado", + "Calendar link copied to clipboard." : "Enlace del calendario copiado al portapapeles.", + "Calendar link could not be copied to clipboard." : "No se pudo copiar el enlace del calendario al portapapeles.", + "Copy subscription link" : "Copiar enlace de suscripción", + "Copying link …" : "Copiando enlace …", + "Copied link" : "Enlace copiado", + "Could not copy link" : "No se pudo copiar el enlace", + "Export" : "Exportar", + "Untitled item" : "Elemento sin título", + "Unknown calendar" : "Calendario desconocido", + "Could not load deleted calendars and objects" : "No se pudieron cargar los calendarios y objetos eliminados", + "Could not delete calendar or event" : "No se pudo eliminar el calendario o el evento", + "Could not restore calendar or event" : "No se pudo restaurar el calendario o evento", + "Do you really want to empty the trash bin?" : "¿Realmente desea vaciar la papelera?", + "Empty trash bin" : "Vaciar la papelera de reciclaje", + "Trash bin" : "Papelera", + "Loading deleted items." : "Cargando elementos eliminados.", + "You do not have any deleted items." : "No tiene elementos eliminados.", "Name" : "Nombre", "Deleted" : "Eliminado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", - "Empty trash bin" : "Vaciar la papelera de reciclaje", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Los elementos en la papelera se eliminan después de {numDays} día","Los elementos en la papelera se eliminan después de {numDays} días","Los elementos en la papelera se eliminan después de {numDays} días"], + "Could not update calendar order." : "No se pudo actualizar el orden del calendario.", + "Shared calendars" : "Compartir calendarios", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Internal link" : "Enlace interno", + "A private link that can be used with external clients" : "Un enlace privado que se puede usar con clientes externos", + "Copy internal link" : "Copiar enlace interno", + "An error occurred, unable to publish calendar." : "Ocurrió un error, no se pudo publicar el calendario.", + "An error occurred, unable to send email." : "Ocurrió un error, no se pudo enviar el correo electrónico.", + "Embed code copied to clipboard." : "Código embebido copiado al portapapeles.", + "Embed code could not be copied to clipboard." : "No se pudo copiar el código embebido al portapapeles.", + "Unpublishing calendar failed" : "No se pudo despublicar el calendario", + "Share link" : "Compartir liga", + "Copy public link" : "Copiar enlace público", + "Send link to calendar via email" : "Enviar enlace del calendario por correo electrónico", + "Enter one address" : "Escriba una dirección", + "Sending email …" : "Enviando correo electrónico …", + "Copy embedding code" : "Copiar código embebido", + "Copying code …" : "Copiando código …", + "Copied code" : "Código copiado", + "Could not copy code" : "No se pudo copiar el código", + "Delete share link" : "Eliminar enlace compartido", + "Deleting share link …" : "Eliminando enlace compartido …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Equipo)", + "An error occurred while unsharing the calendar." : "Ocurrió un error al dejar de compartir el calendario.", + "An error occurred, unable to change the permission of the share." : "Ocurrió un error, no se pudieron cambiar los permisos del recurso compartido.", + "can edit" : "puede editar", + "Unshare with {displayName}" : "Dejar de compartir con {displayName}", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "No users or groups" : "Sin usuarios ni grupos", + "Failed to save calendar name and color" : "No se pudo guardar el nombre ni el color del calendario", + "Calendar name …" : "Nombre del calendario …", + "Never show me as busy (set this calendar to transparent)" : "Nunca mostrarme como ocupado (establecer este calendario como transparente)", + "Share calendar" : "Compartir calendario", + "Unshare from me" : "Dejar de compartir conmigo", + "Save" : "Guardar", + "Import calendars" : "Importar calendarios", + "Please select a calendar to import into …" : "Por favor, seleccione un calendario al que importar …", "Filename" : "Nombre del archivo", + "Calendar to import into" : "Calendario en el cual importar", "Cancel" : "Cancelar", + "_Import calendar_::_Import calendars_" : ["Importar calendario","Importar calendarios","Importar calendarios"], + "Select the default location for attachments" : "Seleccionar la ubicación predeterminada para los adjuntos", + "Pick" : "Elegir", + "Invalid location selected" : "Ubicación seleccionada inválida", + "Attachments folder successfully saved." : "La carpeta de adjuntos se guardó exitosamente.", + "Error on saving attachments folder." : "Ocurrió un error al guardar la carpeta de adjuntos.", + "Default attachments location" : "Ubicación predeterminada para adjuntos", + "{filename} could not be parsed" : "No se pudo analizar {filename}", + "No valid files found, aborting import" : "No se encontraron archivos válidos, cancelando la importación", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Se importó exitosamente %n evento","Se importaron exitosamente %n eventos","Se importaron exitosamente %n eventos"], + "Import partially failed. Imported {accepted} out of {total}." : "La importación falló parcialmente. Se importaron {accepted} de {total}.", "Automatic" : "Automático", - "or" : "o", + "Automatic ({detected})" : "Automático ({detected})", + "New setting was not saved successfully." : "No se guardó correctamente la nueva configuración.", + "Navigation" : "Navegación", + "Previous period" : "Periodo anterior", + "Next period" : "Periodo siguiente", + "Views" : "Vistas", + "Day view" : "Vista diaria", + "Week view" : "Vista semanal", + "Month view" : "Vista mensual", + "Year view" : "Vista anual", "List view" : "Vista de lista", "Actions" : "Acciones", + "Create event" : "Crear evento", + "Show shortcuts" : "Mostrar atajos", + "Editor" : "Editor", + "Close editor" : "Cerrar editor", + "Save edited event" : "Guardar evento editado", + "Delete edited event" : "Eliminar evento editado", + "Duplicate event" : "Duplicar evento", + "Shortcut overview" : "Vista general de atajos", + "or" : "o", + "Calendar settings" : "Configuración del calendario", + "At event start" : "Al comienzo del evento", + "No reminder" : "Sin recordatorio", + "Failed to save default calendar" : "No se pudo guardar el calendario predeterminado", + "CalDAV link copied to clipboard." : "Enlace CalDAV copiado al portapapeles.", + "CalDAV link could not be copied to clipboard." : "No se pudo copiar el enlace CalDAV al portapapeles.", + "Enable birthday calendar" : "Habilitar el calendario de cumpleaños", + "Show tasks in calendar" : "Mostrar tareas en el calendario", + "Enable simplified editor" : "Habilitar el editor simplificado", + "Limit the number of events displayed in the monthly view" : "Limitar el número de eventos mostrados en la vista mensual", + "Show weekends" : "Mostrar fines de semana", "Show week numbers" : "Mostrar número de semana", + "Time increments" : "Incrementos de tiempo", + "Default calendar for incoming invitations" : "Calendario predeterminado para aceptar invitaciones", + "Default reminder" : "Recordatorio predeterminado", + "Copy primary CalDAV address" : "Copiar la dirección CalDAV principal", + "Copy iOS/macOS CalDAV address" : "Copiar la dirección iOS/macOS CalDAV", + "Personal availability settings" : "Configuración de disponibilidad personal", + "Show keyboard shortcuts" : "Mostrar atajos de teclado", + "Appointment schedule successfully created" : "El cronograma de citas fue creado exitosamente", + "Appointment schedule successfully updated" : "El cronograma de citas fue actualizado exitosamente", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minuto","{duration} minutos","{duration} minutos"], + "0 minutes" : "0 minutos", + "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} horas","{duration} horas"], + "_{duration} day_::_{duration} days_" : ["{duration} día","{duration} días","{duration} días"], + "_{duration} week_::_{duration} weeks_" : ["{duration} semana","{duration} semanas","{duration} semanas"], + "_{duration} month_::_{duration} months_" : ["{duration} mes","{duration} meses","{duration} meses"], + "_{duration} year_::_{duration} years_" : ["{duration} año","{duration} años","{duration} años"], + "To configure appointments, add your email address in personal settings." : "Para configurar las citas, agregue su dirección de correo electrónico en la configuración personal.", + "Public – shown on the profile page" : "Público - se muestra en la página de perfil", + "Private – only accessible via secret link" : "Privado - accesible únicamente mediante enlace secreto", + "Appointment schedule saved" : "Cronograma de citas guardado", + "Create appointment schedule" : "Crear cronograma de citas", + "Edit appointment schedule" : "Editar cronograma de citas", + "Update" : "Actualizar", + "Appointment name" : "Nombre de la cita", "Location" : "Ubicación", + "Create a Talk room" : "Crear una sala de Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Se generará un enlace único por cada cita agendada y se enviará a través del correo electrónico de confirmación", "Description" : "Descripción", + "Visibility" : "Visibilidad", + "Duration" : "Duración", + "Increments" : "Incrementos", + "Additional calendars to check for conflicts" : "Calendarios adicionales para comprobar por conflictos", + "Pick time ranges where appointments are allowed" : "Elegir rangos de tiempo para permitir citas", "to" : "para", + "Delete slot" : "Eliminar ranura", + "No times set" : "No se han establecido horarios", "Add" : "Agregar", "Monday" : "Lunes", "Tuesday" : "Martes", @@ -51,48 +241,319 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", + "Weekdays" : "Días laborales", + "Add time before and after the event" : "Añadir tiempo antes y después del evento", + "Before the event" : "Antes del evento", + "After the event" : "Después del evento", + "Planning restrictions" : "Restricciones de planificación", + "Minimum time before next available slot" : "Tiempo mínimo antes del próximo espacio disponible", + "Max slots per day" : "Cantidad de espacios máximos al día", + "Limit how far in the future appointments can be booked" : "Limitar qué tan lejos en el futuro se pueden reservar citas", + "It seems a rate limit has been reached. Please try again later." : "Límite de solicitudes alcanzado. Por favor, intente de nuevo más tarde.", + "Please confirm your reservation" : "Por favor, confirme su reservación", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Le hemos enviado un correo electrónico con los detalles. Por favor, confirme su cita usando el enlace del correo. Puede cerrar esta página ahora.", + "Your name" : "Su nombre", "Your email address" : "Tu dirección de correo electrónico", + "Please share anything that will help prepare for our meeting" : "Por favor, comparta cualquier cosa que ayude a prepararnos para nuestra reunión.", + "Could not book the appointment. Please try again later or contact the organizer." : "No se pudo reservar la cita. Por favor, intente de nuevo más tarde o contacte al organizador.", + "Back" : "Atrás", + "Book appointment" : "Reservar cita", + "on" : "el", + "at" : "a las", + "before at" : "antes de las", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Audio notification" : "Notificación de audio", + "Other notification" : "Otra notificación", + "Relative to event" : "Relativo al evento", + "On date" : "En la fecha", + "Edit time" : "Editar hora", + "Save time" : "Guardar hora", + "Remove reminder" : "Eliminar recordatorio", + "Add reminder" : "Añadir recordatorio", + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Choose a file to share as a link" : "Elegir un archivo para compartir como enlace", + "Attachment {name} already exist!" : "¡El adjunto {name} ya existe!", + "Could not upload attachment(s)" : "No se pudo cargar el(los) adjunto(s)", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Estás a punto de navegar a {host}. ¿Estás seguro? Enlace: {link}", + "Proceed" : "Proceder", + "No attachments" : "Sin adjuntos", + "Add from Files" : "Agregar desde Archivos", + "Upload from device" : "Cargar desde el dispositivo", + "Delete file" : "Borrar archivo", + "Confirmation" : "Confirmación", + "_{count} attachment_::_{count} attachments_" : ["{count} adjunto","{count} adjuntos","{count} adjuntos"], + "Suggested" : "Sugerido", "Available" : "Disponible", + "Invitation accepted" : "Invitación aceptada", + "Accepted {organizerName}'s invitation" : "Se aceptó la invitación de {organizerName}", + "Participation marked as tentative" : "Participación marcada como tentativa", + "Invitation is delegated" : "Se delegó la invitación", + "Not available" : "No disponible", + "Invitation declined" : "Invitación rechazada", + "Declined {organizerName}'s invitation" : "Se rechazó la invitación de {organizerName}", + "Awaiting response" : "Esperando respuesta", + "Checking availability" : "Comprobando disponibilidad", + "Has not responded to {organizerName}'s invitation yet" : "No ha respondido a la invitación de {organizerName} aún", + "chairperson" : "presidente", + "required participant" : "participante requerido", + "non-participant" : "no participante", + "optional participant" : "participante opcional", + "{organizer} (organizer)" : "{organizer} (organizador)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Disponibilidad de asistentes, recursos y salas", + "Suggestion accepted" : "Sugerencia aceptada", + "Legend" : "Leyenda", + "Out of office" : "Fuera de la oficina", + "Attendees:" : "Asistentes:", + "Done" : "Terminado", + "Search room" : "Buscar sala", + "Room name" : "Nombre del cuarto", + "Check room availability" : "Comprobar la disponibilidad de salas", + "Free" : "Disponible", + "Busy (tentative)" : "Ocupado (tentativo)", + "Busy" : "Ocupado", "Unknown" : "Desconocido", + "Find a time" : "Buscar una hora", + "The invitation has been accepted successfully." : "Invitación aceptada exitosamente.", + "Failed to accept the invitation." : "No se pudo aceptar la invitación.", + "The invitation has been declined successfully." : "Invitación rechazada exitosamente.", + "Failed to decline the invitation." : "No se pudo rechazar la invitación.", + "Your participation has been marked as tentative." : "Su participación ha sido marcada como tentativa.", + "Failed to set the participation status to tentative." : "No se pudo establecer el estado de participación como tentativa.", "Accept" : "Aceptar", "Decline" : "Rechazar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "No attendees yet" : "Aún no hay asistentes", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} invitados, {confirmedCount} confirmados", + "Successfully appended link to talk room to location." : "Se ha añadido correctamente el enlace a la sala de conversación a la ubicación.", + "Successfully appended link to talk room to description." : "Se ha añadido correctamente el enlace a la sala de conversación a la descripción.", + "Error creating Talk room" : "Error al crear la sala de Talk", + "Attendees" : "Asistentes", + "_%n more guest_::_%n more guests_" : ["%n invitado más","%n más invitados","%n más invitados"], + "Remove group" : "Eliminar grupo", + "Remove attendee" : "Eliminar asistente", + "Request reply" : "Solicitar respuesta", + "Chairperson" : "Presidente", + "Required participant" : "Participante requerido", + "Optional participant" : "Participante opcional", + "Non-participant" : "No participante", + "_%n member_::_%n members_" : ["%n miembro","%n miembros","%n miembros"], + "No match found" : "No se encontraron coincidencias", + "Note that members of circles get invited but are not synced yet." : "Tenga en cuenta que los miembros de los círculos serán invitados pero aún no están sincronizados.", + "(organizer)" : "(organizador)", + "Make {label} the organizer" : "Hacer que {label} sea el organizador", + "Make {label} the organizer and attend" : "Hacer que {label} sea el organizador y asistente", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Para enviar invitaciones y manejar respuestas, [linkopen]agregue su dirección de correo electrónico en la configuración personal[linkclose].", + "Remove color" : "Eliminar color", + "Event title" : "Título del evento", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "No se puede modificar la configuración de todo el día para eventos que forman parte de una serie recurrente.", + "From" : "De", + "To" : "Para", "Repeat" : "Repetir", + "_time_::_times_" : ["vez","veces","veces"], "never" : "nunca", + "on date" : "en la fecha", "after" : "después", + "End repeat" : "Terminar repetición", + "Select to end repeat" : "Seleccionar para terminar la repetición", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Este evento es la excepción a la recurrencia de una serie recurrente. No puede agregarle una regla de recurrencia.", + "first" : "primero", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Los cambios en la regla de recurrencia sólo se aplicarán a ésta y a futuras ocurrencias.", + "Repeat every" : "Repetir cada", + "By day of the month" : "Por día del mes", + "On the" : "En el", + "_day_::_days_" : ["día","días","días"], + "_week_::_weeks_" : ["semana","semanas","semanas"], + "_month_::_months_" : ["mes","meses","meses"], + "_year_::_years_" : ["año","años","años"], + "weekday" : "día hábil", + "weekend day" : "día de fin de semana", + "Does not repeat" : "No se repite", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "La definición de recurrencia de este evento no está completamente soportada por Nextcloud. Si edita las opciones de recurrencia, es posible que se pierdan ciertas ocurrencias.", + "No rooms or resources yet" : "Aún no hay salas ni recursos", + "Resources" : "Recursos", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asiento","{seatingCapacity} asientos","{seatingCapacity} asientos"], + "Add resource" : "Añadir recurso", + "Has a projector" : "Tiene un proyector", + "Has a whiteboard" : "Tiene un pizarrón", + "Wheelchair accessible" : "Accesible en silla de ruedas", + "Remove resource" : "Eliminar recurso", + "Search for resources or rooms" : "Buscar recursos o salas", "available" : "disponible", - "More" : "Más", + "unavailable" : "no disponible", + "Show all rooms" : "Mostrar todas las salas", + "Projector" : "Proyector", + "Whiteboard" : "Pizarrón", + "Room type" : "Tipo de sala", + "Any" : "Cualquiera", + "Minimum seating capacity" : "Capacidad mínima de asientos", + "More details" : "Más detalles", + "Update this and all future" : "Actualizar ésta y todas las siguientes", + "Update this occurrence" : "Actualizar esta ocurrencia", + "Public calendar does not exist" : "El calendario público no existe", + "Maybe the share was deleted or has expired?" : "¿Quizá el recurso compartido fue eliminado o caducó?", + "from {formattedDate}" : "desde {formattedDate}", + "to {formattedDate}" : "hasta {formattedDate}", + "on {formattedDate}" : "el {formattedDate}", + "from {formattedDate} at {formattedTime}" : "desde {formattedDate} a las {formattedTime}", + "to {formattedDate} at {formattedTime}" : "hasta {formattedDate} a las {formattedTime}", + "on {formattedDate} at {formattedTime}" : "el {formattedDate} a las {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} a las {formattedTime}", + "Please enter a valid date" : "Por favor, ingrese una fecha válida", + "Please enter a valid date and time" : "Por favor, ingresa una fecha y hora válidas", + "Select a time zone" : "Seleccionar la zona horaria", + "Please select a time zone:" : "Por favor, seleccione una zona horaria:", + "Pick a time" : "Elige una hora", + "Pick a date" : "Elige una fecha", + "Type to search time zone" : "Escribir para buscar la zona horaria", "Global" : "Global", + "Holidays in {region}" : "Días feriados en {region}", + "An error occurred, unable to read public calendars." : "Ocurrió un error, no se pueden leer los calendarios públicos.", + "An error occurred, unable to subscribe to calendar." : "Ocurrió un error, no se pudo suscribir al calendario.", + "Public holiday calendars" : "Calendarios públicos de días feriados", + "Public calendars" : "Calendarios públicos", + "No valid public calendars configured" : "No hay calendarios públicos válidos configurados", + "Speak to the server administrator to resolve this issue." : "Comuníquese con el administrador del servidor para resolver este problema.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Los calendarios públicos de días feriados son proporcionados por Thunderbird. Los datos del calendario se descargarán desde {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Estos calendarios públicos son sugeridos por el administrador del servidor. Los datos del calendario se descargarán desde el sitio web correspondiente.", + "By {authors}" : "Por {authors}", + "Subscribed" : "Suscrito", + "Subscribe" : "Suscríbete", + "Could not fetch slots" : "No se pudieron obtener los espacios", + "Select a date" : "Seleccionar una fecha", + "Select slot" : "Seleccionar espacio", + "No slots available" : "No hay espacios disponibles", + "The slot for your appointment has been confirmed" : "El espacio de su cita ha sido confirmado", + "Appointment Details:" : "Detalles de la cita:", + "Time:" : "Hora:", + "Booked for:" : "Agendado para:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Gracias. Su reservación desde {startDate} hasta {endDate} ha sido confirmada.", + "Book another appointment:" : "Agendar otra cita:", + "See all available slots" : "Ver todos los espacios disponibles", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "El espacio para su cita desde {startDate} hasta {endDate} ya no está disponible.", + "Please book a different slot:" : "Por favor agende un espacio diferente:", + "Book an appointment with {name}" : "Agendar una cita con {name}", + "No public appointments found for {name}" : "No se encontraron citas públicas para {name}", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "La detección automática de la zona horaria determinó que su zona horaria sea UTC.\nLo más probable es que sea el resultado de las medidas de seguridad de su navegador web.\nPor favor, establezca su zona horaria manualmente en la configuración del calendario. ", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "No se encontró la zona horaria configurada ({timezoneId}). Volviendo a UTC.\nPor favor, cambie su zona horaria en la configuración e informe de este problema.", + "Edit event" : "Editar evento", + "Event does not exist" : "El evento no existe", + "Duplicate" : "Duplicado", + "Delete this occurrence" : "Eliminar esta ocurrencia", + "Delete this and all future" : "Eliminar ésta y las futuras", + "All day" : "Todo el día", + "Managing shared access" : "Administrando el acceso compartido", + "Deny access" : "Denegar acceso", + "Invite" : "Invitar", + "_User requires access to your file_::_Users require access to your file_" : ["El usuario requiere acceso a su archivo","Los usuarios requieren acceso a su archivo","Los usuarios requieren acceso a su archivo"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Adjunto que requiere acceso compartido","Adjuntos que requieren acceso compartido","Adjuntos que requieren acceso compartido"], + "Untitled event" : "Evento sin título", "Close" : "Cerrar", + "Subscribe to {name}" : "Subscribir a {name}", + "Export {name}" : "Exportar {name}", "Anniversary" : "Aniversario", + "Appointment" : "Cita", + "Business" : "Negocio", + "Education" : "Educación", + "Holiday" : "Día feriado", + "Meeting" : "Reunión", + "Miscellaneous" : "Misceláneo", + "Non-working hours" : "Horario no laboral", + "Not in office" : "Fuera de la oficina", + "Phone call" : "Llamada telefónica", + "Sick day" : "Día de enfermedad", + "Special occasion" : "Ocasión especial", + "Travel" : "Viaje", + "Vacation" : "Vacaciones", + "Midnight on the day the event starts" : "Medianoche en el día en el que comienza el evento", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n día antes del evento a las {formattedHourMinute}","%n días antes del evento a las {formattedHourMinute}","%n días antes del evento a las {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semana antes del evento a las {formattedHourMinute}","%n semanas antes del evento a las {formattedHourMinute}","%n semanas antes del evento a las {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "en el día del evento a las {formattedHourMinute}", + "at the event's start" : "al comienzo del evento", + "at the event's end" : "al terminar el evento", + "{time} before the event starts" : "{time} antes de que el evento comience", + "{time} before the event ends" : "{time} antes de que el evento termine", + "{time} after the event starts" : "{time} después de que el evento comience", + "{time} after the event ends" : "{time} después de que el evento termine", + "on {time}" : "a las {time}", + "on {time} ({timezoneId})" : "a las {time} ({timezoneld})", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", + "Monthly" : "Mensualmente", + "Yearly" : "Anualmente", + "_Every %n day_::_Every %n days_" : ["Cada %n día","Cada %n días","Cada %n días"], + "_Every %n week_::_Every %n weeks_" : ["Cada %n semana","Cada %n semanas","Cada %n semanas"], + "_Every %n month_::_Every %n months_" : ["Cada %n mes","Cada %n meses","Cada %n meses"], + "_Every %n year_::_Every %n years_" : ["Cada %n año","Cada %n años","Cada %n años"], + "_on {weekday}_::_on {weekdays}_" : ["en {weekday}","en {weekdays}","en {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["el día {dayOfMonthList}","los días {dayOfMonthList}","los días {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "en el {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "en {monthNames} el {ordinalNumber} {byDaySet}", + "until {untilDate}" : "hasta {untilDate}", + "_%n time_::_%n times_" : ["%n vez","%n veces","%n veces"], + "second" : "segundo", + "third" : "tercero", + "fourth" : "cuarto", + "fifth" : "quinto", + "second to last" : "penúltimo", + "last" : "último", + "Untitled task" : "Tarea sin título", + "Please ask your administrator to enable the Tasks App." : "Por favor, solicite a su administrador que habilite la aplicación de tareas.", + "W" : "S", + "%n more" : "%n más", + "No events to display" : "No hay eventos para mostrar", + "_+%n more_::_+%n more_" : ["+%n más","+%n más","+%n más"], + "No events" : "No hay eventos", + "Create a new event or change the visible time-range" : "Cree un nuevo evento o cambie el rango de horas visible", + "Failed to save event" : "No se pudo guardar el evento", + "It might have been deleted, or there was a typo in a link" : "Puede que se haya eliminado o haya una errata en un enlace", + "It might have been deleted, or there was a typo in the link" : "Puede que se haya eliminado o haya una errata en el enlace", + "Meeting room" : "Sala de juntas", + "Lecture hall" : "Sala de conferencias", + "Seminar room" : "Sala de seminarios", "Other" : "Otro", + "When shared show" : "Cuando compartido, mostrar", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", "When shared hide this event" : "Al compartir, ocultar este evento ", + "The visibility of this event in shared calendars." : "La visibilidad de este evento en calendarios compartidos.", + "Add a location" : "Añadir ubicación", "Status" : "Estatus", "Confirmed" : "Confirmado", "Canceled" : "Cancelada", + "Confirmation about the overall status of the event." : "Confirmación acerca del estado general del evento.", + "Show as" : "Mostrar como", + "Take this event into account when calculating free-busy information." : "Tomar en cuenta este evento al calcular la información de libre-ocupado.", "Categories" : "Categorías", - "Presentation" : "Presentación", - "Talk" : "Hablar", - "Office" : "Office", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "Categories help you to structure and organize your events." : "Las categorías le ayudan a estructurar y organizar sus eventos.", + "Search or add categories" : "Buscar o añadir categorías", + "Add this as a new category" : "Añadir esto como una nueva categoría", + "Custom color" : "Color personalizado", + "Special color of this event. Overrides the calendar-color." : "Color especial de este evento. Reemplazará el color del calendario.", + "Error while sharing file" : "Error al compartir el archivo", + "Error while sharing file with user" : "Error al compartir el archivo con el usuario", + "Attachment {fileName} already exists!" : "¡El adjunto {fileName} ya existe!", + "An error occurred during getting file information" : "Ocurrió un error al obtener la información del archivo", + "An error occurred, unable to delete the calendar." : "Ocurrió un error, no se pudo eliminar el calendario.", + "Imported {filename}" : "Importado {filename}", + "This is an event reminder." : "Esto es un recordatorio del evento.", + "Error while parsing a PROPFIND error" : "Error al analizar un error PROPFIND", + "Appointment not found" : "Cita no encontrada", + "User not found" : "No se encontró el usuario", + "Reminder" : "Recordatorio", + "+ Add reminder" : "+ Añadir recordatorio", + "Select automatic slot" : "Seleccionar un espacio de tiempo automáticamente", + "with" : "con", + "Available times:" : "Horarios disponibles:", + "Suggestions" : "Sugerencias", + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_MX.json b/l10n/es_MX.json index b8d841543897cac82326dacd3b866e5a0c62c7f5..a5786b9142a56ce0c84462753965d91cef716ace 100644 --- a/l10n/es_MX.json +++ b/l10n/es_MX.json @@ -1,46 +1,236 @@ { "translations": { + "Provided email-address is too long" : "La dirección de correo electrónico proporcionada es demasiado larga", + "User-Session unexpectedly expired" : "La sesión de usuario expiró inesperadamente", + "Provided email-address is not valid" : "La dirección de correo electrónico proporcionada es inválida", "%s has published the calendar »%s«" : "%s ha publicado el calendario »%s«", + "Unexpected error sending email. Please contact your administrator." : "Error inesperado al enviar el correo electrónico. Por favor, contacte a su administrador.", + "Successfully sent email to %1$s" : "Correo electrónico enviado exitosamente a %1$s", "Hello," : "Hola,", "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Upcoming events" : "Próximos eventos", + "No more events today" : "No hay más eventos hoy", + "No upcoming events" : "No hay eventos próximos", + "More events" : "Más eventos", + "%1$s with %2$s" : "%1$s con %2$s", + "Calendar" : "Calendario", + "New booking {booking}" : "Nueva reservación {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) reservó la cita \"{config_display_name}\" el {date_time}.", "Appointments" : "Citas", + "Schedule appointment \"%s\"" : "Programar cita \"%s\"", + "Schedule an appointment" : "Programar una cita", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Preparación para %s", + "Follow up for %s" : "Seguimiento para %s", + "Your appointment \"%s\" with %s needs confirmation" : "Su cita \"%s\" con %s necesita confirmación", + "Dear %s, please confirm your booking" : "Estimado(a) %s, por favor, confirme su reservación", "Confirm" : "Confirmar", - "Where:" : "Dónde:", + "Appointment with:" : "Cita con:", "Description:" : "Descripción:", - "Calendar" : "Calendario", + "This confirmation link expires in %s hours." : "Este enlace de confirmación caduca en %s horas.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Si desea cancelar la cita después de todo, por favor, contacte al organizador respondiendo a este correo o visite su página del perfil.", + "Your appointment \"%s\" with %s has been accepted" : "Su cita \"%s\" con %s ha sido aceptada", + "Dear %s, your booking has been accepted." : "Estimado(a) %s, su reservación ha sido aceptada.", + "Appointment for:" : "Cita para:", + "Date:" : "Fecha:", + "You will receive a link with the confirmation email" : "Recibirá un enlace con el correo electrónico con de confirmación", + "Where:" : "Dónde:", + "Comment:" : "Comentario:", + "You have a new appointment booking \"%s\" from %s" : "Tiene una nueva reservación \"%s\" de %s", + "Dear %s, %s (%s) booked an appointment with you." : "Estimado(a) %s, %s (%s) ha reservado una cita con Ud.", "A Calendar app for Nextcloud" : "Una aplicación de Calendario para Nextcloud", - "New event" : "Nuevo evento", + "Previous day" : "Día anterior", + "Previous week" : "Semana anterior", + "Previous year" : "Año anterior", + "Previous month" : "Mes anterior", + "Next day" : "Próximo día", + "Next week" : "Próxima semana", + "Next year" : "Próximo año", + "Next month" : "Próximo mes", + "Create new event" : "Crear nuevo evento", + "Event" : "Evento", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Año", "List" : "Lista", + "Appointment link was copied to clipboard" : "El enlace de la cita se copió al portapapeles", + "Appointment link could not be copied to clipboard" : "No se pudo copiar el enlace de la cita al portapapeles", "Preview" : "Previsualizar", "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Copy public link" : "Copiar enlace público", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", + "Appointment schedules" : "Cronograma de citas", + "Create new" : "Crear nuevo", + "Disable calendar \"{calendar}\"" : "Deshabilitar calendario \"{calendar}\"", + "Disable untitled calendar" : "Deshabilitar calendario sin título", + "Enable calendar \"{calendar}\"" : "Habilitar calendario \"{calendar}\"", + "Enable untitled calendar" : "Habilitar calendario sin título", + "An error occurred, unable to change visibility of the calendar." : "Ocurrió un error, no se pudo cambiar la visibilidad del calendario.", + "Untitled calendar" : "Calendario sin título", + "Shared with you by" : "Compartido con Ud. por", + "Edit and share calendar" : "Editar y compartir calendario", + "Edit calendar" : "Editar calendario", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Dejando de compartir el calendario en {countdown} segundo","Dejando de compartir el calendario en {countdown} segundos","Dejando de compartir el calendario en {countdown} segundos"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Eliminando el calendario en {countdown} segundo","Eliminando el calendario en {countdown} segundos","Eliminando el calendario en {countdown} segundos"], + "An error occurred, unable to create the calendar." : "Ocurrió un error, no se pudo crear el calendario.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Por favor, ingrese un enlace válido (comenzando con http://, https://, webcal:// o webcals://)", + "Calendars" : "Calendarios", + "Add new" : "Añadir nuevo", "New calendar" : "Nuevo calendario", + "Name for new calendar" : "Nombre del nuevo calendario", + "Creating calendar …" : "Creando calendario …", + "New calendar with task list" : "Nuevo calendario con lista de tareas", + "New subscription from link (read-only)" : "Nueva suscripción desde enlace (sólo lectura)", + "Creating subscription …" : "Creando suscripción …", + "Add public holiday calendar" : "Añadir calendario público de días feriados", + "Add custom public calendar" : "Añadir calendario público personalizado", + "Calendar link copied to clipboard." : "Enlace del calendario copiado al portapapeles.", + "Calendar link could not be copied to clipboard." : "No se pudo copiar el enlace del calendario al portapapeles.", + "Copy subscription link" : "Copiar enlace de suscripción", + "Copying link …" : "Copiando enlace …", + "Copied link" : "Enlace copiado", + "Could not copy link" : "No se pudo copiar el enlace", + "Export" : "Exportar", + "Untitled item" : "Elemento sin título", + "Unknown calendar" : "Calendario desconocido", + "Could not load deleted calendars and objects" : "No se pudieron cargar los calendarios y objetos eliminados", + "Could not delete calendar or event" : "No se pudo eliminar el calendario o el evento", + "Could not restore calendar or event" : "No se pudo restaurar el calendario o evento", + "Do you really want to empty the trash bin?" : "¿Realmente desea vaciar la papelera?", + "Empty trash bin" : "Vaciar la papelera de reciclaje", + "Trash bin" : "Papelera", + "Loading deleted items." : "Cargando elementos eliminados.", + "You do not have any deleted items." : "No tiene elementos eliminados.", "Name" : "Nombre", "Deleted" : "Eliminado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", - "Empty trash bin" : "Vaciar la papelera de reciclaje", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Los elementos en la papelera se eliminan después de {numDays} día","Los elementos en la papelera se eliminan después de {numDays} días","Los elementos en la papelera se eliminan después de {numDays} días"], + "Could not update calendar order." : "No se pudo actualizar el orden del calendario.", + "Shared calendars" : "Compartir calendarios", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Internal link" : "Enlace interno", + "A private link that can be used with external clients" : "Un enlace privado que se puede usar con clientes externos", + "Copy internal link" : "Copiar enlace interno", + "An error occurred, unable to publish calendar." : "Ocurrió un error, no se pudo publicar el calendario.", + "An error occurred, unable to send email." : "Ocurrió un error, no se pudo enviar el correo electrónico.", + "Embed code copied to clipboard." : "Código embebido copiado al portapapeles.", + "Embed code could not be copied to clipboard." : "No se pudo copiar el código embebido al portapapeles.", + "Unpublishing calendar failed" : "No se pudo despublicar el calendario", + "Share link" : "Compartir liga", + "Copy public link" : "Copiar enlace público", + "Send link to calendar via email" : "Enviar enlace del calendario por correo electrónico", + "Enter one address" : "Escriba una dirección", + "Sending email …" : "Enviando correo electrónico …", + "Copy embedding code" : "Copiar código embebido", + "Copying code …" : "Copiando código …", + "Copied code" : "Código copiado", + "Could not copy code" : "No se pudo copiar el código", + "Delete share link" : "Eliminar enlace compartido", + "Deleting share link …" : "Eliminando enlace compartido …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Equipo)", + "An error occurred while unsharing the calendar." : "Ocurrió un error al dejar de compartir el calendario.", + "An error occurred, unable to change the permission of the share." : "Ocurrió un error, no se pudieron cambiar los permisos del recurso compartido.", + "can edit" : "puede editar", + "Unshare with {displayName}" : "Dejar de compartir con {displayName}", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "No users or groups" : "Sin usuarios ni grupos", + "Failed to save calendar name and color" : "No se pudo guardar el nombre ni el color del calendario", + "Calendar name …" : "Nombre del calendario …", + "Never show me as busy (set this calendar to transparent)" : "Nunca mostrarme como ocupado (establecer este calendario como transparente)", + "Share calendar" : "Compartir calendario", + "Unshare from me" : "Dejar de compartir conmigo", + "Save" : "Guardar", + "Import calendars" : "Importar calendarios", + "Please select a calendar to import into …" : "Por favor, seleccione un calendario al que importar …", "Filename" : "Nombre del archivo", + "Calendar to import into" : "Calendario en el cual importar", "Cancel" : "Cancelar", + "_Import calendar_::_Import calendars_" : ["Importar calendario","Importar calendarios","Importar calendarios"], + "Select the default location for attachments" : "Seleccionar la ubicación predeterminada para los adjuntos", + "Pick" : "Elegir", + "Invalid location selected" : "Ubicación seleccionada inválida", + "Attachments folder successfully saved." : "La carpeta de adjuntos se guardó exitosamente.", + "Error on saving attachments folder." : "Ocurrió un error al guardar la carpeta de adjuntos.", + "Default attachments location" : "Ubicación predeterminada para adjuntos", + "{filename} could not be parsed" : "No se pudo analizar {filename}", + "No valid files found, aborting import" : "No se encontraron archivos válidos, cancelando la importación", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Se importó exitosamente %n evento","Se importaron exitosamente %n eventos","Se importaron exitosamente %n eventos"], + "Import partially failed. Imported {accepted} out of {total}." : "La importación falló parcialmente. Se importaron {accepted} de {total}.", "Automatic" : "Automático", - "or" : "o", + "Automatic ({detected})" : "Automático ({detected})", + "New setting was not saved successfully." : "No se guardó correctamente la nueva configuración.", + "Navigation" : "Navegación", + "Previous period" : "Periodo anterior", + "Next period" : "Periodo siguiente", + "Views" : "Vistas", + "Day view" : "Vista diaria", + "Week view" : "Vista semanal", + "Month view" : "Vista mensual", + "Year view" : "Vista anual", "List view" : "Vista de lista", "Actions" : "Acciones", + "Create event" : "Crear evento", + "Show shortcuts" : "Mostrar atajos", + "Editor" : "Editor", + "Close editor" : "Cerrar editor", + "Save edited event" : "Guardar evento editado", + "Delete edited event" : "Eliminar evento editado", + "Duplicate event" : "Duplicar evento", + "Shortcut overview" : "Vista general de atajos", + "or" : "o", + "Calendar settings" : "Configuración del calendario", + "At event start" : "Al comienzo del evento", + "No reminder" : "Sin recordatorio", + "Failed to save default calendar" : "No se pudo guardar el calendario predeterminado", + "CalDAV link copied to clipboard." : "Enlace CalDAV copiado al portapapeles.", + "CalDAV link could not be copied to clipboard." : "No se pudo copiar el enlace CalDAV al portapapeles.", + "Enable birthday calendar" : "Habilitar el calendario de cumpleaños", + "Show tasks in calendar" : "Mostrar tareas en el calendario", + "Enable simplified editor" : "Habilitar el editor simplificado", + "Limit the number of events displayed in the monthly view" : "Limitar el número de eventos mostrados en la vista mensual", + "Show weekends" : "Mostrar fines de semana", "Show week numbers" : "Mostrar número de semana", + "Time increments" : "Incrementos de tiempo", + "Default calendar for incoming invitations" : "Calendario predeterminado para aceptar invitaciones", + "Default reminder" : "Recordatorio predeterminado", + "Copy primary CalDAV address" : "Copiar la dirección CalDAV principal", + "Copy iOS/macOS CalDAV address" : "Copiar la dirección iOS/macOS CalDAV", + "Personal availability settings" : "Configuración de disponibilidad personal", + "Show keyboard shortcuts" : "Mostrar atajos de teclado", + "Appointment schedule successfully created" : "El cronograma de citas fue creado exitosamente", + "Appointment schedule successfully updated" : "El cronograma de citas fue actualizado exitosamente", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minuto","{duration} minutos","{duration} minutos"], + "0 minutes" : "0 minutos", + "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} horas","{duration} horas"], + "_{duration} day_::_{duration} days_" : ["{duration} día","{duration} días","{duration} días"], + "_{duration} week_::_{duration} weeks_" : ["{duration} semana","{duration} semanas","{duration} semanas"], + "_{duration} month_::_{duration} months_" : ["{duration} mes","{duration} meses","{duration} meses"], + "_{duration} year_::_{duration} years_" : ["{duration} año","{duration} años","{duration} años"], + "To configure appointments, add your email address in personal settings." : "Para configurar las citas, agregue su dirección de correo electrónico en la configuración personal.", + "Public – shown on the profile page" : "Público - se muestra en la página de perfil", + "Private – only accessible via secret link" : "Privado - accesible únicamente mediante enlace secreto", + "Appointment schedule saved" : "Cronograma de citas guardado", + "Create appointment schedule" : "Crear cronograma de citas", + "Edit appointment schedule" : "Editar cronograma de citas", + "Update" : "Actualizar", + "Appointment name" : "Nombre de la cita", "Location" : "Ubicación", + "Create a Talk room" : "Crear una sala de Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Se generará un enlace único por cada cita agendada y se enviará a través del correo electrónico de confirmación", "Description" : "Descripción", + "Visibility" : "Visibilidad", + "Duration" : "Duración", + "Increments" : "Incrementos", + "Additional calendars to check for conflicts" : "Calendarios adicionales para comprobar por conflictos", + "Pick time ranges where appointments are allowed" : "Elegir rangos de tiempo para permitir citas", "to" : "para", + "Delete slot" : "Eliminar ranura", + "No times set" : "No se han establecido horarios", "Add" : "Agregar", "Monday" : "Lunes", "Tuesday" : "Martes", @@ -49,48 +239,319 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", + "Weekdays" : "Días laborales", + "Add time before and after the event" : "Añadir tiempo antes y después del evento", + "Before the event" : "Antes del evento", + "After the event" : "Después del evento", + "Planning restrictions" : "Restricciones de planificación", + "Minimum time before next available slot" : "Tiempo mínimo antes del próximo espacio disponible", + "Max slots per day" : "Cantidad de espacios máximos al día", + "Limit how far in the future appointments can be booked" : "Limitar qué tan lejos en el futuro se pueden reservar citas", + "It seems a rate limit has been reached. Please try again later." : "Límite de solicitudes alcanzado. Por favor, intente de nuevo más tarde.", + "Please confirm your reservation" : "Por favor, confirme su reservación", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Le hemos enviado un correo electrónico con los detalles. Por favor, confirme su cita usando el enlace del correo. Puede cerrar esta página ahora.", + "Your name" : "Su nombre", "Your email address" : "Tu dirección de correo electrónico", + "Please share anything that will help prepare for our meeting" : "Por favor, comparta cualquier cosa que ayude a prepararnos para nuestra reunión.", + "Could not book the appointment. Please try again later or contact the organizer." : "No se pudo reservar la cita. Por favor, intente de nuevo más tarde o contacte al organizador.", + "Back" : "Atrás", + "Book appointment" : "Reservar cita", + "on" : "el", + "at" : "a las", + "before at" : "antes de las", "Notification" : "Notificación", "Email" : "Correo electrónico", + "Audio notification" : "Notificación de audio", + "Other notification" : "Otra notificación", + "Relative to event" : "Relativo al evento", + "On date" : "En la fecha", + "Edit time" : "Editar hora", + "Save time" : "Guardar hora", + "Remove reminder" : "Eliminar recordatorio", + "Add reminder" : "Añadir recordatorio", + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Choose a file to share as a link" : "Elegir un archivo para compartir como enlace", + "Attachment {name} already exist!" : "¡El adjunto {name} ya existe!", + "Could not upload attachment(s)" : "No se pudo cargar el(los) adjunto(s)", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Estás a punto de navegar a {host}. ¿Estás seguro? Enlace: {link}", + "Proceed" : "Proceder", + "No attachments" : "Sin adjuntos", + "Add from Files" : "Agregar desde Archivos", + "Upload from device" : "Cargar desde el dispositivo", + "Delete file" : "Borrar archivo", + "Confirmation" : "Confirmación", + "_{count} attachment_::_{count} attachments_" : ["{count} adjunto","{count} adjuntos","{count} adjuntos"], + "Suggested" : "Sugerido", "Available" : "Disponible", + "Invitation accepted" : "Invitación aceptada", + "Accepted {organizerName}'s invitation" : "Se aceptó la invitación de {organizerName}", + "Participation marked as tentative" : "Participación marcada como tentativa", + "Invitation is delegated" : "Se delegó la invitación", + "Not available" : "No disponible", + "Invitation declined" : "Invitación rechazada", + "Declined {organizerName}'s invitation" : "Se rechazó la invitación de {organizerName}", + "Awaiting response" : "Esperando respuesta", + "Checking availability" : "Comprobando disponibilidad", + "Has not responded to {organizerName}'s invitation yet" : "No ha respondido a la invitación de {organizerName} aún", + "chairperson" : "presidente", + "required participant" : "participante requerido", + "non-participant" : "no participante", + "optional participant" : "participante opcional", + "{organizer} (organizer)" : "{organizer} (organizador)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Disponibilidad de asistentes, recursos y salas", + "Suggestion accepted" : "Sugerencia aceptada", + "Legend" : "Leyenda", + "Out of office" : "Fuera de la oficina", + "Attendees:" : "Asistentes:", + "Done" : "Terminado", + "Search room" : "Buscar sala", + "Room name" : "Nombre del cuarto", + "Check room availability" : "Comprobar la disponibilidad de salas", + "Free" : "Disponible", + "Busy (tentative)" : "Ocupado (tentativo)", + "Busy" : "Ocupado", "Unknown" : "Desconocido", + "Find a time" : "Buscar una hora", + "The invitation has been accepted successfully." : "Invitación aceptada exitosamente.", + "Failed to accept the invitation." : "No se pudo aceptar la invitación.", + "The invitation has been declined successfully." : "Invitación rechazada exitosamente.", + "Failed to decline the invitation." : "No se pudo rechazar la invitación.", + "Your participation has been marked as tentative." : "Su participación ha sido marcada como tentativa.", + "Failed to set the participation status to tentative." : "No se pudo establecer el estado de participación como tentativa.", "Accept" : "Aceptar", "Decline" : "Rechazar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "No attendees yet" : "Aún no hay asistentes", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} invitados, {confirmedCount} confirmados", + "Successfully appended link to talk room to location." : "Se ha añadido correctamente el enlace a la sala de conversación a la ubicación.", + "Successfully appended link to talk room to description." : "Se ha añadido correctamente el enlace a la sala de conversación a la descripción.", + "Error creating Talk room" : "Error al crear la sala de Talk", + "Attendees" : "Asistentes", + "_%n more guest_::_%n more guests_" : ["%n invitado más","%n más invitados","%n más invitados"], + "Remove group" : "Eliminar grupo", + "Remove attendee" : "Eliminar asistente", + "Request reply" : "Solicitar respuesta", + "Chairperson" : "Presidente", + "Required participant" : "Participante requerido", + "Optional participant" : "Participante opcional", + "Non-participant" : "No participante", + "_%n member_::_%n members_" : ["%n miembro","%n miembros","%n miembros"], + "No match found" : "No se encontraron coincidencias", + "Note that members of circles get invited but are not synced yet." : "Tenga en cuenta que los miembros de los círculos serán invitados pero aún no están sincronizados.", + "(organizer)" : "(organizador)", + "Make {label} the organizer" : "Hacer que {label} sea el organizador", + "Make {label} the organizer and attend" : "Hacer que {label} sea el organizador y asistente", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Para enviar invitaciones y manejar respuestas, [linkopen]agregue su dirección de correo electrónico en la configuración personal[linkclose].", + "Remove color" : "Eliminar color", + "Event title" : "Título del evento", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "No se puede modificar la configuración de todo el día para eventos que forman parte de una serie recurrente.", + "From" : "De", + "To" : "Para", "Repeat" : "Repetir", + "_time_::_times_" : ["vez","veces","veces"], "never" : "nunca", + "on date" : "en la fecha", "after" : "después", + "End repeat" : "Terminar repetición", + "Select to end repeat" : "Seleccionar para terminar la repetición", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Este evento es la excepción a la recurrencia de una serie recurrente. No puede agregarle una regla de recurrencia.", + "first" : "primero", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Los cambios en la regla de recurrencia sólo se aplicarán a ésta y a futuras ocurrencias.", + "Repeat every" : "Repetir cada", + "By day of the month" : "Por día del mes", + "On the" : "En el", + "_day_::_days_" : ["día","días","días"], + "_week_::_weeks_" : ["semana","semanas","semanas"], + "_month_::_months_" : ["mes","meses","meses"], + "_year_::_years_" : ["año","años","años"], + "weekday" : "día hábil", + "weekend day" : "día de fin de semana", + "Does not repeat" : "No se repite", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "La definición de recurrencia de este evento no está completamente soportada por Nextcloud. Si edita las opciones de recurrencia, es posible que se pierdan ciertas ocurrencias.", + "No rooms or resources yet" : "Aún no hay salas ni recursos", + "Resources" : "Recursos", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asiento","{seatingCapacity} asientos","{seatingCapacity} asientos"], + "Add resource" : "Añadir recurso", + "Has a projector" : "Tiene un proyector", + "Has a whiteboard" : "Tiene un pizarrón", + "Wheelchair accessible" : "Accesible en silla de ruedas", + "Remove resource" : "Eliminar recurso", + "Search for resources or rooms" : "Buscar recursos o salas", "available" : "disponible", - "More" : "Más", + "unavailable" : "no disponible", + "Show all rooms" : "Mostrar todas las salas", + "Projector" : "Proyector", + "Whiteboard" : "Pizarrón", + "Room type" : "Tipo de sala", + "Any" : "Cualquiera", + "Minimum seating capacity" : "Capacidad mínima de asientos", + "More details" : "Más detalles", + "Update this and all future" : "Actualizar ésta y todas las siguientes", + "Update this occurrence" : "Actualizar esta ocurrencia", + "Public calendar does not exist" : "El calendario público no existe", + "Maybe the share was deleted or has expired?" : "¿Quizá el recurso compartido fue eliminado o caducó?", + "from {formattedDate}" : "desde {formattedDate}", + "to {formattedDate}" : "hasta {formattedDate}", + "on {formattedDate}" : "el {formattedDate}", + "from {formattedDate} at {formattedTime}" : "desde {formattedDate} a las {formattedTime}", + "to {formattedDate} at {formattedTime}" : "hasta {formattedDate} a las {formattedTime}", + "on {formattedDate} at {formattedTime}" : "el {formattedDate} a las {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} a las {formattedTime}", + "Please enter a valid date" : "Por favor, ingrese una fecha válida", + "Please enter a valid date and time" : "Por favor, ingresa una fecha y hora válidas", + "Select a time zone" : "Seleccionar la zona horaria", + "Please select a time zone:" : "Por favor, seleccione una zona horaria:", + "Pick a time" : "Elige una hora", + "Pick a date" : "Elige una fecha", + "Type to search time zone" : "Escribir para buscar la zona horaria", "Global" : "Global", + "Holidays in {region}" : "Días feriados en {region}", + "An error occurred, unable to read public calendars." : "Ocurrió un error, no se pueden leer los calendarios públicos.", + "An error occurred, unable to subscribe to calendar." : "Ocurrió un error, no se pudo suscribir al calendario.", + "Public holiday calendars" : "Calendarios públicos de días feriados", + "Public calendars" : "Calendarios públicos", + "No valid public calendars configured" : "No hay calendarios públicos válidos configurados", + "Speak to the server administrator to resolve this issue." : "Comuníquese con el administrador del servidor para resolver este problema.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Los calendarios públicos de días feriados son proporcionados por Thunderbird. Los datos del calendario se descargarán desde {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Estos calendarios públicos son sugeridos por el administrador del servidor. Los datos del calendario se descargarán desde el sitio web correspondiente.", + "By {authors}" : "Por {authors}", + "Subscribed" : "Suscrito", + "Subscribe" : "Suscríbete", + "Could not fetch slots" : "No se pudieron obtener los espacios", + "Select a date" : "Seleccionar una fecha", + "Select slot" : "Seleccionar espacio", + "No slots available" : "No hay espacios disponibles", + "The slot for your appointment has been confirmed" : "El espacio de su cita ha sido confirmado", + "Appointment Details:" : "Detalles de la cita:", + "Time:" : "Hora:", + "Booked for:" : "Agendado para:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Gracias. Su reservación desde {startDate} hasta {endDate} ha sido confirmada.", + "Book another appointment:" : "Agendar otra cita:", + "See all available slots" : "Ver todos los espacios disponibles", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "El espacio para su cita desde {startDate} hasta {endDate} ya no está disponible.", + "Please book a different slot:" : "Por favor agende un espacio diferente:", + "Book an appointment with {name}" : "Agendar una cita con {name}", + "No public appointments found for {name}" : "No se encontraron citas públicas para {name}", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "La detección automática de la zona horaria determinó que su zona horaria sea UTC.\nLo más probable es que sea el resultado de las medidas de seguridad de su navegador web.\nPor favor, establezca su zona horaria manualmente en la configuración del calendario. ", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "No se encontró la zona horaria configurada ({timezoneId}). Volviendo a UTC.\nPor favor, cambie su zona horaria en la configuración e informe de este problema.", + "Edit event" : "Editar evento", + "Event does not exist" : "El evento no existe", + "Duplicate" : "Duplicado", + "Delete this occurrence" : "Eliminar esta ocurrencia", + "Delete this and all future" : "Eliminar ésta y las futuras", + "All day" : "Todo el día", + "Managing shared access" : "Administrando el acceso compartido", + "Deny access" : "Denegar acceso", + "Invite" : "Invitar", + "_User requires access to your file_::_Users require access to your file_" : ["El usuario requiere acceso a su archivo","Los usuarios requieren acceso a su archivo","Los usuarios requieren acceso a su archivo"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Adjunto que requiere acceso compartido","Adjuntos que requieren acceso compartido","Adjuntos que requieren acceso compartido"], + "Untitled event" : "Evento sin título", "Close" : "Cerrar", + "Subscribe to {name}" : "Subscribir a {name}", + "Export {name}" : "Exportar {name}", "Anniversary" : "Aniversario", + "Appointment" : "Cita", + "Business" : "Negocio", + "Education" : "Educación", + "Holiday" : "Día feriado", + "Meeting" : "Reunión", + "Miscellaneous" : "Misceláneo", + "Non-working hours" : "Horario no laboral", + "Not in office" : "Fuera de la oficina", + "Phone call" : "Llamada telefónica", + "Sick day" : "Día de enfermedad", + "Special occasion" : "Ocasión especial", + "Travel" : "Viaje", + "Vacation" : "Vacaciones", + "Midnight on the day the event starts" : "Medianoche en el día en el que comienza el evento", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n día antes del evento a las {formattedHourMinute}","%n días antes del evento a las {formattedHourMinute}","%n días antes del evento a las {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semana antes del evento a las {formattedHourMinute}","%n semanas antes del evento a las {formattedHourMinute}","%n semanas antes del evento a las {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "en el día del evento a las {formattedHourMinute}", + "at the event's start" : "al comienzo del evento", + "at the event's end" : "al terminar el evento", + "{time} before the event starts" : "{time} antes de que el evento comience", + "{time} before the event ends" : "{time} antes de que el evento termine", + "{time} after the event starts" : "{time} después de que el evento comience", + "{time} after the event ends" : "{time} después de que el evento termine", + "on {time}" : "a las {time}", + "on {time} ({timezoneId})" : "a las {time} ({timezoneld})", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", + "Monthly" : "Mensualmente", + "Yearly" : "Anualmente", + "_Every %n day_::_Every %n days_" : ["Cada %n día","Cada %n días","Cada %n días"], + "_Every %n week_::_Every %n weeks_" : ["Cada %n semana","Cada %n semanas","Cada %n semanas"], + "_Every %n month_::_Every %n months_" : ["Cada %n mes","Cada %n meses","Cada %n meses"], + "_Every %n year_::_Every %n years_" : ["Cada %n año","Cada %n años","Cada %n años"], + "_on {weekday}_::_on {weekdays}_" : ["en {weekday}","en {weekdays}","en {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["el día {dayOfMonthList}","los días {dayOfMonthList}","los días {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "en el {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "en {monthNames} el {ordinalNumber} {byDaySet}", + "until {untilDate}" : "hasta {untilDate}", + "_%n time_::_%n times_" : ["%n vez","%n veces","%n veces"], + "second" : "segundo", + "third" : "tercero", + "fourth" : "cuarto", + "fifth" : "quinto", + "second to last" : "penúltimo", + "last" : "último", + "Untitled task" : "Tarea sin título", + "Please ask your administrator to enable the Tasks App." : "Por favor, solicite a su administrador que habilite la aplicación de tareas.", + "W" : "S", + "%n more" : "%n más", + "No events to display" : "No hay eventos para mostrar", + "_+%n more_::_+%n more_" : ["+%n más","+%n más","+%n más"], + "No events" : "No hay eventos", + "Create a new event or change the visible time-range" : "Cree un nuevo evento o cambie el rango de horas visible", + "Failed to save event" : "No se pudo guardar el evento", + "It might have been deleted, or there was a typo in a link" : "Puede que se haya eliminado o haya una errata en un enlace", + "It might have been deleted, or there was a typo in the link" : "Puede que se haya eliminado o haya una errata en el enlace", + "Meeting room" : "Sala de juntas", + "Lecture hall" : "Sala de conferencias", + "Seminar room" : "Sala de seminarios", "Other" : "Otro", + "When shared show" : "Cuando compartido, mostrar", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", "When shared hide this event" : "Al compartir, ocultar este evento ", + "The visibility of this event in shared calendars." : "La visibilidad de este evento en calendarios compartidos.", + "Add a location" : "Añadir ubicación", "Status" : "Estatus", "Confirmed" : "Confirmado", "Canceled" : "Cancelada", + "Confirmation about the overall status of the event." : "Confirmación acerca del estado general del evento.", + "Show as" : "Mostrar como", + "Take this event into account when calculating free-busy information." : "Tomar en cuenta este evento al calcular la información de libre-ocupado.", "Categories" : "Categorías", - "Presentation" : "Presentación", - "Talk" : "Hablar", - "Office" : "Office", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "Categories help you to structure and organize your events." : "Las categorías le ayudan a estructurar y organizar sus eventos.", + "Search or add categories" : "Buscar o añadir categorías", + "Add this as a new category" : "Añadir esto como una nueva categoría", + "Custom color" : "Color personalizado", + "Special color of this event. Overrides the calendar-color." : "Color especial de este evento. Reemplazará el color del calendario.", + "Error while sharing file" : "Error al compartir el archivo", + "Error while sharing file with user" : "Error al compartir el archivo con el usuario", + "Attachment {fileName} already exists!" : "¡El adjunto {fileName} ya existe!", + "An error occurred during getting file information" : "Ocurrió un error al obtener la información del archivo", + "An error occurred, unable to delete the calendar." : "Ocurrió un error, no se pudo eliminar el calendario.", + "Imported {filename}" : "Importado {filename}", + "This is an event reminder." : "Esto es un recordatorio del evento.", + "Error while parsing a PROPFIND error" : "Error al analizar un error PROPFIND", + "Appointment not found" : "Cita no encontrada", + "User not found" : "No se encontró el usuario", + "Reminder" : "Recordatorio", + "+ Add reminder" : "+ Añadir recordatorio", + "Select automatic slot" : "Seleccionar un espacio de tiempo automáticamente", + "with" : "con", + "Available times:" : "Horarios disponibles:", + "Suggestions" : "Sugerencias", + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_NI.js b/l10n/es_NI.js index 8cc2d0f458c47e9608c700e9a9936772a25e895f..c38effb044b60e6fb11fb8a63af9a1a9030b5cd9 100644 --- a/l10n/es_NI.js +++ b/l10n/es_NI.js @@ -6,11 +6,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -20,22 +19,26 @@ OC.L10N.register( "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -47,34 +50,34 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -82,8 +85,6 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_NI.json b/l10n/es_NI.json index 6532f6b266cecd2c64aba87b6e8f445a51cd40f5..610bf0493380ad6b6c77f3c62decb47b4f8eed9d 100644 --- a/l10n/es_NI.json +++ b/l10n/es_NI.json @@ -4,11 +4,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -18,22 +17,26 @@ "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -45,34 +48,34 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -80,8 +83,6 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_PA.js b/l10n/es_PA.js index 8cc2d0f458c47e9608c700e9a9936772a25e895f..8bb012348f884b5128d66e55e8093af006b9654a 100644 --- a/l10n/es_PA.js +++ b/l10n/es_PA.js @@ -6,11 +6,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -20,22 +19,26 @@ OC.L10N.register( "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -47,34 +50,37 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", + "second" : "segundo", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -82,8 +88,6 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_PA.json b/l10n/es_PA.json index 6532f6b266cecd2c64aba87b6e8f445a51cd40f5..b6552b67b68c58c935df44bc8854588449f9d70b 100644 --- a/l10n/es_PA.json +++ b/l10n/es_PA.json @@ -4,11 +4,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -18,22 +17,26 @@ "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -45,34 +48,37 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", + "second" : "segundo", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -80,8 +86,6 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_PE.js b/l10n/es_PE.js index 8cc2d0f458c47e9608c700e9a9936772a25e895f..8bb012348f884b5128d66e55e8093af006b9654a 100644 --- a/l10n/es_PE.js +++ b/l10n/es_PE.js @@ -6,11 +6,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -20,22 +19,26 @@ OC.L10N.register( "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -47,34 +50,37 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", + "second" : "segundo", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -82,8 +88,6 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_PE.json b/l10n/es_PE.json index 6532f6b266cecd2c64aba87b6e8f445a51cd40f5..b6552b67b68c58c935df44bc8854588449f9d70b 100644 --- a/l10n/es_PE.json +++ b/l10n/es_PE.json @@ -4,11 +4,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -18,22 +17,26 @@ "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -45,34 +48,37 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", + "second" : "segundo", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -80,8 +86,6 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_PR.js b/l10n/es_PR.js index 8cc2d0f458c47e9608c700e9a9936772a25e895f..50d951a7a3dbf24a472813fad0a799b89325ec76 100644 --- a/l10n/es_PR.js +++ b/l10n/es_PR.js @@ -6,11 +6,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -20,22 +19,26 @@ OC.L10N.register( "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -47,34 +50,36 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", + "second" : "segundo", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -82,8 +87,6 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_PR.json b/l10n/es_PR.json index 6532f6b266cecd2c64aba87b6e8f445a51cd40f5..0922fdd400794ffea1ae335df27682c670c7478b 100644 --- a/l10n/es_PR.json +++ b/l10n/es_PR.json @@ -4,11 +4,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -18,22 +17,26 @@ "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -45,34 +48,36 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", + "second" : "segundo", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -80,8 +85,6 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_PY.js b/l10n/es_PY.js index 8cc2d0f458c47e9608c700e9a9936772a25e895f..c38effb044b60e6fb11fb8a63af9a1a9030b5cd9 100644 --- a/l10n/es_PY.js +++ b/l10n/es_PY.js @@ -6,11 +6,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -20,22 +19,26 @@ OC.L10N.register( "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -47,34 +50,34 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -82,8 +85,6 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_PY.json b/l10n/es_PY.json index 6532f6b266cecd2c64aba87b6e8f445a51cd40f5..610bf0493380ad6b6c77f3c62decb47b4f8eed9d 100644 --- a/l10n/es_PY.json +++ b/l10n/es_PY.json @@ -4,11 +4,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -18,22 +17,26 @@ "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -45,34 +48,34 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -80,8 +83,6 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_SV.js b/l10n/es_SV.js index 59bdfa3fb6f29ea86f7cfac749426b49d03aef4e..820fe6f3efe510899f15a00e3b066a4b752285c5 100644 --- a/l10n/es_SV.js +++ b/l10n/es_SV.js @@ -6,11 +6,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -20,22 +19,26 @@ OC.L10N.register( "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -47,34 +50,33 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -82,9 +84,7 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "User not found" : "No se encontró el usuario", + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_SV.json b/l10n/es_SV.json index 75c5ef68197428f1653af25b906ac248e5638772..1a2e253ca139132e73765e04f7be6feb5c975ef9 100644 --- a/l10n/es_SV.json +++ b/l10n/es_SV.json @@ -4,11 +4,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -18,22 +17,26 @@ "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -45,34 +48,33 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -80,9 +82,7 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento", - "User not found" : "No se encontró el usuario" + "User not found" : "No se encontró el usuario", + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/es_UY.js b/l10n/es_UY.js index cdb8e4d3274d5e6451aded9a561865df1ef6905c..accd22b60c89f5dc76fc506213f796e1c12e157a 100644 --- a/l10n/es_UY.js +++ b/l10n/es_UY.js @@ -6,11 +6,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -20,23 +19,27 @@ OC.L10N.register( "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Empty trash bin" : "Vaciar la papelera de reciclaje", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", - "Empty trash bin" : "Vaciar la papelera de reciclaje", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -48,34 +51,34 @@ OC.L10N.register( "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -83,8 +86,6 @@ OC.L10N.register( "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" }, "nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/es_UY.json b/l10n/es_UY.json index 4a0308d8cd9547b2a31c040ffbe16cc39cbed843..c6986093fbf1c8787c2d010919dccc72461c6a9c 100644 --- a/l10n/es_UY.json +++ b/l10n/es_UY.json @@ -4,11 +4,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte que %s ha publicado el calendario »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "¡Saludos!", + "Calendar" : "Calendario", "Confirm" : "Confirmar", - "Where:" : "Dónde:", "Description:" : "Descripción:", - "Calendar" : "Calendario", - "New event" : "Nuevo evento", + "Where:" : "Dónde:", "Today" : "Hoy", "Day" : "Día", "Week" : "Semana", @@ -18,23 +17,27 @@ "Copy link" : "Copiar liga", "Edit" : "Editar", "Delete" : "Borrar", - "Export" : "Exportar", - "Share link" : "Compartir liga", - "Share with users or groups" : "Compartir con otros usuarios o grupos", - "can edit" : "puede editar", "New calendar" : "Nuevo calendario", + "Export" : "Exportar", + "Empty trash bin" : "Vaciar la papelera de reciclaje", "Name" : "Nombre", "Deleted" : "Borrado", "Restore" : "Restaurar", "Delete permanently" : "Borrar permanentemente", - "Empty trash bin" : "Vaciar la papelera de reciclaje", + "Deck" : "Deck", + "Hidden" : "Oculto", + "Share link" : "Compartir liga", + "can edit" : "puede editar", + "Share with users or groups" : "Compartir con otros usuarios o grupos", + "Save" : "Guardar", "Filename" : "Nombre del archivo", "Cancel" : "Cancelar", "Automatic" : "Automático", - "or" : "o", "List view" : "Vista de lista", "Actions" : "Acciones", + "or" : "o", "Show week numbers" : "Mostrar número de semana", + "Update" : "Actualizar", "Location" : "Ubicación", "Description" : "Descripción", "to" : "para", @@ -46,34 +49,34 @@ "Friday" : "Viernes", "Saturday" : "Sábado", "Sunday" : "Domingo", - "Save" : "Guardar", - "Update" : "Actualizar", "Your email address" : "Tu dirección de correo electrónico", "Notification" : "Notificación", "Email" : "Correo electrónico", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Selecciona el archivo a agregar como adjunto", + "Delete file" : "Borrar archivo", "Unknown" : "Desconocido", "Accept" : "Aceptar", "Decline" : "Declinar", "Tentative" : "Tentativo", - "Send email" : "Enviar correo electrónico", - "All day" : "Todo el día", + "Attendees" : "Asistentes", "Repeat" : "Repetir", "never" : "nunca", "after" : "después", + "Resources" : "Recursos", "available" : "disponible", - "More" : "Más", "Global" : "Global", + "Subscribe" : "Suscribir", "Personal" : "Personal", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo el día", "Close" : "Cerrar", "Anniversary" : "Aniversario", "Week {number} of {year}" : "Semana {number} de {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Prev" : "Prev", - "Next" : "Siguiente", "Other" : "Otro", "When shared show full event" : "Al compartir, mostrar el evento completo", "When shared show only busy" : "Al compartir, mostrar sólo como ocupado ", @@ -81,8 +84,6 @@ "Status" : "Estatus", "Confirmed" : "Confirmado", "Categories" : "Categorías", - "Talk" : "Hablar", - "Mail" : "Correo", - "Birthday" : "Fecha de nacimiento" + "Details" : "Detalles" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/et_EE.js b/l10n/et_EE.js index 5316d7d4f27a21d26805e406f691733ebc65ce15..bd8bb37d42772290a4e16be0d4419d4a063db360 100644 --- a/l10n/et_EE.js +++ b/l10n/et_EE.js @@ -1,61 +1,239 @@ OC.L10N.register( "calendar", { - "%s has published the calendar »%s«" : "%s avaldas kalendri »%s«", + "Provided email-address is too long" : "Sisestatud e-postiaadress on liiga pikk", + "User-Session unexpectedly expired" : "Kasutajasessioon aegus ootamatult", + "Provided email-address is not valid" : "Sisestatud e-postiaadress pole korrektne", + "%s has published the calendar »%s«" : "%s avaldas kalendri „%s“", + "Unexpected error sending email. Please contact your administrator." : "Ootamatu viga e-kirja saatmisel. Palun võta ühendust oma peakasutajaga.", + "Successfully sent email to %1$s" : "E-kiri on saadetud kasutajale %1$s", "Hello," : "Tere,", - "We wanted to inform you that %s has published the calendar »%s«." : "Tahtsime Sind informeerida, et %s on avaldanud kalendri»%s«.", - "Open »%s«" : "Ava »%s«", + "We wanted to inform you that %s has published the calendar »%s«." : "Tahtsime Sind informeerida, et %s on avaldanud „%s“ kalendri.", + "Open »%s«" : "Ava „%s“", "Cheers!" : "Tervist!", + "Upcoming events" : "Tulekul sündmused", + "No more events today" : "Täna rohkem sündmuseid pole", + "No upcoming events" : "Tulekul sündmuseid pole", + "More events" : "Rohkem sündmuseid", + "%1$s with %2$s" : "%1$s ja %2$s", + "Calendar" : "Kalender", + "New booking {booking}" : "Uus broneering „{booking}“", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) leppis kokku kohtumise „{config_display_name}“ algusega {date_time}.", + "Appointments" : "Kohtumised", + "Schedule appointment \"%s\"" : "Ajasta kokkulepitud kohtumine „%s“", + "Schedule an appointment" : "Ajasta kokkulepitud kohtumine", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Valmistu „%s“ ürituseks", + "Follow up for %s" : "„%s“ ürituse järelkaja", + "Your appointment \"%s\" with %s needs confirmation" : "Sinu „%s“ osalejaga „%s“ vajab kinnitamist", + "Dear %s, please confirm your booking" : "Lugupeetud %s, palun kinnita oma broneering", "Confirm" : "Kinnita", - "Where:" : "Kus:", + "Appointment with:" : "Kokkulepitud kohtumine kasutajaga:", "Description:" : "Kirjeldus:", - "Calendar" : "Kalender", + "This confirmation link expires in %s hours." : "See kinnituslink aegub %s tunni möödudes.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Kui soovid kohtumise broneeringut tühistada, siis võta ühendust korraldajaga vastates sellele kirjale või külastades tema profiili.", + "Your appointment \"%s\" with %s has been accepted" : "Sinu kohtumine „%s“ kasutajaga „%s“ on k innitatud", + "Dear %s, your booking has been accepted." : "Lugupeetud %s, sinu broneering on kinnitatud.", + "Appointment for:" : "Kohtumine:", + "Date:" : "Kuupäev:", + "You will receive a link with the confirmation email" : "Sa saad lingi kinnituskirjaga", + "Where:" : "Kus:", + "Comment:" : "Kommentaar:", + "You have a new appointment booking \"%s\" from %s" : "Sul on uus kohtumise broneering „%s“ kasutajalt „%s“", + "Dear %s, %s (%s) booked an appointment with you." : "Lugupeetud %s, %s (%s) broneeris sinuga kohtumise.", + "A Calendar app for Nextcloud" : "Nextcloudi kalendrirakendus", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Kalendrirakendus Nextcloudi jaoks. Sünkroniseeri sündmusi erinevatest seadmetest oma Nextcloudi serverisse ja muuda neid võrgus.\n\n* 🚀 **Lõiming muude Nextcloudi rakendustega!** Nagu näiteks Kontaktid, Kõned, Ülesanded, Kanban and Tiimid\n* 🌐 **WebCAL-i tugi!** Tahad näha oma lemmikklubide mängude aegu oma kalendris? Pole probleemi!\n* 🙋 **Osalejad!** Kutsu teisi oma sündmustele\n* ⌚ **Vaba/Hõivatud!** Vaata, millal osalejad saaksid tulla\n* ⏰ **Meeldetuletused!** Telli ürituste meeldetuletused brauseriteadetena või e-kirjadena\n* 🔍 **Otsing!** Leia oma sündmused kiiresti ja mugavalt\n* ☑️ **Ülesanded!** Näed ülesannete ja Kanbani kaartide tähtaegu otse kalendris\n* 🔈 **Jututoad!** Lisa kohtumise broneerimisel ühe klõpsuga asjakohane Kõnerakenduse jututuba\n* 📆 **Kohtumiste broneerimine** Saada teistele link, mis võimaldab neil broneerida kohtumist sinuga ning kasuta [selleks seda rakendust](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Manused!** Lisa, laadi üles ja vaata sündmuste manused\n* 🙈 **Me ei tegele ratta uuesti leiutamisega!** Selle rakenduse aluseks on suurepärased teegid: [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) ja [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Eelmine päev", "Previous week" : "Eelmine nädal", + "Previous year" : "Eelmine aasta", "Previous month" : "Eelmine kuu", "Next day" : "Järgmine päev", "Next week" : "Järgmine nädal", + "Next year" : "Järgmine aasta", "Next month" : "Järgmine kuu", - "New event" : "Uus sündmus", + "Create new event" : "Lisa uus sündmus", + "Event" : "Sündmus", "Today" : "Täna", "Day" : "Päev", "Week" : "Nädal", "Month" : "Kuu", + "Year" : "Aasta", + "List" : "Loend", + "Appointment link was copied to clipboard" : "Kohtumise link on kopeeritud lõikelauale", + "Appointment link could not be copied to clipboard" : "Kohtumise linki ei õnnestunud lõikelauale kopeerida", "Preview" : "Eelvaade", "Copy link" : "Kopeeri link", "Edit" : "Redigeeri", "Delete" : "Kustuta", + "Appointment schedules" : "Kokkulepitud kohtumiste ajakava", + "Create new" : "Loo uus", + "Disable calendar \"{calendar}\"" : "Lülita välja „{calendar}“ kalender", + "Disable untitled calendar" : "Lülita välja nimetu kalender", + "Enable calendar \"{calendar}\"" : "Lülita sisse „{calendar}“ kalender", + "Enable untitled calendar" : "Lülita sisse nimetu kalender", + "An error occurred, unable to change visibility of the calendar." : "Tekkis viga ja kalendri nähtavust pole võimalik muuta.", "Untitled calendar" : "Nimetu kalender", - "Edit name" : "Muuda nime", - "Saving name …" : "Salvestan nime ...", - "Edit color" : "Muuda värvi", - "Saving color …" : "Salvestan värvi ...", - "Copy private link" : "Kopeeri privaatne link", - "Export" : "Ekspordi", - "Share link" : "Jaga link", - "Publish calendar" : "Avalda kalender", - "Copy public link" : "Kopeeri avalik link", - "Delete share link" : "Kustuta jagamise link", - "Share with users or groups" : "Jaga kasutajate või gruppidega", - "No users or groups" : "Ei ole kasutajaid või gruppe", - "can edit" : "saab muuta", - "Unshare with {displayName}" : "Lõpeta jagamine kasutajaga: {displayName}", - "+ New calendar" : "+ Uus kalender", + "Shared with you by" : "Seda jagas sinuga", + "Edit and share calendar" : "Muuda ja jaga kalendrit", + "Edit calendar" : "Muuda kalendrit", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Lõpetan kalendri jagamise {countdown} sekundi möödumisel","Lõpetan kalendri jagamise {countdown} sekundi möödumisel"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Kustutan kalendri {countdown} sekundi möödumisel","Kustutan kalendri {countdown} sekundi möödumisel"], + "An error occurred, unable to create the calendar." : "Tekkis viga ja kalendri loomine pole võimalik.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Palun sisesta korrektne link (alguses peab olema http://, https://, webcal:// või webcals://)", + "Calendars" : "Kalendrid", + "Add new" : "Lisa uus", "New calendar" : "Uus kalender", + "Name for new calendar" : "Uue kalendri nimi", + "Creating calendar …" : "Loon kalendrit…", + "New calendar with task list" : "Uus kalender ülesannete loendiga", + "New subscription from link (read-only)" : "Uus tellimus lingi põhjal (vaid lugemisõigustes)", + "Creating subscription …" : "Loon tellimust…", + "Add public holiday calendar" : "Lisa riigipühade kalender", + "Add custom public calendar" : "Lisa kohandatud riigipühade kalender", + "Calendar link copied to clipboard." : "Kalendri link on kopeeritud lõikelauale.", + "Calendar link could not be copied to clipboard." : "Kalendri linki ei õnnestunud lõikelauale kopeerida.", + "Copy subscription link" : "Kopeeri tellimuse link", + "Copying link …" : "Kopeerin linki…", + "Copied link" : "Link on kopeeritud", + "Could not copy link" : "Linki ei õnnestunud kopeerida", + "Export" : "Ekspordi", + "Untitled item" : "Tundmatu kirje", + "Unknown calendar" : "Tundmatu kalender", + "Could not load deleted calendars and objects" : "Kustutatud kalendrite ja objektide laadimine ei õnnestunud", + "Could not delete calendar or event" : "Kalendri või sündmuse kustutamine ei õnnestunud", + "Could not restore calendar or event" : "Kalendri või sündmuse taastamine ei õnnestunud", + "Do you really want to empty the trash bin?" : "Oled sa kindel, et soovid prügikasti tühjendada?", + "Empty trash bin" : "Tühjenda prügikast", + "Trash bin" : "Prügikast", + "Loading deleted items." : "Laadin kustutatud kirjeid.", + "You do not have any deleted items." : "Sul pole kustutatud kirjeid.", "Name" : "Nimi", "Deleted" : "Kustutatud", "Restore" : "Taasta", "Delete permanently" : "Kustuta jäädavalt", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Prügikastis olevad objektid kustutatakse {numDays} päeva pärast","Prügikastis olevad objektid kustutatakse {numDays} päeva pärast"], + "Could not update calendar order." : "Kalendri järjekorda ei õnnestunud uuendada.", + "Shared calendars" : "Jagatud kalendrid", + "Deck" : "Deck", + "Hidden" : "Peidetud", + "Internal link" : "Sisemine link", + "A private link that can be used with external clients" : "Privaatne link, mida saad kasutada väliste klientide jaoks", + "Copy internal link" : "Kopeeri sisemine link", + "An error occurred, unable to publish calendar." : "Tekkis viga ja kalendri avaldamine pole võimalik.", + "An error occurred, unable to send email." : "Tekkis viga ja e-kirja saatmine pole võimalik.", + "Embed code copied to clipboard." : "Lõimitav kood on kopeeritud lõikelauale.", + "Embed code could not be copied to clipboard." : "Ei õnnestunud kopeerida lõimitavat koodi lõikelauale.", + "Unpublishing calendar failed" : "Ei õnnestunud lõpetada kalendri avaldamist", + "Share link" : "Jaga linki", + "Copy public link" : "Kopeeri avalik link", + "Send link to calendar via email" : "Saada link kalendrisse e-posti teel", + "Enter one address" : "Sisesta üks aadress", + "Sending email …" : "E-kiri on saatmisel…", + "Copy embedding code" : "Kopeeri lõimitav kood", + "Copying code …" : "Kopeerin koodi…", + "Copied code" : "Kood on kopeeritud", + "Could not copy code" : "Koodi ei õnnestunud kopeerida", + "Delete share link" : "Kustuta jagamise link", + "Deleting share link …" : "Kustutan jagamislinki…", + "{teamDisplayName} (Team)" : "{teamDisplayName} (tiim)", + "An error occurred while unsharing the calendar." : "Kalendri jagamise lõpetamisel tekkis viga.", + "An error occurred, unable to change the permission of the share." : "Tekkis viga ja jaosmeedia õigusi pole võimalik muuta.", + "can edit" : "saab muuta", + "Unshare with {displayName}" : "Lõpeta jagamine kasutajaga: {displayName}", + "Share with users or groups" : "Jaga kasutajate või gruppidega", + "No users or groups" : "Ei ole kasutajaid või gruppe", + "Failed to save calendar name and color" : "Kalendri värvi ja nime salvestamine ei õnnestunud", + "Calendar name …" : "Kalendri nimi…", + "Never show me as busy (set this calendar to transparent)" : "Ära iialgi näita, et ma olen hõivatud (muuda see kalender läbipaistvaks)", + "Share calendar" : "Jaga kalendrit", + "Unshare from me" : "Eemalda minult see jagamine", + "Save" : "Salvesta", "Import calendars" : "Impordi kalendrid", - "Filename" : "Faili nimi", + "Please select a calendar to import into …" : "Palun vali kalender, kuhu soovid importida…", + "Filename" : "Failinimi", + "Calendar to import into" : "Imporditav kalender", "Cancel" : "Loobu", + "_Import calendar_::_Import calendars_" : ["Impordi kalender","Impordi kalendrid"], + "Select the default location for attachments" : "Vali manustele vaikimisi asukoht", + "Pick" : "Vali", + "Invalid location selected" : "Vigane asukoht valitud", + "Attachments folder successfully saved." : "Manuste kausta salvestamine õnnestus.", + "Error on saving attachments folder." : "Viga manuste kausta salvestamisel.", + "Default attachments location" : "Manuste vaikimisi asukoht", + "{filename} could not be parsed" : "{filename} töötlemine ei õnnestunud", + "No valid files found, aborting import" : "Ühtegi korrektset faili ei leidu, katkestan impordi", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n sündmuse importimine õnnestus","%n sündmuse importimine õnnestus"], + "Import partially failed. Imported {accepted} out of {total}." : "Importimine osaliselt ei õnnestunud. Importisin {accepted} kokku {total}-st kirjest.", "Automatic" : "Automaatne", + "Automatic ({detected})" : "Automaatne ({detected})", + "New setting was not saved successfully." : "Uue seadistuse salvestamine ei õnnestunud.", + "Navigation" : "Liikumine", + "Previous period" : "Eelmine periood", + "Next period" : "Järgmine periood", + "Views" : "Vaated", + "Day view" : "Päeva vaade", + "Week view" : "Nädala vaade", + "Month view" : "Kuuvaade", + "Year view" : "Aasta vaade", "List view" : "Nimekirjavaade", "Actions" : "Tegevused", + "Create event" : "Lisa sündmus", + "Show shortcuts" : "Näita kiirklahve", + "Editor" : "Muutmisvaade", + "Close editor" : "Sulge muutmisvaade", + "Save edited event" : "Salvesta muudetud sündmus", + "Delete edited event" : "Kustuta muudetud sündmus", + "Duplicate event" : "Tee sündmusest koopia", + "Shortcut overview" : "Kiirklahvide ülevaade", + "or" : "või", + "Calendar settings" : "Kalendri seadistused", + "At event start" : "Sündmuse algamisel", + "No reminder" : "Meeldetuletust pole", + "Failed to save default calendar" : "Vaikimisi kalendri salvestamine ei õnnestunud", + "CalDAV link copied to clipboard." : "CalDAV-i link on kopeeritud lõikelauale.", + "CalDAV link could not be copied to clipboard." : "CalDAV-i linki ei õnnestunud lõikelauale kopeerida.", + "Enable birthday calendar" : "Lülita sisse sünnipäevade kalender", + "Show tasks in calendar" : "Näita kalendris ülesandeid", + "Enable simplified editor" : "Kasuta lihtsat muutmisvaadet", + "Limit the number of events displayed in the monthly view" : "Piira kuuvaates kuvatavate sündmuste arvu", + "Show weekends" : "Näita nädalavahetusi", "Show week numbers" : "Näita nädalanumberid", + "Time increments" : "Ajasammud", + "Default calendar for incoming invitations" : "Vaikimisi kalender sulle saadetud kutsetele", + "Default reminder" : "Vaikimisi meeldetuletus", + "Copy primary CalDAV address" : "Kopeeri primaarne CalDAV-i aadress", + "Copy iOS/macOS CalDAV address" : "Kopeeri CalDAV-i aadress iOS/macOS-i jaoks", + "Personal availability settings" : "Isikliku kohaloleku seadistused", + "Show keyboard shortcuts" : "Näita klaviatuuri kiirklahve", + "Appointment schedule successfully created" : "Kokkulepitud kohtumiste ajakava loomine õnnestus", + "Appointment schedule successfully updated" : "Kokkulepitud kohtumiste ajakava uuendamine õnnestus", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minut","{duration} minutit"], + "0 minutes" : "0 minutit", + "_{duration} hour_::_{duration} hours_" : ["{duration} tund","{duration} tundi"], + "_{duration} day_::_{duration} days_" : ["{duration} päev","{duration} päeva"], + "_{duration} week_::_{duration} weeks_" : ["{duration} nädal","{duration} nädalat"], + "_{duration} month_::_{duration} months_" : ["{duration} kuu","{duration} kuud"], + "_{duration} year_::_{duration} years_" : ["{duration} aasta","{duration} aastat"], + "To configure appointments, add your email address in personal settings." : "Kokkulepitud kohtumiste seadistamiseks palun lisa oma seadistustesse e-posti aadress.", + "Public – shown on the profile page" : "Avalik - näidatud profiili lehel", + "Private – only accessible via secret link" : "Privaatne - ligipääsetav vaid salajase lingi alusel", + "Appointment schedule saved" : "Kokkulepitud kohtumiste ajakava on salvestatud", + "Create appointment schedule" : "Loo kokkulepitud kohtumiste ajakava", + "Edit appointment schedule" : "Muuda kokkulepitud kohtumiste ajakava", + "Update" : "Uuenda", + "Appointment name" : "Kohtumise nimi", "Location" : "Asukoht", + "Create a Talk room" : "Loo Kõnerakenduse jututuba", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Rakendus koostab iga broneeritud kohtumise jaoks unikaalse lingi ja lisab selle kinnituskirja", "Description" : "Kirjeldus", + "Visibility" : "Nähtavus", + "Duration" : "Kestus", + "Increments" : "Ajasammud", + "Additional calendars to check for conflicts" : "Täiendavad kalendrid, kust peaksime ajastamise konflikte kontrollima", + "Pick time ranges where appointments are allowed" : "Vali üldine ajavahemik, kuhu kohtumisi saaks broneerida", "to" : "saaja", + "Delete slot" : "Kustuta ajavahemik", + "No times set" : "Ajad on määramata", "Add" : "Lisa", "Monday" : "Esmaspäev", "Tuesday" : "Teisipäev", @@ -64,105 +242,359 @@ OC.L10N.register( "Friday" : "Reede", "Saturday" : "Laupäev", "Sunday" : "Pühapäev", - "Save" : "Salvesta", - "Update" : "Uuenda", + "Weekdays" : "Nädalapäevad", + "Add time before and after the event" : "Lisa aeg enne ja pärast sündmust", + "Before the event" : "Enne sündmust", + "After the event" : "Pärast sündmust", + "Planning restrictions" : "Piirangud kavandamsiel", + "Minimum time before next available slot" : "Miinimumaeg enne järgmist ajavahemikku", + "Max slots per day" : "Ajavahemikke päevas", + "Limit how far in the future appointments can be booked" : "Piira kui kaugele tulevikku on võimalik kohtumisi broneerida", + "It seems a rate limit has been reached. Please try again later." : "Tundub, et päringute arvu ülempiir on käes. Palun proovi hiljem uuesti.", + "Please confirm your reservation" : "Palun kinnita oma broneering", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Me saatsime sulle e-kirja üksikasjadega. Klikates seal leiduvat linki, palun kinnita oma kohtumine. Sa võid selle lehe nüüd sulgeda.", + "Your name" : "Sinu nimi", "Your email address" : "Sinu e-posti aadress", - "Email" : "Epost", + "Please share anything that will help prepare for our meeting" : "Palun jaga kõike, mis võiks aidata kohtumiseks valmistuda", + "Could not book the appointment. Please try again later or contact the organizer." : "Kohtumist ei õnnestunud broneerida. Palun proovi hiljem uuesti või küsi korraldajalt nõu.", + "Back" : "Tagasi", + "Book appointment" : "Broneeri kohtumine", + "Error fetching Talk conversations." : "Viga Kõnerakenduse vestluste laadimisel.", + "Conversation does not have a valid URL." : "Vestlusel pole korrektset võrguaadressi", + "Successfully added Talk conversation link to location." : "Kõnerakenduse vestluse lingi lisamine asukohale õnnestus.", + "Successfully added Talk conversation link to description." : "Kõnerakenduse vestluse lingi lisamine kirjeldusele õnnestus.", + "Failed to apply Talk room." : "Viga Kõnerakenduse jututoa kinnitamisel.", + "Error creating Talk conversation" : "Viga Kõnerakenduse vestluse loomisel", + "Select a Talk Room" : "Vali Kõnerakenduse jututuba", + "Add Talk conversation" : "Lisa Kõnerakenduse vestlus", + "Fetching Talk rooms…" : "Laadin Kõnerakenduse jututube…", + "No Talk room available" : "Ühtegi Kõnerakenduse jututuba pole saadaval", + "Create a new conversation" : "Loo uus vestlus", + "Select conversation" : "Vali vestlus", + "on" : "ajal", + "at" : "asukohas", + "before at" : "enne", + "Notification" : "Teavitus", + "Email" : "E-post", + "Audio notification" : "Heliteavitus", + "Other notification" : "Muu teavitus", + "Relative to event" : "Suhteliselt sündmuse suhtes", "On date" : "Kuupäeval", + "Edit time" : "Muuda aega", + "Save time" : "Salvesta aeg", + "Remove reminder" : "Eemalda meeldetuletus", + "Add reminder" : "Lisa meeldetuletus", + "seconds" : "sekundit", + "minutes" : "minutit", + "hours" : "tundi", + "days" : "päeva", + "weeks" : "nädalat", + "Choose a file to add as attachment" : "Vali fail, mida manustada", + "Choose a file to share as a link" : "Valilingiga jagatav fail", + "Attachment {name} already exist!" : "Manus {name} on juba olemas!", + "Could not upload attachment(s)" : "Manuse või manuste üleslaadimine ei õnenstunud", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Sa oled allalaadimas faili. Enne avamist palun kontrolli, kas failinimi ja kontekst on loogilised. Kas sa oled kindel, et soovid jätkata?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Sa oled avamas linki teenusesse „{host}“. Kas sa oled kindel, et soovid jätkata? Link: {link}", + "Proceed" : "Jätka", + "No attachments" : "Manuseid pole", + "Add from Files" : "Lisa failidest", + "Upload from device" : "Laadi üles seadmest", + "Delete file" : "Kustuta fail", + "Confirmation" : "Kinnitus", + "_{count} attachment_::_{count} attachments_" : ["{count} manus","{count} manust"], + "Suggested" : "Soovitatud", + "Available" : "Saadaval", + "Invitation accepted" : "Kutse on vastu võetud", + "Accepted {organizerName}'s invitation" : "Võtsid vastu kutse korraldajalt {organizerName}", + "Participation marked as tentative" : "Osalemine on kinnitatud esialgsena", + "Invitation is delegated" : "Kutse on suunatud edasi", + "Not available" : "Pole saadaval", + "Invitation declined" : "Kutse on tagasi lükatud", + "Declined {organizerName}'s invitation" : "Keeldusid korraldajal {organizerName} kutsest", + "Availability will be checked" : "Saadavus saab olema kontrollitud", + "Invitation will be sent" : "Kutse saab olema saadetud", + "Failed to check availability" : "Ei õnnestunud kontrollida saadavust", + "Failed to deliver invitation" : "Ei õnnestunud kutset kohale toimetada", + "Awaiting response" : "Ootan vastust", + "Checking availability" : "Kontrollin saadavust", + "Has not responded to {organizerName}'s invitation yet" : "Pole veel vastanud korraldaja „{organizerName}“ kutsele", + "Suggested times" : "Soovitatud ajad", + "chairperson" : "eesistuja", + "required participant" : "nõutav osaleja", + "non-participant" : "mitteosaleja", + "optional participant" : "valikuline osaleja", + "{organizer} (organizer)" : "{organizer} (korraldaja)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Osalejate, vahendite ja ruumide saadavus", + "Suggestion accepted" : "Soovitud on vastu võetud", + "Previous date" : "Eelmine kuupäev", + "Next date" : "Järgmine kuupäev", + "Legend" : "Legend", + "Out of office" : "Kontorist väljas", + "Attendees:" : "Osalejad:", + "Done" : "Valmis", + "Search room" : "Otsi koosolekuruumi", + "Room name" : "Koosolekuruumi nimi", + "Check room availability" : "Kontrolli koosolekuruumi saadavust", + "Free" : "Vaba", + "Busy (tentative)" : "Hõivatud (esialgselt)", + "Busy" : "Hõivatud", "Unknown" : "Teadmata", + "Find a time" : "Otsi aega", + "The invitation has been accepted successfully." : "Kutse on märgitud vastuvõetuks.", + "Failed to accept the invitation." : "Ei õnnestunud märkida, et kutset nõustutuks.", + "The invitation has been declined successfully." : "Kutse on märgitud keeldutuks.", + "Failed to decline the invitation." : "Ei õnnestunud märkida, et kutset keeldutuks.", + "Your participation has been marked as tentative." : "Sinu osalemine on märgitud esialgseks.", + "Failed to set the participation status to tentative." : "Ei õnnestunud määrata osalemise olekut „Kinnitatud esialgselt“.", "Accept" : "Nõustu", "Decline" : "Keeldu", "Tentative" : "Esialgne", - "Send email" : "Saada kiri", - "All day" : "Kogu päev", + "No attendees yet" : "Osalejaid veel pole", + "{invitedCount} invited, {confirmedCount} confirmed" : "Kutseid saadetud: {invitedCount}, kinnitusi on {confirmedCount}", + "Please add at least one attendee to use the \"Find a time\" feature." : "Et „Otsi aega“ toimiks lisa palun vähemalt üks osaleja.", + "Successfully appended link to talk room to location." : "Kõnerakenduse jututoa lingi lisamine asukohale õnnestus.", + "Successfully appended link to talk room to description." : "Kõnerakenduse jututoa lingi lisamine kirjeldusele õnnestus.", + "Error creating Talk room" : "Viga Kõnerakenduse jututoa loomisel", + "Attendees" : "Osalejad", + "_%n more guest_::_%n more guests_" : ["veel %n külaline","veel %n külalist"], + "Remove group" : "Eemalda grupp", + "Remove attendee" : "Eemalda osaleja", + "Request reply" : "Palun vastust", + "Chairperson" : "Eesistuja", + "Required participant" : "Vajalik osaleja", + "Optional participant" : "Võimalik osaleja", + "Non-participant" : "Mitteosaleja", + "_%n member_::_%n members_" : ["%n liige","%n liiget"], + "Search for emails, users, contacts, contact groups or teams" : "Otsi e-posti aadresse, kasutajaid, kontakte, gruppe või tiime", + "No match found" : "Vastet ei leidu", + "Note that members of circles get invited but are not synced yet." : "Palun arvesta, et tiimide liikmed saavad kutse, kuid pole veel sünkroniseeritud.", + "Note that members of contact groups get invited but are not synced yet." : "Palun arvesta, et kontaktgruppide liikmed saavad kutse, kuid pole veel sünkroniseeritud.", + "(organizer)" : "(korraldaja)", + "Make {label} the organizer" : "Määra {label} korraldajaks", + "Make {label} the organizer and attend" : "Määra {label} korraldajaks ja osalejaks", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Kutsete saatmiseks ja vastuste haldamiseks, [linkopen]palun lisa isiklikesse seadistustesse oma e-posti aadress[linkclose].", + "Remove color" : "Eemalda värv", + "Event title" : "Sündmuse peakiri", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Korduvate sündmuste komplektis oleva sündmusel ei sa valida „Kestab terve päeva“ valikut.", + "From" : "Saatja", + "To" : "Saaja", "Repeat" : "Korda", + "Repeat event" : "Korda sündmust", + "_time_::_times_" : ["kord","korda"], "never" : "mitte kunagi", + "on date" : "kuupäeval", "after" : "pärast", - "More" : "Rohkem", + "End repeat" : "Lõpeta kordamine", + "Select to end repeat" : "Vali kordamise lõpetamiseks", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "See sündmus juba on erand korduvate sündmuste komplektis. Seega sa ei saa talle korduvust lisada.", + "first" : "esimesel", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Korduvuse reegli muudatused kehtivad sellele ja tulevastele kordadele", + "Repeat every" : "Korda iga", + "By day of the month" : "Kuu päeva alusel", + "On the" : "Päeval", + "_day_::_days_" : ["päev","päeva"], + "_week_::_weeks_" : ["nädal","nädalat"], + "_month_::_months_" : ["kuu","kuud"], + "_year_::_years_" : ["aasta","aastat"], + "On specific day" : "Kindlal päeval", + "weekday" : "nädalapäev", + "weekend day" : "nädalalõpu päev", + "Does not repeat" : "Ei kordu", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Selle sündmuse korduvuse määratlus pole Nextcloudis toetatud. Kui muudad korduvuse valikuid, siis mõned neist võivad kaotsi minna.", + "No rooms or resources yet" : "Pole veel ruume ega ressursse", + "Resources" : "Ressursid", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} koht","{seatingCapacity} kohta"], + "Add resource" : "Lisa ressurss", + "Has a projector" : "Olemas on projektor", + "Has a whiteboard" : "Olemas on tahvel", + "Wheelchair accessible" : "Ligipääsetav ratastooliga", + "Remove resource" : "Eemalda ressurss", + "Search for resources or rooms" : "Otsi ressurssi või ruume", + "available" : "saadaval", + "unavailable" : "pole saadaval", + "Show all rooms" : "Näita kõiki koosolekuruume", + "Projector" : "Projektor", + "Whiteboard" : "Tahvel", + "Room type" : "Koosolekuruumi tüüp", + "Any" : "Kõik", + "Minimum seating capacity" : "Väikseim kohtade arv", + "More details" : "Täiendavad üksikasjad", + "Update this and all future" : "Uuenda seda ja kõiki tulevasi", + "Update this occurrence" : "Uuenda seda sündmust", + "Public calendar does not exist" : "Avalikku kalendrit pole olemas", + "Maybe the share was deleted or has expired?" : "Võib-olla on jaosmeedia kustutanud või aegunud?", + "from {formattedDate}" : "{formattedDate} kuupäevast", + "to {formattedDate}" : "{formattedDate} kuupäevani", + "on {formattedDate}" : "{formattedDate}", + "from {formattedDate} at {formattedTime}" : " {formattedDate}, {formattedTime}", + "to {formattedDate} at {formattedTime}" : "{formattedDate} kell {formattedTime}", + "on {formattedDate} at {formattedTime}" : "{formattedDate} kuupäeval, kell {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} kell {formattedTime}", + "Please enter a valid date" : "Palun sisesta korrektne kuupäev", + "Please enter a valid date and time" : "Palun sisesta korrektne kuupäev ja aeg", + "Select a time zone" : "Vali ajavöönd", + "Please select a time zone:" : "Palun vali ajavöönd:", + "Pick a time" : "Vali aeg", + "Pick a date" : "Vali kuupäev", + "Type to search time zone" : "Ajavööndi otsimiseks alusta kirjutamist", "Global" : "Üldine", + "Holidays in {region}" : "Riigipühad: {region}", + "An error occurred, unable to read public calendars." : "Tekkis viga ja avaliku kalendri lugemine pole võimalik.", + "An error occurred, unable to subscribe to calendar." : "Tekkis viga ja kalendri tellimine pole võimalik.", + "Public holiday calendars" : "Avalikud riigipühade kalendrid", + "Public calendars" : "Avalikud kalendrid", + "No valid public calendars configured" : "Kehtivaid avalikke kalendreid pole seadistatud", + "Speak to the server administrator to resolve this issue." : "Selle vea lahendamiseks palun suhtle oma serveri haldajaga.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Avalikud riigipühade kalendrid on koostanud Thunderbird. Kalendriandmed laaditakse alla siit: {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Neid avalikke kalendreis on soovitanud serveri haldaja. Kalendrite andmed laaditakse alla vastavast veebisaidist.", + "By {authors}" : "Koostajalt {authors}", + "Subscribed" : "Tellitud", + "Subscribe" : "Telli", + "Could not fetch slots" : "Ajavahemikke ei olnud võimalik laadida", + "Select a date" : "Vali kuupäev", + "Select slot" : "Vali ajavahemik", + "No slots available" : "Sobilikke ajavahemikke ei leidu", + "The slot for your appointment has been confirmed" : "Ajavahemik sinu kohtumise jaoks on kinnitatud", + "Appointment Details:" : "Kohtumise üksikasjad:", + "Time:" : "Aeg:", + "Booked for:" : "Broneeritud:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Tänud. Sinu broneering on kinitatud: {startDate}-{endDate}.", + "Book another appointment:" : "Broneeri mõni muu kokkulepitud kohtumise aeg:", + "See all available slots" : "Vaata kõiki vabu ajavahemikke", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Ajavahemik {startDate}-{endDate} pole sinu kohtumise jaoks enam saadaval.", + "Please book a different slot:" : "Palun broneeri teine ajavahemik:", + "Book an appointment with {name}" : "Broneeri kohtumine: „{name}“", + "No public appointments found for {name}" : "Ei leidu avalikku kohtumist: „{name}“", "Personal" : "Isiklik", - "Details" : "Üksikasjad", - "Attendees" : "Osalejad", - "Resources" : "Ressursid", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Automaatne ajavööndikontroll tuvastas, et kasutad UTC/GMT ajavööndit.\nSuure tõenäosusega on tegemist sinu veebibrauseri trurvameetmega.\nKui see pole nii, siis saad kalendri seadistustest määrata õige ajavööndi.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Sinu seadistatud ajavööndit ({timezoneId}) ei leidu. Kasutame varuvariandina UTC/GMT valikut.\nKalendri seadistustest määrata õige ajavööndi ning kui tegemist on veaga, siis palun anna meile sellest teada..", + "Availability of {displayName}" : "{displayName} saadavus", + "Edit event" : "Muuda sündmust", + "Event does not exist" : "Sündmust pole olemas", + "Duplicate" : "Tee koopia", + "Delete this occurrence" : "Kustuta vaid see kord", + "Delete this and all future" : "Kustuta see ja kõik tulevased", + "All day" : "Kestab terve päeva", + "Modifications wont get propagated to the organizer and other attendees" : "Muudatused ei jõua ei korraldaja ega muude osalejateni", + "Managing shared access" : "Halda jagatud ligipääsu", + "Deny access" : "Keela ligipääs", + "Invite" : "Kutse", + "_User requires access to your file_::_Users require access to your file_" : ["Kasutaja vajab jagatud ligipääsu","Kasutajad vajavad jagatud ligipääsu"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Manus eeldab jagatud ligipääsu","Manused eeldavad jagatud ligipääsu"], + "Untitled event" : "Ilma nimeta sündmus", "Close" : "Sulge", + "Modifications will not get propagated to the organizer and other attendees" : "Muudatused ei jõua ei korraldaja ega muude osalejateni", + "Subscribe to {name}" : "Telli: „{name}“", + "Export {name}" : "Ekspordi „{name}“", + "Show availability" : "Näita saadavust", "Anniversary" : "Aastapäev", "Appointment" : "Kohtumine", + "Business" : "Ärikohtumine", + "Education" : "Koolitus", + "Holiday" : "Riigipüha", + "Meeting" : "Kohtumine", + "Miscellaneous" : "Varia", + "Non-working hours" : "Väljaspool tööaega", + "Not in office" : "Pole kohal", + "Phone call" : "Telefonikõne", + "Sick day" : "Tervisepäev", + "Special occasion" : "Oluline sündmus", + "Travel" : "Reis", "Vacation" : "Puhkus", + "Midnight on the day the event starts" : "Sündmuse alguspäeva kesköösel", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n päev enne sündmust kell {formattedHourMinute}","%n päeva enne sündmust kell {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n nädal enne sündmust kell {formattedHourMinute}","%n nädalat enne sündmust kell {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "sündmuse päeval kell {formattedHourMinute}", + "at the event's start" : "sündmuse lõpus", + "at the event's end" : "sündmuse alguses", + "{time} before the event starts" : "{time} enne sündmuse algust", + "{time} before the event ends" : "{time} enne sündmuse lõppu", + "{time} after the event starts" : "{time} peale sündmuse algust", + "{time} after the event ends" : "{time} peale sündmuse lõppu", + "on {time}" : " {time}", + "on {time} ({timezoneId})" : " {time} ({timezoneId})", "Week {number} of {year}" : "Nädal nr. {number} aastas {year}", - "Does not repeat" : "Ei kordu", "Daily" : "Iga päev", "Weekly" : "Iga nädal", "Monthly" : "Igakuine", "Yearly" : "Igaastane", - "Next" : "Järgmine", + "_Every %n day_::_Every %n days_" : ["Iga %n. päev","Iga %n. päev"], + "_Every %n week_::_Every %n weeks_" : ["Iga %n. nädal","Iga %n. nädal"], + "_Every %n month_::_Every %n months_" : ["Iga %n. kuu","Iga %n. kuu"], + "_Every %n year_::_Every %n years_" : ["Iga %n. aasta","Iga %n. aasta"], + "_on {weekday}_::_on {weekdays}_" : ["nädalapäeval „{weekday}“","nädalapäevdel „{weekdays}“"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["päeval „{dayOfMonthList}“","päevadel „{dayOfMonthList}“"], + "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber}. päeval {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "{monthNames} kuus {dayOfMonthList}. päeval", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames} kuus {ordinalNumber}. päeval {byDaySet}", + "until {untilDate}" : "kuni {untilDate}", + "_%n time_::_%n times_" : ["%n kord","%n korda"], + "second" : "teisel", + "third" : "kolmandal", + "fourth" : "nejandal", + "fifth" : "viiendal", + "second to last" : "tagant teisel", + "last" : "viimasel", + "Untitled task" : "Ilma nimeta pealkiri", + "Please ask your administrator to enable the Tasks App." : "Palu oma serveri haldajal paigaldada Ülesannete rakendus.", + "You are not allowed to edit this event as an attendee." : "Kutsutuna pole sul õigust selle sündmuse muutmiseks.", + "W" : "Nd", + "%n more" : "Veel %n", + "No events to display" : "Pole sündmusi, mida kuvada", + "All participants declined" : "Kõik osalejad keeldusid", + "Please confirm your participation" : "Palun kinnita oma osalemine", + "You declined this event" : "Sa keeldusid sündmusel osalemast", + "Your participation is tentative" : "Oled esialgselt kinnitanud oma osalemise", + "_+%n more_::_+%n more_" : ["veel +%n","veel +%n"], + "No events" : "Sündmusi pole", + "Create a new event or change the visible time-range" : "Loo uus sündmus või muuda kuvatavat ajavahemikku", + "Failed to save event" : "Sündmust ei õnnestu salvestada", + "It might have been deleted, or there was a typo in a link" : "Ta kas on kustutatud või on lingis trükiviga", + "It might have been deleted, or there was a typo in the link" : "Ta kas on kustutatud või on lingis trükiviga", + "Meeting room" : "Koosolekuruum", + "Lecture hall" : "Loengusaal", + "Seminar room" : "Seminariruum", "Other" : "Muu", + "When shared show" : "Jagamisel näita", "When shared show full event" : "Kui on jagatud, siis näita kogu sündmust", "When shared show only busy" : "Kui on jagatud, siis näita ainult, kas on hõivatud", "When shared hide this event" : "Kui on jagatud, siis peida see sündmus", + "The visibility of this event in shared calendars." : "Selle sündmuse nähtavus jagatud kalendrites.", + "Add a location" : "Lisa asukoht", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Lisa kirjeldus\n\n- Mis on kohtumise teema\n- Päevakorrapunktid\n- Kõik, milleks osalejad peaks valmistuma", "Status" : "Staatus", "Confirmed" : "Kinnitatud", + "Canceled" : "Tühistatud", + "Confirmation about the overall status of the event." : "Kinnitus ürituse üldise oleku kohta.", + "Show as" : "Näita kui", + "Take this event into account when calculating free-busy information." : "Arvesta selle sündmusega Vaba/Hõivatud olekute tuvastamisel.", "Categories" : "Kategooriad", - "Presentation" : "Esitlus", - "Talk" : "Talk", - "Camping" : "Telkimine", - "Camp" : "Laager", - "Movie" : "Film", - "Cinema" : "Kino", - "Graduation" : "Lõpetamine", - "Brainstorm" : "Ajutorm", - "Baseball" : "Pesapall", - "Office" : "Kontor", - "Mail" : "Kirjad", - "Soccer" : "Jalgpall", - "Football" : "Ameerika jalgpall", - "Drive" : "Sõit", - "Bicycle" : "Jalgratas", - "Biking" : "Jalgrattaga sõitmine", - "Basketball" : "Korvpall", - "Fishing" : "Kalapüük", - "Hiking" : "Matkaminee", - "Hike" : "Matk", - "Art" : "Kunst", - "Exhibition" : "Näitus", - "Museum" : "Muuseum", - "Pilates" : "Pilates", - "Park" : "Park", - "Studying" : "Õppimine", - "Doctor" : "Arst", - "Health" : "Tervis", - "Dentist" : "Hambaarst", - "Interview" : "Intervjuu", - "Training" : "Koolitus", - "Work out" : "Trenn", - "Working out" : "Treening", - "Barber" : "Habemeajaja", - "Haircut" : "Juukselõikus", - "Exam" : "Eksam", - "Fireworks" : "Ilutulestik", - "Running" : "Jooksmine", - "Go for a run" : "Mine jooksma", - "Marathon" : "Maraton", - "Call" : "Telefonikõne", - "Calling" : "Helistamine", - "Christmas" : "Jõulud", - "Conference" : "Konverents", - "Pizza" : "Pitsa", - "Travelling" : "Reisimine", - "Journey" : "Teekond", - "Collaborate" : "Koostöö", - "Pair" : "Paar", - "Lecture" : "Loeng", - "Seminar" : "Seminar", - "Photograph" : "Foto", - "Party" : "Pidu", - "Celebration" : "Tähistamine", - "Celebrate" : "Tähista", - "Birthday" : "Sünnipäev", - "Skate" : "Uisutamine", - "Skateboard" : "Rula", - "Wine tasting" : "Veini degusteerimine", - "Golf" : "Golf", - "Dinner" : "Õhtusöök", - "User not found" : "Kasutajat ei leitud" + "Categories help you to structure and organize your events." : "Kategooriad aitavad sul oma sündmusi struktureerida ja korraldada.", + "Search or add categories" : "Otsi või lisa kategooriaid", + "Add this as a new category" : "Lisa see uue kategooriana", + "Custom color" : "Sinu valitud värv", + "Special color of this event. Overrides the calendar-color." : "Sellele sündmusele määratud värv, mis asendab kalendri standardvärvi.", + "Error while sharing file" : "Viga faili jagamisel", + "Error while sharing file with user" : "Viga kasutajale jagamisel", + "Error creating a folder {folder}" : "Viga {folder} kausta loomisel", + "Attachment {fileName} already exists!" : "Manus nimega „{fileName}“ on juba olemas!", + "Attachment {fileName} added!" : "{fileName} manus on lisatud!", + "An error occurred during uploading file {fileName}" : "Viga {fileName} faili üleslaadimisel", + "An error occurred during getting file information" : "Failiteabe kättesaamisel tekkis viga", + "Talk conversation for event" : "Kõnerakenduse vestlus ürituse jaoks", + "An error occurred, unable to delete the calendar." : "Tekkis viga ja kalendri kustutamine pole võimalik.", + "Imported {filename}" : "Importisin „{filename}“ faili", + "This is an event reminder." : "See on sündmuse meeldetuletus.", + "Error while parsing a PROPFIND error" : "Viga PROPFIND-meetodi vea töötlemisel", + "Appointment not found" : "Kokkulepitud kohtumist ei leidu", + "User not found" : "Kasutajat ei leitud", + "Reminder" : "Meeldetuletused", + "+ Add reminder" : "+ Lisa meeldetuletus", + "Select automatic slot" : "Vali automaatselt soovitatud ajavahemik", + "with" : "koos", + "Available times:" : "Saadaolevad ajad:", + "Suggestions" : "Soovitused", + "Details" : "Üksikasjad" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/et_EE.json b/l10n/et_EE.json index e5a4bad9de92699b565f16b6fc328515e8c86d39..9d5f7e20e4f7b5117bb49702730d21b498b1318d 100644 --- a/l10n/et_EE.json +++ b/l10n/et_EE.json @@ -1,59 +1,237 @@ { "translations": { - "%s has published the calendar »%s«" : "%s avaldas kalendri »%s«", + "Provided email-address is too long" : "Sisestatud e-postiaadress on liiga pikk", + "User-Session unexpectedly expired" : "Kasutajasessioon aegus ootamatult", + "Provided email-address is not valid" : "Sisestatud e-postiaadress pole korrektne", + "%s has published the calendar »%s«" : "%s avaldas kalendri „%s“", + "Unexpected error sending email. Please contact your administrator." : "Ootamatu viga e-kirja saatmisel. Palun võta ühendust oma peakasutajaga.", + "Successfully sent email to %1$s" : "E-kiri on saadetud kasutajale %1$s", "Hello," : "Tere,", - "We wanted to inform you that %s has published the calendar »%s«." : "Tahtsime Sind informeerida, et %s on avaldanud kalendri»%s«.", - "Open »%s«" : "Ava »%s«", + "We wanted to inform you that %s has published the calendar »%s«." : "Tahtsime Sind informeerida, et %s on avaldanud „%s“ kalendri.", + "Open »%s«" : "Ava „%s“", "Cheers!" : "Tervist!", + "Upcoming events" : "Tulekul sündmused", + "No more events today" : "Täna rohkem sündmuseid pole", + "No upcoming events" : "Tulekul sündmuseid pole", + "More events" : "Rohkem sündmuseid", + "%1$s with %2$s" : "%1$s ja %2$s", + "Calendar" : "Kalender", + "New booking {booking}" : "Uus broneering „{booking}“", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) leppis kokku kohtumise „{config_display_name}“ algusega {date_time}.", + "Appointments" : "Kohtumised", + "Schedule appointment \"%s\"" : "Ajasta kokkulepitud kohtumine „%s“", + "Schedule an appointment" : "Ajasta kokkulepitud kohtumine", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Valmistu „%s“ ürituseks", + "Follow up for %s" : "„%s“ ürituse järelkaja", + "Your appointment \"%s\" with %s needs confirmation" : "Sinu „%s“ osalejaga „%s“ vajab kinnitamist", + "Dear %s, please confirm your booking" : "Lugupeetud %s, palun kinnita oma broneering", "Confirm" : "Kinnita", - "Where:" : "Kus:", + "Appointment with:" : "Kokkulepitud kohtumine kasutajaga:", "Description:" : "Kirjeldus:", - "Calendar" : "Kalender", + "This confirmation link expires in %s hours." : "See kinnituslink aegub %s tunni möödudes.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Kui soovid kohtumise broneeringut tühistada, siis võta ühendust korraldajaga vastates sellele kirjale või külastades tema profiili.", + "Your appointment \"%s\" with %s has been accepted" : "Sinu kohtumine „%s“ kasutajaga „%s“ on k innitatud", + "Dear %s, your booking has been accepted." : "Lugupeetud %s, sinu broneering on kinnitatud.", + "Appointment for:" : "Kohtumine:", + "Date:" : "Kuupäev:", + "You will receive a link with the confirmation email" : "Sa saad lingi kinnituskirjaga", + "Where:" : "Kus:", + "Comment:" : "Kommentaar:", + "You have a new appointment booking \"%s\" from %s" : "Sul on uus kohtumise broneering „%s“ kasutajalt „%s“", + "Dear %s, %s (%s) booked an appointment with you." : "Lugupeetud %s, %s (%s) broneeris sinuga kohtumise.", + "A Calendar app for Nextcloud" : "Nextcloudi kalendrirakendus", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Kalendrirakendus Nextcloudi jaoks. Sünkroniseeri sündmusi erinevatest seadmetest oma Nextcloudi serverisse ja muuda neid võrgus.\n\n* 🚀 **Lõiming muude Nextcloudi rakendustega!** Nagu näiteks Kontaktid, Kõned, Ülesanded, Kanban and Tiimid\n* 🌐 **WebCAL-i tugi!** Tahad näha oma lemmikklubide mängude aegu oma kalendris? Pole probleemi!\n* 🙋 **Osalejad!** Kutsu teisi oma sündmustele\n* ⌚ **Vaba/Hõivatud!** Vaata, millal osalejad saaksid tulla\n* ⏰ **Meeldetuletused!** Telli ürituste meeldetuletused brauseriteadetena või e-kirjadena\n* 🔍 **Otsing!** Leia oma sündmused kiiresti ja mugavalt\n* ☑️ **Ülesanded!** Näed ülesannete ja Kanbani kaartide tähtaegu otse kalendris\n* 🔈 **Jututoad!** Lisa kohtumise broneerimisel ühe klõpsuga asjakohane Kõnerakenduse jututuba\n* 📆 **Kohtumiste broneerimine** Saada teistele link, mis võimaldab neil broneerida kohtumist sinuga ning kasuta [selleks seda rakendust](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Manused!** Lisa, laadi üles ja vaata sündmuste manused\n* 🙈 **Me ei tegele ratta uuesti leiutamisega!** Selle rakenduse aluseks on suurepärased teegid: [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) ja [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Eelmine päev", "Previous week" : "Eelmine nädal", + "Previous year" : "Eelmine aasta", "Previous month" : "Eelmine kuu", "Next day" : "Järgmine päev", "Next week" : "Järgmine nädal", + "Next year" : "Järgmine aasta", "Next month" : "Järgmine kuu", - "New event" : "Uus sündmus", + "Create new event" : "Lisa uus sündmus", + "Event" : "Sündmus", "Today" : "Täna", "Day" : "Päev", "Week" : "Nädal", "Month" : "Kuu", + "Year" : "Aasta", + "List" : "Loend", + "Appointment link was copied to clipboard" : "Kohtumise link on kopeeritud lõikelauale", + "Appointment link could not be copied to clipboard" : "Kohtumise linki ei õnnestunud lõikelauale kopeerida", "Preview" : "Eelvaade", "Copy link" : "Kopeeri link", "Edit" : "Redigeeri", "Delete" : "Kustuta", + "Appointment schedules" : "Kokkulepitud kohtumiste ajakava", + "Create new" : "Loo uus", + "Disable calendar \"{calendar}\"" : "Lülita välja „{calendar}“ kalender", + "Disable untitled calendar" : "Lülita välja nimetu kalender", + "Enable calendar \"{calendar}\"" : "Lülita sisse „{calendar}“ kalender", + "Enable untitled calendar" : "Lülita sisse nimetu kalender", + "An error occurred, unable to change visibility of the calendar." : "Tekkis viga ja kalendri nähtavust pole võimalik muuta.", "Untitled calendar" : "Nimetu kalender", - "Edit name" : "Muuda nime", - "Saving name …" : "Salvestan nime ...", - "Edit color" : "Muuda värvi", - "Saving color …" : "Salvestan värvi ...", - "Copy private link" : "Kopeeri privaatne link", - "Export" : "Ekspordi", - "Share link" : "Jaga link", - "Publish calendar" : "Avalda kalender", - "Copy public link" : "Kopeeri avalik link", - "Delete share link" : "Kustuta jagamise link", - "Share with users or groups" : "Jaga kasutajate või gruppidega", - "No users or groups" : "Ei ole kasutajaid või gruppe", - "can edit" : "saab muuta", - "Unshare with {displayName}" : "Lõpeta jagamine kasutajaga: {displayName}", - "+ New calendar" : "+ Uus kalender", + "Shared with you by" : "Seda jagas sinuga", + "Edit and share calendar" : "Muuda ja jaga kalendrit", + "Edit calendar" : "Muuda kalendrit", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Lõpetan kalendri jagamise {countdown} sekundi möödumisel","Lõpetan kalendri jagamise {countdown} sekundi möödumisel"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Kustutan kalendri {countdown} sekundi möödumisel","Kustutan kalendri {countdown} sekundi möödumisel"], + "An error occurred, unable to create the calendar." : "Tekkis viga ja kalendri loomine pole võimalik.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Palun sisesta korrektne link (alguses peab olema http://, https://, webcal:// või webcals://)", + "Calendars" : "Kalendrid", + "Add new" : "Lisa uus", "New calendar" : "Uus kalender", + "Name for new calendar" : "Uue kalendri nimi", + "Creating calendar …" : "Loon kalendrit…", + "New calendar with task list" : "Uus kalender ülesannete loendiga", + "New subscription from link (read-only)" : "Uus tellimus lingi põhjal (vaid lugemisõigustes)", + "Creating subscription …" : "Loon tellimust…", + "Add public holiday calendar" : "Lisa riigipühade kalender", + "Add custom public calendar" : "Lisa kohandatud riigipühade kalender", + "Calendar link copied to clipboard." : "Kalendri link on kopeeritud lõikelauale.", + "Calendar link could not be copied to clipboard." : "Kalendri linki ei õnnestunud lõikelauale kopeerida.", + "Copy subscription link" : "Kopeeri tellimuse link", + "Copying link …" : "Kopeerin linki…", + "Copied link" : "Link on kopeeritud", + "Could not copy link" : "Linki ei õnnestunud kopeerida", + "Export" : "Ekspordi", + "Untitled item" : "Tundmatu kirje", + "Unknown calendar" : "Tundmatu kalender", + "Could not load deleted calendars and objects" : "Kustutatud kalendrite ja objektide laadimine ei õnnestunud", + "Could not delete calendar or event" : "Kalendri või sündmuse kustutamine ei õnnestunud", + "Could not restore calendar or event" : "Kalendri või sündmuse taastamine ei õnnestunud", + "Do you really want to empty the trash bin?" : "Oled sa kindel, et soovid prügikasti tühjendada?", + "Empty trash bin" : "Tühjenda prügikast", + "Trash bin" : "Prügikast", + "Loading deleted items." : "Laadin kustutatud kirjeid.", + "You do not have any deleted items." : "Sul pole kustutatud kirjeid.", "Name" : "Nimi", "Deleted" : "Kustutatud", "Restore" : "Taasta", "Delete permanently" : "Kustuta jäädavalt", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Prügikastis olevad objektid kustutatakse {numDays} päeva pärast","Prügikastis olevad objektid kustutatakse {numDays} päeva pärast"], + "Could not update calendar order." : "Kalendri järjekorda ei õnnestunud uuendada.", + "Shared calendars" : "Jagatud kalendrid", + "Deck" : "Deck", + "Hidden" : "Peidetud", + "Internal link" : "Sisemine link", + "A private link that can be used with external clients" : "Privaatne link, mida saad kasutada väliste klientide jaoks", + "Copy internal link" : "Kopeeri sisemine link", + "An error occurred, unable to publish calendar." : "Tekkis viga ja kalendri avaldamine pole võimalik.", + "An error occurred, unable to send email." : "Tekkis viga ja e-kirja saatmine pole võimalik.", + "Embed code copied to clipboard." : "Lõimitav kood on kopeeritud lõikelauale.", + "Embed code could not be copied to clipboard." : "Ei õnnestunud kopeerida lõimitavat koodi lõikelauale.", + "Unpublishing calendar failed" : "Ei õnnestunud lõpetada kalendri avaldamist", + "Share link" : "Jaga linki", + "Copy public link" : "Kopeeri avalik link", + "Send link to calendar via email" : "Saada link kalendrisse e-posti teel", + "Enter one address" : "Sisesta üks aadress", + "Sending email …" : "E-kiri on saatmisel…", + "Copy embedding code" : "Kopeeri lõimitav kood", + "Copying code …" : "Kopeerin koodi…", + "Copied code" : "Kood on kopeeritud", + "Could not copy code" : "Koodi ei õnnestunud kopeerida", + "Delete share link" : "Kustuta jagamise link", + "Deleting share link …" : "Kustutan jagamislinki…", + "{teamDisplayName} (Team)" : "{teamDisplayName} (tiim)", + "An error occurred while unsharing the calendar." : "Kalendri jagamise lõpetamisel tekkis viga.", + "An error occurred, unable to change the permission of the share." : "Tekkis viga ja jaosmeedia õigusi pole võimalik muuta.", + "can edit" : "saab muuta", + "Unshare with {displayName}" : "Lõpeta jagamine kasutajaga: {displayName}", + "Share with users or groups" : "Jaga kasutajate või gruppidega", + "No users or groups" : "Ei ole kasutajaid või gruppe", + "Failed to save calendar name and color" : "Kalendri värvi ja nime salvestamine ei õnnestunud", + "Calendar name …" : "Kalendri nimi…", + "Never show me as busy (set this calendar to transparent)" : "Ära iialgi näita, et ma olen hõivatud (muuda see kalender läbipaistvaks)", + "Share calendar" : "Jaga kalendrit", + "Unshare from me" : "Eemalda minult see jagamine", + "Save" : "Salvesta", "Import calendars" : "Impordi kalendrid", - "Filename" : "Faili nimi", + "Please select a calendar to import into …" : "Palun vali kalender, kuhu soovid importida…", + "Filename" : "Failinimi", + "Calendar to import into" : "Imporditav kalender", "Cancel" : "Loobu", + "_Import calendar_::_Import calendars_" : ["Impordi kalender","Impordi kalendrid"], + "Select the default location for attachments" : "Vali manustele vaikimisi asukoht", + "Pick" : "Vali", + "Invalid location selected" : "Vigane asukoht valitud", + "Attachments folder successfully saved." : "Manuste kausta salvestamine õnnestus.", + "Error on saving attachments folder." : "Viga manuste kausta salvestamisel.", + "Default attachments location" : "Manuste vaikimisi asukoht", + "{filename} could not be parsed" : "{filename} töötlemine ei õnnestunud", + "No valid files found, aborting import" : "Ühtegi korrektset faili ei leidu, katkestan impordi", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n sündmuse importimine õnnestus","%n sündmuse importimine õnnestus"], + "Import partially failed. Imported {accepted} out of {total}." : "Importimine osaliselt ei õnnestunud. Importisin {accepted} kokku {total}-st kirjest.", "Automatic" : "Automaatne", + "Automatic ({detected})" : "Automaatne ({detected})", + "New setting was not saved successfully." : "Uue seadistuse salvestamine ei õnnestunud.", + "Navigation" : "Liikumine", + "Previous period" : "Eelmine periood", + "Next period" : "Järgmine periood", + "Views" : "Vaated", + "Day view" : "Päeva vaade", + "Week view" : "Nädala vaade", + "Month view" : "Kuuvaade", + "Year view" : "Aasta vaade", "List view" : "Nimekirjavaade", "Actions" : "Tegevused", + "Create event" : "Lisa sündmus", + "Show shortcuts" : "Näita kiirklahve", + "Editor" : "Muutmisvaade", + "Close editor" : "Sulge muutmisvaade", + "Save edited event" : "Salvesta muudetud sündmus", + "Delete edited event" : "Kustuta muudetud sündmus", + "Duplicate event" : "Tee sündmusest koopia", + "Shortcut overview" : "Kiirklahvide ülevaade", + "or" : "või", + "Calendar settings" : "Kalendri seadistused", + "At event start" : "Sündmuse algamisel", + "No reminder" : "Meeldetuletust pole", + "Failed to save default calendar" : "Vaikimisi kalendri salvestamine ei õnnestunud", + "CalDAV link copied to clipboard." : "CalDAV-i link on kopeeritud lõikelauale.", + "CalDAV link could not be copied to clipboard." : "CalDAV-i linki ei õnnestunud lõikelauale kopeerida.", + "Enable birthday calendar" : "Lülita sisse sünnipäevade kalender", + "Show tasks in calendar" : "Näita kalendris ülesandeid", + "Enable simplified editor" : "Kasuta lihtsat muutmisvaadet", + "Limit the number of events displayed in the monthly view" : "Piira kuuvaates kuvatavate sündmuste arvu", + "Show weekends" : "Näita nädalavahetusi", "Show week numbers" : "Näita nädalanumberid", + "Time increments" : "Ajasammud", + "Default calendar for incoming invitations" : "Vaikimisi kalender sulle saadetud kutsetele", + "Default reminder" : "Vaikimisi meeldetuletus", + "Copy primary CalDAV address" : "Kopeeri primaarne CalDAV-i aadress", + "Copy iOS/macOS CalDAV address" : "Kopeeri CalDAV-i aadress iOS/macOS-i jaoks", + "Personal availability settings" : "Isikliku kohaloleku seadistused", + "Show keyboard shortcuts" : "Näita klaviatuuri kiirklahve", + "Appointment schedule successfully created" : "Kokkulepitud kohtumiste ajakava loomine õnnestus", + "Appointment schedule successfully updated" : "Kokkulepitud kohtumiste ajakava uuendamine õnnestus", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minut","{duration} minutit"], + "0 minutes" : "0 minutit", + "_{duration} hour_::_{duration} hours_" : ["{duration} tund","{duration} tundi"], + "_{duration} day_::_{duration} days_" : ["{duration} päev","{duration} päeva"], + "_{duration} week_::_{duration} weeks_" : ["{duration} nädal","{duration} nädalat"], + "_{duration} month_::_{duration} months_" : ["{duration} kuu","{duration} kuud"], + "_{duration} year_::_{duration} years_" : ["{duration} aasta","{duration} aastat"], + "To configure appointments, add your email address in personal settings." : "Kokkulepitud kohtumiste seadistamiseks palun lisa oma seadistustesse e-posti aadress.", + "Public – shown on the profile page" : "Avalik - näidatud profiili lehel", + "Private – only accessible via secret link" : "Privaatne - ligipääsetav vaid salajase lingi alusel", + "Appointment schedule saved" : "Kokkulepitud kohtumiste ajakava on salvestatud", + "Create appointment schedule" : "Loo kokkulepitud kohtumiste ajakava", + "Edit appointment schedule" : "Muuda kokkulepitud kohtumiste ajakava", + "Update" : "Uuenda", + "Appointment name" : "Kohtumise nimi", "Location" : "Asukoht", + "Create a Talk room" : "Loo Kõnerakenduse jututuba", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Rakendus koostab iga broneeritud kohtumise jaoks unikaalse lingi ja lisab selle kinnituskirja", "Description" : "Kirjeldus", + "Visibility" : "Nähtavus", + "Duration" : "Kestus", + "Increments" : "Ajasammud", + "Additional calendars to check for conflicts" : "Täiendavad kalendrid, kust peaksime ajastamise konflikte kontrollima", + "Pick time ranges where appointments are allowed" : "Vali üldine ajavahemik, kuhu kohtumisi saaks broneerida", "to" : "saaja", + "Delete slot" : "Kustuta ajavahemik", + "No times set" : "Ajad on määramata", "Add" : "Lisa", "Monday" : "Esmaspäev", "Tuesday" : "Teisipäev", @@ -62,105 +240,359 @@ "Friday" : "Reede", "Saturday" : "Laupäev", "Sunday" : "Pühapäev", - "Save" : "Salvesta", - "Update" : "Uuenda", + "Weekdays" : "Nädalapäevad", + "Add time before and after the event" : "Lisa aeg enne ja pärast sündmust", + "Before the event" : "Enne sündmust", + "After the event" : "Pärast sündmust", + "Planning restrictions" : "Piirangud kavandamsiel", + "Minimum time before next available slot" : "Miinimumaeg enne järgmist ajavahemikku", + "Max slots per day" : "Ajavahemikke päevas", + "Limit how far in the future appointments can be booked" : "Piira kui kaugele tulevikku on võimalik kohtumisi broneerida", + "It seems a rate limit has been reached. Please try again later." : "Tundub, et päringute arvu ülempiir on käes. Palun proovi hiljem uuesti.", + "Please confirm your reservation" : "Palun kinnita oma broneering", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Me saatsime sulle e-kirja üksikasjadega. Klikates seal leiduvat linki, palun kinnita oma kohtumine. Sa võid selle lehe nüüd sulgeda.", + "Your name" : "Sinu nimi", "Your email address" : "Sinu e-posti aadress", - "Email" : "Epost", + "Please share anything that will help prepare for our meeting" : "Palun jaga kõike, mis võiks aidata kohtumiseks valmistuda", + "Could not book the appointment. Please try again later or contact the organizer." : "Kohtumist ei õnnestunud broneerida. Palun proovi hiljem uuesti või küsi korraldajalt nõu.", + "Back" : "Tagasi", + "Book appointment" : "Broneeri kohtumine", + "Error fetching Talk conversations." : "Viga Kõnerakenduse vestluste laadimisel.", + "Conversation does not have a valid URL." : "Vestlusel pole korrektset võrguaadressi", + "Successfully added Talk conversation link to location." : "Kõnerakenduse vestluse lingi lisamine asukohale õnnestus.", + "Successfully added Talk conversation link to description." : "Kõnerakenduse vestluse lingi lisamine kirjeldusele õnnestus.", + "Failed to apply Talk room." : "Viga Kõnerakenduse jututoa kinnitamisel.", + "Error creating Talk conversation" : "Viga Kõnerakenduse vestluse loomisel", + "Select a Talk Room" : "Vali Kõnerakenduse jututuba", + "Add Talk conversation" : "Lisa Kõnerakenduse vestlus", + "Fetching Talk rooms…" : "Laadin Kõnerakenduse jututube…", + "No Talk room available" : "Ühtegi Kõnerakenduse jututuba pole saadaval", + "Create a new conversation" : "Loo uus vestlus", + "Select conversation" : "Vali vestlus", + "on" : "ajal", + "at" : "asukohas", + "before at" : "enne", + "Notification" : "Teavitus", + "Email" : "E-post", + "Audio notification" : "Heliteavitus", + "Other notification" : "Muu teavitus", + "Relative to event" : "Suhteliselt sündmuse suhtes", "On date" : "Kuupäeval", + "Edit time" : "Muuda aega", + "Save time" : "Salvesta aeg", + "Remove reminder" : "Eemalda meeldetuletus", + "Add reminder" : "Lisa meeldetuletus", + "seconds" : "sekundit", + "minutes" : "minutit", + "hours" : "tundi", + "days" : "päeva", + "weeks" : "nädalat", + "Choose a file to add as attachment" : "Vali fail, mida manustada", + "Choose a file to share as a link" : "Valilingiga jagatav fail", + "Attachment {name} already exist!" : "Manus {name} on juba olemas!", + "Could not upload attachment(s)" : "Manuse või manuste üleslaadimine ei õnenstunud", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Sa oled allalaadimas faili. Enne avamist palun kontrolli, kas failinimi ja kontekst on loogilised. Kas sa oled kindel, et soovid jätkata?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Sa oled avamas linki teenusesse „{host}“. Kas sa oled kindel, et soovid jätkata? Link: {link}", + "Proceed" : "Jätka", + "No attachments" : "Manuseid pole", + "Add from Files" : "Lisa failidest", + "Upload from device" : "Laadi üles seadmest", + "Delete file" : "Kustuta fail", + "Confirmation" : "Kinnitus", + "_{count} attachment_::_{count} attachments_" : ["{count} manus","{count} manust"], + "Suggested" : "Soovitatud", + "Available" : "Saadaval", + "Invitation accepted" : "Kutse on vastu võetud", + "Accepted {organizerName}'s invitation" : "Võtsid vastu kutse korraldajalt {organizerName}", + "Participation marked as tentative" : "Osalemine on kinnitatud esialgsena", + "Invitation is delegated" : "Kutse on suunatud edasi", + "Not available" : "Pole saadaval", + "Invitation declined" : "Kutse on tagasi lükatud", + "Declined {organizerName}'s invitation" : "Keeldusid korraldajal {organizerName} kutsest", + "Availability will be checked" : "Saadavus saab olema kontrollitud", + "Invitation will be sent" : "Kutse saab olema saadetud", + "Failed to check availability" : "Ei õnnestunud kontrollida saadavust", + "Failed to deliver invitation" : "Ei õnnestunud kutset kohale toimetada", + "Awaiting response" : "Ootan vastust", + "Checking availability" : "Kontrollin saadavust", + "Has not responded to {organizerName}'s invitation yet" : "Pole veel vastanud korraldaja „{organizerName}“ kutsele", + "Suggested times" : "Soovitatud ajad", + "chairperson" : "eesistuja", + "required participant" : "nõutav osaleja", + "non-participant" : "mitteosaleja", + "optional participant" : "valikuline osaleja", + "{organizer} (organizer)" : "{organizer} (korraldaja)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Osalejate, vahendite ja ruumide saadavus", + "Suggestion accepted" : "Soovitud on vastu võetud", + "Previous date" : "Eelmine kuupäev", + "Next date" : "Järgmine kuupäev", + "Legend" : "Legend", + "Out of office" : "Kontorist väljas", + "Attendees:" : "Osalejad:", + "Done" : "Valmis", + "Search room" : "Otsi koosolekuruumi", + "Room name" : "Koosolekuruumi nimi", + "Check room availability" : "Kontrolli koosolekuruumi saadavust", + "Free" : "Vaba", + "Busy (tentative)" : "Hõivatud (esialgselt)", + "Busy" : "Hõivatud", "Unknown" : "Teadmata", + "Find a time" : "Otsi aega", + "The invitation has been accepted successfully." : "Kutse on märgitud vastuvõetuks.", + "Failed to accept the invitation." : "Ei õnnestunud märkida, et kutset nõustutuks.", + "The invitation has been declined successfully." : "Kutse on märgitud keeldutuks.", + "Failed to decline the invitation." : "Ei õnnestunud märkida, et kutset keeldutuks.", + "Your participation has been marked as tentative." : "Sinu osalemine on märgitud esialgseks.", + "Failed to set the participation status to tentative." : "Ei õnnestunud määrata osalemise olekut „Kinnitatud esialgselt“.", "Accept" : "Nõustu", "Decline" : "Keeldu", "Tentative" : "Esialgne", - "Send email" : "Saada kiri", - "All day" : "Kogu päev", + "No attendees yet" : "Osalejaid veel pole", + "{invitedCount} invited, {confirmedCount} confirmed" : "Kutseid saadetud: {invitedCount}, kinnitusi on {confirmedCount}", + "Please add at least one attendee to use the \"Find a time\" feature." : "Et „Otsi aega“ toimiks lisa palun vähemalt üks osaleja.", + "Successfully appended link to talk room to location." : "Kõnerakenduse jututoa lingi lisamine asukohale õnnestus.", + "Successfully appended link to talk room to description." : "Kõnerakenduse jututoa lingi lisamine kirjeldusele õnnestus.", + "Error creating Talk room" : "Viga Kõnerakenduse jututoa loomisel", + "Attendees" : "Osalejad", + "_%n more guest_::_%n more guests_" : ["veel %n külaline","veel %n külalist"], + "Remove group" : "Eemalda grupp", + "Remove attendee" : "Eemalda osaleja", + "Request reply" : "Palun vastust", + "Chairperson" : "Eesistuja", + "Required participant" : "Vajalik osaleja", + "Optional participant" : "Võimalik osaleja", + "Non-participant" : "Mitteosaleja", + "_%n member_::_%n members_" : ["%n liige","%n liiget"], + "Search for emails, users, contacts, contact groups or teams" : "Otsi e-posti aadresse, kasutajaid, kontakte, gruppe või tiime", + "No match found" : "Vastet ei leidu", + "Note that members of circles get invited but are not synced yet." : "Palun arvesta, et tiimide liikmed saavad kutse, kuid pole veel sünkroniseeritud.", + "Note that members of contact groups get invited but are not synced yet." : "Palun arvesta, et kontaktgruppide liikmed saavad kutse, kuid pole veel sünkroniseeritud.", + "(organizer)" : "(korraldaja)", + "Make {label} the organizer" : "Määra {label} korraldajaks", + "Make {label} the organizer and attend" : "Määra {label} korraldajaks ja osalejaks", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Kutsete saatmiseks ja vastuste haldamiseks, [linkopen]palun lisa isiklikesse seadistustesse oma e-posti aadress[linkclose].", + "Remove color" : "Eemalda värv", + "Event title" : "Sündmuse peakiri", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Korduvate sündmuste komplektis oleva sündmusel ei sa valida „Kestab terve päeva“ valikut.", + "From" : "Saatja", + "To" : "Saaja", "Repeat" : "Korda", + "Repeat event" : "Korda sündmust", + "_time_::_times_" : ["kord","korda"], "never" : "mitte kunagi", + "on date" : "kuupäeval", "after" : "pärast", - "More" : "Rohkem", + "End repeat" : "Lõpeta kordamine", + "Select to end repeat" : "Vali kordamise lõpetamiseks", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "See sündmus juba on erand korduvate sündmuste komplektis. Seega sa ei saa talle korduvust lisada.", + "first" : "esimesel", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Korduvuse reegli muudatused kehtivad sellele ja tulevastele kordadele", + "Repeat every" : "Korda iga", + "By day of the month" : "Kuu päeva alusel", + "On the" : "Päeval", + "_day_::_days_" : ["päev","päeva"], + "_week_::_weeks_" : ["nädal","nädalat"], + "_month_::_months_" : ["kuu","kuud"], + "_year_::_years_" : ["aasta","aastat"], + "On specific day" : "Kindlal päeval", + "weekday" : "nädalapäev", + "weekend day" : "nädalalõpu päev", + "Does not repeat" : "Ei kordu", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Selle sündmuse korduvuse määratlus pole Nextcloudis toetatud. Kui muudad korduvuse valikuid, siis mõned neist võivad kaotsi minna.", + "No rooms or resources yet" : "Pole veel ruume ega ressursse", + "Resources" : "Ressursid", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} koht","{seatingCapacity} kohta"], + "Add resource" : "Lisa ressurss", + "Has a projector" : "Olemas on projektor", + "Has a whiteboard" : "Olemas on tahvel", + "Wheelchair accessible" : "Ligipääsetav ratastooliga", + "Remove resource" : "Eemalda ressurss", + "Search for resources or rooms" : "Otsi ressurssi või ruume", + "available" : "saadaval", + "unavailable" : "pole saadaval", + "Show all rooms" : "Näita kõiki koosolekuruume", + "Projector" : "Projektor", + "Whiteboard" : "Tahvel", + "Room type" : "Koosolekuruumi tüüp", + "Any" : "Kõik", + "Minimum seating capacity" : "Väikseim kohtade arv", + "More details" : "Täiendavad üksikasjad", + "Update this and all future" : "Uuenda seda ja kõiki tulevasi", + "Update this occurrence" : "Uuenda seda sündmust", + "Public calendar does not exist" : "Avalikku kalendrit pole olemas", + "Maybe the share was deleted or has expired?" : "Võib-olla on jaosmeedia kustutanud või aegunud?", + "from {formattedDate}" : "{formattedDate} kuupäevast", + "to {formattedDate}" : "{formattedDate} kuupäevani", + "on {formattedDate}" : "{formattedDate}", + "from {formattedDate} at {formattedTime}" : " {formattedDate}, {formattedTime}", + "to {formattedDate} at {formattedTime}" : "{formattedDate} kell {formattedTime}", + "on {formattedDate} at {formattedTime}" : "{formattedDate} kuupäeval, kell {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} kell {formattedTime}", + "Please enter a valid date" : "Palun sisesta korrektne kuupäev", + "Please enter a valid date and time" : "Palun sisesta korrektne kuupäev ja aeg", + "Select a time zone" : "Vali ajavöönd", + "Please select a time zone:" : "Palun vali ajavöönd:", + "Pick a time" : "Vali aeg", + "Pick a date" : "Vali kuupäev", + "Type to search time zone" : "Ajavööndi otsimiseks alusta kirjutamist", "Global" : "Üldine", + "Holidays in {region}" : "Riigipühad: {region}", + "An error occurred, unable to read public calendars." : "Tekkis viga ja avaliku kalendri lugemine pole võimalik.", + "An error occurred, unable to subscribe to calendar." : "Tekkis viga ja kalendri tellimine pole võimalik.", + "Public holiday calendars" : "Avalikud riigipühade kalendrid", + "Public calendars" : "Avalikud kalendrid", + "No valid public calendars configured" : "Kehtivaid avalikke kalendreid pole seadistatud", + "Speak to the server administrator to resolve this issue." : "Selle vea lahendamiseks palun suhtle oma serveri haldajaga.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Avalikud riigipühade kalendrid on koostanud Thunderbird. Kalendriandmed laaditakse alla siit: {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Neid avalikke kalendreis on soovitanud serveri haldaja. Kalendrite andmed laaditakse alla vastavast veebisaidist.", + "By {authors}" : "Koostajalt {authors}", + "Subscribed" : "Tellitud", + "Subscribe" : "Telli", + "Could not fetch slots" : "Ajavahemikke ei olnud võimalik laadida", + "Select a date" : "Vali kuupäev", + "Select slot" : "Vali ajavahemik", + "No slots available" : "Sobilikke ajavahemikke ei leidu", + "The slot for your appointment has been confirmed" : "Ajavahemik sinu kohtumise jaoks on kinnitatud", + "Appointment Details:" : "Kohtumise üksikasjad:", + "Time:" : "Aeg:", + "Booked for:" : "Broneeritud:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Tänud. Sinu broneering on kinitatud: {startDate}-{endDate}.", + "Book another appointment:" : "Broneeri mõni muu kokkulepitud kohtumise aeg:", + "See all available slots" : "Vaata kõiki vabu ajavahemikke", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Ajavahemik {startDate}-{endDate} pole sinu kohtumise jaoks enam saadaval.", + "Please book a different slot:" : "Palun broneeri teine ajavahemik:", + "Book an appointment with {name}" : "Broneeri kohtumine: „{name}“", + "No public appointments found for {name}" : "Ei leidu avalikku kohtumist: „{name}“", "Personal" : "Isiklik", - "Details" : "Üksikasjad", - "Attendees" : "Osalejad", - "Resources" : "Ressursid", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Automaatne ajavööndikontroll tuvastas, et kasutad UTC/GMT ajavööndit.\nSuure tõenäosusega on tegemist sinu veebibrauseri trurvameetmega.\nKui see pole nii, siis saad kalendri seadistustest määrata õige ajavööndi.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Sinu seadistatud ajavööndit ({timezoneId}) ei leidu. Kasutame varuvariandina UTC/GMT valikut.\nKalendri seadistustest määrata õige ajavööndi ning kui tegemist on veaga, siis palun anna meile sellest teada..", + "Availability of {displayName}" : "{displayName} saadavus", + "Edit event" : "Muuda sündmust", + "Event does not exist" : "Sündmust pole olemas", + "Duplicate" : "Tee koopia", + "Delete this occurrence" : "Kustuta vaid see kord", + "Delete this and all future" : "Kustuta see ja kõik tulevased", + "All day" : "Kestab terve päeva", + "Modifications wont get propagated to the organizer and other attendees" : "Muudatused ei jõua ei korraldaja ega muude osalejateni", + "Managing shared access" : "Halda jagatud ligipääsu", + "Deny access" : "Keela ligipääs", + "Invite" : "Kutse", + "_User requires access to your file_::_Users require access to your file_" : ["Kasutaja vajab jagatud ligipääsu","Kasutajad vajavad jagatud ligipääsu"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Manus eeldab jagatud ligipääsu","Manused eeldavad jagatud ligipääsu"], + "Untitled event" : "Ilma nimeta sündmus", "Close" : "Sulge", + "Modifications will not get propagated to the organizer and other attendees" : "Muudatused ei jõua ei korraldaja ega muude osalejateni", + "Subscribe to {name}" : "Telli: „{name}“", + "Export {name}" : "Ekspordi „{name}“", + "Show availability" : "Näita saadavust", "Anniversary" : "Aastapäev", "Appointment" : "Kohtumine", + "Business" : "Ärikohtumine", + "Education" : "Koolitus", + "Holiday" : "Riigipüha", + "Meeting" : "Kohtumine", + "Miscellaneous" : "Varia", + "Non-working hours" : "Väljaspool tööaega", + "Not in office" : "Pole kohal", + "Phone call" : "Telefonikõne", + "Sick day" : "Tervisepäev", + "Special occasion" : "Oluline sündmus", + "Travel" : "Reis", "Vacation" : "Puhkus", + "Midnight on the day the event starts" : "Sündmuse alguspäeva kesköösel", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n päev enne sündmust kell {formattedHourMinute}","%n päeva enne sündmust kell {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n nädal enne sündmust kell {formattedHourMinute}","%n nädalat enne sündmust kell {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "sündmuse päeval kell {formattedHourMinute}", + "at the event's start" : "sündmuse lõpus", + "at the event's end" : "sündmuse alguses", + "{time} before the event starts" : "{time} enne sündmuse algust", + "{time} before the event ends" : "{time} enne sündmuse lõppu", + "{time} after the event starts" : "{time} peale sündmuse algust", + "{time} after the event ends" : "{time} peale sündmuse lõppu", + "on {time}" : " {time}", + "on {time} ({timezoneId})" : " {time} ({timezoneId})", "Week {number} of {year}" : "Nädal nr. {number} aastas {year}", - "Does not repeat" : "Ei kordu", "Daily" : "Iga päev", "Weekly" : "Iga nädal", "Monthly" : "Igakuine", "Yearly" : "Igaastane", - "Next" : "Järgmine", + "_Every %n day_::_Every %n days_" : ["Iga %n. päev","Iga %n. päev"], + "_Every %n week_::_Every %n weeks_" : ["Iga %n. nädal","Iga %n. nädal"], + "_Every %n month_::_Every %n months_" : ["Iga %n. kuu","Iga %n. kuu"], + "_Every %n year_::_Every %n years_" : ["Iga %n. aasta","Iga %n. aasta"], + "_on {weekday}_::_on {weekdays}_" : ["nädalapäeval „{weekday}“","nädalapäevdel „{weekdays}“"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["päeval „{dayOfMonthList}“","päevadel „{dayOfMonthList}“"], + "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber}. päeval {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "{monthNames} kuus {dayOfMonthList}. päeval", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames} kuus {ordinalNumber}. päeval {byDaySet}", + "until {untilDate}" : "kuni {untilDate}", + "_%n time_::_%n times_" : ["%n kord","%n korda"], + "second" : "teisel", + "third" : "kolmandal", + "fourth" : "nejandal", + "fifth" : "viiendal", + "second to last" : "tagant teisel", + "last" : "viimasel", + "Untitled task" : "Ilma nimeta pealkiri", + "Please ask your administrator to enable the Tasks App." : "Palu oma serveri haldajal paigaldada Ülesannete rakendus.", + "You are not allowed to edit this event as an attendee." : "Kutsutuna pole sul õigust selle sündmuse muutmiseks.", + "W" : "Nd", + "%n more" : "Veel %n", + "No events to display" : "Pole sündmusi, mida kuvada", + "All participants declined" : "Kõik osalejad keeldusid", + "Please confirm your participation" : "Palun kinnita oma osalemine", + "You declined this event" : "Sa keeldusid sündmusel osalemast", + "Your participation is tentative" : "Oled esialgselt kinnitanud oma osalemise", + "_+%n more_::_+%n more_" : ["veel +%n","veel +%n"], + "No events" : "Sündmusi pole", + "Create a new event or change the visible time-range" : "Loo uus sündmus või muuda kuvatavat ajavahemikku", + "Failed to save event" : "Sündmust ei õnnestu salvestada", + "It might have been deleted, or there was a typo in a link" : "Ta kas on kustutatud või on lingis trükiviga", + "It might have been deleted, or there was a typo in the link" : "Ta kas on kustutatud või on lingis trükiviga", + "Meeting room" : "Koosolekuruum", + "Lecture hall" : "Loengusaal", + "Seminar room" : "Seminariruum", "Other" : "Muu", + "When shared show" : "Jagamisel näita", "When shared show full event" : "Kui on jagatud, siis näita kogu sündmust", "When shared show only busy" : "Kui on jagatud, siis näita ainult, kas on hõivatud", "When shared hide this event" : "Kui on jagatud, siis peida see sündmus", + "The visibility of this event in shared calendars." : "Selle sündmuse nähtavus jagatud kalendrites.", + "Add a location" : "Lisa asukoht", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Lisa kirjeldus\n\n- Mis on kohtumise teema\n- Päevakorrapunktid\n- Kõik, milleks osalejad peaks valmistuma", "Status" : "Staatus", "Confirmed" : "Kinnitatud", + "Canceled" : "Tühistatud", + "Confirmation about the overall status of the event." : "Kinnitus ürituse üldise oleku kohta.", + "Show as" : "Näita kui", + "Take this event into account when calculating free-busy information." : "Arvesta selle sündmusega Vaba/Hõivatud olekute tuvastamisel.", "Categories" : "Kategooriad", - "Presentation" : "Esitlus", - "Talk" : "Talk", - "Camping" : "Telkimine", - "Camp" : "Laager", - "Movie" : "Film", - "Cinema" : "Kino", - "Graduation" : "Lõpetamine", - "Brainstorm" : "Ajutorm", - "Baseball" : "Pesapall", - "Office" : "Kontor", - "Mail" : "Kirjad", - "Soccer" : "Jalgpall", - "Football" : "Ameerika jalgpall", - "Drive" : "Sõit", - "Bicycle" : "Jalgratas", - "Biking" : "Jalgrattaga sõitmine", - "Basketball" : "Korvpall", - "Fishing" : "Kalapüük", - "Hiking" : "Matkaminee", - "Hike" : "Matk", - "Art" : "Kunst", - "Exhibition" : "Näitus", - "Museum" : "Muuseum", - "Pilates" : "Pilates", - "Park" : "Park", - "Studying" : "Õppimine", - "Doctor" : "Arst", - "Health" : "Tervis", - "Dentist" : "Hambaarst", - "Interview" : "Intervjuu", - "Training" : "Koolitus", - "Work out" : "Trenn", - "Working out" : "Treening", - "Barber" : "Habemeajaja", - "Haircut" : "Juukselõikus", - "Exam" : "Eksam", - "Fireworks" : "Ilutulestik", - "Running" : "Jooksmine", - "Go for a run" : "Mine jooksma", - "Marathon" : "Maraton", - "Call" : "Telefonikõne", - "Calling" : "Helistamine", - "Christmas" : "Jõulud", - "Conference" : "Konverents", - "Pizza" : "Pitsa", - "Travelling" : "Reisimine", - "Journey" : "Teekond", - "Collaborate" : "Koostöö", - "Pair" : "Paar", - "Lecture" : "Loeng", - "Seminar" : "Seminar", - "Photograph" : "Foto", - "Party" : "Pidu", - "Celebration" : "Tähistamine", - "Celebrate" : "Tähista", - "Birthday" : "Sünnipäev", - "Skate" : "Uisutamine", - "Skateboard" : "Rula", - "Wine tasting" : "Veini degusteerimine", - "Golf" : "Golf", - "Dinner" : "Õhtusöök", - "User not found" : "Kasutajat ei leitud" + "Categories help you to structure and organize your events." : "Kategooriad aitavad sul oma sündmusi struktureerida ja korraldada.", + "Search or add categories" : "Otsi või lisa kategooriaid", + "Add this as a new category" : "Lisa see uue kategooriana", + "Custom color" : "Sinu valitud värv", + "Special color of this event. Overrides the calendar-color." : "Sellele sündmusele määratud värv, mis asendab kalendri standardvärvi.", + "Error while sharing file" : "Viga faili jagamisel", + "Error while sharing file with user" : "Viga kasutajale jagamisel", + "Error creating a folder {folder}" : "Viga {folder} kausta loomisel", + "Attachment {fileName} already exists!" : "Manus nimega „{fileName}“ on juba olemas!", + "Attachment {fileName} added!" : "{fileName} manus on lisatud!", + "An error occurred during uploading file {fileName}" : "Viga {fileName} faili üleslaadimisel", + "An error occurred during getting file information" : "Failiteabe kättesaamisel tekkis viga", + "Talk conversation for event" : "Kõnerakenduse vestlus ürituse jaoks", + "An error occurred, unable to delete the calendar." : "Tekkis viga ja kalendri kustutamine pole võimalik.", + "Imported {filename}" : "Importisin „{filename}“ faili", + "This is an event reminder." : "See on sündmuse meeldetuletus.", + "Error while parsing a PROPFIND error" : "Viga PROPFIND-meetodi vea töötlemisel", + "Appointment not found" : "Kokkulepitud kohtumist ei leidu", + "User not found" : "Kasutajat ei leitud", + "Reminder" : "Meeldetuletused", + "+ Add reminder" : "+ Lisa meeldetuletus", + "Select automatic slot" : "Vali automaatselt soovitatud ajavahemik", + "with" : "koos", + "Available times:" : "Saadaolevad ajad:", + "Suggestions" : "Soovitused", + "Details" : "Üksikasjad" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/eu.js b/l10n/eu.js index 812f10d6dc9a7f94bd01728375dc816cbb67fe0b..52bac2c3e84e7ad20b505fb3b786f19d47714f4d 100644 --- a/l10n/eu.js +++ b/l10n/eu.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Emandako helbide elektronikoa luzeegia da", "User-Session unexpectedly expired" : "Erabiltzaile-saioa ustekabean iraungi da", "Provided email-address is not valid" : "Emandako helbide elektronikoa ez da baliozkoa", "%s has published the calendar »%s«" : "%s erabiltzaileak »%s« egutegia argitaratu du", @@ -11,129 +12,160 @@ OC.L10N.register( "Open »%s«" : " Ireki »%s«", "Cheers!" : "Topa!", "Upcoming events" : "Hurrengo gertaerak", + "No more events today" : "Ez dago gertaera gehiagorik gaurkoz.", + "No upcoming events" : "Ez dago gertaerarik datozen egunetan.", + "More events" : "Gertaera gehiago", + "%1$s with %2$s" : "%1$s %2$s(r)ekin", + "Calendar" : "Egutegia", + "New booking {booking}" : "Erreserba berria {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) \"{config_display_name}\" hitzordua erreserbatu du {date_time}-etan.", "Appointments" : "Hitzorduak", "Schedule appointment \"%s\"" : "Antolatu \"%s\" hitzordua", "Schedule an appointment" : "Antolatu hitzordu bat", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Prestatu %s-rentzat", "Follow up for %s" : "%s-(r)en jarraipena", - "Your appointment \"%s\" needs confirmation" : "Zure \"%s\" hitzorduak berrespena behar du", + "Your appointment \"%s\" with %s needs confirmation" : "Zure \"%s\" hitzorduak %s-(r)ekin berrespena behar du", "Dear %s, please confirm your booking" : " %s estimatua, berretsi zure erreserba", "Confirm" : "Berretsi", + "Appointment with:" : "Hitzordua honekin:", + "Description:" : "Deskribapena:", "This confirmation link expires in %s hours." : "Berrespen-esteka hau %s ordu barru iraungiko da.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Azkenean hitzordua bertan behera utzi nahi baduzu, jarri harremanetan zure administratzailearekin.", - "Appointment:" : "Hitzordua:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Azken finean hitzordua bertan behera utzi nahi baduzu, jarri harremanetan antolatzailearekin, mezu elektroniko honi erantzunez edo bere profileko orria bisitatuz.", + "Your appointment \"%s\" with %s has been accepted" : "Zure \"%s\" hitzordua %s-(r)ekin onartua izan da", + "Dear %s, your booking has been accepted." : " %spreziatua, zure erreserba onartu da.", + "Appointment for:" : "Hitzordua:", "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Esteka bat jasoko duzu berrespen-mezu elektronikoarekin", "Where:" : "Non:", - "Description:" : "Deskribapena:", - "Calendar" : "Egutegia", + "Comment:" : "Iruzkina:", + "You have a new appointment booking \"%s\" from %s" : "\"%s\" hitzordu berri bat duzu %s-tik", + "Dear %s, %s (%s) booked an appointment with you." : " %s estimatua, %s (%s)-k zurekin hitzordua erreserbatu du.", "A Calendar app for Nextcloud" : "Nextclouderako egutegi app-a", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Egutegi aplikazioa erabiltzaile interfaze bat da, Nextclouden CalDAV zerbitzarirako. Sinkronizatu itzazu gertaerak erraz gailu ugaritatik zure Nextcloud-ekin eta editatu itzazu sarean.\n\n* 🚀 **Integrazioa Nextclouden beste aplikazioekin!** Oraingoz Kontaktuak- laster gehiago.\n* 🌐 **WebCal onartzen da!** Zure kirol talde gustukoenaren partidak egutegian izan nahi? Arazorik ez!\n* 🙋 **Partaideak!** gonbidatu jendea zure gertaeretara\n* ⌚️ **Libre/Lanpetuta:** Ikusi noiz dauden partaideak libre elkartzeko\n* ⏰ **Abisuak!** Jaso alarmak gertaerentzat nabigatzailean edo e-posta bidez\n* 🙈 **Ez dugu gurpila berrasmatu!** [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) eta [fullcalendar](https://github.com/fullcalendar/fullcalendar) liburutegi bikainetan oinarrituta.", "Previous day" : "Aurreko eguna", "Previous week" : "Aurreko astea", + "Previous year" : "Aurreko urtea", "Previous month" : "Aurreko hilabetea", "Next day" : "Hurrengo eguna", "Next week" : "Hurrengo astea", + "Next year" : "Hurrengo urtea", "Next month" : "Hurrengo hilabetea", - "New event" : "Gertaera berria", + "Create new event" : "Sortu gertaera berria", + "Event" : "Gertaera", "Today" : "Gaur", "Day" : "Eguna", "Week" : "Astea", "Month" : "Hilabetea", + "Year" : "Urtea", "List" : "Zerrenda", + "Appointment link was copied to clipboard" : "Hitzorduaren esteka arbelean kopiatu da", + "Appointment link could not be copied to clipboard" : "Hitzorduaren esteka ezin izan da arbelean kopiatu", "Preview" : "Aurrebista", "Copy link" : "Kopiatu esteka", "Edit" : "Editatu", "Delete" : "Ezabatu", - "Appointment link was copied to clipboard" : "Hitzorduaren esteka arbelean kopiatu da", - "Appointment link could not be copied to clipboard" : "Hitzorduaren esteka ezin izan da arbelean kopiatu", - "Add new" : "Gehitu berria", - "Untitled calendar" : "Izenik gabeko egutegia", - "Edit name" : "Editatu izena", - "Saving name …" : "Izena gordetzen …", - "Edit color" : "Editatu kolorea", - "Saving color …" : "Kolorea gordetzen …", - "Copy private link" : "Kopiatu esteka pribatua", - "Export" : "Esportatu", - "Unshare from me" : "Kendu nirekin partekatzea", + "Appointment schedules" : "Hitzorduen ordutegiak", + "Create new" : "Sortu berria", "Disable calendar \"{calendar}\"" : "Desgaitu \"{calendar}\" egutegia", "Disable untitled calendar" : "Desgaitu izenbururik gabeko egutegia", "Enable calendar \"{calendar}\"" : "Gaitu \"{calendar}\" egutegia", "Enable untitled calendar" : "Gaitu izenbururik gabeko egutegia", "An error occurred, unable to change visibility of the calendar." : "Errore bat gertatu da, ezin da egutegiaren ikusgaitasuna aldatu.", - "An error occurred, unable to delete the calendar." : "Errore bat gertatu da, ezin da egutegia ezabatu.", - "Calendar link copied to clipboard." : "Egutegiko esteka arbelera kopiatu da.", - "Calendar link could not be copied to clipboard." : "Ezin izan da egutegiko esteka arbelera kopiatu.", - "An error occurred, unable to rename the calendar." : "Errore bat gertatu da, ezin da egutegia berrizendatu.", - "An error occurred, unable to change the calendar's color." : "Errore bat gertatu da, ezin da egutegiaren kolorea aldatu.", + "Untitled calendar" : "Izenik gabeko egutegia", + "Shared with you by" : "Zurekin partekatuta honengatik:", + "Edit and share calendar" : "Editatu eta partekatu egutegia", + "Edit calendar" : "Editatu egutegia", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Egutegia partekatzea kenduko da segundo {countdown} barru","Egutegia partekatzea kenduko da {countdown} segundo barru"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Egutegia ezabatuko da segundo {countdown} barru","Egutegia ezabatuko da {countdown} segundo barru"], + "An error occurred, unable to create the calendar." : "Errore bat gertatu da, ezin da egutegia sortu.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Sartu baliozko esteka bat (hauetako batekin hasi behar du: http://, https://, webcal:// edo webcals://)", + "Calendars" : "Egutegiak", + "Add new" : "Gehitu berria", + "New calendar" : "Egutegi berria", + "Name for new calendar" : "Egutegi berriaren izena", + "Creating calendar …" : "Egutegia sortzen …", + "New calendar with task list" : "Egutegi berria eginkizun-zerrendarekin", + "New subscription from link (read-only)" : "Harpidetza berria estekatik (irakurtzeko soilik)", + "Creating subscription …" : "Harpidetza sortzen ...", + "Add public holiday calendar" : "Gehitu opor publikoen egutegia", + "Add custom public calendar" : "Gehitu egutegi publiko pertsonalizatua", + "Calendar link copied to clipboard." : "Egutegiko esteka arbelera kopiatu da.", + "Calendar link could not be copied to clipboard." : "Ezin izan da egutegiko esteka arbelera kopiatu.", + "Copy subscription link" : "Kopiatu harpidetza esteka", + "Copying link …" : "Esteka kopiatzen …", + "Copied link" : "Esteka kopiatuta", + "Could not copy link" : "Ezin izan da esteka kopiatu", + "Export" : "Esportatu", + "Untitled item" : "Izen gabeko elementua", + "Unknown calendar" : "Egutegi ezezaguna", + "Could not load deleted calendars and objects" : "Ezin izan dira ezabatutako egutegi eta elementuak kargatu", + "Could not delete calendar or event" : "Ezin izan da egutegi edo gertaera ezabatu", + "Could not restore calendar or event" : "Ezin izan da egutegia edo gertaera berezarri", + "Do you really want to empty the trash bin?" : "Ziur zaude zakarrontzia hustu nahi duzula?", + "Empty trash bin" : "Hustu zakarrontzia", + "Trash bin" : "Zakarrontzia", + "Loading deleted items." : "Ezabatutako elementuak kargatzen.", + "You do not have any deleted items." : "Ez duzu ezabatutako elementurik.", + "Name" : "Izena", + "Deleted" : "Ezabatuta", + "Restore" : "Berrezarri", + "Delete permanently" : "Ezabatu betirako", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Zakarrontziko elementuak egun {numDays} igaro ondoren ezabatzen dira","Zakarrontziko elementuak {numDays} egun igaro ondoren ezabatzen dira"], + "Could not update calendar order." : "Ezin da egutegi-eskaera eguneratu.", + "Shared calendars" : "Partekatutako egutegiak", + "Deck" : "Deck", + "Hidden" : "Ezkutuan", + "Internal link" : "Barneko esteka", + "A private link that can be used with external clients" : "Kanpoko bezeroengatik erabili ahal den esteka pribatua", + "Copy internal link" : "Kopiatu barne-esteka", + "An error occurred, unable to publish calendar." : "Errore bat gertatu da, ezin da egutegia argitaratu", + "An error occurred, unable to send email." : "Errore bat gertatu da, ezin da posta elektronikoa bidali.", + "Embed code copied to clipboard." : "Kapsulatze-kodea arbelera kopiatu da.", + "Embed code could not be copied to clipboard." : "Ezin izan da kapsulatze-kodea arbelera kopiatu.", + "Unpublishing calendar failed" : "Egutegia desargitaratzeak huts egin du", "Share link" : "Partekatu esteka", - "Publish calendar" : "Argitaratu egutegia", - "Publishing calendar" : "Egutegia argitaratzen", "Copy public link" : "Kopiatu esteka publikoa", "Send link to calendar via email" : "Bidali esteka egutegira posta elektroniko bidez", "Enter one address" : "Sartu helbide bat", "Sending email …" : "Posta elektronikoa bidaltzen …", - "Copy subscription link" : "Kopiatu harpidetza esteka", - "Copying link …" : "Esteka kopiatzen …", - "Copied link" : "Esteka kopiatuta", - "Could not copy link" : "Ezin izan da esteka kopiatu", "Copy embedding code" : "Kopiatu kapsulatze-kodea", "Copying code …" : "Kodea kopiatzen …", "Copied code" : "Kodea kopiatuta", "Could not copy code" : "Ezin izan da kodea kopiatu", "Delete share link" : "Ezabatu partekatze esteka", "Deleting share link …" : "Partekatze esteka ezabatzen  ...", - "An error occurred, unable to publish calendar." : "Errore bat gertatu da, ezin da egutegia argitaratu", - "An error occurred, unable to send email." : "Errore bat gertatu da, ezin da posta elektronikoa bidali.", - "Embed code copied to clipboard." : "Kapsulatze-kodea arbelera kopiatu da.", - "Embed code could not be copied to clipboard." : "Ezin izan da kapsulatze-kodea arbelera kopiatu.", - "Unpublishing calendar failed" : "Egutegia desargitaratzeak huts egin du", - "Share with users or groups" : "Partekatu erabiltzaile edo taldeekin", - "No users or groups" : "Ez dago erabiltzaile edota talderik", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Lantaldea)", + "An error occurred while unsharing the calendar." : "Errorea gertatu da egutegia partekatzeari uztean.", + "An error occurred, unable to change the permission of the share." : "Errore bat gertatu da, ezin da partekatzearen baimena aldatu.", "can edit" : "editatu dezake", "Unshare with {displayName}" : "Utzi {displayName} erabiltzailearekin partekatzeari", - "An error occurred, unable to change the unshare the calendar." : "Errore bat gertatu da, ezin da egutegia partekatzeari uztea aldatu.", - "An error occurred, unable to change the permission of the share." : "Errore bat gertatu da, ezin da partekatzearen baimena aldatu.", - "+ New calendar" : "+ Egutegi berria", - "New calendar" : "Egutegi berria", - "Name for new calendar" : "Egutegi berriaren izena", - "Creating calendar …" : "Egutegia sortzen …", - "New calendar with task list" : "Egutegi berria ataza zerrendarekin", - "New subscription from link (read-only)" : "Harpidetza berria estekatik (irakurtzeko soilik)", - "Creating subscription …" : "Harpidetza sortzen ...", - "An error occurred, unable to create the calendar." : "Errore bat gertatu da, ezin da egutegia sortu.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Sartu baliozko esteka bat (hauetako batekin hasi behar du: http://, https://, webcal:// edo webcals://)", - "Trash bin" : "Zakarrontzia", - "Loading deleted elements." : "Kargatu ezabatutako elementuak.", - "You do not have any deleted elements." : "Ez duzu ezabatutako elementurik.", - "Name" : "Izena", - "Deleted" : "Ezabatuta", - "Restore" : "Berrezarri", - "Delete permanently" : "Ezabatu betirako", - "Empty trash bin" : "Hustu zakarrontzia", - "Untitled element" : "Izen gabeko elementua", - "Unknown calendar" : "Egutegi ezezaguna", - "Could not load deleted calendars and objects" : "Ezin izan dira ezabatutako egutegi eta elementuak kargatu", - "Could not restore calendar or event" : "Ezin izan da egutegia edo gertaera berezarri", - "Do you really want to empty the trash bin?" : "Ziur zaude zakarrontzia hustu nahi duzula?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Zakarrontziko elementuak {numDays} egun igaro ondoren ezabatzen dira","Zakarrontziko elementuak {numDays} egun igaro ondoren ezabatzen dira"], - "Could not update calendar order." : "Ezin da egutegi-eskaera eguneratu.", + "Share with users or groups" : "Partekatu erabiltzaile edo taldeekin", + "No users or groups" : "Ez dago erabiltzaile edota talderik", + "Failed to save calendar name and color" : "Ezin izan da egutegiaren izena eta kolorea gorde", + "Calendar name …" : "Egutegiaren izena ...", + "Never show me as busy (set this calendar to transparent)" : "Ez erakutsi inoiz okupatuta nagoenik (ezarri egutegi hau garden gisa)", + "Share calendar" : "Partekatu egutegia", + "Unshare from me" : "Kendu nirekin partekatzea", + "Save" : "Gorde", "Import calendars" : "Inportatu egutegiak", "Please select a calendar to import into …" : "Hautatu egutegia hona inportatzeko ...", "Filename" : "Fitxategi-izena", "Calendar to import into" : "Hona inportatzeko egutegia", "Cancel" : "Ezeztatu", "_Import calendar_::_Import calendars_" : ["Inportatu egutegia","Inportatu egutegiak"], + "Select the default location for attachments" : "Hautatu eranskinen kokaleku lehenetsia", + "Pick" : "Aukeratu", + "Invalid location selected" : "Kokaleku baliogabea hautatu da", + "Attachments folder successfully saved." : "Eranskinen karpeta behar bezala gorde da.", + "Error on saving attachments folder." : "Errore bat gertatu da eranskinen karpeta gordetzean.", + "Default attachments location" : "Eranskinen kokaleku lehenetsia", "{filename} could not be parsed" : "{filename} ezin da analizatu", "No valid files found, aborting import" : "Ez da baliodun fitxategirik aurkitu, inportazioa bertan behera uzten", - "Import partially failed. Imported {accepted} out of {total}." : "Inportazioak huts egin du hein batean. Guztira {total} ziren, {accepted} inportatu dira.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n gertaera behar bezala inportatu dira","%n gertaera behar bezala inportatu dira"], + "Import partially failed. Imported {accepted} out of {total}." : "Inportazioak huts egin du hein batean. Guztira {total} ziren, {accepted} inportatu dira.", "Automatic" : "Automatikoa", "Automatic ({detected})" : "Automatikoa ({detected})", "New setting was not saved successfully." : "Ezarpen berria ez da behar bezala gorde.", - "Shortcut overview" : "Lasterbideen informazio orokorra", - "or" : "edo", "Navigation" : "Nabigazioa", "Previous period" : "Aurreko aldia", "Next period" : "Hurrengo aldia", @@ -141,6 +173,7 @@ OC.L10N.register( "Day view" : "Egun ikuspegia", "Week view" : "Aste ikuspegia", "Month view" : "Hilabete ikuspegia", + "Year view" : "Urte ikuspegia", "List view" : "Zerrenda ikuspegia", "Actions" : "Ekintzak", "Create event" : "Sortu gertaera", @@ -150,24 +183,29 @@ OC.L10N.register( "Save edited event" : "Gorde editatutako gertaera", "Delete edited event" : "Ezabatu editatutako gertaera", "Duplicate event" : "Bikoiztu gertaera", + "Shortcut overview" : "Lasterbideen informazio orokorra", + "or" : "edo", + "Calendar settings" : "Egutegiaren ezarpenak", + "At event start" : "Gertaeraren hasieran", + "No reminder" : "Gogorarazpenik ez", + "Failed to save default calendar" : "Egutegi lehenetsia gordetzeak huts egin du", + "CalDAV link copied to clipboard." : "CalDAV esteka arbelera kopiatu da.", + "CalDAV link could not be copied to clipboard." : "Ezin izan da CalDAV helbidea arbelera kopiatu.", "Enable birthday calendar" : "Gaitu urtebetetzeen egutegia", "Show tasks in calendar" : "Erakutsi zereginak egutegian", "Enable simplified editor" : "Gaitu editore sinplifikatua", - "Limit visible events per view" : "Mugatu ikusgai dauden gertaerak", + "Limit the number of events displayed in the monthly view" : "Mugatu hileroko ikuspegian bistaratzen diren gertaeren kopurua", "Show weekends" : "Erakutsi asteburuak", "Show week numbers" : "Erakutsi aste zenbakiak", "Time increments" : " \nDenbora-gehikuntzak", - "Default reminder" : "Abisu lehenetsia", + "Default calendar for incoming invitations" : "Jasotako gonbidapenetarako egutegi lehenetsia", + "Default reminder" : "Gogorarazpen lehenetsia", "Copy primary CalDAV address" : "Kopiatu CalDAV helbide nagusia", "Copy iOS/macOS CalDAV address" : "Kopiatu iOS/macOS CalDAV helbidea", "Personal availability settings" : "Eskuragarritasun pertsonalaren ezarpenak", "Show keyboard shortcuts" : "Erakutsi teklatuaren lasterbideak", - "Calendar settings" : "Egutegiaren ezarpenak", - "No reminder" : "Abisurik ez", - "CalDAV link copied to clipboard." : "CalDAV esteka arbelera kopiatu da.", - "CalDAV link could not be copied to clipboard." : "Ezin izan da CalDAV helbidea arbelera kopiatu.", - "Appointment was created successfully" : "Hitzordua ondo sortu da", - "Appointment was updated successfully" : "Hitzordua ondo eguneratu da", + "Appointment schedule successfully created" : "Hitzorduaren ordutegia ondo sortu da", + "Appointment schedule successfully updated" : "Hitzorduaren ordutegia ondo eguneratu da", "_{duration} minute_::_{duration} minutes_" : ["minutu {duration}","{duration} minutu"], "0 minutes" : "0 minutu", "_{duration} hour_::_{duration} hours_" : ["ordu {duration}","{duration} ordu"], @@ -178,7 +216,14 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Hitzorduak konfiguratzeko, gehitu zure e-posta helbidea ezarpen pertsonaletan.", "Public – shown on the profile page" : "Publikoa – profil-orrian erakusten da", "Private – only accessible via secret link" : "Pribatua – esteka sekretu bidez soilik ikus daiteke", + "Appointment schedule saved" : "Hitzorduen ordutegia gordeta", + "Create appointment schedule" : "Sortu hitzorduaren ordutegia", + "Edit appointment schedule" : "Editatu hitzorduaren ordutegia", + "Update" : "Eguneratu", + "Appointment name" : "Hitzorduaren izena:", "Location" : "Kokapena", + "Create a Talk room" : "Sortu Talk gela bat", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Erreserbatutako hitzordu bakoitzeko esteka esklusibo bat sortuko da eta berrespen-mezu bidez bidaliko da", "Description" : "Deskribapena", "Visibility" : "Ikusgarritasuna", "Duration" : "Iraupena", @@ -196,6 +241,7 @@ OC.L10N.register( "Friday" : "Ostirala", "Saturday" : "Larunbata", "Sunday" : "Igandea", + "Weekdays" : "Astegunak", "Add time before and after the event" : "Gehitu denbora gertaera baino lehen eta ostean", "Before the event" : "Gertaera baino lehen", "After the event" : "Gertarearen ostean", @@ -203,18 +249,19 @@ OC.L10N.register( "Minimum time before next available slot" : "Denbora minimoa hurrengo tarte eskuragarriarentzat", "Max slots per day" : "Tarte kopuru maximoa egunero", "Limit how far in the future appointments can be booked" : "Mugatu hitzorduak etorkizuneko zein puntura arte erreserba daitezkeen", - "Create appointment" : "Sortu hitzordua", - "Edit appointment" : "Editatu hitzordua", - "Save" : "Gorde", - "Update" : "Eguneratu", + "It seems a rate limit has been reached. Please try again later." : "Badirudi datu-mugara iritsi zarela. Mesedez, saiatu berriro geroago.", "Please confirm your reservation" : "Berretsi zure erreserba", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Mezu elektroniko bat bidali dizugu xehetasunekin. Mesedez, berretsi zure hitzordua mezu elektronikoaren esteka erabiliz. Orrialde hau itxi dezakezu orain.", "Your name" : "Zure izena", "Your email address" : "Zure e-posta", "Please share anything that will help prepare for our meeting" : "Mesedez, partekatu gure bilera prestatzen lagunduko duen edozer", "Could not book the appointment. Please try again later or contact the organizer." : "Ezin izan da hitzordua erreserbatu. Saiatu berriro geroago edo jarri harremanetan administratzalearekin.", - "Book the appointment" : "Erreserbatu hitzordua", - "Reminder" : "Oroigarria", + "Back" : "Itzuli", + "Book appointment" : "Erreserbatu hitzordua", + "Create a new conversation" : "Sortu elkarrizketa berri bat", + "Select conversation" : "Hautatu elkarrizketa", + "on" : "noiz", + "at" : "non", "before at" : "lehenago hemen", "Notification" : "Jakinarazpena", "Email" : "Mezu elektronikoa", @@ -224,115 +271,136 @@ OC.L10N.register( "On date" : "Epean", "Edit time" : "Editatu ordua", "Save time" : "Gorde ordua", - "Remove reminder" : "Kendu abisua", - "on" : "noiz", - "at" : "non", - "+ Add reminder" : "+ Gehitu abisua", - "Add reminder" : "Gehitu oroigarria", - "_second_::_seconds_" : ["segundo","segundo"], - "_minute_::_minutes_" : ["minutu","minutu"], - "_hour_::_hours_" : ["ordu","ordu"], - "_day_::_days_" : ["egun","egun"], - "_week_::_weeks_" : ["aste","aste"], + "Remove reminder" : "Kendu gogorarazpena", + "Add reminder" : "Gehitu gogorarazpena", + "seconds" : "duela segundu batzuk", + "minutes" : "minutu", + "hours" : "ordu", + "days" : "egun", + "weeks" : "aste", + "Choose a file to add as attachment" : "Aukeratu fitxategia eranskin gisa gehitzeko", + "Choose a file to share as a link" : "Aukeratu fitxategi bat esteka bezala partekatzeko", + "Attachment {name} already exist!" : "Dagoeneko existitzen da {name} eranskina!", + "Could not upload attachment(s)" : "Ezinezkoa izan da eranskina(k) igotzea", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Hona nabigatzera zoaz:.{host}. Ziur aurrera egin nahi duzula? Esteka: {link}", + "Proceed" : "Jarraitu", + "No attachments" : "Eranskinik ez", + "Add from Files" : "Gehitu Fitxategietatik", + "Upload from device" : "Igo gailutik", + "Delete file" : "Ezabatu fitxategia", + "Confirmation" : "Berrespena", + "_{count} attachment_::_{count} attachments_" : ["Eranskin {count}","{count} eranskin"], "Suggested" : "Iradokituta", "Available" : "Erabilgarri", - "Not available" : "Ez dago erabilgarri", - "Checking availability" : "Erabilgarritasuna egiaztatzen", "Invitation accepted" : "Gonbidapena onartuta", "Accepted {organizerName}'s invitation" : "{organizerName}(r)en gonbidapena onartuta", + "Participation marked as tentative" : "Partaidetza behin-behineko gisa markatu da", + "Invitation is delegated" : "Gonbidapena eskuordetuta dago", + "Not available" : "Ez dago erabilgarri", "Invitation declined" : "Gonbidapena ukatuta", "Declined {organizerName}'s invitation" : "{organizerName}(r)en gonbidapena ukatuta", - "Invitation is delegated" : "Gonbidapena eskuordetuta dago", - "Participation marked as tentative" : "Partaidetza behin-behineko gisa markatu da", - "Invitation sent" : "Gonbidapena bidalita", + "Awaiting response" : "Erantzunaren zain", + "Checking availability" : "Erabilgarritasuna egiaztatzen", "Has not responded to {organizerName}'s invitation yet" : "Oraindik ez dio {organizerName} erabiltzailearen gonbidapenari erantzun", - "Availability of attendees, resources and rooms" : "Partaide, baliabide eta gelen eskuragarritasuna", + "chairperson" : "mahaiburua", + "required participant" : "beharrezko partaidea", + "non-participant" : "ez da partaidea", + "optional participant" : "hautazko partaidea", "{organizer} (organizer)" : "{organizer} (kudeatzailea)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Partaide, baliabide eta gelen eskuragarritasuna", + "Suggestion accepted" : "Iradokizuna onartuta", + "Legend" : "Legenda", + "Out of office" : "Bulegotik kanpo", + "Attendees:" : "Parte-hartzaileak:", + "Done" : "Egina", + "Search room" : "Bilatu gela", + "Room name" : "Gelaren izena", + "Check room availability" : "Egiaztatu gelaren eskuragarritasuna", "Free" : "Libre", "Busy (tentative)" : "Lanpetuta (behin-behinean)", "Busy" : "Lanpetua", - "Out of office" : "Bulegotik kanpo", "Unknown" : "Ezezaguna", - "Accept" : "Onartu", - "Decline" : "Uko egin", - "Tentative" : "Behin behinekoa", + "Find a time" : "Bilatu noiz", "The invitation has been accepted successfully." : "Gonbidapena behar bezala onartu da.", "Failed to accept the invitation." : "Huts egin du gonbidapena onartzen.", "The invitation has been declined successfully." : "Gonbidapena behar bezala baztertu da.", "Failed to decline the invitation." : "Huts egin du gonbidapena baztertzen.", "Your participation has been marked as tentative." : "Zure parte hartzea behin-behineko gisa markatu da.", "Failed to set the participation status to tentative." : "Huts egin du zure parte hartzea behin-behineko gisa ezartzen.", - "Create Talk room for this event" : "Sortu Talk gela gertaera honentzat", - "Show busy times" : "Erakutsi denbora lanpetuta", + "Accept" : "Onartu", + "Decline" : "Uko egin", + "Tentative" : "Behin behinekoa", "No attendees yet" : "Partaiderik ez oraindik", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} gonbidatuta, {confirmedCount} berretsita", + "Successfully appended link to talk room to location." : "Ondo erantsi zaio esteka hizketa-gelaren kokalekuari.", "Successfully appended link to talk room to description." : "Ondo erantsi zaio esteka hizketa gelaren deskribapenari.", "Error creating Talk room" : "Errorea Talk gela sortzean", - "Send email" : "Bidali e-posta", + "Attendees" : "Partaideak", + "_%n more guest_::_%n more guests_" : ["gonbidatu gehiago %n","%n gonbidatu gehiago"], + "Remove group" : "Ezabatu taldea", + "Remove attendee" : "Kendu partaidea", + "Request reply" : "Eskaera erantzuna", "Chairperson" : "Mahaiburua", "Required participant" : "Beharrezko partaidea", "Optional participant" : "Hautazko partaidea", "Non-participant" : "Ez da partaidea", - "Remove attendee" : "Kendu partaidea", - "Search for emails, users or contacts" : "Bilatu mezu elektronikoak, erabiltzaileak edo kontaktuak", + "_%n member_::_%n members_" : ["kide %n","%n kide"], "No match found" : "Ez da emaitzarik aurkitu", + "Note that members of circles get invited but are not synced yet." : "Kontuan izan zirkuluetako kideek gonbidapena jasotzen dutela baina ez direla oraindik sinkronizatzen.", + "Note that members of contact groups get invited but are not synced yet." : "Kontuan izan kontaktu taldeetako kideek gonbidapena jasotzen dutela baina ez direla oraindik sinkronizatzen.", "(organizer)" : "(antolatzailea)", + "Make {label} the organizer" : "Egin {label} antolatzaile", + "Make {label} the organizer and attend" : "Egin {label} antolatzaile eta parte-hartzaile", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Gonbidapenak bidali eta erantzunak kudeatzeko, [linkopen] gehitu zure posta helbidea ezarpen pertsonaletan[linkclose].", "Remove color" : "Kendu kolorea", "Event title" : "Gertaeraren izenburua", - "All day" : "Egun osoa", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Ezin da egun osoko ezarpena aldatu errepikapen multzo baten parte diren gertaeretarako. ", - "from {startDate}" : "{startDate}tik", - "from {startDate} at {startTime}" : "{startDate}ko, {startTime}tik", - "to {endDate}" : "{endDate} arte", - "to {endDate} at {endTime}" : "{endDate}ko {endTime} arte", + "From" : "Nork", + "To" : "Nori", "Repeat" : "Errepikatu", - "End repeat" : "Amaitu errepikapena", - "Select to end repeat" : "Hautatu errepikapena amaitzeko", + "_time_::_times_" : ["aldiz","aldiz"], "never" : "inoiz ez", "on date" : "epean", "after" : "gero", - "_time_::_times_" : ["aldiz","aldiz"], + "End repeat" : "Amaitu errepikapena", + "Select to end repeat" : "Hautatu errepikapena amaitzeko", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Ekitaldi hau errepikapen multzo bateko errepikapen salbuespena da. Ezin diozu errepikapen-araurik gehitu.", "first" : "lehena", - "third" : "hirugarrena", - "fourth" : "laugarrena", - "fifth" : "bosgarrena", - "second to last" : "bigarren azkena", - "last" : "azkena", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Errepikapen arauan egindako aldaketak gertaera honentzat eta etorkizunekoentzat bakarrik aplikatuko dira.", "Repeat every" : "Errepikatu zenbatero", "By day of the month" : "Hileko egunaren arabera", "On the" : "Honetan", + "_day_::_days_" : ["egun","egun"], + "_week_::_weeks_" : ["aste","aste"], "_month_::_months_" : ["hilabete","hilabete"], "_year_::_years_" : ["urte","urte"], "weekday" : "asteguna", "weekend day" : "asteburuko eguna", - "No recurrence" : "Errepikapenik ez", + "Does not repeat" : "Ez errepikatu", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Gertaera honen errepikapen definizioa ez du guztiz onartzen Nextcloud-ek. Errepikapen aukerak editatzen badituzu, errepikapen batzuk galdu litezke.", - "Suggestions" : "Iradokizunak", "No rooms or resources yet" : "Oraindik ez dago gelarik edo baliabiderik", + "Resources" : "Baliabideak", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} eserleku ","{seatingCapacity} eserleku "], "Add resource" : "Gehitu baliabidea", "Has a projector" : "Proiektore bat dauka", "Has a whiteboard" : "Arbel zuria dauka", "Wheelchair accessible" : "Gurpil-aulkientzako sarbidea", "Remove resource" : "Kendu baliabidea", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} eserleku ","{seatingCapacity} eserleku "], - "Projector" : "Proiektorea", - "Whiteboard" : "Arbel zuria", "Search for resources or rooms" : "Bilatu baliabideak edo gelak", "available" : "erabilgarri", "unavailable" : "ez erabilgarri", + "Show all rooms" : "Erakutsi gela guztiak", + "Projector" : "Proiektorea", + "Whiteboard" : "Arbel zuria", "Room type" : "Gela mota", "Any" : "Edozein", "Minimum seating capacity" : "Gutxieneko eserleku kopurua", - "More" : "Gehiago", - "Update this occurrence" : "Eguneratu gertaera hau", + "More details" : "Xehetasun gehiago", "Update this and all future" : "Eguneratu hau eta etorkizuneko guztiak", + "Update this occurrence" : "Eguneratu gertaera hau", "Public calendar does not exist" : "Egutegi publikoa ez da existitzen", "Maybe the share was deleted or has expired?" : "Agian, partekatutakoa ezabatu egin da edo iraungita geratu da?", - "Please select a time zone:" : "Aukeratu ordu-zona bat:", - "Pick a time" : "Aukeratu ordua", - "Pick a date" : "Aukeratu eguna", "from {formattedDate}" : "{formattedDate}tik ", "to {formattedDate}" : "{formattedDate} arte ", "on {formattedDate}" : "{formattedDate}an", @@ -342,9 +410,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate}ko {formattedTime}etan", "Please enter a valid date" : "Sartu baliozko data", "Please enter a valid date and time" : "Sartu baliozko data eta ordua", + "Select a time zone" : "Hautatu ordu-zona", + "Please select a time zone:" : "Aukeratu ordu-zona bat:", + "Pick a time" : "Aukeratu ordua", + "Pick a date" : "Aukeratu eguna", "Type to search time zone" : "Idatzi ordu-zona bilatzeko", "Global" : "Orokorra", - "Select date" : "Hautatu data", + "Holidays in {region}" : "Oporrak {region}(e)n", + "An error occurred, unable to read public calendars." : "Errorea gertatu da, ezin izan dira egutegi publikoak irakurri.", + "An error occurred, unable to subscribe to calendar." : "Errore bat gertatu da, ezin izan da egutegira harpidetu.", + "Public holiday calendars" : "Opor publikoen egutegiak", + "Public calendars" : "Egutegi publikoak", + "No valid public calendars configured" : "Ez dago baliozko egutegi publikorik konfiguratuta", + "Speak to the server administrator to resolve this issue." : "Hitz egin zerbitzariko administratzailearekin arazo hau konpontzeko.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Jaiegun egutegi publikoak Thunderbird-ek hornitzen ditu. Egutegiaren datuak {website}(e)tik deskargatuko dira.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Egutegi publiko hauek zerbitzariko administratzaileak proposatzen ditu. Egutegien datuak dagokien webgunetik deskargatuko dira.", + "By {authors}" : "{authors} egina", + "Subscribed" : "Harpidetua", + "Subscribe" : "Harpidetu", + "Could not fetch slots" : "Ezin izan dira plazak eskuratu", + "Select a date" : "Hautatu data bat", "Select slot" : "Hautatu tartea", "No slots available" : "Ez dago tarterik eskuragarri", "The slot for your appointment has been confirmed" : "Zure hitzorduaren tartea berretsi da", @@ -361,22 +446,19 @@ OC.L10N.register( "Personal" : "Pertsonala", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Ordu-eremu detekzio automatikoak zehaztu du zure ordu-eremua UTC dela. \nHau seguru aski zure nabigatzailearen segurtasun neurrien ondorio da.\nZehaztu ezazu zure ordu-eremua eskuz egutegiaren ezarpenetan.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Ezarrita daukazun ordu-eremua ({timezoneId}) ez da aurkitu. UTC-ra itzultzen.\nMesedez, aldatu zure ordu-eremua ezarpenetan eta eman arazoaren berri.", - "No more events today" : "Ez dago gertaera gehiagorik gaurkoz.", - "No upcoming events" : "Ez dago gertaerarik datozen egunetan.", - "Create a new event" : "Sortu gertaera berri bat", - "[Today]" : "[Today]", - "[Tomorrow]" : "[Tomorrow]", - "[Yesterday]" : "[Yesterday]", - "[Last] dddd" : "[Last] dddd", + "Edit event" : "Editatu gertaera", "Event does not exist" : "Ez dago gertaera hori", "Duplicate" : "Bikoiztu", "Delete this occurrence" : "Ezabatu gertaera hau", "Delete this and all future" : "Ezabatu hau eta etorkizunekoak", - "Details" : "Xehetasunak", - "Attendees" : "Partaideak", - "Resources" : "Baliabideak", + "All day" : "Egun osoa", + "Managing shared access" : "Sarbide partekatua kudeatzea", + "Deny access" : "Ukatu sarbidea", + "Invite" : "Gonbidatu", + "_User requires access to your file_::_Users require access to your file_" : ["Erabiltzaileek zure fitxategirako sarbidea behar dute","Erabiltzaileek zure fitxategietarako sarbidea behar dute"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Sarbide partekatua behar duen eranskina","Sarbide partekatua behar duten eranskinak"], + "Untitled event" : "Izenik gabeko gertaera", "Close" : "Itxi", - "Show more details" : "Erakutsi xehetasun gehiago", "Subscribe to {name}" : "Harpidetu {name}", "Export {name}" : "Esportatu {name}", "Anniversary" : "Urtebetetzea", @@ -406,7 +488,6 @@ OC.L10N.register( "on {time}" : "{time}etan", "on {time} ({timezoneId})" : "{time}etan ({timezoneId})", "Week {number} of {year}" : "{year}ko {number}. astea", - "Does not repeat" : "Ez errepikatu", "Daily" : "Egunero", "Weekly" : "Astero", "Monthly" : "Hilabetero", @@ -418,24 +499,24 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["{weekday}","{weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["{dayOfMonthList} egunean","{dayOfMonthList} egunetan"], "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber}. {byDaySet}an", - "in {monthNames}" : "{monthNames}an", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames}ko {ordinalNumber}. {byDaySet}an", "until {untilDate}" : "{untilDate} arte", "_%n time_::_%n times_" : ["%n","%naldiz"], - "Untitled event" : "Izenik gabeko gertaera", + "second" : "bigarrean", + "third" : "hirugarrena", + "fourth" : "laugarrena", + "fifth" : "bosgarrena", + "second to last" : "bigarren azkena", + "last" : "azkena", "Untitled task" : "Izenik gabeko zeregina", "Please ask your administrator to enable the Tasks App." : "Mesedez eskatu administratzaileari Tasks aplikazioa gaitu dezan.", - "Prev" : "Aurrekoa", - "Next" : "Hurrengoa", - "Prev year" : "Aurreko urtea", - "Next year" : "Hurrengo urtea", - "Year" : "Urtea", "W" : "A. ", "%n more" : "%n gehiago", "No events to display" : "Ez dago bistaratzeko gertaerarik", "_+%n more_::_+%n more_" : ["+ %n","+ %n"], "No events" : "Ez dago gertaerarik", "Create a new event or change the visible time-range" : "Sortu gertaera berria edo aldatu ikusgai dagoen epea", + "Failed to save event" : "Gertaera gordetzeak huts egin du", "It might have been deleted, or there was a typo in a link" : "Baliteke ezabatua izana, edo estekaren batean akatsa egotea.", "It might have been deleted, or there was a typo in the link" : "Baliteke ezabatua izana, edo estekan akatsa egotea.", "Meeting room" : "Bilera gela", @@ -448,7 +529,6 @@ OC.L10N.register( "When shared hide this event" : "Partekatzean ezkutatu gertaera hau", "The visibility of this event in shared calendars." : "Gertaera honen ikusgarritasuna egutegi partekatuetan", "Add a location" : "Gehitu kokapen bat", - "Add a description" : "Gehitu deskribapena", "Status" : "Egoera", "Confirmed" : "Berretsita", "Canceled" : "Utzita", @@ -461,135 +541,23 @@ OC.L10N.register( "Add this as a new category" : "Gehitu hau kategoria berri bezala", "Custom color" : "Kolore pertsonalizatua", "Special color of this event. Overrides the calendar-color." : "Gertaera honen kolorea berezia da. Egutegi kolorea baliogabetzen du.", - "Chat room for event" : "Txat gela gertaera honentzat", - "Imported {filename}" : "Inportatuta {filename}", - "Meditation" : "Meditazioa", - "Relaxing" : "Erlaxatzen", - "Relax" : "Erlaxazioa", - "Break" : "Atsedena", - "Commute" : "Lanerako bidea", - "Commuting" : "Lanerako bidean", - "Shuttle" : "Anezka", - "Invoice" : "Faktura", - "Finance" : "Finantzak", - "Bank" : "Bankua", - "Money" : "Dirua", - "Wedding" : "Eskontza", - "Dog" : "Txakurra", - "Concert" : "Kontzertua", - "Festival" : "Festibala", - "Theater" : "Aretoa", - "Theatre" : "Aretoa", - "Presentation" : "Aurkezpena", - "Talk" : "Hizketaldia", - "Speech" : "Diskurtsoa", - "Deadline" : "Epemuga", - "Submission" : "Bidalketa", - "Reporting" : "Txostena egiten", - "Camping" : "Kanpina", - "Camp" : "Kanpatu", - "Election" : "Hauteskundea", - "Voting" : "Bozkatzen", - "Vote" : "Bozkatu", - "Barbecue" : "Barbakoa", - "Barbeque" : "Barbakoa", - "Garden" : "Lorategia", - "Farm" : "Baserria", - "Movie" : "Filma", - "Cinema" : "Zinema", - "Graduation" : "Graduazioa", - "Brainstorm" : "Ideia-jasa", - "Review" : "Berrikusi", - "Audit" : "Auditoretza", - "Inspection" : "Inspekzioa", - "Proofreading" : "Testu-azterketa", - "Baseball" : "Beisbola", - "Meet" : "Topaketa", - "Planning" : "Plangintza", - "Pointing" : "Honi begira", - "Retrospective" : "Atzera begirakoa", - "Office" : "Bulegoa", - "Contributor week" : "Laguntzailearen astea", - "Mail" : "Posta", - "Soccer" : "Futbola", - "Football" : "Futbol amerikarra", - "Gaming" : "Bideo-jokoak", - "Drive" : "Gidatu", - "Driving" : "Gidatzen", - "Bicycle" : "Bizikleta", - "Cycle" : "Bizikletan ibili", - "Cycling" : "Bizikletan", - "Biking" : "Motorrean ibili", - "Bike" : "Bizikleta", - "Podcast" : "Podcasta", - "Basketball" : "Saskibaloia", - "Fishing" : "Arrantza", - "Hiking" : "Ibilaldia egin", - "Hike" : "Ibilaldia", - "Art" : "Artea", - "Exhibition" : "Erakusketa", - "Museum" : "Museoa", - "Pilates" : "Pilates", - "Park" : "Parkea", - "Walk" : "Ibili", - "Studying" : "Ikasten", - "Doctor" : "Medikua", - "Health" : "Osasuna", - "Dentist" : "Dentista", - "Hospital" : "Ospitalea", - "Interview" : "Elkarrizketa", - "Training" : "Entrenamendua", - "Practice" : "Praktika", - "Sports" : "Kirolak", - "Exercise" : "Kirola egin", - "Work out" : "Gimnasia", - "Working out" : "Gimnasioan", - "Gym" : "Gimnasioa", - "Barber" : "Bizargina", - "Haircut" : "Ilea moztu", - "Hairdresser" : "Ile apandegia", - "Exam" : "Azterketa", - "Written test" : "Idatzizko azterketa", - "Oral test" : "Ahozko azterketa", - "Working" : "Lanean", - "New Years Eve" : "Urtezaharra", - "NYE" : "Urte Zaharra", - "Fireworks" : "Su artifizialak", - "Running" : "Korrika", - "Go for a run" : "Korrikaldia", - "Marathon" : "Maratoia", - "Video-conference" : "Bideo-konferentzia", - "Conference-call" : "Konferentzia deia", - "Video-call" : "Bideo-deia", - "Video-chat" : "Bideo-txata", - "Video-meeting" : "Bideo-bilera", - "Call" : "Deia", - "Calling" : "Deitzen", - "Christmas" : "Eguberriak", - "Conference" : "Biltzarra", - "Pizza" : "Pizza", - "Travelling" : "Bidaiatzen", - "Trip" : "Bidaia", - "Journey" : "Bidaia", - "Collaborate" : "Elkarlana", - "Pair" : "Parekatu", - "Lecture" : "Hitzaldia", - "Seminar" : "Mintegia", - "Teaching" : "Irakasten", - "Photograph" : "Argazkia", - "Party" : "Jaia", - "Celebration" : "Ospakizuna", - "Celebrate" : "Ospatu", - "Birthday" : "Jaioteguna", - "Shopping" : "Erosketak", - "Groceries" : "Erosketak", - "Skate" : "Patinatu", - "Skateboard" : "Patinetea", - "Wine tasting" : "Ardo dastaketa", - "Golf" : "Golfa", - "Dinner" : "Afaria", - "Lunch" : "Bazkaria", + "Error while sharing file" : "Errorea fitxategia partekatzean", + "Error while sharing file with user" : "Errorea fitxategia erabiltzailearekin partekatzean", + "Error creating a folder {folder}" : "Errorea {karpeta} karpeta bat sortzean", + "Attachment {fileName} already exists!" : "{fileName} eranskina dagoeneko badago!", + "An error occurred during getting file information" : "Errore bat gertatu da fitxategiaren informazioa eskuratzean", + "An error occurred, unable to delete the calendar." : "Errore bat gertatu da, ezin da egutegia ezabatu.", + "Imported {filename}" : "{filename} inportatuta", + "This is an event reminder." : "Hau gertaera baten gogorarazpena da.", + "Error while parsing a PROPFIND error" : "Errore bat gertatu da PROPFIND errore bat analizatzean", "Appointment not found" : "Ez da hitzordua aurkitu", - "User not found" : "Ez da erabiltzailea aurkitu" + "User not found" : "Ez da erabiltzailea aurkitu", + "Reminder" : "Gogorarazpena", + "+ Add reminder" : "+ Gehitu gogorarazpena", + "Select automatic slot" : "Hautatu tartea automatikoki", + "with" : "honekin", + "Available times:" : "Denbora eskuragarriak:", + "Suggestions" : "Iradokizunak", + "Details" : "Xehetasunak" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/eu.json b/l10n/eu.json index 2be17687d1462ad145603cb0502b5e79327da194..b8ea68c0b8c7b646d0ef0d872deeec7161f083e7 100644 --- a/l10n/eu.json +++ b/l10n/eu.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "Emandako helbide elektronikoa luzeegia da", "User-Session unexpectedly expired" : "Erabiltzaile-saioa ustekabean iraungi da", "Provided email-address is not valid" : "Emandako helbide elektronikoa ez da baliozkoa", "%s has published the calendar »%s«" : "%s erabiltzaileak »%s« egutegia argitaratu du", @@ -9,129 +10,160 @@ "Open »%s«" : " Ireki »%s«", "Cheers!" : "Topa!", "Upcoming events" : "Hurrengo gertaerak", + "No more events today" : "Ez dago gertaera gehiagorik gaurkoz.", + "No upcoming events" : "Ez dago gertaerarik datozen egunetan.", + "More events" : "Gertaera gehiago", + "%1$s with %2$s" : "%1$s %2$s(r)ekin", + "Calendar" : "Egutegia", + "New booking {booking}" : "Erreserba berria {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) \"{config_display_name}\" hitzordua erreserbatu du {date_time}-etan.", "Appointments" : "Hitzorduak", "Schedule appointment \"%s\"" : "Antolatu \"%s\" hitzordua", "Schedule an appointment" : "Antolatu hitzordu bat", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Prestatu %s-rentzat", "Follow up for %s" : "%s-(r)en jarraipena", - "Your appointment \"%s\" needs confirmation" : "Zure \"%s\" hitzorduak berrespena behar du", + "Your appointment \"%s\" with %s needs confirmation" : "Zure \"%s\" hitzorduak %s-(r)ekin berrespena behar du", "Dear %s, please confirm your booking" : " %s estimatua, berretsi zure erreserba", "Confirm" : "Berretsi", + "Appointment with:" : "Hitzordua honekin:", + "Description:" : "Deskribapena:", "This confirmation link expires in %s hours." : "Berrespen-esteka hau %s ordu barru iraungiko da.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Azkenean hitzordua bertan behera utzi nahi baduzu, jarri harremanetan zure administratzailearekin.", - "Appointment:" : "Hitzordua:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Azken finean hitzordua bertan behera utzi nahi baduzu, jarri harremanetan antolatzailearekin, mezu elektroniko honi erantzunez edo bere profileko orria bisitatuz.", + "Your appointment \"%s\" with %s has been accepted" : "Zure \"%s\" hitzordua %s-(r)ekin onartua izan da", + "Dear %s, your booking has been accepted." : " %spreziatua, zure erreserba onartu da.", + "Appointment for:" : "Hitzordua:", "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Esteka bat jasoko duzu berrespen-mezu elektronikoarekin", "Where:" : "Non:", - "Description:" : "Deskribapena:", - "Calendar" : "Egutegia", + "Comment:" : "Iruzkina:", + "You have a new appointment booking \"%s\" from %s" : "\"%s\" hitzordu berri bat duzu %s-tik", + "Dear %s, %s (%s) booked an appointment with you." : " %s estimatua, %s (%s)-k zurekin hitzordua erreserbatu du.", "A Calendar app for Nextcloud" : "Nextclouderako egutegi app-a", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Egutegi aplikazioa erabiltzaile interfaze bat da, Nextclouden CalDAV zerbitzarirako. Sinkronizatu itzazu gertaerak erraz gailu ugaritatik zure Nextcloud-ekin eta editatu itzazu sarean.\n\n* 🚀 **Integrazioa Nextclouden beste aplikazioekin!** Oraingoz Kontaktuak- laster gehiago.\n* 🌐 **WebCal onartzen da!** Zure kirol talde gustukoenaren partidak egutegian izan nahi? Arazorik ez!\n* 🙋 **Partaideak!** gonbidatu jendea zure gertaeretara\n* ⌚️ **Libre/Lanpetuta:** Ikusi noiz dauden partaideak libre elkartzeko\n* ⏰ **Abisuak!** Jaso alarmak gertaerentzat nabigatzailean edo e-posta bidez\n* 🙈 **Ez dugu gurpila berrasmatu!** [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) eta [fullcalendar](https://github.com/fullcalendar/fullcalendar) liburutegi bikainetan oinarrituta.", "Previous day" : "Aurreko eguna", "Previous week" : "Aurreko astea", + "Previous year" : "Aurreko urtea", "Previous month" : "Aurreko hilabetea", "Next day" : "Hurrengo eguna", "Next week" : "Hurrengo astea", + "Next year" : "Hurrengo urtea", "Next month" : "Hurrengo hilabetea", - "New event" : "Gertaera berria", + "Create new event" : "Sortu gertaera berria", + "Event" : "Gertaera", "Today" : "Gaur", "Day" : "Eguna", "Week" : "Astea", "Month" : "Hilabetea", + "Year" : "Urtea", "List" : "Zerrenda", + "Appointment link was copied to clipboard" : "Hitzorduaren esteka arbelean kopiatu da", + "Appointment link could not be copied to clipboard" : "Hitzorduaren esteka ezin izan da arbelean kopiatu", "Preview" : "Aurrebista", "Copy link" : "Kopiatu esteka", "Edit" : "Editatu", "Delete" : "Ezabatu", - "Appointment link was copied to clipboard" : "Hitzorduaren esteka arbelean kopiatu da", - "Appointment link could not be copied to clipboard" : "Hitzorduaren esteka ezin izan da arbelean kopiatu", - "Add new" : "Gehitu berria", - "Untitled calendar" : "Izenik gabeko egutegia", - "Edit name" : "Editatu izena", - "Saving name …" : "Izena gordetzen …", - "Edit color" : "Editatu kolorea", - "Saving color …" : "Kolorea gordetzen …", - "Copy private link" : "Kopiatu esteka pribatua", - "Export" : "Esportatu", - "Unshare from me" : "Kendu nirekin partekatzea", + "Appointment schedules" : "Hitzorduen ordutegiak", + "Create new" : "Sortu berria", "Disable calendar \"{calendar}\"" : "Desgaitu \"{calendar}\" egutegia", "Disable untitled calendar" : "Desgaitu izenbururik gabeko egutegia", "Enable calendar \"{calendar}\"" : "Gaitu \"{calendar}\" egutegia", "Enable untitled calendar" : "Gaitu izenbururik gabeko egutegia", "An error occurred, unable to change visibility of the calendar." : "Errore bat gertatu da, ezin da egutegiaren ikusgaitasuna aldatu.", - "An error occurred, unable to delete the calendar." : "Errore bat gertatu da, ezin da egutegia ezabatu.", - "Calendar link copied to clipboard." : "Egutegiko esteka arbelera kopiatu da.", - "Calendar link could not be copied to clipboard." : "Ezin izan da egutegiko esteka arbelera kopiatu.", - "An error occurred, unable to rename the calendar." : "Errore bat gertatu da, ezin da egutegia berrizendatu.", - "An error occurred, unable to change the calendar's color." : "Errore bat gertatu da, ezin da egutegiaren kolorea aldatu.", + "Untitled calendar" : "Izenik gabeko egutegia", + "Shared with you by" : "Zurekin partekatuta honengatik:", + "Edit and share calendar" : "Editatu eta partekatu egutegia", + "Edit calendar" : "Editatu egutegia", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Egutegia partekatzea kenduko da segundo {countdown} barru","Egutegia partekatzea kenduko da {countdown} segundo barru"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Egutegia ezabatuko da segundo {countdown} barru","Egutegia ezabatuko da {countdown} segundo barru"], + "An error occurred, unable to create the calendar." : "Errore bat gertatu da, ezin da egutegia sortu.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Sartu baliozko esteka bat (hauetako batekin hasi behar du: http://, https://, webcal:// edo webcals://)", + "Calendars" : "Egutegiak", + "Add new" : "Gehitu berria", + "New calendar" : "Egutegi berria", + "Name for new calendar" : "Egutegi berriaren izena", + "Creating calendar …" : "Egutegia sortzen …", + "New calendar with task list" : "Egutegi berria eginkizun-zerrendarekin", + "New subscription from link (read-only)" : "Harpidetza berria estekatik (irakurtzeko soilik)", + "Creating subscription …" : "Harpidetza sortzen ...", + "Add public holiday calendar" : "Gehitu opor publikoen egutegia", + "Add custom public calendar" : "Gehitu egutegi publiko pertsonalizatua", + "Calendar link copied to clipboard." : "Egutegiko esteka arbelera kopiatu da.", + "Calendar link could not be copied to clipboard." : "Ezin izan da egutegiko esteka arbelera kopiatu.", + "Copy subscription link" : "Kopiatu harpidetza esteka", + "Copying link …" : "Esteka kopiatzen …", + "Copied link" : "Esteka kopiatuta", + "Could not copy link" : "Ezin izan da esteka kopiatu", + "Export" : "Esportatu", + "Untitled item" : "Izen gabeko elementua", + "Unknown calendar" : "Egutegi ezezaguna", + "Could not load deleted calendars and objects" : "Ezin izan dira ezabatutako egutegi eta elementuak kargatu", + "Could not delete calendar or event" : "Ezin izan da egutegi edo gertaera ezabatu", + "Could not restore calendar or event" : "Ezin izan da egutegia edo gertaera berezarri", + "Do you really want to empty the trash bin?" : "Ziur zaude zakarrontzia hustu nahi duzula?", + "Empty trash bin" : "Hustu zakarrontzia", + "Trash bin" : "Zakarrontzia", + "Loading deleted items." : "Ezabatutako elementuak kargatzen.", + "You do not have any deleted items." : "Ez duzu ezabatutako elementurik.", + "Name" : "Izena", + "Deleted" : "Ezabatuta", + "Restore" : "Berrezarri", + "Delete permanently" : "Ezabatu betirako", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Zakarrontziko elementuak egun {numDays} igaro ondoren ezabatzen dira","Zakarrontziko elementuak {numDays} egun igaro ondoren ezabatzen dira"], + "Could not update calendar order." : "Ezin da egutegi-eskaera eguneratu.", + "Shared calendars" : "Partekatutako egutegiak", + "Deck" : "Deck", + "Hidden" : "Ezkutuan", + "Internal link" : "Barneko esteka", + "A private link that can be used with external clients" : "Kanpoko bezeroengatik erabili ahal den esteka pribatua", + "Copy internal link" : "Kopiatu barne-esteka", + "An error occurred, unable to publish calendar." : "Errore bat gertatu da, ezin da egutegia argitaratu", + "An error occurred, unable to send email." : "Errore bat gertatu da, ezin da posta elektronikoa bidali.", + "Embed code copied to clipboard." : "Kapsulatze-kodea arbelera kopiatu da.", + "Embed code could not be copied to clipboard." : "Ezin izan da kapsulatze-kodea arbelera kopiatu.", + "Unpublishing calendar failed" : "Egutegia desargitaratzeak huts egin du", "Share link" : "Partekatu esteka", - "Publish calendar" : "Argitaratu egutegia", - "Publishing calendar" : "Egutegia argitaratzen", "Copy public link" : "Kopiatu esteka publikoa", "Send link to calendar via email" : "Bidali esteka egutegira posta elektroniko bidez", "Enter one address" : "Sartu helbide bat", "Sending email …" : "Posta elektronikoa bidaltzen …", - "Copy subscription link" : "Kopiatu harpidetza esteka", - "Copying link …" : "Esteka kopiatzen …", - "Copied link" : "Esteka kopiatuta", - "Could not copy link" : "Ezin izan da esteka kopiatu", "Copy embedding code" : "Kopiatu kapsulatze-kodea", "Copying code …" : "Kodea kopiatzen …", "Copied code" : "Kodea kopiatuta", "Could not copy code" : "Ezin izan da kodea kopiatu", "Delete share link" : "Ezabatu partekatze esteka", "Deleting share link …" : "Partekatze esteka ezabatzen  ...", - "An error occurred, unable to publish calendar." : "Errore bat gertatu da, ezin da egutegia argitaratu", - "An error occurred, unable to send email." : "Errore bat gertatu da, ezin da posta elektronikoa bidali.", - "Embed code copied to clipboard." : "Kapsulatze-kodea arbelera kopiatu da.", - "Embed code could not be copied to clipboard." : "Ezin izan da kapsulatze-kodea arbelera kopiatu.", - "Unpublishing calendar failed" : "Egutegia desargitaratzeak huts egin du", - "Share with users or groups" : "Partekatu erabiltzaile edo taldeekin", - "No users or groups" : "Ez dago erabiltzaile edota talderik", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Lantaldea)", + "An error occurred while unsharing the calendar." : "Errorea gertatu da egutegia partekatzeari uztean.", + "An error occurred, unable to change the permission of the share." : "Errore bat gertatu da, ezin da partekatzearen baimena aldatu.", "can edit" : "editatu dezake", "Unshare with {displayName}" : "Utzi {displayName} erabiltzailearekin partekatzeari", - "An error occurred, unable to change the unshare the calendar." : "Errore bat gertatu da, ezin da egutegia partekatzeari uztea aldatu.", - "An error occurred, unable to change the permission of the share." : "Errore bat gertatu da, ezin da partekatzearen baimena aldatu.", - "+ New calendar" : "+ Egutegi berria", - "New calendar" : "Egutegi berria", - "Name for new calendar" : "Egutegi berriaren izena", - "Creating calendar …" : "Egutegia sortzen …", - "New calendar with task list" : "Egutegi berria ataza zerrendarekin", - "New subscription from link (read-only)" : "Harpidetza berria estekatik (irakurtzeko soilik)", - "Creating subscription …" : "Harpidetza sortzen ...", - "An error occurred, unable to create the calendar." : "Errore bat gertatu da, ezin da egutegia sortu.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Sartu baliozko esteka bat (hauetako batekin hasi behar du: http://, https://, webcal:// edo webcals://)", - "Trash bin" : "Zakarrontzia", - "Loading deleted elements." : "Kargatu ezabatutako elementuak.", - "You do not have any deleted elements." : "Ez duzu ezabatutako elementurik.", - "Name" : "Izena", - "Deleted" : "Ezabatuta", - "Restore" : "Berrezarri", - "Delete permanently" : "Ezabatu betirako", - "Empty trash bin" : "Hustu zakarrontzia", - "Untitled element" : "Izen gabeko elementua", - "Unknown calendar" : "Egutegi ezezaguna", - "Could not load deleted calendars and objects" : "Ezin izan dira ezabatutako egutegi eta elementuak kargatu", - "Could not restore calendar or event" : "Ezin izan da egutegia edo gertaera berezarri", - "Do you really want to empty the trash bin?" : "Ziur zaude zakarrontzia hustu nahi duzula?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Zakarrontziko elementuak {numDays} egun igaro ondoren ezabatzen dira","Zakarrontziko elementuak {numDays} egun igaro ondoren ezabatzen dira"], - "Could not update calendar order." : "Ezin da egutegi-eskaera eguneratu.", + "Share with users or groups" : "Partekatu erabiltzaile edo taldeekin", + "No users or groups" : "Ez dago erabiltzaile edota talderik", + "Failed to save calendar name and color" : "Ezin izan da egutegiaren izena eta kolorea gorde", + "Calendar name …" : "Egutegiaren izena ...", + "Never show me as busy (set this calendar to transparent)" : "Ez erakutsi inoiz okupatuta nagoenik (ezarri egutegi hau garden gisa)", + "Share calendar" : "Partekatu egutegia", + "Unshare from me" : "Kendu nirekin partekatzea", + "Save" : "Gorde", "Import calendars" : "Inportatu egutegiak", "Please select a calendar to import into …" : "Hautatu egutegia hona inportatzeko ...", "Filename" : "Fitxategi-izena", "Calendar to import into" : "Hona inportatzeko egutegia", "Cancel" : "Ezeztatu", "_Import calendar_::_Import calendars_" : ["Inportatu egutegia","Inportatu egutegiak"], + "Select the default location for attachments" : "Hautatu eranskinen kokaleku lehenetsia", + "Pick" : "Aukeratu", + "Invalid location selected" : "Kokaleku baliogabea hautatu da", + "Attachments folder successfully saved." : "Eranskinen karpeta behar bezala gorde da.", + "Error on saving attachments folder." : "Errore bat gertatu da eranskinen karpeta gordetzean.", + "Default attachments location" : "Eranskinen kokaleku lehenetsia", "{filename} could not be parsed" : "{filename} ezin da analizatu", "No valid files found, aborting import" : "Ez da baliodun fitxategirik aurkitu, inportazioa bertan behera uzten", - "Import partially failed. Imported {accepted} out of {total}." : "Inportazioak huts egin du hein batean. Guztira {total} ziren, {accepted} inportatu dira.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n gertaera behar bezala inportatu dira","%n gertaera behar bezala inportatu dira"], + "Import partially failed. Imported {accepted} out of {total}." : "Inportazioak huts egin du hein batean. Guztira {total} ziren, {accepted} inportatu dira.", "Automatic" : "Automatikoa", "Automatic ({detected})" : "Automatikoa ({detected})", "New setting was not saved successfully." : "Ezarpen berria ez da behar bezala gorde.", - "Shortcut overview" : "Lasterbideen informazio orokorra", - "or" : "edo", "Navigation" : "Nabigazioa", "Previous period" : "Aurreko aldia", "Next period" : "Hurrengo aldia", @@ -139,6 +171,7 @@ "Day view" : "Egun ikuspegia", "Week view" : "Aste ikuspegia", "Month view" : "Hilabete ikuspegia", + "Year view" : "Urte ikuspegia", "List view" : "Zerrenda ikuspegia", "Actions" : "Ekintzak", "Create event" : "Sortu gertaera", @@ -148,24 +181,29 @@ "Save edited event" : "Gorde editatutako gertaera", "Delete edited event" : "Ezabatu editatutako gertaera", "Duplicate event" : "Bikoiztu gertaera", + "Shortcut overview" : "Lasterbideen informazio orokorra", + "or" : "edo", + "Calendar settings" : "Egutegiaren ezarpenak", + "At event start" : "Gertaeraren hasieran", + "No reminder" : "Gogorarazpenik ez", + "Failed to save default calendar" : "Egutegi lehenetsia gordetzeak huts egin du", + "CalDAV link copied to clipboard." : "CalDAV esteka arbelera kopiatu da.", + "CalDAV link could not be copied to clipboard." : "Ezin izan da CalDAV helbidea arbelera kopiatu.", "Enable birthday calendar" : "Gaitu urtebetetzeen egutegia", "Show tasks in calendar" : "Erakutsi zereginak egutegian", "Enable simplified editor" : "Gaitu editore sinplifikatua", - "Limit visible events per view" : "Mugatu ikusgai dauden gertaerak", + "Limit the number of events displayed in the monthly view" : "Mugatu hileroko ikuspegian bistaratzen diren gertaeren kopurua", "Show weekends" : "Erakutsi asteburuak", "Show week numbers" : "Erakutsi aste zenbakiak", "Time increments" : " \nDenbora-gehikuntzak", - "Default reminder" : "Abisu lehenetsia", + "Default calendar for incoming invitations" : "Jasotako gonbidapenetarako egutegi lehenetsia", + "Default reminder" : "Gogorarazpen lehenetsia", "Copy primary CalDAV address" : "Kopiatu CalDAV helbide nagusia", "Copy iOS/macOS CalDAV address" : "Kopiatu iOS/macOS CalDAV helbidea", "Personal availability settings" : "Eskuragarritasun pertsonalaren ezarpenak", "Show keyboard shortcuts" : "Erakutsi teklatuaren lasterbideak", - "Calendar settings" : "Egutegiaren ezarpenak", - "No reminder" : "Abisurik ez", - "CalDAV link copied to clipboard." : "CalDAV esteka arbelera kopiatu da.", - "CalDAV link could not be copied to clipboard." : "Ezin izan da CalDAV helbidea arbelera kopiatu.", - "Appointment was created successfully" : "Hitzordua ondo sortu da", - "Appointment was updated successfully" : "Hitzordua ondo eguneratu da", + "Appointment schedule successfully created" : "Hitzorduaren ordutegia ondo sortu da", + "Appointment schedule successfully updated" : "Hitzorduaren ordutegia ondo eguneratu da", "_{duration} minute_::_{duration} minutes_" : ["minutu {duration}","{duration} minutu"], "0 minutes" : "0 minutu", "_{duration} hour_::_{duration} hours_" : ["ordu {duration}","{duration} ordu"], @@ -176,7 +214,14 @@ "To configure appointments, add your email address in personal settings." : "Hitzorduak konfiguratzeko, gehitu zure e-posta helbidea ezarpen pertsonaletan.", "Public – shown on the profile page" : "Publikoa – profil-orrian erakusten da", "Private – only accessible via secret link" : "Pribatua – esteka sekretu bidez soilik ikus daiteke", + "Appointment schedule saved" : "Hitzorduen ordutegia gordeta", + "Create appointment schedule" : "Sortu hitzorduaren ordutegia", + "Edit appointment schedule" : "Editatu hitzorduaren ordutegia", + "Update" : "Eguneratu", + "Appointment name" : "Hitzorduaren izena:", "Location" : "Kokapena", + "Create a Talk room" : "Sortu Talk gela bat", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Erreserbatutako hitzordu bakoitzeko esteka esklusibo bat sortuko da eta berrespen-mezu bidez bidaliko da", "Description" : "Deskribapena", "Visibility" : "Ikusgarritasuna", "Duration" : "Iraupena", @@ -194,6 +239,7 @@ "Friday" : "Ostirala", "Saturday" : "Larunbata", "Sunday" : "Igandea", + "Weekdays" : "Astegunak", "Add time before and after the event" : "Gehitu denbora gertaera baino lehen eta ostean", "Before the event" : "Gertaera baino lehen", "After the event" : "Gertarearen ostean", @@ -201,18 +247,19 @@ "Minimum time before next available slot" : "Denbora minimoa hurrengo tarte eskuragarriarentzat", "Max slots per day" : "Tarte kopuru maximoa egunero", "Limit how far in the future appointments can be booked" : "Mugatu hitzorduak etorkizuneko zein puntura arte erreserba daitezkeen", - "Create appointment" : "Sortu hitzordua", - "Edit appointment" : "Editatu hitzordua", - "Save" : "Gorde", - "Update" : "Eguneratu", + "It seems a rate limit has been reached. Please try again later." : "Badirudi datu-mugara iritsi zarela. Mesedez, saiatu berriro geroago.", "Please confirm your reservation" : "Berretsi zure erreserba", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Mezu elektroniko bat bidali dizugu xehetasunekin. Mesedez, berretsi zure hitzordua mezu elektronikoaren esteka erabiliz. Orrialde hau itxi dezakezu orain.", "Your name" : "Zure izena", "Your email address" : "Zure e-posta", "Please share anything that will help prepare for our meeting" : "Mesedez, partekatu gure bilera prestatzen lagunduko duen edozer", "Could not book the appointment. Please try again later or contact the organizer." : "Ezin izan da hitzordua erreserbatu. Saiatu berriro geroago edo jarri harremanetan administratzalearekin.", - "Book the appointment" : "Erreserbatu hitzordua", - "Reminder" : "Oroigarria", + "Back" : "Itzuli", + "Book appointment" : "Erreserbatu hitzordua", + "Create a new conversation" : "Sortu elkarrizketa berri bat", + "Select conversation" : "Hautatu elkarrizketa", + "on" : "noiz", + "at" : "non", "before at" : "lehenago hemen", "Notification" : "Jakinarazpena", "Email" : "Mezu elektronikoa", @@ -222,115 +269,136 @@ "On date" : "Epean", "Edit time" : "Editatu ordua", "Save time" : "Gorde ordua", - "Remove reminder" : "Kendu abisua", - "on" : "noiz", - "at" : "non", - "+ Add reminder" : "+ Gehitu abisua", - "Add reminder" : "Gehitu oroigarria", - "_second_::_seconds_" : ["segundo","segundo"], - "_minute_::_minutes_" : ["minutu","minutu"], - "_hour_::_hours_" : ["ordu","ordu"], - "_day_::_days_" : ["egun","egun"], - "_week_::_weeks_" : ["aste","aste"], + "Remove reminder" : "Kendu gogorarazpena", + "Add reminder" : "Gehitu gogorarazpena", + "seconds" : "duela segundu batzuk", + "minutes" : "minutu", + "hours" : "ordu", + "days" : "egun", + "weeks" : "aste", + "Choose a file to add as attachment" : "Aukeratu fitxategia eranskin gisa gehitzeko", + "Choose a file to share as a link" : "Aukeratu fitxategi bat esteka bezala partekatzeko", + "Attachment {name} already exist!" : "Dagoeneko existitzen da {name} eranskina!", + "Could not upload attachment(s)" : "Ezinezkoa izan da eranskina(k) igotzea", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Hona nabigatzera zoaz:.{host}. Ziur aurrera egin nahi duzula? Esteka: {link}", + "Proceed" : "Jarraitu", + "No attachments" : "Eranskinik ez", + "Add from Files" : "Gehitu Fitxategietatik", + "Upload from device" : "Igo gailutik", + "Delete file" : "Ezabatu fitxategia", + "Confirmation" : "Berrespena", + "_{count} attachment_::_{count} attachments_" : ["Eranskin {count}","{count} eranskin"], "Suggested" : "Iradokituta", "Available" : "Erabilgarri", - "Not available" : "Ez dago erabilgarri", - "Checking availability" : "Erabilgarritasuna egiaztatzen", "Invitation accepted" : "Gonbidapena onartuta", "Accepted {organizerName}'s invitation" : "{organizerName}(r)en gonbidapena onartuta", + "Participation marked as tentative" : "Partaidetza behin-behineko gisa markatu da", + "Invitation is delegated" : "Gonbidapena eskuordetuta dago", + "Not available" : "Ez dago erabilgarri", "Invitation declined" : "Gonbidapena ukatuta", "Declined {organizerName}'s invitation" : "{organizerName}(r)en gonbidapena ukatuta", - "Invitation is delegated" : "Gonbidapena eskuordetuta dago", - "Participation marked as tentative" : "Partaidetza behin-behineko gisa markatu da", - "Invitation sent" : "Gonbidapena bidalita", + "Awaiting response" : "Erantzunaren zain", + "Checking availability" : "Erabilgarritasuna egiaztatzen", "Has not responded to {organizerName}'s invitation yet" : "Oraindik ez dio {organizerName} erabiltzailearen gonbidapenari erantzun", - "Availability of attendees, resources and rooms" : "Partaide, baliabide eta gelen eskuragarritasuna", + "chairperson" : "mahaiburua", + "required participant" : "beharrezko partaidea", + "non-participant" : "ez da partaidea", + "optional participant" : "hautazko partaidea", "{organizer} (organizer)" : "{organizer} (kudeatzailea)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Partaide, baliabide eta gelen eskuragarritasuna", + "Suggestion accepted" : "Iradokizuna onartuta", + "Legend" : "Legenda", + "Out of office" : "Bulegotik kanpo", + "Attendees:" : "Parte-hartzaileak:", + "Done" : "Egina", + "Search room" : "Bilatu gela", + "Room name" : "Gelaren izena", + "Check room availability" : "Egiaztatu gelaren eskuragarritasuna", "Free" : "Libre", "Busy (tentative)" : "Lanpetuta (behin-behinean)", "Busy" : "Lanpetua", - "Out of office" : "Bulegotik kanpo", "Unknown" : "Ezezaguna", - "Accept" : "Onartu", - "Decline" : "Uko egin", - "Tentative" : "Behin behinekoa", + "Find a time" : "Bilatu noiz", "The invitation has been accepted successfully." : "Gonbidapena behar bezala onartu da.", "Failed to accept the invitation." : "Huts egin du gonbidapena onartzen.", "The invitation has been declined successfully." : "Gonbidapena behar bezala baztertu da.", "Failed to decline the invitation." : "Huts egin du gonbidapena baztertzen.", "Your participation has been marked as tentative." : "Zure parte hartzea behin-behineko gisa markatu da.", "Failed to set the participation status to tentative." : "Huts egin du zure parte hartzea behin-behineko gisa ezartzen.", - "Create Talk room for this event" : "Sortu Talk gela gertaera honentzat", - "Show busy times" : "Erakutsi denbora lanpetuta", + "Accept" : "Onartu", + "Decline" : "Uko egin", + "Tentative" : "Behin behinekoa", "No attendees yet" : "Partaiderik ez oraindik", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} gonbidatuta, {confirmedCount} berretsita", + "Successfully appended link to talk room to location." : "Ondo erantsi zaio esteka hizketa-gelaren kokalekuari.", "Successfully appended link to talk room to description." : "Ondo erantsi zaio esteka hizketa gelaren deskribapenari.", "Error creating Talk room" : "Errorea Talk gela sortzean", - "Send email" : "Bidali e-posta", + "Attendees" : "Partaideak", + "_%n more guest_::_%n more guests_" : ["gonbidatu gehiago %n","%n gonbidatu gehiago"], + "Remove group" : "Ezabatu taldea", + "Remove attendee" : "Kendu partaidea", + "Request reply" : "Eskaera erantzuna", "Chairperson" : "Mahaiburua", "Required participant" : "Beharrezko partaidea", "Optional participant" : "Hautazko partaidea", "Non-participant" : "Ez da partaidea", - "Remove attendee" : "Kendu partaidea", - "Search for emails, users or contacts" : "Bilatu mezu elektronikoak, erabiltzaileak edo kontaktuak", + "_%n member_::_%n members_" : ["kide %n","%n kide"], "No match found" : "Ez da emaitzarik aurkitu", + "Note that members of circles get invited but are not synced yet." : "Kontuan izan zirkuluetako kideek gonbidapena jasotzen dutela baina ez direla oraindik sinkronizatzen.", + "Note that members of contact groups get invited but are not synced yet." : "Kontuan izan kontaktu taldeetako kideek gonbidapena jasotzen dutela baina ez direla oraindik sinkronizatzen.", "(organizer)" : "(antolatzailea)", + "Make {label} the organizer" : "Egin {label} antolatzaile", + "Make {label} the organizer and attend" : "Egin {label} antolatzaile eta parte-hartzaile", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Gonbidapenak bidali eta erantzunak kudeatzeko, [linkopen] gehitu zure posta helbidea ezarpen pertsonaletan[linkclose].", "Remove color" : "Kendu kolorea", "Event title" : "Gertaeraren izenburua", - "All day" : "Egun osoa", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Ezin da egun osoko ezarpena aldatu errepikapen multzo baten parte diren gertaeretarako. ", - "from {startDate}" : "{startDate}tik", - "from {startDate} at {startTime}" : "{startDate}ko, {startTime}tik", - "to {endDate}" : "{endDate} arte", - "to {endDate} at {endTime}" : "{endDate}ko {endTime} arte", + "From" : "Nork", + "To" : "Nori", "Repeat" : "Errepikatu", - "End repeat" : "Amaitu errepikapena", - "Select to end repeat" : "Hautatu errepikapena amaitzeko", + "_time_::_times_" : ["aldiz","aldiz"], "never" : "inoiz ez", "on date" : "epean", "after" : "gero", - "_time_::_times_" : ["aldiz","aldiz"], + "End repeat" : "Amaitu errepikapena", + "Select to end repeat" : "Hautatu errepikapena amaitzeko", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Ekitaldi hau errepikapen multzo bateko errepikapen salbuespena da. Ezin diozu errepikapen-araurik gehitu.", "first" : "lehena", - "third" : "hirugarrena", - "fourth" : "laugarrena", - "fifth" : "bosgarrena", - "second to last" : "bigarren azkena", - "last" : "azkena", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Errepikapen arauan egindako aldaketak gertaera honentzat eta etorkizunekoentzat bakarrik aplikatuko dira.", "Repeat every" : "Errepikatu zenbatero", "By day of the month" : "Hileko egunaren arabera", "On the" : "Honetan", + "_day_::_days_" : ["egun","egun"], + "_week_::_weeks_" : ["aste","aste"], "_month_::_months_" : ["hilabete","hilabete"], "_year_::_years_" : ["urte","urte"], "weekday" : "asteguna", "weekend day" : "asteburuko eguna", - "No recurrence" : "Errepikapenik ez", + "Does not repeat" : "Ez errepikatu", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Gertaera honen errepikapen definizioa ez du guztiz onartzen Nextcloud-ek. Errepikapen aukerak editatzen badituzu, errepikapen batzuk galdu litezke.", - "Suggestions" : "Iradokizunak", "No rooms or resources yet" : "Oraindik ez dago gelarik edo baliabiderik", + "Resources" : "Baliabideak", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} eserleku ","{seatingCapacity} eserleku "], "Add resource" : "Gehitu baliabidea", "Has a projector" : "Proiektore bat dauka", "Has a whiteboard" : "Arbel zuria dauka", "Wheelchair accessible" : "Gurpil-aulkientzako sarbidea", "Remove resource" : "Kendu baliabidea", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} eserleku ","{seatingCapacity} eserleku "], - "Projector" : "Proiektorea", - "Whiteboard" : "Arbel zuria", "Search for resources or rooms" : "Bilatu baliabideak edo gelak", "available" : "erabilgarri", "unavailable" : "ez erabilgarri", + "Show all rooms" : "Erakutsi gela guztiak", + "Projector" : "Proiektorea", + "Whiteboard" : "Arbel zuria", "Room type" : "Gela mota", "Any" : "Edozein", "Minimum seating capacity" : "Gutxieneko eserleku kopurua", - "More" : "Gehiago", - "Update this occurrence" : "Eguneratu gertaera hau", + "More details" : "Xehetasun gehiago", "Update this and all future" : "Eguneratu hau eta etorkizuneko guztiak", + "Update this occurrence" : "Eguneratu gertaera hau", "Public calendar does not exist" : "Egutegi publikoa ez da existitzen", "Maybe the share was deleted or has expired?" : "Agian, partekatutakoa ezabatu egin da edo iraungita geratu da?", - "Please select a time zone:" : "Aukeratu ordu-zona bat:", - "Pick a time" : "Aukeratu ordua", - "Pick a date" : "Aukeratu eguna", "from {formattedDate}" : "{formattedDate}tik ", "to {formattedDate}" : "{formattedDate} arte ", "on {formattedDate}" : "{formattedDate}an", @@ -340,9 +408,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate}ko {formattedTime}etan", "Please enter a valid date" : "Sartu baliozko data", "Please enter a valid date and time" : "Sartu baliozko data eta ordua", + "Select a time zone" : "Hautatu ordu-zona", + "Please select a time zone:" : "Aukeratu ordu-zona bat:", + "Pick a time" : "Aukeratu ordua", + "Pick a date" : "Aukeratu eguna", "Type to search time zone" : "Idatzi ordu-zona bilatzeko", "Global" : "Orokorra", - "Select date" : "Hautatu data", + "Holidays in {region}" : "Oporrak {region}(e)n", + "An error occurred, unable to read public calendars." : "Errorea gertatu da, ezin izan dira egutegi publikoak irakurri.", + "An error occurred, unable to subscribe to calendar." : "Errore bat gertatu da, ezin izan da egutegira harpidetu.", + "Public holiday calendars" : "Opor publikoen egutegiak", + "Public calendars" : "Egutegi publikoak", + "No valid public calendars configured" : "Ez dago baliozko egutegi publikorik konfiguratuta", + "Speak to the server administrator to resolve this issue." : "Hitz egin zerbitzariko administratzailearekin arazo hau konpontzeko.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Jaiegun egutegi publikoak Thunderbird-ek hornitzen ditu. Egutegiaren datuak {website}(e)tik deskargatuko dira.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Egutegi publiko hauek zerbitzariko administratzaileak proposatzen ditu. Egutegien datuak dagokien webgunetik deskargatuko dira.", + "By {authors}" : "{authors} egina", + "Subscribed" : "Harpidetua", + "Subscribe" : "Harpidetu", + "Could not fetch slots" : "Ezin izan dira plazak eskuratu", + "Select a date" : "Hautatu data bat", "Select slot" : "Hautatu tartea", "No slots available" : "Ez dago tarterik eskuragarri", "The slot for your appointment has been confirmed" : "Zure hitzorduaren tartea berretsi da", @@ -359,22 +444,19 @@ "Personal" : "Pertsonala", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Ordu-eremu detekzio automatikoak zehaztu du zure ordu-eremua UTC dela. \nHau seguru aski zure nabigatzailearen segurtasun neurrien ondorio da.\nZehaztu ezazu zure ordu-eremua eskuz egutegiaren ezarpenetan.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Ezarrita daukazun ordu-eremua ({timezoneId}) ez da aurkitu. UTC-ra itzultzen.\nMesedez, aldatu zure ordu-eremua ezarpenetan eta eman arazoaren berri.", - "No more events today" : "Ez dago gertaera gehiagorik gaurkoz.", - "No upcoming events" : "Ez dago gertaerarik datozen egunetan.", - "Create a new event" : "Sortu gertaera berri bat", - "[Today]" : "[Today]", - "[Tomorrow]" : "[Tomorrow]", - "[Yesterday]" : "[Yesterday]", - "[Last] dddd" : "[Last] dddd", + "Edit event" : "Editatu gertaera", "Event does not exist" : "Ez dago gertaera hori", "Duplicate" : "Bikoiztu", "Delete this occurrence" : "Ezabatu gertaera hau", "Delete this and all future" : "Ezabatu hau eta etorkizunekoak", - "Details" : "Xehetasunak", - "Attendees" : "Partaideak", - "Resources" : "Baliabideak", + "All day" : "Egun osoa", + "Managing shared access" : "Sarbide partekatua kudeatzea", + "Deny access" : "Ukatu sarbidea", + "Invite" : "Gonbidatu", + "_User requires access to your file_::_Users require access to your file_" : ["Erabiltzaileek zure fitxategirako sarbidea behar dute","Erabiltzaileek zure fitxategietarako sarbidea behar dute"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Sarbide partekatua behar duen eranskina","Sarbide partekatua behar duten eranskinak"], + "Untitled event" : "Izenik gabeko gertaera", "Close" : "Itxi", - "Show more details" : "Erakutsi xehetasun gehiago", "Subscribe to {name}" : "Harpidetu {name}", "Export {name}" : "Esportatu {name}", "Anniversary" : "Urtebetetzea", @@ -404,7 +486,6 @@ "on {time}" : "{time}etan", "on {time} ({timezoneId})" : "{time}etan ({timezoneId})", "Week {number} of {year}" : "{year}ko {number}. astea", - "Does not repeat" : "Ez errepikatu", "Daily" : "Egunero", "Weekly" : "Astero", "Monthly" : "Hilabetero", @@ -416,24 +497,24 @@ "_on {weekday}_::_on {weekdays}_" : ["{weekday}","{weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["{dayOfMonthList} egunean","{dayOfMonthList} egunetan"], "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber}. {byDaySet}an", - "in {monthNames}" : "{monthNames}an", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames}ko {ordinalNumber}. {byDaySet}an", "until {untilDate}" : "{untilDate} arte", "_%n time_::_%n times_" : ["%n","%naldiz"], - "Untitled event" : "Izenik gabeko gertaera", + "second" : "bigarrean", + "third" : "hirugarrena", + "fourth" : "laugarrena", + "fifth" : "bosgarrena", + "second to last" : "bigarren azkena", + "last" : "azkena", "Untitled task" : "Izenik gabeko zeregina", "Please ask your administrator to enable the Tasks App." : "Mesedez eskatu administratzaileari Tasks aplikazioa gaitu dezan.", - "Prev" : "Aurrekoa", - "Next" : "Hurrengoa", - "Prev year" : "Aurreko urtea", - "Next year" : "Hurrengo urtea", - "Year" : "Urtea", "W" : "A. ", "%n more" : "%n gehiago", "No events to display" : "Ez dago bistaratzeko gertaerarik", "_+%n more_::_+%n more_" : ["+ %n","+ %n"], "No events" : "Ez dago gertaerarik", "Create a new event or change the visible time-range" : "Sortu gertaera berria edo aldatu ikusgai dagoen epea", + "Failed to save event" : "Gertaera gordetzeak huts egin du", "It might have been deleted, or there was a typo in a link" : "Baliteke ezabatua izana, edo estekaren batean akatsa egotea.", "It might have been deleted, or there was a typo in the link" : "Baliteke ezabatua izana, edo estekan akatsa egotea.", "Meeting room" : "Bilera gela", @@ -446,7 +527,6 @@ "When shared hide this event" : "Partekatzean ezkutatu gertaera hau", "The visibility of this event in shared calendars." : "Gertaera honen ikusgarritasuna egutegi partekatuetan", "Add a location" : "Gehitu kokapen bat", - "Add a description" : "Gehitu deskribapena", "Status" : "Egoera", "Confirmed" : "Berretsita", "Canceled" : "Utzita", @@ -459,135 +539,23 @@ "Add this as a new category" : "Gehitu hau kategoria berri bezala", "Custom color" : "Kolore pertsonalizatua", "Special color of this event. Overrides the calendar-color." : "Gertaera honen kolorea berezia da. Egutegi kolorea baliogabetzen du.", - "Chat room for event" : "Txat gela gertaera honentzat", - "Imported {filename}" : "Inportatuta {filename}", - "Meditation" : "Meditazioa", - "Relaxing" : "Erlaxatzen", - "Relax" : "Erlaxazioa", - "Break" : "Atsedena", - "Commute" : "Lanerako bidea", - "Commuting" : "Lanerako bidean", - "Shuttle" : "Anezka", - "Invoice" : "Faktura", - "Finance" : "Finantzak", - "Bank" : "Bankua", - "Money" : "Dirua", - "Wedding" : "Eskontza", - "Dog" : "Txakurra", - "Concert" : "Kontzertua", - "Festival" : "Festibala", - "Theater" : "Aretoa", - "Theatre" : "Aretoa", - "Presentation" : "Aurkezpena", - "Talk" : "Hizketaldia", - "Speech" : "Diskurtsoa", - "Deadline" : "Epemuga", - "Submission" : "Bidalketa", - "Reporting" : "Txostena egiten", - "Camping" : "Kanpina", - "Camp" : "Kanpatu", - "Election" : "Hauteskundea", - "Voting" : "Bozkatzen", - "Vote" : "Bozkatu", - "Barbecue" : "Barbakoa", - "Barbeque" : "Barbakoa", - "Garden" : "Lorategia", - "Farm" : "Baserria", - "Movie" : "Filma", - "Cinema" : "Zinema", - "Graduation" : "Graduazioa", - "Brainstorm" : "Ideia-jasa", - "Review" : "Berrikusi", - "Audit" : "Auditoretza", - "Inspection" : "Inspekzioa", - "Proofreading" : "Testu-azterketa", - "Baseball" : "Beisbola", - "Meet" : "Topaketa", - "Planning" : "Plangintza", - "Pointing" : "Honi begira", - "Retrospective" : "Atzera begirakoa", - "Office" : "Bulegoa", - "Contributor week" : "Laguntzailearen astea", - "Mail" : "Posta", - "Soccer" : "Futbola", - "Football" : "Futbol amerikarra", - "Gaming" : "Bideo-jokoak", - "Drive" : "Gidatu", - "Driving" : "Gidatzen", - "Bicycle" : "Bizikleta", - "Cycle" : "Bizikletan ibili", - "Cycling" : "Bizikletan", - "Biking" : "Motorrean ibili", - "Bike" : "Bizikleta", - "Podcast" : "Podcasta", - "Basketball" : "Saskibaloia", - "Fishing" : "Arrantza", - "Hiking" : "Ibilaldia egin", - "Hike" : "Ibilaldia", - "Art" : "Artea", - "Exhibition" : "Erakusketa", - "Museum" : "Museoa", - "Pilates" : "Pilates", - "Park" : "Parkea", - "Walk" : "Ibili", - "Studying" : "Ikasten", - "Doctor" : "Medikua", - "Health" : "Osasuna", - "Dentist" : "Dentista", - "Hospital" : "Ospitalea", - "Interview" : "Elkarrizketa", - "Training" : "Entrenamendua", - "Practice" : "Praktika", - "Sports" : "Kirolak", - "Exercise" : "Kirola egin", - "Work out" : "Gimnasia", - "Working out" : "Gimnasioan", - "Gym" : "Gimnasioa", - "Barber" : "Bizargina", - "Haircut" : "Ilea moztu", - "Hairdresser" : "Ile apandegia", - "Exam" : "Azterketa", - "Written test" : "Idatzizko azterketa", - "Oral test" : "Ahozko azterketa", - "Working" : "Lanean", - "New Years Eve" : "Urtezaharra", - "NYE" : "Urte Zaharra", - "Fireworks" : "Su artifizialak", - "Running" : "Korrika", - "Go for a run" : "Korrikaldia", - "Marathon" : "Maratoia", - "Video-conference" : "Bideo-konferentzia", - "Conference-call" : "Konferentzia deia", - "Video-call" : "Bideo-deia", - "Video-chat" : "Bideo-txata", - "Video-meeting" : "Bideo-bilera", - "Call" : "Deia", - "Calling" : "Deitzen", - "Christmas" : "Eguberriak", - "Conference" : "Biltzarra", - "Pizza" : "Pizza", - "Travelling" : "Bidaiatzen", - "Trip" : "Bidaia", - "Journey" : "Bidaia", - "Collaborate" : "Elkarlana", - "Pair" : "Parekatu", - "Lecture" : "Hitzaldia", - "Seminar" : "Mintegia", - "Teaching" : "Irakasten", - "Photograph" : "Argazkia", - "Party" : "Jaia", - "Celebration" : "Ospakizuna", - "Celebrate" : "Ospatu", - "Birthday" : "Jaioteguna", - "Shopping" : "Erosketak", - "Groceries" : "Erosketak", - "Skate" : "Patinatu", - "Skateboard" : "Patinetea", - "Wine tasting" : "Ardo dastaketa", - "Golf" : "Golfa", - "Dinner" : "Afaria", - "Lunch" : "Bazkaria", + "Error while sharing file" : "Errorea fitxategia partekatzean", + "Error while sharing file with user" : "Errorea fitxategia erabiltzailearekin partekatzean", + "Error creating a folder {folder}" : "Errorea {karpeta} karpeta bat sortzean", + "Attachment {fileName} already exists!" : "{fileName} eranskina dagoeneko badago!", + "An error occurred during getting file information" : "Errore bat gertatu da fitxategiaren informazioa eskuratzean", + "An error occurred, unable to delete the calendar." : "Errore bat gertatu da, ezin da egutegia ezabatu.", + "Imported {filename}" : "{filename} inportatuta", + "This is an event reminder." : "Hau gertaera baten gogorarazpena da.", + "Error while parsing a PROPFIND error" : "Errore bat gertatu da PROPFIND errore bat analizatzean", "Appointment not found" : "Ez da hitzordua aurkitu", - "User not found" : "Ez da erabiltzailea aurkitu" + "User not found" : "Ez da erabiltzailea aurkitu", + "Reminder" : "Gogorarazpena", + "+ Add reminder" : "+ Gehitu gogorarazpena", + "Select automatic slot" : "Hautatu tartea automatikoki", + "with" : "honekin", + "Available times:" : "Denbora eskuragarriak:", + "Suggestions" : "Iradokizunak", + "Details" : "Xehetasunak" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/fa.js b/l10n/fa.js index ac1083a513e99ec3a0ff88010f743201acb8fcc2..db07ecf4102e9d9fc37f72c32a825d2f692eb710 100644 --- a/l10n/fa.js +++ b/l10n/fa.js @@ -1,130 +1,246 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Provided email-address is too long", "User-Session unexpectedly expired" : "نشست کاربر به طور غیر منتظره منقضی شد", - "Provided email-address is not valid" : "آدرس ایمیل ارائه شده معتبر نیست", + "Provided email-address is not valid" : "ایمیل ارائه شده معتبر نیست", "%s has published the calendar »%s«" : "%sتقویم %s را منتشر کرده است.", "Unexpected error sending email. Please contact your administrator." : "خطای غیر منتظره در ارسال ایمیل. لطفا با مدیر خود تماس بگیرید.", + "Successfully sent email to %1$s" : "Successfully sent email to %1$s", "Hello," : "سلام،", "We wanted to inform you that %s has published the calendar »%s«." : "مایل هستیم به شما اطلاع دهیم که %s تقویم شماره %s را منتشر کرده است.", "Open »%s«" : "باز کن »%s«", "Cheers!" : "سلامتی!", "Upcoming events" : "رویدادهای پیش‌رو", + "No more events today" : "هیچ رویداد دیگری برای امروز وجود ندارد", + "No upcoming events" : "رویداد پیش‌رویی وجود ندارد", + "More events" : "More events", + "%1$s with %2$s" : "%1$s with %2$s", + "Calendar" : "تقویم", + "New booking {booking}" : "New booking {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}.", "Appointments" : "قرارها", + "Schedule appointment \"%s\"" : "Schedule appointment \"%s\"", + "Schedule an appointment" : "Schedule an appointment", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Prepare for %s", + "Follow up for %s" : "Follow up for %s", + "Your appointment \"%s\" with %s needs confirmation" : "Your appointment \"%s\" with %s needs confirmation", + "Dear %s, please confirm your booking" : "Dear %s, please confirm your booking", "Confirm" : "تائید", + "Description:" : "توضیحات:", + "This confirmation link expires in %s hours." : "This confirmation link expires in %s hours.", + "Your appointment \"%s\" with %s has been accepted" : "Your appointment \"%s\" with %s has been accepted", + "Dear %s, your booking has been accepted." : "Dear %s, your booking has been accepted.", + "Appointment for:" : "Appointment for:", "Date:" : "تاریخ:", "Where:" : "مکان:", - "Calendar" : "تقویم", + "Comment:" : "Comment:", + "You have a new appointment booking \"%s\" from %s" : "You have a new appointment booking \"%s\" from %s", + "Dear %s, %s (%s) booked an appointment with you." : "Dear %s, %s (%s) booked an appointment with you.", "A Calendar app for Nextcloud" : "یک برنامه تقویم برای نکست کلود", "Previous day" : "روز قبل", "Previous week" : "هفته قبل", + "Previous year" : "Previous year", "Previous month" : "ماه قبل", "Next day" : "روز بعد", "Next week" : "هفته بعد", + "Next year" : "Next year", "Next month" : "ماه بعد", - "New event" : "رویداد جدید", + "Create new event" : "Create new event", + "Event" : "رویداد", "Today" : "امروز", "Day" : "روز", "Week" : "هفته", "Month" : "ماه", - "List" : "لیست", + "Year" : "سال", + "List" : "فهرست", + "Appointment link was copied to clipboard" : "Appointment link was copied to clipboard", + "Appointment link could not be copied to clipboard" : "Appointment link could not be copied to clipboard", "Preview" : "پیش‌نمایش", "Copy link" : "کپی کردن لینک", "Edit" : "ویرایش", "Delete" : "حذف", - "Untitled calendar" : "تقویم بدون عنوان", - "Edit name" : "ویرایش نام", - "Saving name …" : "ذخیره نام", - "Edit color" : "ویرایش رنگ", - "Saving color …" : "ذخیره رنگ", - "Copy private link" : "کپی کردن پیوند خصوصی", - "Export" : "گرفتن خروجی", - "Unshare from me" : "بی خبر از من", + "Create new" : "ایجاد جدید", + "Disable calendar \"{calendar}\"" : "Disable calendar \"{calendar}\"", + "Disable untitled calendar" : "Disable untitled calendar", + "Enable calendar \"{calendar}\"" : "Enable calendar \"{calendar}\"", + "Enable untitled calendar" : "Enable untitled calendar", "An error occurred, unable to change visibility of the calendar." : "خطایی روی داد ، قادر به تغییر دیدگاه تقویم نیست.", - "An error occurred, unable to delete the calendar." : "خطایی روی داد ، قادر به حذف تقویم نیست.", - "Calendar link copied to clipboard." : "پیوند تقویم در کلیپ بورد کپی شد.", - "Calendar link could not be copied to clipboard." : "پیوند تقویم را نمی توان در کلیپ بورد کپی کرد.", - "An error occurred, unable to rename the calendar." : "خطایی روی داد ، قادر به تغییر نام تقویم نیست.", - "An error occurred, unable to change the calendar's color." : "خطایی روی داد ، قادر به تغییر رنگ تقویم نیست.", + "Untitled calendar" : "تقویم بدون عنوان", + "Shared with you by" : "با شما به اشتراک گذاشته شده است", + "Edit and share calendar" : "Edit and share calendar", + "Edit calendar" : "ویرایش تقویم", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["اشتراک‌گذاری تقویم در {شمارش معکوس}. ثانیه","اشتراک‌گذاری تقویم در {شمارش معکوس}. ثانیه ها"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["حذف تقویم در {شمارش معکوس} ثانیه ها","حذف تقویم در {شمارش معکوس} ثانیه ها"], + "An error occurred, unable to create the calendar." : "خطایی روی داد ، قادر به ایجاد تقویم نیست.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "لطفاً یک پیوند معتبر وارد کنید (با شروع http: // ، https: // ، webcal: // ، یا صفحات وب: //)", + "Calendars" : "تقویم‌ها", + "Add new" : "افزودن مورد تازه", + "New calendar" : "تقویم جدید", + "Name for new calendar" : "Name for new calendar", + "Creating calendar …" : "ایجاد تقویم ...", + "New calendar with task list" : "تقویم جدید با لیست کارها", + "New subscription from link (read-only)" : "اشتراک جدید از پیوند (فقط خواندنی)", + "Creating subscription …" : "ایجاد اشتراک…", + "Add public holiday calendar" : "Add public holiday calendar", + "Calendar link copied to clipboard." : "پیوند تقویم در کلیپ بورد کپی شد.", + "Calendar link could not be copied to clipboard." : "پیوند تقویم را نمی توان در کلیپ بورد کپی کرد.", + "Copy subscription link" : "پیوند اشتراک را کپی کنید", + "Copying link …" : "کپی پیوند ...", + "Copied link" : "پیوند کپی شد", + "Could not copy link" : "نمی توان پیوند را کپی کرد", + "Export" : "دریافت خروجی", + "Untitled item" : "مورد بدون عنوان", + "Unknown calendar" : "تقویم ناشناخته", + "Could not load deleted calendars and objects" : "تقویم و اشیاء حذف شده بارگیری نشد", + "Could not delete calendar or event" : "تقویم یا رویداد حذف نشد", + "Could not restore calendar or event" : "تقویم یا رویداد بازیابی نشد", + "Do you really want to empty the trash bin?" : "آیا واقعاً می خواهید سطل زباله را خالی کنید؟", + "Empty trash bin" : "خالی کردن سطل زباله", + "Trash bin" : "زباله‌دان", + "Loading deleted items." : "Loading deleted items.", + "You do not have any deleted items." : "You do not have any deleted items.", + "Name" : "نام", + "Deleted" : "حذف شده", + "Restore" : "بازیابی", + "Delete permanently" : "حذف قطعی", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Items in the trash bin are deleted after {numDays} day","Items in the trash bin are deleted after {numDays} days"], + "Could not update calendar order." : "Could not update calendar order.", + "Deck" : "برگه‌دان", + "Hidden" : "مخفی", + "Internal link" : "پیوند داخلی", + "A private link that can be used with external clients" : "A private link that can be used with external clients", + "Copy internal link" : "کپی کردن پیوند داخلی", + "An error occurred, unable to publish calendar." : "خطایی روی داد ، قادر به انتشار تقویم نیست.", + "An error occurred, unable to send email." : "خطایی روی داد ، قادر به ارسال ایمیل نیست.", + "Embed code copied to clipboard." : "کد قرار داده شده در حافظه کپی شد.", + "Embed code could not be copied to clipboard." : "کد جاسازی را نمی توان در کلیپ بورد کپی کرد.", + "Unpublishing calendar failed" : "عدم انتشار تقویم موفقیت آمیز نبود", "Share link" : "لینک را به اشتراک بگذارید", - "Publish calendar" : "تقویم را منتشر کنید", - "Publishing calendar" : "در حال انتشار تقویم ", "Copy public link" : "پیوند عمومی را کپی کنید", "Send link to calendar via email" : "ارسال پیوند به تقویم از طریق ایمیل", "Enter one address" : "یک آدرس وارد کنید", "Sending email …" : "ارسال ایمیل…", - "Copy subscription link" : "پیوند اشتراک را کپی کنید", - "Copying link …" : "کپی پیوند ...", - "Copied link" : "پیوند کپی شد", - "Could not copy link" : "نمی توان پیوند را کپی کرد", "Copy embedding code" : "کد تعبیه شده را کپی کنید", "Copying code …" : "کپی کردن کد ...", "Copied code" : "کد کپی شد", "Could not copy code" : "نمی توان کد را کپی کرد", "Delete share link" : "پیوند اشتراک را حذف کنید", "Deleting share link …" : "در حال حذف پیوند اشتراک ...", - "An error occurred, unable to publish calendar." : "خطایی روی داد ، قادر به انتشار تقویم نیست.", - "An error occurred, unable to send email." : "خطایی روی داد ، قادر به ارسال ایمیل نیست.", - "Embed code copied to clipboard." : "کد قرار داده شده در حافظه کپی شد.", - "Embed code could not be copied to clipboard." : "کد جاسازی را نمی توان در کلیپ بورد کپی کرد.", - "Unpublishing calendar failed" : "عدم انتشار تقویم موفقیت آمیز نبود", - "Share with users or groups" : "اشتراک گذاری با کاربران یا گروه ها ...", - "No users or groups" : "هیچ کاربر یا گروهی وجود ندارد", + "An error occurred while unsharing the calendar." : "An error occurred while unsharing the calendar.", + "An error occurred, unable to change the permission of the share." : "خطایی روی داد ، قادر به تغییر مجوز اشتراک نیست.", "can edit" : "می توان ویرایش کرد", "Unshare with {displayName}" : "عدم اشتراک گذاری با {displayName}", - "An error occurred, unable to change the unshare the calendar." : "خطایی روی داد ، قادر به تغییر تقویم عدم اشتراک گذاری نیست.", - "An error occurred, unable to change the permission of the share." : "خطایی روی داد ، قادر به تغییر مجوز اشتراک نیست.", - "+ New calendar" : "+ تقویم جدید", - "New calendar" : "تقویم جدید", - "Creating calendar …" : "ایجاد تقویم ...", - "New calendar with task list" : "تقویم جدید با لیست کارها", - "New subscription from link (read-only)" : "اشتراک جدید از پیوند (فقط خواندنی)", - "Creating subscription …" : "ایجاد اشتراک…", - "An error occurred, unable to create the calendar." : "خطایی روی داد ، قادر به ایجاد تقویم نیست.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "لطفاً یک پیوند معتبر وارد کنید (با شروع http: // ، https: // ، webcal: // ، یا صفحات وب: //)", - "Trash bin" : "زباله‌دان", - "Name" : "نام", - "Deleted" : "حذف شده", - "Restore" : "بازیابی", - "Delete permanently" : "حذف قطعی", - "Empty trash bin" : "خالی کردن سطل زباله", + "Share with users or groups" : "اشتراک گذاری با کاربران یا گروه ها ...", + "No users or groups" : "هیچ کاربر یا گروهی وجود ندارد", + "Failed to save calendar name and color" : "Failed to save calendar name and color", + "Calendar name …" : "نام تقویم …", + "Share calendar" : "Share calendar", + "Unshare from me" : "بی خبر از من", + "Save" : "ذخیره", "Import calendars" : "وارد کردن تقویم ها", "Please select a calendar to import into …" : "لطفاً یک تقویم را برای وارد کردن به… انتخاب کنید", - "Filename" : "نام فایل", + "Filename" : "نام پرونده", "Calendar to import into" : "تقویم برای وارد کردن", "Cancel" : "منصرف شدن", "_Import calendar_::_Import calendars_" : ["وارد کردن تقویم","وارد کردن تقویم ها"], + "Select the default location for attachments" : "Select the default location for attachments", + "Invalid location selected" : "مکان نامعتبر انتخاب شده است", + "Attachments folder successfully saved." : "Attachments folder successfully saved.", + "Error on saving attachments folder." : "Error on saving attachments folder.", + "Default attachments location" : "Default attachments location", + "{filename} could not be parsed" : "{filename} could not be parsed", + "No valid files found, aborting import" : "No valid files found, aborting import", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Successfully imported %n event","Successfully imported %n events"], "Import partially failed. Imported {accepted} out of {total}." : "وارد کردن تا حدودی انجام نشد. وارد شده {accepted} بیرون از {total}.", "Automatic" : "خودکار", "Automatic ({detected})" : "خودکار ({شناسایی})", "New setting was not saved successfully." : "تنظیم جدید با موفقیت ذخیره نشد.", + "Navigation" : "جهت یابی", + "Previous period" : "دوره قبلی", + "Next period" : "دوره بعدی", + "Views" : "بازدیدها", + "Day view" : "نمای روز", + "Week view" : "نمای هفته", + "Month view" : "نمای ماه", + "Year view" : "نمای سال", "List view" : "نمایش لیست", "Actions" : "فعالیت ها", + "Create event" : "ایجاد رویداد", + "Show shortcuts" : "نمایش میانبرها", + "Editor" : "ویرایشگر", + "Close editor" : "ویرایشگر را ببندید", + "Save edited event" : "رویداد ویرایش شده را ذخیره کنید", + "Delete edited event" : "حذف رویداد ویرایش شده", + "Duplicate event" : "رویداد تکراری", + "Shortcut overview" : "Shortcut overview", + "or" : "یا", + "Calendar settings" : "تنظیمات تقویم", + "No reminder" : "No reminder", + "CalDAV link copied to clipboard." : "پیوند CalDAV در کلیپ بورد کپی شد.", + "CalDAV link could not be copied to clipboard." : "پیوند CalDAV در کلیپ بورد قابل کپی نیست.", "Enable birthday calendar" : "تقویم تولد را فعال کنید", + "Show tasks in calendar" : "نمایش وظایف در تقویم", "Enable simplified editor" : "ویرایشگر ساده شده را فعال کنید", + "Limit the number of events displayed in the monthly view" : "Limit the number of events displayed in the monthly view", "Show weekends" : "آخر هفته ها را نشان دهید", "Show week numbers" : "نمایش شماره های هفته", + "Time increments" : "Time increments", + "Default reminder" : "Default reminder", "Copy primary CalDAV address" : "آدرس اصلی CalDAV را کپی کنید", "Copy iOS/macOS CalDAV address" : "آدرس CalDAV iOS / macOS را کپی کنید", - "CalDAV link copied to clipboard." : "پیوند CalDAV در کلیپ بورد کپی شد.", - "CalDAV link could not be copied to clipboard." : "پیوند CalDAV در کلیپ بورد قابل کپی نیست.", - "Location" : "محل", + "Personal availability settings" : "Personal availability settings", + "Show keyboard shortcuts" : "Show keyboard shortcuts", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minute","{duration} minutes"], + "0 minutes" : "0 minutes", + "_{duration} hour_::_{duration} hours_" : ["{duration} hour","{duration} hours"], + "_{duration} day_::_{duration} days_" : ["{duration} day","{duration} days"], + "_{duration} week_::_{duration} weeks_" : ["{duration} week","{duration} weeks"], + "_{duration} month_::_{duration} months_" : ["{duration} month","{duration} months"], + "_{duration} year_::_{duration} years_" : ["{duration} year","{duration} years"], + "To configure appointments, add your email address in personal settings." : "To configure appointments, add your email address in personal settings.", + "Public – shown on the profile page" : "عمومی – در صفحهٔ نمایه نشان داده می‌شود", + "Private – only accessible via secret link" : "Private – only accessible via secret link", + "Update" : "به روز رسانی", + "Appointment name" : "Appointment name", + "Location" : "مکان", + "Create a Talk room" : "ایجاد اتاق گفتگو", "Description" : "توضیحات", + "Visibility" : "Visibility", "Duration" : "مدت زمان", + "Increments" : "Increments", + "Additional calendars to check for conflicts" : "Additional calendars to check for conflicts", + "Pick time ranges where appointments are allowed" : "Pick time ranges where appointments are allowed", "to" : "به", + "Delete slot" : "Delete slot", + "No times set" : "No times set", "Add" : "افزودن", "Monday" : "دوشنبه", - "Tuesday" : "سه شنبه", + "Tuesday" : "سه‌شنبه", "Wednesday" : "چهارشنبه", - "Thursday" : "پنجشنبه", + "Thursday" : "پنج‌شنبه", "Friday" : "جمعه", "Saturday" : "شنبه", "Sunday" : "یکشنبه", - "Save" : "ذخیره", - "Update" : "به روز رسانی", + "Weekdays" : "روزهای هفته", + "Add time before and after the event" : "Add time before and after the event", + "Before the event" : "Before the event", + "After the event" : "After the event", + "Planning restrictions" : "Planning restrictions", + "Minimum time before next available slot" : "Minimum time before next available slot", + "Max slots per day" : "Max slots per day", + "Limit how far in the future appointments can be booked" : "Limit how far in the future appointments can be booked", + "Please confirm your reservation" : "Please confirm your reservation", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now.", + "Your name" : "اسم شما", "Your email address" : "پست الکترونیکی شما", + "Could not book the appointment. Please try again later or contact the organizer." : "Could not book the appointment. Please try again later or contact the organizer.", + "Back" : "Back", + "Create a new conversation" : "Create a new conversation", + "Select conversation" : "مکالمه را انتخاب کنید", + "on" : "بر", + "at" : "در", "before at" : "قبل از در", "Notification" : "اطلاع", "Email" : "ایمیل", @@ -135,69 +251,112 @@ OC.L10N.register( "Edit time" : "ویرایش زمان", "Save time" : "صرفه جویی در وقت", "Remove reminder" : "یادآوری را حذف کنید", - "on" : "بر", - "at" : "در", - "+ Add reminder" : "+ اضافه کردن یادآوری", - "_second_::_seconds_" : ["ثانیه","ثانیه ها"], - "_minute_::_minutes_" : ["دقایق","دقیقه ها"], - "_hour_::_hours_" : ["ساعت","ساعت ها"], - "_day_::_days_" : ["روز","روز ها"], - "_week_::_weeks_" : ["هفته","هفته ها"], + "Add reminder" : "Add reminder", + "seconds" : "ثانیه ها", + "minutes" : "دقیقه", + "hours" : "ساعت", + "days" : "روز", + "weeks" : "هفته", + "Choose a file to add as attachment" : "پرونده ای را برای اضافه کردن به عنوان پیوست انتخاب کنید", + "Choose a file to share as a link" : "Choose a file to share as a link", + "Attachment {name} already exist!" : "Attachment {name} already exist!", + "Proceed" : "ادامه دادن", + "No attachments" : "No attachments", + "Add from Files" : "Add from Files", + "Upload from device" : "Upload from device", + "Delete file" : "حذف پرونده", + "Confirmation" : "Confirmation", + "_{count} attachment_::_{count} attachments_" : ["{count} attachment","{count} attachments"], + "Suggested" : "Suggested", "Available" : "در دسترس", + "Invitation accepted" : "Invitation accepted", + "Accepted {organizerName}'s invitation" : "Accepted {organizerName}'s invitation", + "Participation marked as tentative" : "Participation marked as tentative", + "Invitation is delegated" : "Invitation is delegated", + "Not available" : "در دسترس نیست", + "Invitation declined" : "Invitation declined", + "Declined {organizerName}'s invitation" : "Declined {organizerName}'s invitation", + "Checking availability" : "Checking availability", + "Has not responded to {organizerName}'s invitation yet" : "Has not responded to {organizerName}'s invitation yet", + "{organizer} (organizer)" : "{organizer} (organizer)", "Availability of attendees, resources and rooms" : "در دسترس بودن شرکت کنندگان ، منابع و اتاق ها", - "Free" : "رایگان", + "Legend" : "Legend", + "Out of office" : "بیرون از دفتر", + "Attendees:" : "شرکت‌کنندگان:", + "Done" : "Done", + "Room name" : "Room name", + "Free" : "آزاد", "Busy (tentative)" : "مشغول (آزمایشی)", "Busy" : "مشغول", - "Out of office" : "بیرون از دفتر", "Unknown" : "نامشخص", + "The invitation has been accepted successfully." : "The invitation has been accepted successfully.", + "Failed to accept the invitation." : "Failed to accept the invitation.", + "The invitation has been declined successfully." : "The invitation has been declined successfully.", + "Failed to decline the invitation." : "Failed to decline the invitation.", + "Your participation has been marked as tentative." : "Your participation has been marked as tentative.", + "Failed to set the participation status to tentative." : "Failed to set the participation status to tentative.", "Accept" : "تایید", "Decline" : "کاهش می یابد", "Tentative" : "آزمایشی", - "Create Talk room for this event" : "اتاق گفتگو را برای این رویداد ایجاد کنید", - "Show busy times" : " نمایش زمان‌های شلوغ", "No attendees yet" : "هنوز هیچ حضوری وجود ندارد", + "Successfully appended link to talk room to location." : "Successfully appended link to talk room to location.", "Successfully appended link to talk room to description." : "پیوند موفقیت آمیز پیوند به اتاق گفتگو به توضیحات.", "Error creating Talk room" : "خطا در ایجاد اتاق گفتگو", - "Send email" : "ارسال ایمیل", + "Attendees" : "شرکت کنندگان", + "Remove group" : "برداشتن گروه", + "Remove attendee" : "شرکت کننده را حذف کنید", "Chairperson" : "رئیس", "Required participant" : "شرکت کننده مورد نیاز", "Optional participant" : "شرکت کننده اختیاری", "Non-participant" : "غیر شرکت کننده", - "Remove attendee" : "شرکت کننده را حذف کنید", + "_%n member_::_%n members_" : ["%n عضو","%n عضو"], "No match found" : "هیچ تطبیقی یافت نشد", "(organizer)" : "(تنظیم کننده)", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose].", + "Remove color" : "Remove color", "Event title" : "عنوان رویداد", - "All day" : "تمام روز", - "from {startDate}" : "از {startDate}", - "from {startDate} at {startTime}" : "از {startDate} در {startTime}", - "to {endDate}" : "به {endDate}", - "to {endDate} at {endTime}" : "به {endDate} در {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Cannot modify all-day setting for events that are part of a recurrence-set.", + "From" : "از", + "To" : "به", "Repeat" : "تکرار", - "End repeat" : "پایان تکرار ", - "Select to end repeat" : "برای پایان دادن به تکرار انتخاب کنید", + "_time_::_times_" : ["بار","بارها"], "never" : "هرگز", "on date" : "در تاریخ", "after" : "بعد از", - "_time_::_times_" : ["بار","بارها"], + "End repeat" : "پایان تکرار ", + "Select to end repeat" : "برای پایان دادن به تکرار انتخاب کنید", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it.", "first" : "اولین", - "third" : "سوم", - "fourth" : "چهارم", - "fifth" : "پنجم", - "second to last" : "دوم تا آخرین", - "last" : "آخر", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "تغییر در قانون بازگشتی فقط در مورد این و همه وقایع آینده اعمال خواهد شد.", "Repeat every" : "همه را تکرار کنید", "By day of the month" : "تا روز ماه", "On the" : "در", + "_day_::_days_" : ["روز","روز"], + "_week_::_weeks_" : ["هفته","هفته"], "_month_::_months_" : ["ماه","ماه ها"], "_year_::_years_" : ["سال","سال ها"], "weekday" : "روز هفته", "weekend day" : " آخر هفته", + "Does not repeat" : "تکرار نمی کند", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "تعریف بازگشتی از این رویداد توسط نکست کلود کاملاً پشتیبانی نمی شود. اگر گزینه های بازگشتی را ویرایش کنید ، ممکن است بازگشتی های خاصی از بین بروند.", + "No rooms or resources yet" : "No rooms or resources yet", + "Resources" : "منابع", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seat","{seatingCapacity} seats"], + "Add resource" : "Add resource", + "Has a projector" : "Has a projector", + "Has a whiteboard" : "Has a whiteboard", + "Wheelchair accessible" : "Wheelchair accessible", + "Remove resource" : "Remove resource", + "Search for resources or rooms" : "Search for resources or rooms", "available" : "در دسترس", - "More" : "بیش‌تر", - "Update this occurrence" : "این رویداد را به روز کنید", + "unavailable" : "unavailable", + "Projector" : "Projector", + "Whiteboard" : "Whiteboard", + "Room type" : "Room type", + "Any" : "Any", + "Minimum seating capacity" : "Minimum seating capacity", "Update this and all future" : "این و همه آینده را به روز کنید", + "Update this occurrence" : "این رویداد را به روز کنید", "Public calendar does not exist" : "تقویم عمومی وجود ندارد", "Maybe the share was deleted or has expired?" : "شاید اشتراک حذف شده باشد یا منقضی شده باشد؟", "from {formattedDate}" : "از {formattedDate}", @@ -209,16 +368,48 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} در {formattedTime}", "Please enter a valid date" : "لطفا یک تاریخ معتبر وارد کنید", "Please enter a valid date and time" : "لطفاً یک تاریخ و زمان معتبر وارد کنید", + "Please select a time zone:" : "Please select a time zone:", + "Pick a time" : "Pick a time", + "Pick a date" : "Pick a date", + "Type to search time zone" : "Type to search time zone", "Global" : "عمومی", + "Holidays in {region}" : "Holidays in {region}", + "Public holiday calendars" : "Public holiday calendars", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}", + "By {authors}" : "By {authors}", + "Subscribed" : "Subscribed", + "Subscribe" : "اشتراک گذاری", + "Select slot" : "Select slot", + "No slots available" : "No slots available", + "The slot for your appointment has been confirmed" : "The slot for your appointment has been confirmed", + "Appointment Details:" : "Appointment Details:", + "Time:" : "Time:", + "Booked for:" : "Booked for:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Thank you. Your booking from {startDate} to {endDate} has been confirmed.", + "Book another appointment:" : "Book another appointment:", + "See all available slots" : "See all available slots", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "The slot for your appointment from {startDate} to {endDate} is not available any more.", + "Please book a different slot:" : "Please book a different slot:", + "Book an appointment with {name}" : "Book an appointment with {name}", + "No public appointments found for {name}" : "No public appointments found for {name}", "Personal" : "شخصی", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue.", + "Edit event" : "ویرایش رویداد", + "Event does not exist" : "رویداد وجود ندارد", + "Duplicate" : "Duplicate", "Delete this occurrence" : "این رخداد را حذف کنید", "Delete this and all future" : "این و همه آینده را حذف کنید", - "Details" : "جزئیات", - "Attendees" : "شرکت کنندگان", - "Resources" : "منابع", + "All day" : "تمام روز", + "Managing shared access" : "Managing shared access", + "Deny access" : "Deny access", + "Invite" : "Invite", + "_User requires access to your file_::_Users require access to your file_" : ["User requires access to your file","Users require access to your file"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Attachment requires shared access","Attachments requiring shared access"], + "Untitled event" : "رویداد بدون عنوان", "Close" : "بستن", - "Show more details" : "جزئیات بیشتر را نشان دهید", "Subscribe to {name}" : "اشتراک در {name}", + "Export {name}" : "دریافت خروجی از {name}", "Anniversary" : "سالگرد", "Appointment" : "وقت ملاقات", "Business" : "کسب و کار", @@ -246,7 +437,6 @@ OC.L10N.register( "on {time}" : "به {موقع}", "on {time} ({timezoneId})" : "در {time} ({timezoneId})", "Week {number} of {year}" : "هفته {number} از {year}", - "Does not repeat" : "تکرار نمی کند", "Daily" : "روزانه", "Weekly" : "هفته گی", "Monthly" : "ماهانه", @@ -258,120 +448,59 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["در {weekday}","در {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["در روز {dayOfMonthList}","در روزها {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "روی {ordinalNumber} {byDaySet}", - "in {monthNames}" : "درون {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "در {monthNames} در {ordinalNumber} {byDaySet}", "until {untilDate}" : "تا زمان {untilDate}", "_%n time_::_%n times_" : ["%n بار","%n بارها"], - "Untitled event" : "رویداد بدون عنوان", - "Prev" : "مقدمه", - "Next" : "بعدی", - "Year" : "سال", + "second" : "دومین", + "third" : "سوم", + "fourth" : "چهارم", + "fifth" : "پنجم", + "second to last" : "دوم تا آخرین", + "last" : "آخر", + "Untitled task" : "کار بدون عنوان", + "Please ask your administrator to enable the Tasks App." : "Please ask your administrator to enable the Tasks App.", + "W" : "W", + "%n more" : "%n more", + "No events to display" : "هیچ رویدادی برای نمایش وجود ندارد", "_+%n more_::_+%n more_" : ["+%n بیشتر","+%n بیشتر"], - "Other" : "اعلان‌ها", + "No events" : "رویدادی وجود ندارد", + "Create a new event or change the visible time-range" : "یک رویداد تازه بسازید یا بازه زمانی خود را تغییر بدهید", + "It might have been deleted, or there was a typo in a link" : "It might have been deleted, or there was a typo in a link", + "It might have been deleted, or there was a typo in the link" : "It might have been deleted, or there was a typo in the link", + "Meeting room" : "Meeting room", + "Lecture hall" : "Lecture hall", + "Seminar room" : "Seminar room", + "Other" : "دیگر", "When shared show" : "هنگام نمایش مشترک", "When shared show full event" : "هنگام اشتراک گذاری ، رویداد کامل را نشان می دهد", "When shared show only busy" : "وقتی نمایش اشتراکی فقط مشغول است", "When shared hide this event" : "هنگام اشتراک گذاری این رویداد را پنهان کنید", "The visibility of this event in shared calendars." : "قابلیت مشاهده این رویداد در تقویمهای مشترک.", - "Add a location" : "اضافه کردن یک محل", - "Add a description" : "توضیحات اضافه کنید", + "Add a location" : "افزودن یک محل", "Status" : "وضعیت", "Confirmed" : "تایید شده", + "Canceled" : "لغو شد", "Confirmation about the overall status of the event." : "تأیید درباره وضعیت کلی این رویداد.", "Show as" : "نمایش به عنوان", - "Take this event into account when calculating free-busy information." : "هنگام محاسبه اطلاعات شلوغ رایگان ، این رویداد را در نظر بگیرید.", + "Take this event into account when calculating free-busy information." : "این رویداد در زمان محاسبهٔ اطلاعات آزاد/مشغول، در نظر گرفته شود.", "Categories" : "دسته بندی ها", "Categories help you to structure and organize your events." : "دسته بندی ها به شما کمک می کنند تا وقایع خود را تنظیم و سازماندهی کنید.", "Search or add categories" : "دسته ها را جستجو یا اضافه کنید", "Add this as a new category" : "این را به عنوان یک دسته جدید اضافه کنید", "Custom color" : "رنگ سفارشی", "Special color of this event. Overrides the calendar-color." : "رنگ ویژه این رویداد. رنگ تقویم را نادیده می گیرد.", - "Chat room for event" : "اتاق گپ برای رویداد", + "Error while sharing file" : "Error while sharing file", + "Error while sharing file with user" : "Error while sharing file with user", + "Attachment {fileName} already exists!" : "Attachment {fileName} already exists!", + "An error occurred during getting file information" : "An error occurred during getting file information", + "An error occurred, unable to delete the calendar." : "خطایی روی داد ، قادر به حذف تقویم نیست.", "Imported {filename}" : "وارد شده {نام پرونده}", - "Meditation" : "مراقبه", - "Relaxing" : "آرامش بخش", - "Relax" : "آروم باش", - "Commuting" : "رفت و آمد", - "Presentation" : "ارائه", - "Talk" : "گفتگو", - "Camping" : "چادر زدن", - "Camp" : "اردوگاه", - "Movie" : "فیلم", - "Cinema" : "سینما", - "Graduation" : "فارغ التحصیلی", - "Brainstorm" : "ایده پردازی", - "Review" : "مرور", - "Baseball" : "بیسبال", - "Meet" : "ملاقات", - "Planning" : "برنامه ریزی", - "Pointing" : "اشاره", - "Retrospective" : "گذشته نگر", - "Office" : "دفتر", - "Contributor week" : "هفته مشارکت کننده", - "Mail" : "ایمیل", - "Soccer" : "فوتبال", - "Football" : "فوتبال", - "Gaming" : "بازی", - "Drive" : "راندن", - "Bicycle" : "دوچرخه", - "Cycle" : "چرخه", - "Biking" : "دوچرخه سواری", - "Podcast" : "پادکست", - "Basketball" : "بسکتبال", - "Fishing" : "ماهیگیری", - "Hiking" : "پیاده روی", - "Hike" : "پیاده روی", - "Art" : "هنر", - "Exhibition" : "نمایشگاه", - "Museum" : "موزه", - "Pilates" : "پیلاتس", - "Park" : "پارک", - "Studying" : "در حال مطالعه", - "Doctor" : "دکتر", - "Health" : "سلامتی", - "Dentist" : "دندانپزشک", - "Hospital" : "بیمارستان", - "Interview" : "مصاحبه", - "Training" : "آموزش", - "Practice" : "تمرین", - "Sports" : "ورزش ها", - "Exercise" : "ورزش", - "Work out" : "کار کردن", - "Working out" : "کار کردن", - "Gym" : "سالن ورزش", - "Barber" : "سلمانی", - "Haircut" : "اصلاح مو", - "Exam" : "امتحان", - "Working" : "کار کردن", - "New Years Eve" : "سال نو", - "NYE" : "NYE", - "Fireworks" : "آتش بازی", - "Running" : "در حال دویدن", - "Go for a run" : "برو برای اجرا", - "Marathon" : "ماراتن", - "Call" : "زنگ زدن", - "Calling" : "صدا زدن", - "Christmas" : "کریسمس", - "Conference" : "کنفرانس", - "Pizza" : "پیتزا", - "Travelling" : "مسافرت", - "Journey" : "سفر", - "Collaborate" : "همکاری", - "Pair" : "جفت", - "Lecture" : "سخنرانی", - "Seminar" : "سمینار", - "Photograph" : "عکس", - "Party" : "مهمانی - جشن", - "Celebration" : "جشن", - "Celebrate" : "جشن گرفتن", - "Birthday" : "روزتولد", - "Shopping" : "خريد كردن", - "Skate" : "اسکیت", - "Skateboard" : "صفحه اسکیت", - "Wine tasting" : "مزه کردن شراب", - "Golf" : "گلف", - "Dinner" : "شام", - "Lunch" : "ناهار", - "User not found" : "کاربر یافت نشد" + "This is an event reminder." : "This is an event reminder.", + "Appointment not found" : "Appointment not found", + "User not found" : "کاربر یافت نشد", + "Reminder" : "Reminder", + "+ Add reminder" : "+ اضافه کردن یادآوری", + "Suggestions" : "Suggestions", + "Details" : "جزئیات" }, "nplurals=2; plural=(n > 1);"); diff --git a/l10n/fa.json b/l10n/fa.json index 5a0f4f947ffa54fe3d33cfc1185780172a373637..c79be97d337ef5ea531757c551e0a19d95510eed 100644 --- a/l10n/fa.json +++ b/l10n/fa.json @@ -1,128 +1,244 @@ { "translations": { + "Provided email-address is too long" : "Provided email-address is too long", "User-Session unexpectedly expired" : "نشست کاربر به طور غیر منتظره منقضی شد", - "Provided email-address is not valid" : "آدرس ایمیل ارائه شده معتبر نیست", + "Provided email-address is not valid" : "ایمیل ارائه شده معتبر نیست", "%s has published the calendar »%s«" : "%sتقویم %s را منتشر کرده است.", "Unexpected error sending email. Please contact your administrator." : "خطای غیر منتظره در ارسال ایمیل. لطفا با مدیر خود تماس بگیرید.", + "Successfully sent email to %1$s" : "Successfully sent email to %1$s", "Hello," : "سلام،", "We wanted to inform you that %s has published the calendar »%s«." : "مایل هستیم به شما اطلاع دهیم که %s تقویم شماره %s را منتشر کرده است.", "Open »%s«" : "باز کن »%s«", "Cheers!" : "سلامتی!", "Upcoming events" : "رویدادهای پیش‌رو", + "No more events today" : "هیچ رویداد دیگری برای امروز وجود ندارد", + "No upcoming events" : "رویداد پیش‌رویی وجود ندارد", + "More events" : "More events", + "%1$s with %2$s" : "%1$s with %2$s", + "Calendar" : "تقویم", + "New booking {booking}" : "New booking {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}.", "Appointments" : "قرارها", + "Schedule appointment \"%s\"" : "Schedule appointment \"%s\"", + "Schedule an appointment" : "Schedule an appointment", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Prepare for %s", + "Follow up for %s" : "Follow up for %s", + "Your appointment \"%s\" with %s needs confirmation" : "Your appointment \"%s\" with %s needs confirmation", + "Dear %s, please confirm your booking" : "Dear %s, please confirm your booking", "Confirm" : "تائید", + "Description:" : "توضیحات:", + "This confirmation link expires in %s hours." : "This confirmation link expires in %s hours.", + "Your appointment \"%s\" with %s has been accepted" : "Your appointment \"%s\" with %s has been accepted", + "Dear %s, your booking has been accepted." : "Dear %s, your booking has been accepted.", + "Appointment for:" : "Appointment for:", "Date:" : "تاریخ:", "Where:" : "مکان:", - "Calendar" : "تقویم", + "Comment:" : "Comment:", + "You have a new appointment booking \"%s\" from %s" : "You have a new appointment booking \"%s\" from %s", + "Dear %s, %s (%s) booked an appointment with you." : "Dear %s, %s (%s) booked an appointment with you.", "A Calendar app for Nextcloud" : "یک برنامه تقویم برای نکست کلود", "Previous day" : "روز قبل", "Previous week" : "هفته قبل", + "Previous year" : "Previous year", "Previous month" : "ماه قبل", "Next day" : "روز بعد", "Next week" : "هفته بعد", + "Next year" : "Next year", "Next month" : "ماه بعد", - "New event" : "رویداد جدید", + "Create new event" : "Create new event", + "Event" : "رویداد", "Today" : "امروز", "Day" : "روز", "Week" : "هفته", "Month" : "ماه", - "List" : "لیست", + "Year" : "سال", + "List" : "فهرست", + "Appointment link was copied to clipboard" : "Appointment link was copied to clipboard", + "Appointment link could not be copied to clipboard" : "Appointment link could not be copied to clipboard", "Preview" : "پیش‌نمایش", "Copy link" : "کپی کردن لینک", "Edit" : "ویرایش", "Delete" : "حذف", - "Untitled calendar" : "تقویم بدون عنوان", - "Edit name" : "ویرایش نام", - "Saving name …" : "ذخیره نام", - "Edit color" : "ویرایش رنگ", - "Saving color …" : "ذخیره رنگ", - "Copy private link" : "کپی کردن پیوند خصوصی", - "Export" : "گرفتن خروجی", - "Unshare from me" : "بی خبر از من", + "Create new" : "ایجاد جدید", + "Disable calendar \"{calendar}\"" : "Disable calendar \"{calendar}\"", + "Disable untitled calendar" : "Disable untitled calendar", + "Enable calendar \"{calendar}\"" : "Enable calendar \"{calendar}\"", + "Enable untitled calendar" : "Enable untitled calendar", "An error occurred, unable to change visibility of the calendar." : "خطایی روی داد ، قادر به تغییر دیدگاه تقویم نیست.", - "An error occurred, unable to delete the calendar." : "خطایی روی داد ، قادر به حذف تقویم نیست.", - "Calendar link copied to clipboard." : "پیوند تقویم در کلیپ بورد کپی شد.", - "Calendar link could not be copied to clipboard." : "پیوند تقویم را نمی توان در کلیپ بورد کپی کرد.", - "An error occurred, unable to rename the calendar." : "خطایی روی داد ، قادر به تغییر نام تقویم نیست.", - "An error occurred, unable to change the calendar's color." : "خطایی روی داد ، قادر به تغییر رنگ تقویم نیست.", + "Untitled calendar" : "تقویم بدون عنوان", + "Shared with you by" : "با شما به اشتراک گذاشته شده است", + "Edit and share calendar" : "Edit and share calendar", + "Edit calendar" : "ویرایش تقویم", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["اشتراک‌گذاری تقویم در {شمارش معکوس}. ثانیه","اشتراک‌گذاری تقویم در {شمارش معکوس}. ثانیه ها"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["حذف تقویم در {شمارش معکوس} ثانیه ها","حذف تقویم در {شمارش معکوس} ثانیه ها"], + "An error occurred, unable to create the calendar." : "خطایی روی داد ، قادر به ایجاد تقویم نیست.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "لطفاً یک پیوند معتبر وارد کنید (با شروع http: // ، https: // ، webcal: // ، یا صفحات وب: //)", + "Calendars" : "تقویم‌ها", + "Add new" : "افزودن مورد تازه", + "New calendar" : "تقویم جدید", + "Name for new calendar" : "Name for new calendar", + "Creating calendar …" : "ایجاد تقویم ...", + "New calendar with task list" : "تقویم جدید با لیست کارها", + "New subscription from link (read-only)" : "اشتراک جدید از پیوند (فقط خواندنی)", + "Creating subscription …" : "ایجاد اشتراک…", + "Add public holiday calendar" : "Add public holiday calendar", + "Calendar link copied to clipboard." : "پیوند تقویم در کلیپ بورد کپی شد.", + "Calendar link could not be copied to clipboard." : "پیوند تقویم را نمی توان در کلیپ بورد کپی کرد.", + "Copy subscription link" : "پیوند اشتراک را کپی کنید", + "Copying link …" : "کپی پیوند ...", + "Copied link" : "پیوند کپی شد", + "Could not copy link" : "نمی توان پیوند را کپی کرد", + "Export" : "دریافت خروجی", + "Untitled item" : "مورد بدون عنوان", + "Unknown calendar" : "تقویم ناشناخته", + "Could not load deleted calendars and objects" : "تقویم و اشیاء حذف شده بارگیری نشد", + "Could not delete calendar or event" : "تقویم یا رویداد حذف نشد", + "Could not restore calendar or event" : "تقویم یا رویداد بازیابی نشد", + "Do you really want to empty the trash bin?" : "آیا واقعاً می خواهید سطل زباله را خالی کنید؟", + "Empty trash bin" : "خالی کردن سطل زباله", + "Trash bin" : "زباله‌دان", + "Loading deleted items." : "Loading deleted items.", + "You do not have any deleted items." : "You do not have any deleted items.", + "Name" : "نام", + "Deleted" : "حذف شده", + "Restore" : "بازیابی", + "Delete permanently" : "حذف قطعی", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Items in the trash bin are deleted after {numDays} day","Items in the trash bin are deleted after {numDays} days"], + "Could not update calendar order." : "Could not update calendar order.", + "Deck" : "برگه‌دان", + "Hidden" : "مخفی", + "Internal link" : "پیوند داخلی", + "A private link that can be used with external clients" : "A private link that can be used with external clients", + "Copy internal link" : "کپی کردن پیوند داخلی", + "An error occurred, unable to publish calendar." : "خطایی روی داد ، قادر به انتشار تقویم نیست.", + "An error occurred, unable to send email." : "خطایی روی داد ، قادر به ارسال ایمیل نیست.", + "Embed code copied to clipboard." : "کد قرار داده شده در حافظه کپی شد.", + "Embed code could not be copied to clipboard." : "کد جاسازی را نمی توان در کلیپ بورد کپی کرد.", + "Unpublishing calendar failed" : "عدم انتشار تقویم موفقیت آمیز نبود", "Share link" : "لینک را به اشتراک بگذارید", - "Publish calendar" : "تقویم را منتشر کنید", - "Publishing calendar" : "در حال انتشار تقویم ", "Copy public link" : "پیوند عمومی را کپی کنید", "Send link to calendar via email" : "ارسال پیوند به تقویم از طریق ایمیل", "Enter one address" : "یک آدرس وارد کنید", "Sending email …" : "ارسال ایمیل…", - "Copy subscription link" : "پیوند اشتراک را کپی کنید", - "Copying link …" : "کپی پیوند ...", - "Copied link" : "پیوند کپی شد", - "Could not copy link" : "نمی توان پیوند را کپی کرد", "Copy embedding code" : "کد تعبیه شده را کپی کنید", "Copying code …" : "کپی کردن کد ...", "Copied code" : "کد کپی شد", "Could not copy code" : "نمی توان کد را کپی کرد", "Delete share link" : "پیوند اشتراک را حذف کنید", "Deleting share link …" : "در حال حذف پیوند اشتراک ...", - "An error occurred, unable to publish calendar." : "خطایی روی داد ، قادر به انتشار تقویم نیست.", - "An error occurred, unable to send email." : "خطایی روی داد ، قادر به ارسال ایمیل نیست.", - "Embed code copied to clipboard." : "کد قرار داده شده در حافظه کپی شد.", - "Embed code could not be copied to clipboard." : "کد جاسازی را نمی توان در کلیپ بورد کپی کرد.", - "Unpublishing calendar failed" : "عدم انتشار تقویم موفقیت آمیز نبود", - "Share with users or groups" : "اشتراک گذاری با کاربران یا گروه ها ...", - "No users or groups" : "هیچ کاربر یا گروهی وجود ندارد", + "An error occurred while unsharing the calendar." : "An error occurred while unsharing the calendar.", + "An error occurred, unable to change the permission of the share." : "خطایی روی داد ، قادر به تغییر مجوز اشتراک نیست.", "can edit" : "می توان ویرایش کرد", "Unshare with {displayName}" : "عدم اشتراک گذاری با {displayName}", - "An error occurred, unable to change the unshare the calendar." : "خطایی روی داد ، قادر به تغییر تقویم عدم اشتراک گذاری نیست.", - "An error occurred, unable to change the permission of the share." : "خطایی روی داد ، قادر به تغییر مجوز اشتراک نیست.", - "+ New calendar" : "+ تقویم جدید", - "New calendar" : "تقویم جدید", - "Creating calendar …" : "ایجاد تقویم ...", - "New calendar with task list" : "تقویم جدید با لیست کارها", - "New subscription from link (read-only)" : "اشتراک جدید از پیوند (فقط خواندنی)", - "Creating subscription …" : "ایجاد اشتراک…", - "An error occurred, unable to create the calendar." : "خطایی روی داد ، قادر به ایجاد تقویم نیست.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "لطفاً یک پیوند معتبر وارد کنید (با شروع http: // ، https: // ، webcal: // ، یا صفحات وب: //)", - "Trash bin" : "زباله‌دان", - "Name" : "نام", - "Deleted" : "حذف شده", - "Restore" : "بازیابی", - "Delete permanently" : "حذف قطعی", - "Empty trash bin" : "خالی کردن سطل زباله", + "Share with users or groups" : "اشتراک گذاری با کاربران یا گروه ها ...", + "No users or groups" : "هیچ کاربر یا گروهی وجود ندارد", + "Failed to save calendar name and color" : "Failed to save calendar name and color", + "Calendar name …" : "نام تقویم …", + "Share calendar" : "Share calendar", + "Unshare from me" : "بی خبر از من", + "Save" : "ذخیره", "Import calendars" : "وارد کردن تقویم ها", "Please select a calendar to import into …" : "لطفاً یک تقویم را برای وارد کردن به… انتخاب کنید", - "Filename" : "نام فایل", + "Filename" : "نام پرونده", "Calendar to import into" : "تقویم برای وارد کردن", "Cancel" : "منصرف شدن", "_Import calendar_::_Import calendars_" : ["وارد کردن تقویم","وارد کردن تقویم ها"], + "Select the default location for attachments" : "Select the default location for attachments", + "Invalid location selected" : "مکان نامعتبر انتخاب شده است", + "Attachments folder successfully saved." : "Attachments folder successfully saved.", + "Error on saving attachments folder." : "Error on saving attachments folder.", + "Default attachments location" : "Default attachments location", + "{filename} could not be parsed" : "{filename} could not be parsed", + "No valid files found, aborting import" : "No valid files found, aborting import", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Successfully imported %n event","Successfully imported %n events"], "Import partially failed. Imported {accepted} out of {total}." : "وارد کردن تا حدودی انجام نشد. وارد شده {accepted} بیرون از {total}.", "Automatic" : "خودکار", "Automatic ({detected})" : "خودکار ({شناسایی})", "New setting was not saved successfully." : "تنظیم جدید با موفقیت ذخیره نشد.", + "Navigation" : "جهت یابی", + "Previous period" : "دوره قبلی", + "Next period" : "دوره بعدی", + "Views" : "بازدیدها", + "Day view" : "نمای روز", + "Week view" : "نمای هفته", + "Month view" : "نمای ماه", + "Year view" : "نمای سال", "List view" : "نمایش لیست", "Actions" : "فعالیت ها", + "Create event" : "ایجاد رویداد", + "Show shortcuts" : "نمایش میانبرها", + "Editor" : "ویرایشگر", + "Close editor" : "ویرایشگر را ببندید", + "Save edited event" : "رویداد ویرایش شده را ذخیره کنید", + "Delete edited event" : "حذف رویداد ویرایش شده", + "Duplicate event" : "رویداد تکراری", + "Shortcut overview" : "Shortcut overview", + "or" : "یا", + "Calendar settings" : "تنظیمات تقویم", + "No reminder" : "No reminder", + "CalDAV link copied to clipboard." : "پیوند CalDAV در کلیپ بورد کپی شد.", + "CalDAV link could not be copied to clipboard." : "پیوند CalDAV در کلیپ بورد قابل کپی نیست.", "Enable birthday calendar" : "تقویم تولد را فعال کنید", + "Show tasks in calendar" : "نمایش وظایف در تقویم", "Enable simplified editor" : "ویرایشگر ساده شده را فعال کنید", + "Limit the number of events displayed in the monthly view" : "Limit the number of events displayed in the monthly view", "Show weekends" : "آخر هفته ها را نشان دهید", "Show week numbers" : "نمایش شماره های هفته", + "Time increments" : "Time increments", + "Default reminder" : "Default reminder", "Copy primary CalDAV address" : "آدرس اصلی CalDAV را کپی کنید", "Copy iOS/macOS CalDAV address" : "آدرس CalDAV iOS / macOS را کپی کنید", - "CalDAV link copied to clipboard." : "پیوند CalDAV در کلیپ بورد کپی شد.", - "CalDAV link could not be copied to clipboard." : "پیوند CalDAV در کلیپ بورد قابل کپی نیست.", - "Location" : "محل", + "Personal availability settings" : "Personal availability settings", + "Show keyboard shortcuts" : "Show keyboard shortcuts", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minute","{duration} minutes"], + "0 minutes" : "0 minutes", + "_{duration} hour_::_{duration} hours_" : ["{duration} hour","{duration} hours"], + "_{duration} day_::_{duration} days_" : ["{duration} day","{duration} days"], + "_{duration} week_::_{duration} weeks_" : ["{duration} week","{duration} weeks"], + "_{duration} month_::_{duration} months_" : ["{duration} month","{duration} months"], + "_{duration} year_::_{duration} years_" : ["{duration} year","{duration} years"], + "To configure appointments, add your email address in personal settings." : "To configure appointments, add your email address in personal settings.", + "Public – shown on the profile page" : "عمومی – در صفحهٔ نمایه نشان داده می‌شود", + "Private – only accessible via secret link" : "Private – only accessible via secret link", + "Update" : "به روز رسانی", + "Appointment name" : "Appointment name", + "Location" : "مکان", + "Create a Talk room" : "ایجاد اتاق گفتگو", "Description" : "توضیحات", + "Visibility" : "Visibility", "Duration" : "مدت زمان", + "Increments" : "Increments", + "Additional calendars to check for conflicts" : "Additional calendars to check for conflicts", + "Pick time ranges where appointments are allowed" : "Pick time ranges where appointments are allowed", "to" : "به", + "Delete slot" : "Delete slot", + "No times set" : "No times set", "Add" : "افزودن", "Monday" : "دوشنبه", - "Tuesday" : "سه شنبه", + "Tuesday" : "سه‌شنبه", "Wednesday" : "چهارشنبه", - "Thursday" : "پنجشنبه", + "Thursday" : "پنج‌شنبه", "Friday" : "جمعه", "Saturday" : "شنبه", "Sunday" : "یکشنبه", - "Save" : "ذخیره", - "Update" : "به روز رسانی", + "Weekdays" : "روزهای هفته", + "Add time before and after the event" : "Add time before and after the event", + "Before the event" : "Before the event", + "After the event" : "After the event", + "Planning restrictions" : "Planning restrictions", + "Minimum time before next available slot" : "Minimum time before next available slot", + "Max slots per day" : "Max slots per day", + "Limit how far in the future appointments can be booked" : "Limit how far in the future appointments can be booked", + "Please confirm your reservation" : "Please confirm your reservation", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now.", + "Your name" : "اسم شما", "Your email address" : "پست الکترونیکی شما", + "Could not book the appointment. Please try again later or contact the organizer." : "Could not book the appointment. Please try again later or contact the organizer.", + "Back" : "Back", + "Create a new conversation" : "Create a new conversation", + "Select conversation" : "مکالمه را انتخاب کنید", + "on" : "بر", + "at" : "در", "before at" : "قبل از در", "Notification" : "اطلاع", "Email" : "ایمیل", @@ -133,69 +249,112 @@ "Edit time" : "ویرایش زمان", "Save time" : "صرفه جویی در وقت", "Remove reminder" : "یادآوری را حذف کنید", - "on" : "بر", - "at" : "در", - "+ Add reminder" : "+ اضافه کردن یادآوری", - "_second_::_seconds_" : ["ثانیه","ثانیه ها"], - "_minute_::_minutes_" : ["دقایق","دقیقه ها"], - "_hour_::_hours_" : ["ساعت","ساعت ها"], - "_day_::_days_" : ["روز","روز ها"], - "_week_::_weeks_" : ["هفته","هفته ها"], + "Add reminder" : "Add reminder", + "seconds" : "ثانیه ها", + "minutes" : "دقیقه", + "hours" : "ساعت", + "days" : "روز", + "weeks" : "هفته", + "Choose a file to add as attachment" : "پرونده ای را برای اضافه کردن به عنوان پیوست انتخاب کنید", + "Choose a file to share as a link" : "Choose a file to share as a link", + "Attachment {name} already exist!" : "Attachment {name} already exist!", + "Proceed" : "ادامه دادن", + "No attachments" : "No attachments", + "Add from Files" : "Add from Files", + "Upload from device" : "Upload from device", + "Delete file" : "حذف پرونده", + "Confirmation" : "Confirmation", + "_{count} attachment_::_{count} attachments_" : ["{count} attachment","{count} attachments"], + "Suggested" : "Suggested", "Available" : "در دسترس", + "Invitation accepted" : "Invitation accepted", + "Accepted {organizerName}'s invitation" : "Accepted {organizerName}'s invitation", + "Participation marked as tentative" : "Participation marked as tentative", + "Invitation is delegated" : "Invitation is delegated", + "Not available" : "در دسترس نیست", + "Invitation declined" : "Invitation declined", + "Declined {organizerName}'s invitation" : "Declined {organizerName}'s invitation", + "Checking availability" : "Checking availability", + "Has not responded to {organizerName}'s invitation yet" : "Has not responded to {organizerName}'s invitation yet", + "{organizer} (organizer)" : "{organizer} (organizer)", "Availability of attendees, resources and rooms" : "در دسترس بودن شرکت کنندگان ، منابع و اتاق ها", - "Free" : "رایگان", + "Legend" : "Legend", + "Out of office" : "بیرون از دفتر", + "Attendees:" : "شرکت‌کنندگان:", + "Done" : "Done", + "Room name" : "Room name", + "Free" : "آزاد", "Busy (tentative)" : "مشغول (آزمایشی)", "Busy" : "مشغول", - "Out of office" : "بیرون از دفتر", "Unknown" : "نامشخص", + "The invitation has been accepted successfully." : "The invitation has been accepted successfully.", + "Failed to accept the invitation." : "Failed to accept the invitation.", + "The invitation has been declined successfully." : "The invitation has been declined successfully.", + "Failed to decline the invitation." : "Failed to decline the invitation.", + "Your participation has been marked as tentative." : "Your participation has been marked as tentative.", + "Failed to set the participation status to tentative." : "Failed to set the participation status to tentative.", "Accept" : "تایید", "Decline" : "کاهش می یابد", "Tentative" : "آزمایشی", - "Create Talk room for this event" : "اتاق گفتگو را برای این رویداد ایجاد کنید", - "Show busy times" : " نمایش زمان‌های شلوغ", "No attendees yet" : "هنوز هیچ حضوری وجود ندارد", + "Successfully appended link to talk room to location." : "Successfully appended link to talk room to location.", "Successfully appended link to talk room to description." : "پیوند موفقیت آمیز پیوند به اتاق گفتگو به توضیحات.", "Error creating Talk room" : "خطا در ایجاد اتاق گفتگو", - "Send email" : "ارسال ایمیل", + "Attendees" : "شرکت کنندگان", + "Remove group" : "برداشتن گروه", + "Remove attendee" : "شرکت کننده را حذف کنید", "Chairperson" : "رئیس", "Required participant" : "شرکت کننده مورد نیاز", "Optional participant" : "شرکت کننده اختیاری", "Non-participant" : "غیر شرکت کننده", - "Remove attendee" : "شرکت کننده را حذف کنید", + "_%n member_::_%n members_" : ["%n عضو","%n عضو"], "No match found" : "هیچ تطبیقی یافت نشد", "(organizer)" : "(تنظیم کننده)", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose].", + "Remove color" : "Remove color", "Event title" : "عنوان رویداد", - "All day" : "تمام روز", - "from {startDate}" : "از {startDate}", - "from {startDate} at {startTime}" : "از {startDate} در {startTime}", - "to {endDate}" : "به {endDate}", - "to {endDate} at {endTime}" : "به {endDate} در {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Cannot modify all-day setting for events that are part of a recurrence-set.", + "From" : "از", + "To" : "به", "Repeat" : "تکرار", - "End repeat" : "پایان تکرار ", - "Select to end repeat" : "برای پایان دادن به تکرار انتخاب کنید", + "_time_::_times_" : ["بار","بارها"], "never" : "هرگز", "on date" : "در تاریخ", "after" : "بعد از", - "_time_::_times_" : ["بار","بارها"], + "End repeat" : "پایان تکرار ", + "Select to end repeat" : "برای پایان دادن به تکرار انتخاب کنید", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it.", "first" : "اولین", - "third" : "سوم", - "fourth" : "چهارم", - "fifth" : "پنجم", - "second to last" : "دوم تا آخرین", - "last" : "آخر", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "تغییر در قانون بازگشتی فقط در مورد این و همه وقایع آینده اعمال خواهد شد.", "Repeat every" : "همه را تکرار کنید", "By day of the month" : "تا روز ماه", "On the" : "در", + "_day_::_days_" : ["روز","روز"], + "_week_::_weeks_" : ["هفته","هفته"], "_month_::_months_" : ["ماه","ماه ها"], "_year_::_years_" : ["سال","سال ها"], "weekday" : "روز هفته", "weekend day" : " آخر هفته", + "Does not repeat" : "تکرار نمی کند", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "تعریف بازگشتی از این رویداد توسط نکست کلود کاملاً پشتیبانی نمی شود. اگر گزینه های بازگشتی را ویرایش کنید ، ممکن است بازگشتی های خاصی از بین بروند.", + "No rooms or resources yet" : "No rooms or resources yet", + "Resources" : "منابع", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seat","{seatingCapacity} seats"], + "Add resource" : "Add resource", + "Has a projector" : "Has a projector", + "Has a whiteboard" : "Has a whiteboard", + "Wheelchair accessible" : "Wheelchair accessible", + "Remove resource" : "Remove resource", + "Search for resources or rooms" : "Search for resources or rooms", "available" : "در دسترس", - "More" : "بیش‌تر", - "Update this occurrence" : "این رویداد را به روز کنید", + "unavailable" : "unavailable", + "Projector" : "Projector", + "Whiteboard" : "Whiteboard", + "Room type" : "Room type", + "Any" : "Any", + "Minimum seating capacity" : "Minimum seating capacity", "Update this and all future" : "این و همه آینده را به روز کنید", + "Update this occurrence" : "این رویداد را به روز کنید", "Public calendar does not exist" : "تقویم عمومی وجود ندارد", "Maybe the share was deleted or has expired?" : "شاید اشتراک حذف شده باشد یا منقضی شده باشد؟", "from {formattedDate}" : "از {formattedDate}", @@ -207,16 +366,48 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} در {formattedTime}", "Please enter a valid date" : "لطفا یک تاریخ معتبر وارد کنید", "Please enter a valid date and time" : "لطفاً یک تاریخ و زمان معتبر وارد کنید", + "Please select a time zone:" : "Please select a time zone:", + "Pick a time" : "Pick a time", + "Pick a date" : "Pick a date", + "Type to search time zone" : "Type to search time zone", "Global" : "عمومی", + "Holidays in {region}" : "Holidays in {region}", + "Public holiday calendars" : "Public holiday calendars", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}", + "By {authors}" : "By {authors}", + "Subscribed" : "Subscribed", + "Subscribe" : "اشتراک گذاری", + "Select slot" : "Select slot", + "No slots available" : "No slots available", + "The slot for your appointment has been confirmed" : "The slot for your appointment has been confirmed", + "Appointment Details:" : "Appointment Details:", + "Time:" : "Time:", + "Booked for:" : "Booked for:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Thank you. Your booking from {startDate} to {endDate} has been confirmed.", + "Book another appointment:" : "Book another appointment:", + "See all available slots" : "See all available slots", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "The slot for your appointment from {startDate} to {endDate} is not available any more.", + "Please book a different slot:" : "Please book a different slot:", + "Book an appointment with {name}" : "Book an appointment with {name}", + "No public appointments found for {name}" : "No public appointments found for {name}", "Personal" : "شخصی", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue.", + "Edit event" : "ویرایش رویداد", + "Event does not exist" : "رویداد وجود ندارد", + "Duplicate" : "Duplicate", "Delete this occurrence" : "این رخداد را حذف کنید", "Delete this and all future" : "این و همه آینده را حذف کنید", - "Details" : "جزئیات", - "Attendees" : "شرکت کنندگان", - "Resources" : "منابع", + "All day" : "تمام روز", + "Managing shared access" : "Managing shared access", + "Deny access" : "Deny access", + "Invite" : "Invite", + "_User requires access to your file_::_Users require access to your file_" : ["User requires access to your file","Users require access to your file"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Attachment requires shared access","Attachments requiring shared access"], + "Untitled event" : "رویداد بدون عنوان", "Close" : "بستن", - "Show more details" : "جزئیات بیشتر را نشان دهید", "Subscribe to {name}" : "اشتراک در {name}", + "Export {name}" : "دریافت خروجی از {name}", "Anniversary" : "سالگرد", "Appointment" : "وقت ملاقات", "Business" : "کسب و کار", @@ -244,7 +435,6 @@ "on {time}" : "به {موقع}", "on {time} ({timezoneId})" : "در {time} ({timezoneId})", "Week {number} of {year}" : "هفته {number} از {year}", - "Does not repeat" : "تکرار نمی کند", "Daily" : "روزانه", "Weekly" : "هفته گی", "Monthly" : "ماهانه", @@ -256,120 +446,59 @@ "_on {weekday}_::_on {weekdays}_" : ["در {weekday}","در {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["در روز {dayOfMonthList}","در روزها {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "روی {ordinalNumber} {byDaySet}", - "in {monthNames}" : "درون {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "در {monthNames} در {ordinalNumber} {byDaySet}", "until {untilDate}" : "تا زمان {untilDate}", "_%n time_::_%n times_" : ["%n بار","%n بارها"], - "Untitled event" : "رویداد بدون عنوان", - "Prev" : "مقدمه", - "Next" : "بعدی", - "Year" : "سال", + "second" : "دومین", + "third" : "سوم", + "fourth" : "چهارم", + "fifth" : "پنجم", + "second to last" : "دوم تا آخرین", + "last" : "آخر", + "Untitled task" : "کار بدون عنوان", + "Please ask your administrator to enable the Tasks App." : "Please ask your administrator to enable the Tasks App.", + "W" : "W", + "%n more" : "%n more", + "No events to display" : "هیچ رویدادی برای نمایش وجود ندارد", "_+%n more_::_+%n more_" : ["+%n بیشتر","+%n بیشتر"], - "Other" : "اعلان‌ها", + "No events" : "رویدادی وجود ندارد", + "Create a new event or change the visible time-range" : "یک رویداد تازه بسازید یا بازه زمانی خود را تغییر بدهید", + "It might have been deleted, or there was a typo in a link" : "It might have been deleted, or there was a typo in a link", + "It might have been deleted, or there was a typo in the link" : "It might have been deleted, or there was a typo in the link", + "Meeting room" : "Meeting room", + "Lecture hall" : "Lecture hall", + "Seminar room" : "Seminar room", + "Other" : "دیگر", "When shared show" : "هنگام نمایش مشترک", "When shared show full event" : "هنگام اشتراک گذاری ، رویداد کامل را نشان می دهد", "When shared show only busy" : "وقتی نمایش اشتراکی فقط مشغول است", "When shared hide this event" : "هنگام اشتراک گذاری این رویداد را پنهان کنید", "The visibility of this event in shared calendars." : "قابلیت مشاهده این رویداد در تقویمهای مشترک.", - "Add a location" : "اضافه کردن یک محل", - "Add a description" : "توضیحات اضافه کنید", + "Add a location" : "افزودن یک محل", "Status" : "وضعیت", "Confirmed" : "تایید شده", + "Canceled" : "لغو شد", "Confirmation about the overall status of the event." : "تأیید درباره وضعیت کلی این رویداد.", "Show as" : "نمایش به عنوان", - "Take this event into account when calculating free-busy information." : "هنگام محاسبه اطلاعات شلوغ رایگان ، این رویداد را در نظر بگیرید.", + "Take this event into account when calculating free-busy information." : "این رویداد در زمان محاسبهٔ اطلاعات آزاد/مشغول، در نظر گرفته شود.", "Categories" : "دسته بندی ها", "Categories help you to structure and organize your events." : "دسته بندی ها به شما کمک می کنند تا وقایع خود را تنظیم و سازماندهی کنید.", "Search or add categories" : "دسته ها را جستجو یا اضافه کنید", "Add this as a new category" : "این را به عنوان یک دسته جدید اضافه کنید", "Custom color" : "رنگ سفارشی", "Special color of this event. Overrides the calendar-color." : "رنگ ویژه این رویداد. رنگ تقویم را نادیده می گیرد.", - "Chat room for event" : "اتاق گپ برای رویداد", + "Error while sharing file" : "Error while sharing file", + "Error while sharing file with user" : "Error while sharing file with user", + "Attachment {fileName} already exists!" : "Attachment {fileName} already exists!", + "An error occurred during getting file information" : "An error occurred during getting file information", + "An error occurred, unable to delete the calendar." : "خطایی روی داد ، قادر به حذف تقویم نیست.", "Imported {filename}" : "وارد شده {نام پرونده}", - "Meditation" : "مراقبه", - "Relaxing" : "آرامش بخش", - "Relax" : "آروم باش", - "Commuting" : "رفت و آمد", - "Presentation" : "ارائه", - "Talk" : "گفتگو", - "Camping" : "چادر زدن", - "Camp" : "اردوگاه", - "Movie" : "فیلم", - "Cinema" : "سینما", - "Graduation" : "فارغ التحصیلی", - "Brainstorm" : "ایده پردازی", - "Review" : "مرور", - "Baseball" : "بیسبال", - "Meet" : "ملاقات", - "Planning" : "برنامه ریزی", - "Pointing" : "اشاره", - "Retrospective" : "گذشته نگر", - "Office" : "دفتر", - "Contributor week" : "هفته مشارکت کننده", - "Mail" : "ایمیل", - "Soccer" : "فوتبال", - "Football" : "فوتبال", - "Gaming" : "بازی", - "Drive" : "راندن", - "Bicycle" : "دوچرخه", - "Cycle" : "چرخه", - "Biking" : "دوچرخه سواری", - "Podcast" : "پادکست", - "Basketball" : "بسکتبال", - "Fishing" : "ماهیگیری", - "Hiking" : "پیاده روی", - "Hike" : "پیاده روی", - "Art" : "هنر", - "Exhibition" : "نمایشگاه", - "Museum" : "موزه", - "Pilates" : "پیلاتس", - "Park" : "پارک", - "Studying" : "در حال مطالعه", - "Doctor" : "دکتر", - "Health" : "سلامتی", - "Dentist" : "دندانپزشک", - "Hospital" : "بیمارستان", - "Interview" : "مصاحبه", - "Training" : "آموزش", - "Practice" : "تمرین", - "Sports" : "ورزش ها", - "Exercise" : "ورزش", - "Work out" : "کار کردن", - "Working out" : "کار کردن", - "Gym" : "سالن ورزش", - "Barber" : "سلمانی", - "Haircut" : "اصلاح مو", - "Exam" : "امتحان", - "Working" : "کار کردن", - "New Years Eve" : "سال نو", - "NYE" : "NYE", - "Fireworks" : "آتش بازی", - "Running" : "در حال دویدن", - "Go for a run" : "برو برای اجرا", - "Marathon" : "ماراتن", - "Call" : "زنگ زدن", - "Calling" : "صدا زدن", - "Christmas" : "کریسمس", - "Conference" : "کنفرانس", - "Pizza" : "پیتزا", - "Travelling" : "مسافرت", - "Journey" : "سفر", - "Collaborate" : "همکاری", - "Pair" : "جفت", - "Lecture" : "سخنرانی", - "Seminar" : "سمینار", - "Photograph" : "عکس", - "Party" : "مهمانی - جشن", - "Celebration" : "جشن", - "Celebrate" : "جشن گرفتن", - "Birthday" : "روزتولد", - "Shopping" : "خريد كردن", - "Skate" : "اسکیت", - "Skateboard" : "صفحه اسکیت", - "Wine tasting" : "مزه کردن شراب", - "Golf" : "گلف", - "Dinner" : "شام", - "Lunch" : "ناهار", - "User not found" : "کاربر یافت نشد" + "This is an event reminder." : "This is an event reminder.", + "Appointment not found" : "Appointment not found", + "User not found" : "کاربر یافت نشد", + "Reminder" : "Reminder", + "+ Add reminder" : "+ اضافه کردن یادآوری", + "Suggestions" : "Suggestions", + "Details" : "جزئیات" },"pluralForm" :"nplurals=2; plural=(n > 1);" } \ No newline at end of file diff --git a/l10n/fi.js b/l10n/fi.js index 18a5b44a6d44ea1de838dc36c38113b4ee943e80..a85565eba8181ec7f8e42a1fcd17ce86c022324e 100644 --- a/l10n/fi.js +++ b/l10n/fi.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Annettu sähköpostiosoite on liian pitkä", "User-Session unexpectedly expired" : "Käyttäjäistunto vanheni odottamatta", "Provided email-address is not valid" : "Sähköpostiosoite on virheellinen", "%s has published the calendar »%s«" : "%s on julkaissut kalenterin »%s«", @@ -11,128 +12,154 @@ OC.L10N.register( "Open »%s«" : "Avaa »%s«", "Cheers!" : "Kiitos!", "Upcoming events" : "Tulevat tapahtumat", + "No more events today" : "Ei enempää tapahtumia tänään", + "No upcoming events" : "Ei tulevia tapahtumia", + "More events" : "Lisää tapahtumia", + "Calendar" : "Kalenteri", + "New booking {booking}" : "Uusi varaus {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) varasi tapaamisen \"{config_display_name}\" {date_time}.", "Appointments" : "Tapaamiset", "Schedule appointment \"%s\"" : "Ajoita tapaaminen \"%s\"", "Schedule an appointment" : "Ajoita tapaaminen", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Valmistaudu tapahtumaan \"%s\"", - "Your appointment \"%s\" needs confirmation" : "Tapaamisesi \"%s\" vaatii vahvistamisen", + "Your appointment \"%s\" with %s needs confirmation" : "Tapaaminen \"%s\" henkilön %s kanssa vaatii vahvistamisen", "Dear %s, please confirm your booking" : "%s, ole hyvä ja vahvista varauksesi", "Confirm" : "Vahvista", + "Description:" : "Kuvaus:", "This confirmation link expires in %s hours." : "Tämä vahvistuslinkki umpeutuu %s tunnin kuluttua.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Jos tahdot kuitenkin perua tapaamisen, ole hyvä ja ota yhteyttä järjestäjään.", - "Appointment:" : "Tapaaminen:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Jos kaikesta huolimatta haluat perua tapaamiseen, ota yhteys järjestäjään vastaamalla tähän viestiin tai käymällä hänen profiilisivullaan.", + "Your appointment \"%s\" with %s has been accepted" : "Tapaaminen \"%s\" henkilön %s kanssa on hyväksytty", + "Dear %s, your booking has been accepted." : "%s, varauksesi on hyväksytty.", "Date:" : "Päivämäärä:", + "You will receive a link with the confirmation email" : "Saat linkin vahvistussähköpostissa", "Where:" : "Paikka:", - "Description:" : "Kuvaus:", - "Calendar" : "Kalenteri", + "Comment:" : "Kommentti:", + "You have a new appointment booking \"%s\" from %s" : "Sinulla on uusi tapaamisvaraus \"%s\" henkilöltä %s", + "Dear %s, %s (%s) booked an appointment with you." : "%s, %s (%s) varasi tapaamisen kanssasi.", "A Calendar app for Nextcloud" : "Kalenterisovellus Nextcloudille", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Kalenterisovellus on käyttöliittymä Nextcloudin CalDAV-palvelimelle. Nextcloudin avulla synkronoit helposti tapahtumasi eri laitteiden välillä ja muokkaat niitä selaimessa.\n\n* 🚀 **Integraatio muiden Nextcloud-sovellusten kanssa!** Tällä hetkellä tuettuna Kontaktit-sovellus - lisää tulossa.\n* 🌐 **WebCal-tuki!** Haluatko nähdä lempijoukkueesi ottelupäivät kalenterissasi? Ei ongelmaa!\n* 🙋 **Osallistujat!** Kutsu ihmisiä tapahtumiisi\n* ⌚️ **Vapaa/Varattu!** Näe milloin osallistujat ovat käytettävissä tapaamiseen\n* ⏰ **Muistutukset!** Hälytykset tapahtumille selaimessa ja sähköpostilla\n* 🔍 Etsi! Löydä tapahtumasi helposti\n* ☑️ Tehtävät! Määräpäivät näytetään kalenterissa\n* 🙈 **Emme keksi pyörää uudelleen!** Perustuu mahtaviin [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) ja [fullcalendar](https://github.com/fullcalendar/fullcalendar) kirjastoihin.", "Previous day" : "Edellinen päivä", "Previous week" : "Edellinen viikko", + "Previous year" : "Edellinen vuosi", "Previous month" : "Edellinen kuukausi", "Next day" : "Seuraava päivä", "Next week" : "Seuraava viikko", + "Next year" : "Seuraava vuosi", "Next month" : "Seuraava kuukausi", - "New event" : "Uusi tapahtuma", + "Create new event" : "Luo uusi tapahtuma", + "Event" : "Tapahtuma", "Today" : "Tänään", "Day" : "Päivä", "Week" : "Viikko", "Month" : "Kuukausi", + "Year" : "Vuosi", "List" : "Lista", + "Appointment link was copied to clipboard" : "Linkki tapaamiseen kopioitiin leikepöydälle", + "Appointment link could not be copied to clipboard" : "Linkkiä tapaamiseen ei voitu kopioida leikepöydälle", "Preview" : "Esikatselu", "Copy link" : "Kopioi linkki", "Edit" : "Muokkaa", "Delete" : "Poista", - "Appointment link was copied to clipboard" : "Linkki tapaamiseen kopioitiin leikepöydälle", - "Appointment link could not be copied to clipboard" : "Linkkiä tapaamiseen ei voitu kopioida leikepöydälle", - "Add new" : "Lisää uusi", - "Untitled calendar" : "Nimetön kalenteri", - "Edit name" : "Muokkaa nimeä", - "Saving name …" : "Tallennetaan nimi …", - "Edit color" : "Muokkaa väriä", - "Saving color …" : "Tallennetaan väri …", - "Copy private link" : "Kopioi yksityinen linkki", - "Export" : "Vie", - "Unshare from me" : "Lopeta jako minulle", + "Appointment schedules" : "Tapaamisaikataulut", + "Create new" : "Luo uusi", "Disable calendar \"{calendar}\"" : "Poista käytöstä kalenteri \"{calendar}\"", "Disable untitled calendar" : "Poista nimetön kalenteri käytöstä", "Enable calendar \"{calendar}\"" : "Ota käyttöön kalenteri \"{calendar}\"", "Enable untitled calendar" : "Ota nimetön kalenteri käyttöön", "An error occurred, unable to change visibility of the calendar." : "Tapahtui virhe. Kalenterin näkyvyyttä ei voitu muuttaa.", - "An error occurred, unable to delete the calendar." : "Tapahtui virhe, kalenteria ei voitu poistaa.", - "Calendar link copied to clipboard." : "Kalenterilinkki kopioitu leikepöydälle.", - "Calendar link could not be copied to clipboard." : "Kalenterilinkkiä ei voitu kopioida leikepöydälle.", - "An error occurred, unable to rename the calendar." : "Tapahtui virhe, kalenterin nimeäminen uudelleen ei onnistu.", - "An error occurred, unable to change the calendar's color." : "Tapahtui virhe, kalenterin värin muuttaminen ei onnistu.", + "Untitled calendar" : "Nimetön kalenteri", + "Shared with you by" : "Jaettu sinulle käyttäjältä", + "Edit and share calendar" : "Muokkaa/jaa kalenteri", + "Edit calendar" : "Muokkaa kalenteria", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Poistetaan kalenterin jako {countdown} sekunnin kuluttua","Poistetaan kalenterin jako {countdown} sekunnin kuluttua"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Poistetaan kalenteri {countdown} sekunnin kuluttua","Poistetaan kalenteri {countdown} sekunnin kuluttua"], + "An error occurred, unable to create the calendar." : "Tapahtui virhe, kalenteria ei voitu luoda.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Anna kelvollinen linkki (alkaen http://, https://, webcal:// tai webcals://)", + "Calendars" : "Kalenterit", + "Add new" : "Lisää uusi", + "New calendar" : "Uusi kalenteri", + "Name for new calendar" : "Uuden kalenterin nimi", + "Creating calendar …" : "Luodaan kalenteri …", + "New calendar with task list" : "Uusi kalenteri tehtävälistan kera", + "New subscription from link (read-only)" : "Uusi tilaus linkistä (vain luku)", + "Creating subscription …" : "Luodaan tilaus …", + "Add public holiday calendar" : "Lisää juhlapäiväkalenteri", + "Add custom public calendar" : "Lisää mukautettu julkinen kalenteri", + "Calendar link copied to clipboard." : "Kalenterilinkki kopioitu leikepöydälle.", + "Calendar link could not be copied to clipboard." : "Kalenterilinkkiä ei voitu kopioida leikepöydälle.", + "Copy subscription link" : "Kopioi tilauslinkki", + "Copying link …" : "Kopioidaan linkki …", + "Copied link" : "Linkki kopioitu", + "Could not copy link" : "Linkkiä ei voitu kopioida", + "Export" : "Vie", + "Untitled item" : "Nimetön kohde", + "Unknown calendar" : "Tuntematon kalenteri", + "Could not load deleted calendars and objects" : "Poistettuja kalentereita tai objekteja ei voitu ladata", + "Could not delete calendar or event" : "Kalenteria tai tapahtumaa ei voitu poistaa", + "Could not restore calendar or event" : "Kalenteria tai tapahtumaa ei voitu palauttaa", + "Do you really want to empty the trash bin?" : "Haluatko varmasti tyhjentää roskakorin?", + "Empty trash bin" : "Tyhjennä roskakori", + "Trash bin" : "Roskakori", + "Loading deleted items." : "Ladataan poistettuja kohteita.", + "You do not have any deleted items." : "Sinulla ei ole poistettuja kohteita.", + "Name" : "Nimi", + "Deleted" : "Poistettu", + "Restore" : "Palauta", + "Delete permanently" : "Poista pysyvästi", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Roskakorissa olevat kohteet poistetaan {numDays} päivän jälkeen","Roskakorissa olevat kohteet poistetaan {numDays} päivän jälkeen"], + "Could not update calendar order." : "Kalenterin järjestystä ei voitu päivittää.", + "Shared calendars" : "Jaetut kalenterit", + "Deck" : "Pakka", + "Hidden" : "Piilotettu", + "Internal link" : "Sisäinen linkki", + "A private link that can be used with external clients" : "Yksityinen linkki, jota voi käyttää ulkoisten asiakkaiden kanssa", + "Copy internal link" : "Kopioi sisäinen linkki", + "An error occurred, unable to publish calendar." : "Tapahtui virhe, kalenterin julkaiseminen ei onnistu.", + "An error occurred, unable to send email." : "Tapahtui virhe. Sähköpostia ei voitu lähettää.", + "Embed code copied to clipboard." : "Upotuskoodi kopioitu leikepöydälle.", + "Embed code could not be copied to clipboard." : "Upotuskoodia ei voitu kopioida leikepöydälle.", + "Unpublishing calendar failed" : "Kalenterin julkaisun peruminen epäonnistui", "Share link" : "Jaa linkki", - "Publish calendar" : "Julkaise kalenteri", - "Publishing calendar" : "Julkaistaan kalenteri", "Copy public link" : "Kopioi julkinen linkki", "Send link to calendar via email" : "Lähetä kalenteriin johtava linkki sähköpostitse", "Enter one address" : "Kirjoita yksi osoite", "Sending email …" : "Lähetetään sähköpostia …", - "Copy subscription link" : "Kopioi tilauslinkki", - "Copying link …" : "Kopioidaan linkki …", - "Copied link" : "Linkki kopioitu", - "Could not copy link" : "Linkkiä ei voitu kopioida", "Copy embedding code" : "Kopioi upotuskoodi", "Copying code …" : "Kopioidaan koodi …", "Copied code" : "Koodi kopioitu", "Could not copy code" : "Koodia ei voitu kopioida", "Delete share link" : "Poista jakolinkki", "Deleting share link …" : "Poistetaan jakolinkki …", - "An error occurred, unable to publish calendar." : "Tapahtui virhe, kalenterin julkaiseminen ei onnistu.", - "An error occurred, unable to send email." : "Tapahtui virhe. Sähköpostia ei voitu lähettää.", - "Embed code copied to clipboard." : "Upotuskoodi kopioitu leikepöydälle.", - "Embed code could not be copied to clipboard." : "Upotuskoodia ei voitu kopioida leikepöydälle.", - "Unpublishing calendar failed" : "Kalenterin julkaisun peruminen epäonnistui", - "Share with users or groups" : "Jaa käyttäjien tai ryhmien kanssa", - "No users or groups" : "Ei käyttäjiä tai ryhmiä", + "{teamDisplayName} (Team)" : "{teamDisplayName} (tiimi)", + "An error occurred while unsharing the calendar." : "Kalenterin jaon poistamisessa tapahtui virhe.", + "An error occurred, unable to change the permission of the share." : "Tapahtui virhe, jaon käyttöoikeuksia ei pysty muokkaamaan.", "can edit" : "voi muokata", "Unshare with {displayName}" : "Poista jako kohteesta {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Tapahtui virhe, kalenterin poissa jakamista ei voi muokata.", - "An error occurred, unable to change the permission of the share." : "Tapahtui virhe, jaon käyttöoikeuksia ei pysty muokkaamaan.", - "+ New calendar" : "+ Uusi kalenteri", - "New calendar" : "Uusi kalenteri", - "Name for new calendar" : "Uuden kalenterin nimi", - "Creating calendar …" : "Luodaan kalenteri …", - "New calendar with task list" : "Uusi kalenteri tehtävälistan kera", - "New subscription from link (read-only)" : "Uusi tilaus linkistä (vain luku)", - "Creating subscription …" : "Luodaan tilaus …", - "An error occurred, unable to create the calendar." : "Tapahtui virhe, kalenteria ei voitu luoda.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Anna kelvollinen linkki (alkaen http://, https://, webcal:// tai webcals://)", - "Trash bin" : "Roskakori", - "Loading deleted elements." : "Ladataan poistettuja elementtejä.", - "You do not have any deleted elements." : "Sinulla ei ole poistettuja elementtejä.", - "Name" : "Nimi", - "Deleted" : "Poistettu", - "Restore" : "Palauta", - "Delete permanently" : "Poista pysyvästi", - "Empty trash bin" : "Tyhjennä roskakori", - "Untitled element" : "Nimetön elementti", - "Unknown calendar" : "Tuntematon kalenteri", - "Could not load deleted calendars and objects" : "Poistettuja kalentereita tai objekteja ei voitu ladata", - "Could not restore calendar or event" : "Kalenteria tai tapahtumaa ei voitu palauttaa", - "Do you really want to empty the trash bin?" : "Haluatko varmasti tyhjentää roskakorin?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Roskakorissa olevat kohteet poistetaan {numDays} päivän jälkeen","Roskakorissa olevat kohteet poistetaan {numDays} päivän jälkeen"], - "Could not update calendar order." : "Kalenterin järjestystä ei voitu päivittää.", + "Share with users or groups" : "Jaa käyttäjien tai ryhmien kanssa", + "No users or groups" : "Ei käyttäjiä tai ryhmiä", + "Failed to save calendar name and color" : "Kalenterin nimen ja värin tallentaminen epäonnistui", + "Calendar name …" : "Kalenterin nimi…", + "Share calendar" : "Jaa kalenteri", + "Unshare from me" : "Lopeta jako minulle", + "Save" : "Tallenna", "Import calendars" : "Tuo kalenterit", "Please select a calendar to import into …" : "Valitse kalenteri, johon tuodaan …", "Filename" : "Tiedostonimi", "Calendar to import into" : "Kalenteri johon tuodaan", "Cancel" : "Peruuta", "_Import calendar_::_Import calendars_" : ["Tuo kalenteri","Tuo kalenterit"], + "Select the default location for attachments" : "Valitse oletussijainti liitteille", + "Pick" : "Valitse", + "Invalid location selected" : "Virheellinen sijainti valittu", + "Attachments folder successfully saved." : "Liitteiden kansio tallennettu.", + "Default attachments location" : "Liitteiden oletussijainti", "{filename} could not be parsed" : "Tiedostoa {filename} ei voitu jäsentää", "No valid files found, aborting import" : "Kelvollisia tiedostoja ei löytynyt, lopetetaan tuonti", - "Import partially failed. Imported {accepted} out of {total}." : "Tuonti epäonnistui osittain. Tuotiin {accepted}/{total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Tuotiin onnistuneesti %n tapahtuma","Tuotiin onnistuneesti %n tapahtumaa"], + "Import partially failed. Imported {accepted} out of {total}." : "Tuonti epäonnistui osittain. Tuotiin {accepted}/{total}.", "Automatic" : "Automaattinen", "Automatic ({detected})" : "Automaattinen ({detected})", "New setting was not saved successfully." : "Uutta asetusta ei tallennettu onnistuneesti.", - "Shortcut overview" : "Pikakuvakenäkymä", - "or" : "tai", "Navigation" : "Navigointi", "Previous period" : "Edellinen jakso", "Next period" : "Seuraava jakso", @@ -140,6 +167,7 @@ OC.L10N.register( "Day view" : "Päivänäkymä", "Week view" : "Viikkonäkymä", "Month view" : "Kuukausinäkymä", + "Year view" : "Vuosinäkymä", "List view" : "Listanäkymä", "Actions" : "Toiminnot", "Create event" : "Luo tapahtuma", @@ -149,24 +177,27 @@ OC.L10N.register( "Save edited event" : "Tallenna muokattu tapahtuma", "Delete edited event" : "Poista muokattu tapahtuma", "Duplicate event" : "Tee kaksoiskappale tapahtumasta", + "Shortcut overview" : "Pikakuvakenäkymä", + "or" : "tai", + "Calendar settings" : "Kalenteriasetukset", + "At event start" : "Tapahtuman alkaessa", + "No reminder" : "Ei muistutusta", + "Failed to save default calendar" : "Oletuskalenterin tallentaminen epäonnistui", + "CalDAV link copied to clipboard." : "CalDAV-linkki kopioitu leikepöydälle.", + "CalDAV link could not be copied to clipboard." : "CalDAV-linkkiä ei voitu kopioida leikepöydälle.", "Enable birthday calendar" : "Käytä syntymäpäiväkalenteria", "Show tasks in calendar" : "Näytä tehtävät kalenterissa", "Enable simplified editor" : "Käytä yksinkertaistettua muokkainta", - "Limit visible events per view" : "Rajoita näytettäviä tapahtumia näkymää kohden", + "Limit the number of events displayed in the monthly view" : "Rajoita kuukausinäkymässä näytettävien tapahtumien määrää", "Show weekends" : "Näytä viikonloput", "Show week numbers" : "Näytä viikkonumerot", "Time increments" : "Aikavälit", + "Default calendar for incoming invitations" : "Oletuskalenteri saapuville kutsuille", "Default reminder" : "Oletusmuistutus", "Copy primary CalDAV address" : "Kopioi ensisijainen CalDAV-osoite", "Copy iOS/macOS CalDAV address" : "Kopioi iOS:in/macOS:n CalDAV-osoite", "Personal availability settings" : "Henkilökohtaiset saatavuusasetukset", "Show keyboard shortcuts" : "Näytä pikanäppäimet", - "Calendar settings" : "Kalenteriasetukset", - "No reminder" : "Ei muistutusta", - "CalDAV link copied to clipboard." : "CalDAV-linkki kopioitu leikepöydälle.", - "CalDAV link could not be copied to clipboard." : "CalDAV-linkkiä ei voitu kopioida leikepöydälle.", - "Appointment was created successfully" : "Tapaaminen luotiin onnistuneesti", - "Appointment was updated successfully" : "Tapaaminen päivitettiin onnistuneesti", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuutti","{duration} minuuttia"], "0 minutes" : "0 minuuttia", "_{duration} hour_::_{duration} hours_" : ["{duration} tunti","{duration} tuntia"], @@ -177,7 +208,14 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Lisää sähköpostiosoitteesi henkilökohtaisissa asetuksissa hallitaksesi tapaamisia.", "Public – shown on the profile page" : "Julkinen – näytetään profiilisivulla", "Private – only accessible via secret link" : "Yksityinen – nähtävissä vain salaisella linkillä", + "Appointment schedule saved" : "Tapaamisaikataulu tallennettu", + "Create appointment schedule" : "Luo tapaamisaikataulu", + "Edit appointment schedule" : "Muokkaa tapaamisaikataulua", + "Update" : "Päivitä", + "Appointment name" : "Tapaamisen nimi", "Location" : "Sijainti", + "Create a Talk room" : "Luo Talk-huone", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Jokaisesta varatusta tapaamisesta muodostetaan yksilöllinen linkki, ja se lähetetään vahvistussähköpostin yhteydessä", "Description" : "Kuvaus", "Visibility" : "Näkyvyys", "Duration" : "Kesto", @@ -195,6 +233,7 @@ OC.L10N.register( "Friday" : "Perjantai", "Saturday" : "Lauantai", "Sunday" : "Sunnuntai", + "Weekdays" : "Viikonpäivät", "Add time before and after the event" : "Lisää aikaa ennen tapahtuman alkua ja tapahtuman jälkeen", "Before the event" : "Ennen tapahtumaa", "After the event" : "Tapahtuman jälkeen", @@ -202,18 +241,22 @@ OC.L10N.register( "Minimum time before next available slot" : "Vähimmäisaika ennen seuraavaa saatavilla olevaa aikarakoa", "Max slots per day" : "Aikarakoja enintään päivää kohden", "Limit how far in the future appointments can be booked" : "Rajoita kuinka pitkälle tulevaisuuteen tapaamisia on mahdollista varata", - "Create appointment" : "Luo tapaaminen", - "Edit appointment" : "Muokkaa tapaamista", - "Save" : "Tallenna", - "Update" : "Päivitä", "Please confirm your reservation" : "Vahvista varauksesi", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Lähetimme sinulle sähköpostin yksityiskohtien kera. Ole hyvä ja hyväksy tapaamisesi käyttäen linkkiä sähköpostissa. Voit sulkea tämän sivun.", "Your name" : "Nimesi", "Your email address" : "Sähköpostiosoitteesi", "Please share anything that will help prepare for our meeting" : "Jaa mitä tahansa, mikä auttaa valmistautumaan kokoukseen", "Could not book the appointment. Please try again later or contact the organizer." : "Tapaamista ei voitu kirjata. Ole hyvä ja yritä myöhemmin uudelleen tai ota yhteyttä järjestäjään.", - "Book the appointment" : "Kirjaa tapaaminen", - "Reminder" : "Muistutus", + "Back" : "Takaisin", + "Book appointment" : "Varaa tapaaminen", + "Error creating Talk conversation" : "Virhe luotaessa Talk-keskustelua", + "Select a Talk Room" : "Valitse Talk-huone", + "Add Talk conversation" : "Lisää Talk-keskustelu", + "Fetching Talk rooms…" : "Noudetaan Talk-huoneita…", + "Create a new conversation" : "Luo uusi keskustelu", + "Select conversation" : "Valitse keskustelu", + "on" : "päivä", + "at" : "kellonaika", "before at" : "ennen", "Notification" : "Ilmoitus", "Email" : "Sähköposti", @@ -224,113 +267,134 @@ OC.L10N.register( "Edit time" : "Muokkaa aikaa", "Save time" : "Tallenna aika", "Remove reminder" : "Poista muistutus", - "on" : "päivä", - "at" : "kellonaika", - "+ Add reminder" : "+ Lisää muistutus", "Add reminder" : "Lisää muistutus", - "_second_::_seconds_" : ["sekunti","sekuntia"], - "_minute_::_minutes_" : ["minuutti","minuuttia"], - "_hour_::_hours_" : ["tunti","tuntia"], - "_day_::_days_" : ["päivä","päivää"], - "_week_::_weeks_" : ["viikko","viikkoa"], + "seconds" : "sekuntia", + "minutes" : "minuuttia", + "hours" : "tuntia", + "days" : "päivän jälkeen", + "weeks" : "viikkoa", + "Choose a file to add as attachment" : "Valitse liitteeksi lisättävä tiedosto", + "Choose a file to share as a link" : "Valitse tiedosto, joka jaetaan linkkinä", + "Attachment {name} already exist!" : "Liite {name} on jo olemassa!", + "Could not upload attachment(s)" : "Liitteiden lähetys epäonnistui", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Olet aikeissa siirtyä kohteeseen {host}. Haluatko varmasti jatkaa? Linkki: {link}", + "Proceed" : "Jatka", + "No attachments" : "Ei liitteitä", + "Add from Files" : "Lisää tiedostosovelluksesta", + "Upload from device" : "Lähetä laitteelta", + "Delete file" : "Poista tiedosto", + "Confirmation" : "Vahvistus", + "_{count} attachment_::_{count} attachments_" : ["{count} liite","{count} liitettä"], "Suggested" : "Ehdotettu", "Available" : "Saatavilla", - "Not available" : "Ei saatavilla", - "Checking availability" : "Tarkistetaan saatavuutta", "Invitation accepted" : "Kutsu hyväksytty", "Accepted {organizerName}'s invitation" : "Hyväksytty järjestäjän {organizerName} kutsu", + "Participation marked as tentative" : "Osallistuminen merkitty alustavaksi", + "Invitation is delegated" : "Kutsu on delegoitu", + "Not available" : "Ei saatavilla", "Invitation declined" : "Kieltäydytty kutsusta", "Declined {organizerName}'s invitation" : "Kieltäytyi järjestäjän {organizerName} kutsusta", - "Participation marked as tentative" : "Osallistuminen merkitty alustavaksi", - "Invitation sent" : "Kutsu lähetetty", + "Availability will be checked" : "Saatavuus tarkistetaan", + "Invitation will be sent" : "Kutsu lähetetään", + "Failed to check availability" : "Saatavuuden tarkistus epäonnistui", + "Failed to deliver invitation" : "Kutsun toimittaminen epäonnistui", + "Awaiting response" : "Odottaa vastausta", + "Checking availability" : "Tarkistetaan saatavuutta", "Has not responded to {organizerName}'s invitation yet" : "Ei ole vielä vastanut järjestäjän {organizerName} kutsuun", - "Availability of attendees, resources and rooms" : "Osallistujien, resurssien ja huoneiden saatavuus", + "chairperson" : "puheenjohtaja", + "required participant" : "vaadittu osallistuja", + "optional participant" : "valinnainen osallistuja", "{organizer} (organizer)" : "{organizer} (järjestäjä)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Osallistujien, resurssien ja huoneiden saatavuus", + "Suggestion accepted" : "Ehdotus hyväksytty", + "Legend" : "Selite", + "Out of office" : "Ulkona toimistolta", + "Attendees:" : "Osallistujat:", + "Done" : "Valmis", + "Search room" : "Etsi huonetta", + "Room name" : "Huoneen nimi", + "Check room availability" : "Tarkista huoneen saatavuus", "Free" : "Vapaa", "Busy (tentative)" : "Varattu (alustava)", "Busy" : "Varattu", - "Out of office" : "Ulkona toimistolta", "Unknown" : "Tuntematon", - "Accept" : "Hyväksy", - "Decline" : "Kieltäydy", - "Tentative" : "Alustava", + "Find a time" : "Löydä aika", "The invitation has been accepted successfully." : "Kutsu on hyväksytty.", "Failed to accept the invitation." : "Kutsun hyväksyminen epäonnistui.", "The invitation has been declined successfully." : "Kieltäydytty kutsusta onnistuneesti.", "Failed to decline the invitation." : "Kutsusta kieltäytyminen epäonnistui.", "Your participation has been marked as tentative." : "Osallistumisesi on merkitty alustavaksi.", "Failed to set the participation status to tentative." : "Osallistumisen tilan asettaminen alustavaksi epäonnistui.", - "Create Talk room for this event" : "Luo Talk-huone tälle tapahtumalle", - "Show busy times" : "Näytä varatut ajat", + "Accept" : "Hyväksy", + "Decline" : "Kieltäydy", + "Tentative" : "Alustava", "No attendees yet" : "Ei vielä osallistujia", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} kutsuttu, {confirmedCount} vahvistettu", "Successfully appended link to talk room to description." : "Linkki Talk-huoneeseen lisättiin onnistuneesti kuvaukseen.", "Error creating Talk room" : "Virhe luotaessa Talk-huonetta", - "Send email" : "Lähetä sähköposti", + "Attendees" : "Osallistujat", + "Remove group" : "Poista ryhmä", + "Remove attendee" : "Poista osallistuja", + "Request reply" : "Pyydä vastaus", "Chairperson" : "Puheenjohtaja", "Required participant" : "Vaadittu osallistuja", "Optional participant" : "Valinnainen osallistuja", "Non-participant" : "Osallistumaton", - "Remove attendee" : "Poista osallistuja", - "Search for emails, users or contacts" : "Etsi sähköpostiosoitteita, käyttäjiä tai yhteystietoja", + "_%n member_::_%n members_" : ["%n jäsen","%n jäsentä"], + "Search for emails, users, contacts, contact groups or teams" : "Etsi sähköpostiosoitteita, käyttäjiä, yhteystietoja, yhteystietoryhmiä tai tiimejä", "No match found" : "Ei tuloksia", "(organizer)" : "(järjestäjä)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "[linkopen]Lisää sähköpostiosoitteesi henkilökohtaisiin asetuksiisi[linkclose] lähettääksesi kutsuja ja hallitaksesi vastauksia.", "Remove color" : "Poista väri", "Event title" : "Tapahtuman otsikko", - "All day" : "Koko päivä", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Koko päivän tapahtumia, jotka ovat osa toistuvaa tapahtumaa, ei voida muokata.", - "from {startDate}" : "alkaen {startDate}", - "from {startDate} at {startTime}" : "alkaen {startDate} klo {startTime}", - "to {endDate}" : "päättyen {endDate}", - "to {endDate} at {endTime}" : "päättyen {endDate} klo {endTime}", + "From" : "Lähettäjä", + "To" : "Vastaanottaja", "Repeat" : "Toista", - "End repeat" : "Lopeta toisto", - "Select to end repeat" : "Valitse lopettaaksesi toiston", + "_time_::_times_" : ["kerran","kertaa"], "never" : "ei koskaan", "on date" : "päivänä", "after" : "jälkeen", - "_time_::_times_" : ["kerran","kertaa"], + "End repeat" : "Lopeta toisto", + "Select to end repeat" : "Valitse lopettaaksesi toiston", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Tämä tapahtuma on toistuvaan tapahtumaan tehty poikkeus. Et voi lisätä tähän uutta toistuvuutta.", "first" : "ensimmäinen", - "third" : "kolmas", - "fourth" : "neljäs", - "fifth" : "viides", - "second to last" : "toiseksi viimeinen", - "last" : "viimeinen", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Muutokset toistuvuusasetukseen vaikuttavat vain tähän ja tuleviin tapahtumakertoihin.", "Repeat every" : "Toista joka", "By day of the month" : "Kuukauden päivän mukaan", "On the" : "Ajankohtana", + "_day_::_days_" : ["päivä","päivää"], + "_week_::_weeks_" : ["viikko","viikkoa"], "_month_::_months_" : ["kuukausi","kuukautta"], "_year_::_years_" : ["vuosi","vuotta"], + "On specific day" : "Tiettynä päivänä", "weekday" : "viikonpäivä", "weekend day" : "viikonloppupäivä", - "No recurrence" : "Ei toistumista", + "Does not repeat" : "Ei toistu", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Tapahtuman toistuvuusasetus ei ole Nextcloudin tukema. Jos muokkaat toistuvuusasetusta, jotkin toistuvista tapahtumista saattavat kadota.", - "Suggestions" : "Ehdotukset", "No rooms or resources yet" : "Ei huoneita tai resursseja vielä", + "Resources" : "Resurssit", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} istumapaikka","{seatingCapacity} istumapaikkaa"], "Add resource" : "Lisää resurssi", "Has a projector" : "On projektori", "Has a whiteboard" : "On valkotaulu", "Wheelchair accessible" : "Pääsy pyörätuolilla", "Remove resource" : "Poista resurssi", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} istumapaikka","{seatingCapacity} istumapaikkaa"], - "Projector" : "Projektori", - "Whiteboard" : "Valkotaulu", "Search for resources or rooms" : "Etsi resursseja tai huoneita", "available" : "saatavilla", "unavailable" : "ei saatavilla", + "Show all rooms" : "Näytä kaikki huoneet", + "Projector" : "Projektori", + "Whiteboard" : "Valkotaulu", "Room type" : "Huoneen tyyppi", "Any" : "Mikä tahansa", "Minimum seating capacity" : "Istumapaikkoja vähintään", - "More" : "Lisää", - "Update this occurrence" : "Päivitä tämä esiintymä", + "More details" : "Lisätietoja", "Update this and all future" : "Päivitä tämä ja kaikki tulevat", + "Update this occurrence" : "Päivitä tämä esiintymä", "Public calendar does not exist" : "Julkista kalenteria ei ole olemassa", "Maybe the share was deleted or has expired?" : "Kenties jako poistettiin tai se vanheni.", - "Please select a time zone:" : "Valitse aikavyöhyke:", - "Pick a time" : "Valitse aika", - "Pick a date" : "Valitse päivä", "from {formattedDate}" : "alkaen {formattedDate}", "to {formattedDate}" : "päättyen {formattedDate}", "on {formattedDate}" : "päivänä {formattedDate}", @@ -340,9 +404,21 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} klo {formattedTime}", "Please enter a valid date" : "Kirjoita kelvollinen päivä", "Please enter a valid date and time" : "Kirjoita kelvollinen päivä ja aika", + "Select a time zone" : "Valitse aikavyöhyke", + "Please select a time zone:" : "Valitse aikavyöhyke:", + "Pick a time" : "Valitse aika", + "Pick a date" : "Valitse päivä", "Type to search time zone" : "Kirjoita etsiäksesi aikavyöhykettä", "Global" : "Julkinen", - "Select date" : "Valitse päivämäärä", + "Holidays in {region}" : "Juhlapäivä alueella {region}", + "Public holiday calendars" : "Juhlapäiväkalenterit", + "Public calendars" : "Julkiset kalenterit", + "No valid public calendars configured" : "Kelvollisia juhlakalentereita ei ole määritetty", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Juhlapäiväkalenterit tarjoaa Thunderbird. Kalenterin tiedot ladataan verkkosivustolta {website}", + "By {authors}" : "Tekijä {authors}", + "Subscribed" : "Tilattu", + "Subscribe" : "Tilaa", + "Select a date" : "Valitse päivämäärä", "Select slot" : "Valitse aikarako", "No slots available" : "Aikarakoja ei ole saatavilla", "The slot for your appointment has been confirmed" : "Aikarako tapaamiselle on vahvistettu", @@ -359,23 +435,20 @@ OC.L10N.register( "Personal" : "Henkilökohtainen", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Automaattinen aikavyöhykkeentunnistus määritti aikavyöhykkeesi olevan UTC. \nTämä johtuu todennäköisesti selaimesi tietoturva-asetuksista.\nOle hyvä ja aseta aikavyöhykkeesi manuaalisesti kalenterin asetuksista.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Asettamaasi aikavyöhykettä ({timezoneId}) ei löytynyt. Vaihdetaan takaisin UTC:hen.\nOle hyvä ja vaihda aikavyöhykkeesi asetuksista ja ilmoita tästä ongelmasta.", - "No more events today" : "Ei enempää tapahtumia tänään", - "No upcoming events" : "Ei tulevia tapahtumia", - "Create a new event" : "Luo uusi tapahtuma", - "[Today]" : "[Tänään]", - "[Tomorrow]" : "[Huomenna]", - "[Yesterday]" : "[Eilen]", - "[Last] dddd" : "[Viimeinen] dddd", + "Edit event" : "Muokkaa tapahtumaa", "Event does not exist" : "Tapahtumaa ei ole olemassa", "Delete this occurrence" : "Poista tämä esiintymä", "Delete this and all future" : "Poista tämä ja kaikki tulevat", - "Details" : "Tiedot", - "Attendees" : "Osallistujat", - "Resources" : "Resurssit", + "All day" : "Koko päivä", + "Managing shared access" : "Jaetun pääsyn hallinta", + "Deny access" : "Estä pääsy", + "Invite" : "Kutsu", + "_User requires access to your file_::_Users require access to your file_" : ["Käyttäjä tarvitsee pääsyn tiedostoosi","Käyttäjät tarvitsevat pääsyn tiedostoosi"], + "Untitled event" : "Nimetön tapahtuma", "Close" : "Sulje", - "Show more details" : "Näytä lisää tietoja", "Subscribe to {name}" : "Tilaa {name}", "Export {name}" : "Vie {name}", + "Show availability" : "Näytä saatavuus", "Anniversary" : "Vuosipäivä", "Appointment" : "Tapaaminen", "Business" : "Business", @@ -403,7 +476,6 @@ OC.L10N.register( "on {time}" : "klo {time}", "on {time} ({timezoneId})" : "klo {time} ({timezoneId})", "Week {number} of {year}" : "Viikko {number} vuonna {year}", - "Does not repeat" : "Ei toistu", "Daily" : "Päivittäin", "Weekly" : "Viikottain", "Monthly" : "Kuukausittain", @@ -414,23 +486,28 @@ OC.L10N.register( "_Every %n year_::_Every %n years_" : ["Vuosittain","Joka %n. vuosi"], "_on {weekday}_::_on {weekdays}_" : ["{weekday}na","viikonpäivinä {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["päivänä {dayOfMonthList}","päivinä {dayOfMonthList}"], - "in {monthNames}" : "kuukausina {monthNames}", + "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames}ssa {ordinalNumber} {byDaySet}", "until {untilDate}" : "{untilDate} asti", "_%n time_::_%n times_" : ["%n kerran","%n kertaa"], - "Untitled event" : "Nimetön tapahtuma", + "second" : "toinen", + "third" : "kolmas", + "fourth" : "neljäs", + "fifth" : "viides", + "second to last" : "toiseksi viimeinen", + "last" : "viimeinen", "Untitled task" : "Nimetön tehtävä", "Please ask your administrator to enable the Tasks App." : "Pyydä järjestelmänvalvojaa ottamaan Tasks-sovellus käyttöön", - "Prev" : "Edellinen", - "Next" : "Seuraava", - "Prev year" : "Edellinen vuosi", - "Next year" : "Seuraava vuosi", - "Year" : "Vuosi", "W" : "Vko", "%n more" : "%n lisää", "No events to display" : "Ei tapahtumia näytettäväksi", + "Please confirm your participation" : "Vahvista osallistumisesi", + "You declined this event" : "Kieltäydyit tästä tapahtumasta", + "Your participation is tentative" : "Osallistumisesi on alustava.", "_+%n more_::_+%n more_" : ["+%n lisää","+%n lisää"], "No events" : "Ei tapahtumia", "Create a new event or change the visible time-range" : "Luo uusi tapahtuma tai vaihda näkyvää aikajanaa", + "Failed to save event" : "Tapahtuman tallentaminen epäonnistui", "It might have been deleted, or there was a typo in a link" : "Se saattaa olla poistettu, tai linkissä oli kirjoitusvirhe", "It might have been deleted, or there was a typo in the link" : "Se saattaa olla poistettu, tai linkissä oli kirjoitusvirhe", "Meeting room" : "Kokoushuone", @@ -443,7 +520,7 @@ OC.L10N.register( "When shared hide this event" : "Jaettaessa piilota tämä tapahtuma", "The visibility of this event in shared calendars." : "Tämän tapahtuman näkyvyys jaetuissa kalentereissa.", "Add a location" : "Lisää sijainti", - "Add a description" : "Lisää kuvaus", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Lisää kuvaus\n\n- Mitä tapaamisessa käsitellään\n- Asialista\n- Mitä hyvänsä mihin osallistujien tulisi valmistautua", "Status" : "Tila", "Confirmed" : "Vahvistettu", "Canceled" : "Peruttu", @@ -456,133 +533,22 @@ OC.L10N.register( "Add this as a new category" : "Lisää tämä uutena luokkana", "Custom color" : "Mukautettu väri", "Special color of this event. Overrides the calendar-color." : "Tämän tapahtuman erikoisväri. Ylittää kalenterin väriarvon.", - "Chat room for event" : "Tapahtuman keskusteluhuone", + "Error while sharing file" : "Virhe tiedostoa jakaessa", + "Error while sharing file with user" : "Virhe tiedostoa jakaessa käyttäjän kanssa", + "Error creating a folder {folder}" : "Virhe luotaessa kansiota {folder}", + "Attachment {fileName} already exists!" : "Liite {fileName} on jo olemassa!", + "An error occurred during getting file information" : "Tiedostojen tietoja noutaessa tapahtui virhe", + "Talk conversation for event" : "Tapahtuman Talk-keskustelu", + "An error occurred, unable to delete the calendar." : "Tapahtui virhe, kalenteria ei voitu poistaa.", "Imported {filename}" : "Tuotiin {filename}", - "Meditation" : "Meditaatio", - "Relaxing" : "Rentoutumista", - "Relax" : "Rentoutumista", - "Break" : "Tauko", - "Commuting" : "Työmatkalla", - "Invoice" : "Lasku", - "Finance" : "Talous", - "Bank" : "Pankki", - "Money" : "Raha", - "Wedding" : "Häät", - "Dog" : "Koira", - "Concert" : "Konsertti", - "Festival" : "Festivaali", - "Theater" : "Teatteri", - "Theatre" : "Teatteri", - "Presentation" : "Esitys", - "Talk" : "Puhe", - "Speech" : "Puhe", - "Deadline" : "Deadline", - "Submission" : "Lähetys", - "Reporting" : "Raportointi", - "Camping" : "Telttailua", - "Camp" : "Leiri", - "Election" : "Vaalit", - "Voting" : "Äänestys", - "Vote" : "Äänestä", - "Barbecue" : "Grillaus", - "Barbeque" : "Grillaus", - "Garden" : "Puutarha", - "Farm" : "Maatila", - "Movie" : "Elokuva", - "Cinema" : "Elokuvateatteri", - "Graduation" : "Valmistujaiset", - "Brainstorm" : "Brainstorm", - "Review" : "Esikatsele", - "Audit" : "Auditointi", - "Inspection" : "Tarkastus", - "Proofreading" : "Oikoluku", - "Baseball" : "Pesäpallo", - "Meet" : "Liity", - "Planning" : "Suunnittelua", - "Pointing" : "Osoittaa", - "Retrospective" : "Retrospektiivinen", - "Office" : "Toimisto", - "Contributor week" : "Tukijaviikko", - "Mail" : "Sähköposti", - "Soccer" : "Jalkapallo", - "Football" : "Jalkapallo", - "Gaming" : "Pelailua", - "Drive" : "Ajo", - "Driving" : "Ajaminen", - "Bicycle" : "Polkupyöräily", - "Cycle" : "Polkupyöräily", - "Cycling" : "Pyöräily", - "Biking" : "Polkupyöräily", - "Bike" : "Polkupyörä", - "Podcast" : "Podcast", - "Basketball" : "Koripallo", - "Fishing" : "Kalastus", - "Hiking" : "Retkeily", - "Hike" : "Vaellus", - "Art" : "Taide", - "Exhibition" : "Näyttely", - "Museum" : "Museo", - "Pilates" : "Pilates", - "Park" : "Puisto", - "Walk" : "Kävely", - "Studying" : "Opiskelua", - "Doctor" : "Lääkäri", - "Health" : "Terveys", - "Dentist" : "Hammaslääkäri", - "Hospital" : "Sairaala", - "Interview" : "Haastattelu", - "Training" : "Treenit", - "Practice" : "Harjoittele", - "Sports" : "Liikuntaa", - "Exercise" : "Harjoitukset", - "Work out" : "Bodausta", - "Working out" : "Kuntosali", - "Gym" : "Sali", - "Barber" : "Parturi", - "Haircut" : "Kampaamo", - "Hairdresser" : "Kampaaja", - "Exam" : "Koe", - "Written test" : "Kirjallinen testi", - "Oral test" : "Suullinen testi", - "Working" : "Töitä", - "New Years Eve" : "Uudenvuodenaatto", - "NYE" : "NYE", - "Fireworks" : "Ilotulitus", - "Running" : "Juoksua", - "Go for a run" : "Mene lenkille", - "Marathon" : "Maraton", - "Video-conference" : "Videokonfrenssi", - "Conference-call" : "Neuvottelupuhelu", - "Video-call" : "Videopuhelu", - "Video-chat" : "Videokeskustelu", - "Video-meeting" : "Videokokous", - "Call" : "Puhelu", - "Calling" : "Puhelu", - "Christmas" : "Joulu", - "Conference" : "Konfrenssi", - "Pizza" : "Pizza", - "Travelling" : "Reissaamista", - "Trip" : "Matka", - "Journey" : "Matka", - "Collaborate" : "Yhteistyötä", - "Pair" : "Yhdistä", - "Lecture" : "Luento", - "Seminar" : "Seminaari", - "Teaching" : "Opettamista", - "Photograph" : "Valokuvaus", - "Party" : "Juhlat", - "Celebration" : "Juhlintaa", - "Celebrate" : "Juhli", - "Birthday" : "Syntymäpäivä", - "Shopping" : "Ostokset", - "Groceries" : "Ostokset", - "Skate" : "Skeittausta", - "Skateboard" : "Skeittaus", - "Wine tasting" : "Viininmaistelu", - "Golf" : "Golf", - "Dinner" : "Illallinen", - "Lunch" : "Lounas", + "This is an event reminder." : "Tämä on tapahtuman muistutus.", "Appointment not found" : "Tapaamista ei löydy", - "User not found" : "Käyttäjää ei löydy" + "User not found" : "Käyttäjää ei löydy", + "Reminder" : "Muistutus", + "+ Add reminder" : "+ Lisää muistutus", + "with" : "kanssa", + "Available times:" : "Saatavilla olevat ajat:", + "Suggestions" : "Ehdotukset", + "Details" : "Tiedot" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/fi.json b/l10n/fi.json index c38c0240b426d5732289fb48658a5c703f0ffda1..19b5ca65deb4645fe5417542ce6cea4d1f4dd91b 100644 --- a/l10n/fi.json +++ b/l10n/fi.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "Annettu sähköpostiosoite on liian pitkä", "User-Session unexpectedly expired" : "Käyttäjäistunto vanheni odottamatta", "Provided email-address is not valid" : "Sähköpostiosoite on virheellinen", "%s has published the calendar »%s«" : "%s on julkaissut kalenterin »%s«", @@ -9,128 +10,154 @@ "Open »%s«" : "Avaa »%s«", "Cheers!" : "Kiitos!", "Upcoming events" : "Tulevat tapahtumat", + "No more events today" : "Ei enempää tapahtumia tänään", + "No upcoming events" : "Ei tulevia tapahtumia", + "More events" : "Lisää tapahtumia", + "Calendar" : "Kalenteri", + "New booking {booking}" : "Uusi varaus {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) varasi tapaamisen \"{config_display_name}\" {date_time}.", "Appointments" : "Tapaamiset", "Schedule appointment \"%s\"" : "Ajoita tapaaminen \"%s\"", "Schedule an appointment" : "Ajoita tapaaminen", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Valmistaudu tapahtumaan \"%s\"", - "Your appointment \"%s\" needs confirmation" : "Tapaamisesi \"%s\" vaatii vahvistamisen", + "Your appointment \"%s\" with %s needs confirmation" : "Tapaaminen \"%s\" henkilön %s kanssa vaatii vahvistamisen", "Dear %s, please confirm your booking" : "%s, ole hyvä ja vahvista varauksesi", "Confirm" : "Vahvista", + "Description:" : "Kuvaus:", "This confirmation link expires in %s hours." : "Tämä vahvistuslinkki umpeutuu %s tunnin kuluttua.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Jos tahdot kuitenkin perua tapaamisen, ole hyvä ja ota yhteyttä järjestäjään.", - "Appointment:" : "Tapaaminen:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Jos kaikesta huolimatta haluat perua tapaamiseen, ota yhteys järjestäjään vastaamalla tähän viestiin tai käymällä hänen profiilisivullaan.", + "Your appointment \"%s\" with %s has been accepted" : "Tapaaminen \"%s\" henkilön %s kanssa on hyväksytty", + "Dear %s, your booking has been accepted." : "%s, varauksesi on hyväksytty.", "Date:" : "Päivämäärä:", + "You will receive a link with the confirmation email" : "Saat linkin vahvistussähköpostissa", "Where:" : "Paikka:", - "Description:" : "Kuvaus:", - "Calendar" : "Kalenteri", + "Comment:" : "Kommentti:", + "You have a new appointment booking \"%s\" from %s" : "Sinulla on uusi tapaamisvaraus \"%s\" henkilöltä %s", + "Dear %s, %s (%s) booked an appointment with you." : "%s, %s (%s) varasi tapaamisen kanssasi.", "A Calendar app for Nextcloud" : "Kalenterisovellus Nextcloudille", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Kalenterisovellus on käyttöliittymä Nextcloudin CalDAV-palvelimelle. Nextcloudin avulla synkronoit helposti tapahtumasi eri laitteiden välillä ja muokkaat niitä selaimessa.\n\n* 🚀 **Integraatio muiden Nextcloud-sovellusten kanssa!** Tällä hetkellä tuettuna Kontaktit-sovellus - lisää tulossa.\n* 🌐 **WebCal-tuki!** Haluatko nähdä lempijoukkueesi ottelupäivät kalenterissasi? Ei ongelmaa!\n* 🙋 **Osallistujat!** Kutsu ihmisiä tapahtumiisi\n* ⌚️ **Vapaa/Varattu!** Näe milloin osallistujat ovat käytettävissä tapaamiseen\n* ⏰ **Muistutukset!** Hälytykset tapahtumille selaimessa ja sähköpostilla\n* 🔍 Etsi! Löydä tapahtumasi helposti\n* ☑️ Tehtävät! Määräpäivät näytetään kalenterissa\n* 🙈 **Emme keksi pyörää uudelleen!** Perustuu mahtaviin [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) ja [fullcalendar](https://github.com/fullcalendar/fullcalendar) kirjastoihin.", "Previous day" : "Edellinen päivä", "Previous week" : "Edellinen viikko", + "Previous year" : "Edellinen vuosi", "Previous month" : "Edellinen kuukausi", "Next day" : "Seuraava päivä", "Next week" : "Seuraava viikko", + "Next year" : "Seuraava vuosi", "Next month" : "Seuraava kuukausi", - "New event" : "Uusi tapahtuma", + "Create new event" : "Luo uusi tapahtuma", + "Event" : "Tapahtuma", "Today" : "Tänään", "Day" : "Päivä", "Week" : "Viikko", "Month" : "Kuukausi", + "Year" : "Vuosi", "List" : "Lista", + "Appointment link was copied to clipboard" : "Linkki tapaamiseen kopioitiin leikepöydälle", + "Appointment link could not be copied to clipboard" : "Linkkiä tapaamiseen ei voitu kopioida leikepöydälle", "Preview" : "Esikatselu", "Copy link" : "Kopioi linkki", "Edit" : "Muokkaa", "Delete" : "Poista", - "Appointment link was copied to clipboard" : "Linkki tapaamiseen kopioitiin leikepöydälle", - "Appointment link could not be copied to clipboard" : "Linkkiä tapaamiseen ei voitu kopioida leikepöydälle", - "Add new" : "Lisää uusi", - "Untitled calendar" : "Nimetön kalenteri", - "Edit name" : "Muokkaa nimeä", - "Saving name …" : "Tallennetaan nimi …", - "Edit color" : "Muokkaa väriä", - "Saving color …" : "Tallennetaan väri …", - "Copy private link" : "Kopioi yksityinen linkki", - "Export" : "Vie", - "Unshare from me" : "Lopeta jako minulle", + "Appointment schedules" : "Tapaamisaikataulut", + "Create new" : "Luo uusi", "Disable calendar \"{calendar}\"" : "Poista käytöstä kalenteri \"{calendar}\"", "Disable untitled calendar" : "Poista nimetön kalenteri käytöstä", "Enable calendar \"{calendar}\"" : "Ota käyttöön kalenteri \"{calendar}\"", "Enable untitled calendar" : "Ota nimetön kalenteri käyttöön", "An error occurred, unable to change visibility of the calendar." : "Tapahtui virhe. Kalenterin näkyvyyttä ei voitu muuttaa.", - "An error occurred, unable to delete the calendar." : "Tapahtui virhe, kalenteria ei voitu poistaa.", - "Calendar link copied to clipboard." : "Kalenterilinkki kopioitu leikepöydälle.", - "Calendar link could not be copied to clipboard." : "Kalenterilinkkiä ei voitu kopioida leikepöydälle.", - "An error occurred, unable to rename the calendar." : "Tapahtui virhe, kalenterin nimeäminen uudelleen ei onnistu.", - "An error occurred, unable to change the calendar's color." : "Tapahtui virhe, kalenterin värin muuttaminen ei onnistu.", + "Untitled calendar" : "Nimetön kalenteri", + "Shared with you by" : "Jaettu sinulle käyttäjältä", + "Edit and share calendar" : "Muokkaa/jaa kalenteri", + "Edit calendar" : "Muokkaa kalenteria", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Poistetaan kalenterin jako {countdown} sekunnin kuluttua","Poistetaan kalenterin jako {countdown} sekunnin kuluttua"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Poistetaan kalenteri {countdown} sekunnin kuluttua","Poistetaan kalenteri {countdown} sekunnin kuluttua"], + "An error occurred, unable to create the calendar." : "Tapahtui virhe, kalenteria ei voitu luoda.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Anna kelvollinen linkki (alkaen http://, https://, webcal:// tai webcals://)", + "Calendars" : "Kalenterit", + "Add new" : "Lisää uusi", + "New calendar" : "Uusi kalenteri", + "Name for new calendar" : "Uuden kalenterin nimi", + "Creating calendar …" : "Luodaan kalenteri …", + "New calendar with task list" : "Uusi kalenteri tehtävälistan kera", + "New subscription from link (read-only)" : "Uusi tilaus linkistä (vain luku)", + "Creating subscription …" : "Luodaan tilaus …", + "Add public holiday calendar" : "Lisää juhlapäiväkalenteri", + "Add custom public calendar" : "Lisää mukautettu julkinen kalenteri", + "Calendar link copied to clipboard." : "Kalenterilinkki kopioitu leikepöydälle.", + "Calendar link could not be copied to clipboard." : "Kalenterilinkkiä ei voitu kopioida leikepöydälle.", + "Copy subscription link" : "Kopioi tilauslinkki", + "Copying link …" : "Kopioidaan linkki …", + "Copied link" : "Linkki kopioitu", + "Could not copy link" : "Linkkiä ei voitu kopioida", + "Export" : "Vie", + "Untitled item" : "Nimetön kohde", + "Unknown calendar" : "Tuntematon kalenteri", + "Could not load deleted calendars and objects" : "Poistettuja kalentereita tai objekteja ei voitu ladata", + "Could not delete calendar or event" : "Kalenteria tai tapahtumaa ei voitu poistaa", + "Could not restore calendar or event" : "Kalenteria tai tapahtumaa ei voitu palauttaa", + "Do you really want to empty the trash bin?" : "Haluatko varmasti tyhjentää roskakorin?", + "Empty trash bin" : "Tyhjennä roskakori", + "Trash bin" : "Roskakori", + "Loading deleted items." : "Ladataan poistettuja kohteita.", + "You do not have any deleted items." : "Sinulla ei ole poistettuja kohteita.", + "Name" : "Nimi", + "Deleted" : "Poistettu", + "Restore" : "Palauta", + "Delete permanently" : "Poista pysyvästi", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Roskakorissa olevat kohteet poistetaan {numDays} päivän jälkeen","Roskakorissa olevat kohteet poistetaan {numDays} päivän jälkeen"], + "Could not update calendar order." : "Kalenterin järjestystä ei voitu päivittää.", + "Shared calendars" : "Jaetut kalenterit", + "Deck" : "Pakka", + "Hidden" : "Piilotettu", + "Internal link" : "Sisäinen linkki", + "A private link that can be used with external clients" : "Yksityinen linkki, jota voi käyttää ulkoisten asiakkaiden kanssa", + "Copy internal link" : "Kopioi sisäinen linkki", + "An error occurred, unable to publish calendar." : "Tapahtui virhe, kalenterin julkaiseminen ei onnistu.", + "An error occurred, unable to send email." : "Tapahtui virhe. Sähköpostia ei voitu lähettää.", + "Embed code copied to clipboard." : "Upotuskoodi kopioitu leikepöydälle.", + "Embed code could not be copied to clipboard." : "Upotuskoodia ei voitu kopioida leikepöydälle.", + "Unpublishing calendar failed" : "Kalenterin julkaisun peruminen epäonnistui", "Share link" : "Jaa linkki", - "Publish calendar" : "Julkaise kalenteri", - "Publishing calendar" : "Julkaistaan kalenteri", "Copy public link" : "Kopioi julkinen linkki", "Send link to calendar via email" : "Lähetä kalenteriin johtava linkki sähköpostitse", "Enter one address" : "Kirjoita yksi osoite", "Sending email …" : "Lähetetään sähköpostia …", - "Copy subscription link" : "Kopioi tilauslinkki", - "Copying link …" : "Kopioidaan linkki …", - "Copied link" : "Linkki kopioitu", - "Could not copy link" : "Linkkiä ei voitu kopioida", "Copy embedding code" : "Kopioi upotuskoodi", "Copying code …" : "Kopioidaan koodi …", "Copied code" : "Koodi kopioitu", "Could not copy code" : "Koodia ei voitu kopioida", "Delete share link" : "Poista jakolinkki", "Deleting share link …" : "Poistetaan jakolinkki …", - "An error occurred, unable to publish calendar." : "Tapahtui virhe, kalenterin julkaiseminen ei onnistu.", - "An error occurred, unable to send email." : "Tapahtui virhe. Sähköpostia ei voitu lähettää.", - "Embed code copied to clipboard." : "Upotuskoodi kopioitu leikepöydälle.", - "Embed code could not be copied to clipboard." : "Upotuskoodia ei voitu kopioida leikepöydälle.", - "Unpublishing calendar failed" : "Kalenterin julkaisun peruminen epäonnistui", - "Share with users or groups" : "Jaa käyttäjien tai ryhmien kanssa", - "No users or groups" : "Ei käyttäjiä tai ryhmiä", + "{teamDisplayName} (Team)" : "{teamDisplayName} (tiimi)", + "An error occurred while unsharing the calendar." : "Kalenterin jaon poistamisessa tapahtui virhe.", + "An error occurred, unable to change the permission of the share." : "Tapahtui virhe, jaon käyttöoikeuksia ei pysty muokkaamaan.", "can edit" : "voi muokata", "Unshare with {displayName}" : "Poista jako kohteesta {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Tapahtui virhe, kalenterin poissa jakamista ei voi muokata.", - "An error occurred, unable to change the permission of the share." : "Tapahtui virhe, jaon käyttöoikeuksia ei pysty muokkaamaan.", - "+ New calendar" : "+ Uusi kalenteri", - "New calendar" : "Uusi kalenteri", - "Name for new calendar" : "Uuden kalenterin nimi", - "Creating calendar …" : "Luodaan kalenteri …", - "New calendar with task list" : "Uusi kalenteri tehtävälistan kera", - "New subscription from link (read-only)" : "Uusi tilaus linkistä (vain luku)", - "Creating subscription …" : "Luodaan tilaus …", - "An error occurred, unable to create the calendar." : "Tapahtui virhe, kalenteria ei voitu luoda.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Anna kelvollinen linkki (alkaen http://, https://, webcal:// tai webcals://)", - "Trash bin" : "Roskakori", - "Loading deleted elements." : "Ladataan poistettuja elementtejä.", - "You do not have any deleted elements." : "Sinulla ei ole poistettuja elementtejä.", - "Name" : "Nimi", - "Deleted" : "Poistettu", - "Restore" : "Palauta", - "Delete permanently" : "Poista pysyvästi", - "Empty trash bin" : "Tyhjennä roskakori", - "Untitled element" : "Nimetön elementti", - "Unknown calendar" : "Tuntematon kalenteri", - "Could not load deleted calendars and objects" : "Poistettuja kalentereita tai objekteja ei voitu ladata", - "Could not restore calendar or event" : "Kalenteria tai tapahtumaa ei voitu palauttaa", - "Do you really want to empty the trash bin?" : "Haluatko varmasti tyhjentää roskakorin?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Roskakorissa olevat kohteet poistetaan {numDays} päivän jälkeen","Roskakorissa olevat kohteet poistetaan {numDays} päivän jälkeen"], - "Could not update calendar order." : "Kalenterin järjestystä ei voitu päivittää.", + "Share with users or groups" : "Jaa käyttäjien tai ryhmien kanssa", + "No users or groups" : "Ei käyttäjiä tai ryhmiä", + "Failed to save calendar name and color" : "Kalenterin nimen ja värin tallentaminen epäonnistui", + "Calendar name …" : "Kalenterin nimi…", + "Share calendar" : "Jaa kalenteri", + "Unshare from me" : "Lopeta jako minulle", + "Save" : "Tallenna", "Import calendars" : "Tuo kalenterit", "Please select a calendar to import into …" : "Valitse kalenteri, johon tuodaan …", "Filename" : "Tiedostonimi", "Calendar to import into" : "Kalenteri johon tuodaan", "Cancel" : "Peruuta", "_Import calendar_::_Import calendars_" : ["Tuo kalenteri","Tuo kalenterit"], + "Select the default location for attachments" : "Valitse oletussijainti liitteille", + "Pick" : "Valitse", + "Invalid location selected" : "Virheellinen sijainti valittu", + "Attachments folder successfully saved." : "Liitteiden kansio tallennettu.", + "Default attachments location" : "Liitteiden oletussijainti", "{filename} could not be parsed" : "Tiedostoa {filename} ei voitu jäsentää", "No valid files found, aborting import" : "Kelvollisia tiedostoja ei löytynyt, lopetetaan tuonti", - "Import partially failed. Imported {accepted} out of {total}." : "Tuonti epäonnistui osittain. Tuotiin {accepted}/{total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Tuotiin onnistuneesti %n tapahtuma","Tuotiin onnistuneesti %n tapahtumaa"], + "Import partially failed. Imported {accepted} out of {total}." : "Tuonti epäonnistui osittain. Tuotiin {accepted}/{total}.", "Automatic" : "Automaattinen", "Automatic ({detected})" : "Automaattinen ({detected})", "New setting was not saved successfully." : "Uutta asetusta ei tallennettu onnistuneesti.", - "Shortcut overview" : "Pikakuvakenäkymä", - "or" : "tai", "Navigation" : "Navigointi", "Previous period" : "Edellinen jakso", "Next period" : "Seuraava jakso", @@ -138,6 +165,7 @@ "Day view" : "Päivänäkymä", "Week view" : "Viikkonäkymä", "Month view" : "Kuukausinäkymä", + "Year view" : "Vuosinäkymä", "List view" : "Listanäkymä", "Actions" : "Toiminnot", "Create event" : "Luo tapahtuma", @@ -147,24 +175,27 @@ "Save edited event" : "Tallenna muokattu tapahtuma", "Delete edited event" : "Poista muokattu tapahtuma", "Duplicate event" : "Tee kaksoiskappale tapahtumasta", + "Shortcut overview" : "Pikakuvakenäkymä", + "or" : "tai", + "Calendar settings" : "Kalenteriasetukset", + "At event start" : "Tapahtuman alkaessa", + "No reminder" : "Ei muistutusta", + "Failed to save default calendar" : "Oletuskalenterin tallentaminen epäonnistui", + "CalDAV link copied to clipboard." : "CalDAV-linkki kopioitu leikepöydälle.", + "CalDAV link could not be copied to clipboard." : "CalDAV-linkkiä ei voitu kopioida leikepöydälle.", "Enable birthday calendar" : "Käytä syntymäpäiväkalenteria", "Show tasks in calendar" : "Näytä tehtävät kalenterissa", "Enable simplified editor" : "Käytä yksinkertaistettua muokkainta", - "Limit visible events per view" : "Rajoita näytettäviä tapahtumia näkymää kohden", + "Limit the number of events displayed in the monthly view" : "Rajoita kuukausinäkymässä näytettävien tapahtumien määrää", "Show weekends" : "Näytä viikonloput", "Show week numbers" : "Näytä viikkonumerot", "Time increments" : "Aikavälit", + "Default calendar for incoming invitations" : "Oletuskalenteri saapuville kutsuille", "Default reminder" : "Oletusmuistutus", "Copy primary CalDAV address" : "Kopioi ensisijainen CalDAV-osoite", "Copy iOS/macOS CalDAV address" : "Kopioi iOS:in/macOS:n CalDAV-osoite", "Personal availability settings" : "Henkilökohtaiset saatavuusasetukset", "Show keyboard shortcuts" : "Näytä pikanäppäimet", - "Calendar settings" : "Kalenteriasetukset", - "No reminder" : "Ei muistutusta", - "CalDAV link copied to clipboard." : "CalDAV-linkki kopioitu leikepöydälle.", - "CalDAV link could not be copied to clipboard." : "CalDAV-linkkiä ei voitu kopioida leikepöydälle.", - "Appointment was created successfully" : "Tapaaminen luotiin onnistuneesti", - "Appointment was updated successfully" : "Tapaaminen päivitettiin onnistuneesti", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuutti","{duration} minuuttia"], "0 minutes" : "0 minuuttia", "_{duration} hour_::_{duration} hours_" : ["{duration} tunti","{duration} tuntia"], @@ -175,7 +206,14 @@ "To configure appointments, add your email address in personal settings." : "Lisää sähköpostiosoitteesi henkilökohtaisissa asetuksissa hallitaksesi tapaamisia.", "Public – shown on the profile page" : "Julkinen – näytetään profiilisivulla", "Private – only accessible via secret link" : "Yksityinen – nähtävissä vain salaisella linkillä", + "Appointment schedule saved" : "Tapaamisaikataulu tallennettu", + "Create appointment schedule" : "Luo tapaamisaikataulu", + "Edit appointment schedule" : "Muokkaa tapaamisaikataulua", + "Update" : "Päivitä", + "Appointment name" : "Tapaamisen nimi", "Location" : "Sijainti", + "Create a Talk room" : "Luo Talk-huone", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Jokaisesta varatusta tapaamisesta muodostetaan yksilöllinen linkki, ja se lähetetään vahvistussähköpostin yhteydessä", "Description" : "Kuvaus", "Visibility" : "Näkyvyys", "Duration" : "Kesto", @@ -193,6 +231,7 @@ "Friday" : "Perjantai", "Saturday" : "Lauantai", "Sunday" : "Sunnuntai", + "Weekdays" : "Viikonpäivät", "Add time before and after the event" : "Lisää aikaa ennen tapahtuman alkua ja tapahtuman jälkeen", "Before the event" : "Ennen tapahtumaa", "After the event" : "Tapahtuman jälkeen", @@ -200,18 +239,22 @@ "Minimum time before next available slot" : "Vähimmäisaika ennen seuraavaa saatavilla olevaa aikarakoa", "Max slots per day" : "Aikarakoja enintään päivää kohden", "Limit how far in the future appointments can be booked" : "Rajoita kuinka pitkälle tulevaisuuteen tapaamisia on mahdollista varata", - "Create appointment" : "Luo tapaaminen", - "Edit appointment" : "Muokkaa tapaamista", - "Save" : "Tallenna", - "Update" : "Päivitä", "Please confirm your reservation" : "Vahvista varauksesi", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Lähetimme sinulle sähköpostin yksityiskohtien kera. Ole hyvä ja hyväksy tapaamisesi käyttäen linkkiä sähköpostissa. Voit sulkea tämän sivun.", "Your name" : "Nimesi", "Your email address" : "Sähköpostiosoitteesi", "Please share anything that will help prepare for our meeting" : "Jaa mitä tahansa, mikä auttaa valmistautumaan kokoukseen", "Could not book the appointment. Please try again later or contact the organizer." : "Tapaamista ei voitu kirjata. Ole hyvä ja yritä myöhemmin uudelleen tai ota yhteyttä järjestäjään.", - "Book the appointment" : "Kirjaa tapaaminen", - "Reminder" : "Muistutus", + "Back" : "Takaisin", + "Book appointment" : "Varaa tapaaminen", + "Error creating Talk conversation" : "Virhe luotaessa Talk-keskustelua", + "Select a Talk Room" : "Valitse Talk-huone", + "Add Talk conversation" : "Lisää Talk-keskustelu", + "Fetching Talk rooms…" : "Noudetaan Talk-huoneita…", + "Create a new conversation" : "Luo uusi keskustelu", + "Select conversation" : "Valitse keskustelu", + "on" : "päivä", + "at" : "kellonaika", "before at" : "ennen", "Notification" : "Ilmoitus", "Email" : "Sähköposti", @@ -222,113 +265,134 @@ "Edit time" : "Muokkaa aikaa", "Save time" : "Tallenna aika", "Remove reminder" : "Poista muistutus", - "on" : "päivä", - "at" : "kellonaika", - "+ Add reminder" : "+ Lisää muistutus", "Add reminder" : "Lisää muistutus", - "_second_::_seconds_" : ["sekunti","sekuntia"], - "_minute_::_minutes_" : ["minuutti","minuuttia"], - "_hour_::_hours_" : ["tunti","tuntia"], - "_day_::_days_" : ["päivä","päivää"], - "_week_::_weeks_" : ["viikko","viikkoa"], + "seconds" : "sekuntia", + "minutes" : "minuuttia", + "hours" : "tuntia", + "days" : "päivän jälkeen", + "weeks" : "viikkoa", + "Choose a file to add as attachment" : "Valitse liitteeksi lisättävä tiedosto", + "Choose a file to share as a link" : "Valitse tiedosto, joka jaetaan linkkinä", + "Attachment {name} already exist!" : "Liite {name} on jo olemassa!", + "Could not upload attachment(s)" : "Liitteiden lähetys epäonnistui", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Olet aikeissa siirtyä kohteeseen {host}. Haluatko varmasti jatkaa? Linkki: {link}", + "Proceed" : "Jatka", + "No attachments" : "Ei liitteitä", + "Add from Files" : "Lisää tiedostosovelluksesta", + "Upload from device" : "Lähetä laitteelta", + "Delete file" : "Poista tiedosto", + "Confirmation" : "Vahvistus", + "_{count} attachment_::_{count} attachments_" : ["{count} liite","{count} liitettä"], "Suggested" : "Ehdotettu", "Available" : "Saatavilla", - "Not available" : "Ei saatavilla", - "Checking availability" : "Tarkistetaan saatavuutta", "Invitation accepted" : "Kutsu hyväksytty", "Accepted {organizerName}'s invitation" : "Hyväksytty järjestäjän {organizerName} kutsu", + "Participation marked as tentative" : "Osallistuminen merkitty alustavaksi", + "Invitation is delegated" : "Kutsu on delegoitu", + "Not available" : "Ei saatavilla", "Invitation declined" : "Kieltäydytty kutsusta", "Declined {organizerName}'s invitation" : "Kieltäytyi järjestäjän {organizerName} kutsusta", - "Participation marked as tentative" : "Osallistuminen merkitty alustavaksi", - "Invitation sent" : "Kutsu lähetetty", + "Availability will be checked" : "Saatavuus tarkistetaan", + "Invitation will be sent" : "Kutsu lähetetään", + "Failed to check availability" : "Saatavuuden tarkistus epäonnistui", + "Failed to deliver invitation" : "Kutsun toimittaminen epäonnistui", + "Awaiting response" : "Odottaa vastausta", + "Checking availability" : "Tarkistetaan saatavuutta", "Has not responded to {organizerName}'s invitation yet" : "Ei ole vielä vastanut järjestäjän {organizerName} kutsuun", - "Availability of attendees, resources and rooms" : "Osallistujien, resurssien ja huoneiden saatavuus", + "chairperson" : "puheenjohtaja", + "required participant" : "vaadittu osallistuja", + "optional participant" : "valinnainen osallistuja", "{organizer} (organizer)" : "{organizer} (järjestäjä)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Osallistujien, resurssien ja huoneiden saatavuus", + "Suggestion accepted" : "Ehdotus hyväksytty", + "Legend" : "Selite", + "Out of office" : "Ulkona toimistolta", + "Attendees:" : "Osallistujat:", + "Done" : "Valmis", + "Search room" : "Etsi huonetta", + "Room name" : "Huoneen nimi", + "Check room availability" : "Tarkista huoneen saatavuus", "Free" : "Vapaa", "Busy (tentative)" : "Varattu (alustava)", "Busy" : "Varattu", - "Out of office" : "Ulkona toimistolta", "Unknown" : "Tuntematon", - "Accept" : "Hyväksy", - "Decline" : "Kieltäydy", - "Tentative" : "Alustava", + "Find a time" : "Löydä aika", "The invitation has been accepted successfully." : "Kutsu on hyväksytty.", "Failed to accept the invitation." : "Kutsun hyväksyminen epäonnistui.", "The invitation has been declined successfully." : "Kieltäydytty kutsusta onnistuneesti.", "Failed to decline the invitation." : "Kutsusta kieltäytyminen epäonnistui.", "Your participation has been marked as tentative." : "Osallistumisesi on merkitty alustavaksi.", "Failed to set the participation status to tentative." : "Osallistumisen tilan asettaminen alustavaksi epäonnistui.", - "Create Talk room for this event" : "Luo Talk-huone tälle tapahtumalle", - "Show busy times" : "Näytä varatut ajat", + "Accept" : "Hyväksy", + "Decline" : "Kieltäydy", + "Tentative" : "Alustava", "No attendees yet" : "Ei vielä osallistujia", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} kutsuttu, {confirmedCount} vahvistettu", "Successfully appended link to talk room to description." : "Linkki Talk-huoneeseen lisättiin onnistuneesti kuvaukseen.", "Error creating Talk room" : "Virhe luotaessa Talk-huonetta", - "Send email" : "Lähetä sähköposti", + "Attendees" : "Osallistujat", + "Remove group" : "Poista ryhmä", + "Remove attendee" : "Poista osallistuja", + "Request reply" : "Pyydä vastaus", "Chairperson" : "Puheenjohtaja", "Required participant" : "Vaadittu osallistuja", "Optional participant" : "Valinnainen osallistuja", "Non-participant" : "Osallistumaton", - "Remove attendee" : "Poista osallistuja", - "Search for emails, users or contacts" : "Etsi sähköpostiosoitteita, käyttäjiä tai yhteystietoja", + "_%n member_::_%n members_" : ["%n jäsen","%n jäsentä"], + "Search for emails, users, contacts, contact groups or teams" : "Etsi sähköpostiosoitteita, käyttäjiä, yhteystietoja, yhteystietoryhmiä tai tiimejä", "No match found" : "Ei tuloksia", "(organizer)" : "(järjestäjä)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "[linkopen]Lisää sähköpostiosoitteesi henkilökohtaisiin asetuksiisi[linkclose] lähettääksesi kutsuja ja hallitaksesi vastauksia.", "Remove color" : "Poista väri", "Event title" : "Tapahtuman otsikko", - "All day" : "Koko päivä", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Koko päivän tapahtumia, jotka ovat osa toistuvaa tapahtumaa, ei voida muokata.", - "from {startDate}" : "alkaen {startDate}", - "from {startDate} at {startTime}" : "alkaen {startDate} klo {startTime}", - "to {endDate}" : "päättyen {endDate}", - "to {endDate} at {endTime}" : "päättyen {endDate} klo {endTime}", + "From" : "Lähettäjä", + "To" : "Vastaanottaja", "Repeat" : "Toista", - "End repeat" : "Lopeta toisto", - "Select to end repeat" : "Valitse lopettaaksesi toiston", + "_time_::_times_" : ["kerran","kertaa"], "never" : "ei koskaan", "on date" : "päivänä", "after" : "jälkeen", - "_time_::_times_" : ["kerran","kertaa"], + "End repeat" : "Lopeta toisto", + "Select to end repeat" : "Valitse lopettaaksesi toiston", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Tämä tapahtuma on toistuvaan tapahtumaan tehty poikkeus. Et voi lisätä tähän uutta toistuvuutta.", "first" : "ensimmäinen", - "third" : "kolmas", - "fourth" : "neljäs", - "fifth" : "viides", - "second to last" : "toiseksi viimeinen", - "last" : "viimeinen", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Muutokset toistuvuusasetukseen vaikuttavat vain tähän ja tuleviin tapahtumakertoihin.", "Repeat every" : "Toista joka", "By day of the month" : "Kuukauden päivän mukaan", "On the" : "Ajankohtana", + "_day_::_days_" : ["päivä","päivää"], + "_week_::_weeks_" : ["viikko","viikkoa"], "_month_::_months_" : ["kuukausi","kuukautta"], "_year_::_years_" : ["vuosi","vuotta"], + "On specific day" : "Tiettynä päivänä", "weekday" : "viikonpäivä", "weekend day" : "viikonloppupäivä", - "No recurrence" : "Ei toistumista", + "Does not repeat" : "Ei toistu", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Tapahtuman toistuvuusasetus ei ole Nextcloudin tukema. Jos muokkaat toistuvuusasetusta, jotkin toistuvista tapahtumista saattavat kadota.", - "Suggestions" : "Ehdotukset", "No rooms or resources yet" : "Ei huoneita tai resursseja vielä", + "Resources" : "Resurssit", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} istumapaikka","{seatingCapacity} istumapaikkaa"], "Add resource" : "Lisää resurssi", "Has a projector" : "On projektori", "Has a whiteboard" : "On valkotaulu", "Wheelchair accessible" : "Pääsy pyörätuolilla", "Remove resource" : "Poista resurssi", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} istumapaikka","{seatingCapacity} istumapaikkaa"], - "Projector" : "Projektori", - "Whiteboard" : "Valkotaulu", "Search for resources or rooms" : "Etsi resursseja tai huoneita", "available" : "saatavilla", "unavailable" : "ei saatavilla", + "Show all rooms" : "Näytä kaikki huoneet", + "Projector" : "Projektori", + "Whiteboard" : "Valkotaulu", "Room type" : "Huoneen tyyppi", "Any" : "Mikä tahansa", "Minimum seating capacity" : "Istumapaikkoja vähintään", - "More" : "Lisää", - "Update this occurrence" : "Päivitä tämä esiintymä", + "More details" : "Lisätietoja", "Update this and all future" : "Päivitä tämä ja kaikki tulevat", + "Update this occurrence" : "Päivitä tämä esiintymä", "Public calendar does not exist" : "Julkista kalenteria ei ole olemassa", "Maybe the share was deleted or has expired?" : "Kenties jako poistettiin tai se vanheni.", - "Please select a time zone:" : "Valitse aikavyöhyke:", - "Pick a time" : "Valitse aika", - "Pick a date" : "Valitse päivä", "from {formattedDate}" : "alkaen {formattedDate}", "to {formattedDate}" : "päättyen {formattedDate}", "on {formattedDate}" : "päivänä {formattedDate}", @@ -338,9 +402,21 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} klo {formattedTime}", "Please enter a valid date" : "Kirjoita kelvollinen päivä", "Please enter a valid date and time" : "Kirjoita kelvollinen päivä ja aika", + "Select a time zone" : "Valitse aikavyöhyke", + "Please select a time zone:" : "Valitse aikavyöhyke:", + "Pick a time" : "Valitse aika", + "Pick a date" : "Valitse päivä", "Type to search time zone" : "Kirjoita etsiäksesi aikavyöhykettä", "Global" : "Julkinen", - "Select date" : "Valitse päivämäärä", + "Holidays in {region}" : "Juhlapäivä alueella {region}", + "Public holiday calendars" : "Juhlapäiväkalenterit", + "Public calendars" : "Julkiset kalenterit", + "No valid public calendars configured" : "Kelvollisia juhlakalentereita ei ole määritetty", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Juhlapäiväkalenterit tarjoaa Thunderbird. Kalenterin tiedot ladataan verkkosivustolta {website}", + "By {authors}" : "Tekijä {authors}", + "Subscribed" : "Tilattu", + "Subscribe" : "Tilaa", + "Select a date" : "Valitse päivämäärä", "Select slot" : "Valitse aikarako", "No slots available" : "Aikarakoja ei ole saatavilla", "The slot for your appointment has been confirmed" : "Aikarako tapaamiselle on vahvistettu", @@ -357,23 +433,20 @@ "Personal" : "Henkilökohtainen", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Automaattinen aikavyöhykkeentunnistus määritti aikavyöhykkeesi olevan UTC. \nTämä johtuu todennäköisesti selaimesi tietoturva-asetuksista.\nOle hyvä ja aseta aikavyöhykkeesi manuaalisesti kalenterin asetuksista.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Asettamaasi aikavyöhykettä ({timezoneId}) ei löytynyt. Vaihdetaan takaisin UTC:hen.\nOle hyvä ja vaihda aikavyöhykkeesi asetuksista ja ilmoita tästä ongelmasta.", - "No more events today" : "Ei enempää tapahtumia tänään", - "No upcoming events" : "Ei tulevia tapahtumia", - "Create a new event" : "Luo uusi tapahtuma", - "[Today]" : "[Tänään]", - "[Tomorrow]" : "[Huomenna]", - "[Yesterday]" : "[Eilen]", - "[Last] dddd" : "[Viimeinen] dddd", + "Edit event" : "Muokkaa tapahtumaa", "Event does not exist" : "Tapahtumaa ei ole olemassa", "Delete this occurrence" : "Poista tämä esiintymä", "Delete this and all future" : "Poista tämä ja kaikki tulevat", - "Details" : "Tiedot", - "Attendees" : "Osallistujat", - "Resources" : "Resurssit", + "All day" : "Koko päivä", + "Managing shared access" : "Jaetun pääsyn hallinta", + "Deny access" : "Estä pääsy", + "Invite" : "Kutsu", + "_User requires access to your file_::_Users require access to your file_" : ["Käyttäjä tarvitsee pääsyn tiedostoosi","Käyttäjät tarvitsevat pääsyn tiedostoosi"], + "Untitled event" : "Nimetön tapahtuma", "Close" : "Sulje", - "Show more details" : "Näytä lisää tietoja", "Subscribe to {name}" : "Tilaa {name}", "Export {name}" : "Vie {name}", + "Show availability" : "Näytä saatavuus", "Anniversary" : "Vuosipäivä", "Appointment" : "Tapaaminen", "Business" : "Business", @@ -401,7 +474,6 @@ "on {time}" : "klo {time}", "on {time} ({timezoneId})" : "klo {time} ({timezoneId})", "Week {number} of {year}" : "Viikko {number} vuonna {year}", - "Does not repeat" : "Ei toistu", "Daily" : "Päivittäin", "Weekly" : "Viikottain", "Monthly" : "Kuukausittain", @@ -412,23 +484,28 @@ "_Every %n year_::_Every %n years_" : ["Vuosittain","Joka %n. vuosi"], "_on {weekday}_::_on {weekdays}_" : ["{weekday}na","viikonpäivinä {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["päivänä {dayOfMonthList}","päivinä {dayOfMonthList}"], - "in {monthNames}" : "kuukausina {monthNames}", + "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames}ssa {ordinalNumber} {byDaySet}", "until {untilDate}" : "{untilDate} asti", "_%n time_::_%n times_" : ["%n kerran","%n kertaa"], - "Untitled event" : "Nimetön tapahtuma", + "second" : "toinen", + "third" : "kolmas", + "fourth" : "neljäs", + "fifth" : "viides", + "second to last" : "toiseksi viimeinen", + "last" : "viimeinen", "Untitled task" : "Nimetön tehtävä", "Please ask your administrator to enable the Tasks App." : "Pyydä järjestelmänvalvojaa ottamaan Tasks-sovellus käyttöön", - "Prev" : "Edellinen", - "Next" : "Seuraava", - "Prev year" : "Edellinen vuosi", - "Next year" : "Seuraava vuosi", - "Year" : "Vuosi", "W" : "Vko", "%n more" : "%n lisää", "No events to display" : "Ei tapahtumia näytettäväksi", + "Please confirm your participation" : "Vahvista osallistumisesi", + "You declined this event" : "Kieltäydyit tästä tapahtumasta", + "Your participation is tentative" : "Osallistumisesi on alustava.", "_+%n more_::_+%n more_" : ["+%n lisää","+%n lisää"], "No events" : "Ei tapahtumia", "Create a new event or change the visible time-range" : "Luo uusi tapahtuma tai vaihda näkyvää aikajanaa", + "Failed to save event" : "Tapahtuman tallentaminen epäonnistui", "It might have been deleted, or there was a typo in a link" : "Se saattaa olla poistettu, tai linkissä oli kirjoitusvirhe", "It might have been deleted, or there was a typo in the link" : "Se saattaa olla poistettu, tai linkissä oli kirjoitusvirhe", "Meeting room" : "Kokoushuone", @@ -441,7 +518,7 @@ "When shared hide this event" : "Jaettaessa piilota tämä tapahtuma", "The visibility of this event in shared calendars." : "Tämän tapahtuman näkyvyys jaetuissa kalentereissa.", "Add a location" : "Lisää sijainti", - "Add a description" : "Lisää kuvaus", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Lisää kuvaus\n\n- Mitä tapaamisessa käsitellään\n- Asialista\n- Mitä hyvänsä mihin osallistujien tulisi valmistautua", "Status" : "Tila", "Confirmed" : "Vahvistettu", "Canceled" : "Peruttu", @@ -454,133 +531,22 @@ "Add this as a new category" : "Lisää tämä uutena luokkana", "Custom color" : "Mukautettu väri", "Special color of this event. Overrides the calendar-color." : "Tämän tapahtuman erikoisväri. Ylittää kalenterin väriarvon.", - "Chat room for event" : "Tapahtuman keskusteluhuone", + "Error while sharing file" : "Virhe tiedostoa jakaessa", + "Error while sharing file with user" : "Virhe tiedostoa jakaessa käyttäjän kanssa", + "Error creating a folder {folder}" : "Virhe luotaessa kansiota {folder}", + "Attachment {fileName} already exists!" : "Liite {fileName} on jo olemassa!", + "An error occurred during getting file information" : "Tiedostojen tietoja noutaessa tapahtui virhe", + "Talk conversation for event" : "Tapahtuman Talk-keskustelu", + "An error occurred, unable to delete the calendar." : "Tapahtui virhe, kalenteria ei voitu poistaa.", "Imported {filename}" : "Tuotiin {filename}", - "Meditation" : "Meditaatio", - "Relaxing" : "Rentoutumista", - "Relax" : "Rentoutumista", - "Break" : "Tauko", - "Commuting" : "Työmatkalla", - "Invoice" : "Lasku", - "Finance" : "Talous", - "Bank" : "Pankki", - "Money" : "Raha", - "Wedding" : "Häät", - "Dog" : "Koira", - "Concert" : "Konsertti", - "Festival" : "Festivaali", - "Theater" : "Teatteri", - "Theatre" : "Teatteri", - "Presentation" : "Esitys", - "Talk" : "Puhe", - "Speech" : "Puhe", - "Deadline" : "Deadline", - "Submission" : "Lähetys", - "Reporting" : "Raportointi", - "Camping" : "Telttailua", - "Camp" : "Leiri", - "Election" : "Vaalit", - "Voting" : "Äänestys", - "Vote" : "Äänestä", - "Barbecue" : "Grillaus", - "Barbeque" : "Grillaus", - "Garden" : "Puutarha", - "Farm" : "Maatila", - "Movie" : "Elokuva", - "Cinema" : "Elokuvateatteri", - "Graduation" : "Valmistujaiset", - "Brainstorm" : "Brainstorm", - "Review" : "Esikatsele", - "Audit" : "Auditointi", - "Inspection" : "Tarkastus", - "Proofreading" : "Oikoluku", - "Baseball" : "Pesäpallo", - "Meet" : "Liity", - "Planning" : "Suunnittelua", - "Pointing" : "Osoittaa", - "Retrospective" : "Retrospektiivinen", - "Office" : "Toimisto", - "Contributor week" : "Tukijaviikko", - "Mail" : "Sähköposti", - "Soccer" : "Jalkapallo", - "Football" : "Jalkapallo", - "Gaming" : "Pelailua", - "Drive" : "Ajo", - "Driving" : "Ajaminen", - "Bicycle" : "Polkupyöräily", - "Cycle" : "Polkupyöräily", - "Cycling" : "Pyöräily", - "Biking" : "Polkupyöräily", - "Bike" : "Polkupyörä", - "Podcast" : "Podcast", - "Basketball" : "Koripallo", - "Fishing" : "Kalastus", - "Hiking" : "Retkeily", - "Hike" : "Vaellus", - "Art" : "Taide", - "Exhibition" : "Näyttely", - "Museum" : "Museo", - "Pilates" : "Pilates", - "Park" : "Puisto", - "Walk" : "Kävely", - "Studying" : "Opiskelua", - "Doctor" : "Lääkäri", - "Health" : "Terveys", - "Dentist" : "Hammaslääkäri", - "Hospital" : "Sairaala", - "Interview" : "Haastattelu", - "Training" : "Treenit", - "Practice" : "Harjoittele", - "Sports" : "Liikuntaa", - "Exercise" : "Harjoitukset", - "Work out" : "Bodausta", - "Working out" : "Kuntosali", - "Gym" : "Sali", - "Barber" : "Parturi", - "Haircut" : "Kampaamo", - "Hairdresser" : "Kampaaja", - "Exam" : "Koe", - "Written test" : "Kirjallinen testi", - "Oral test" : "Suullinen testi", - "Working" : "Töitä", - "New Years Eve" : "Uudenvuodenaatto", - "NYE" : "NYE", - "Fireworks" : "Ilotulitus", - "Running" : "Juoksua", - "Go for a run" : "Mene lenkille", - "Marathon" : "Maraton", - "Video-conference" : "Videokonfrenssi", - "Conference-call" : "Neuvottelupuhelu", - "Video-call" : "Videopuhelu", - "Video-chat" : "Videokeskustelu", - "Video-meeting" : "Videokokous", - "Call" : "Puhelu", - "Calling" : "Puhelu", - "Christmas" : "Joulu", - "Conference" : "Konfrenssi", - "Pizza" : "Pizza", - "Travelling" : "Reissaamista", - "Trip" : "Matka", - "Journey" : "Matka", - "Collaborate" : "Yhteistyötä", - "Pair" : "Yhdistä", - "Lecture" : "Luento", - "Seminar" : "Seminaari", - "Teaching" : "Opettamista", - "Photograph" : "Valokuvaus", - "Party" : "Juhlat", - "Celebration" : "Juhlintaa", - "Celebrate" : "Juhli", - "Birthday" : "Syntymäpäivä", - "Shopping" : "Ostokset", - "Groceries" : "Ostokset", - "Skate" : "Skeittausta", - "Skateboard" : "Skeittaus", - "Wine tasting" : "Viininmaistelu", - "Golf" : "Golf", - "Dinner" : "Illallinen", - "Lunch" : "Lounas", + "This is an event reminder." : "Tämä on tapahtuman muistutus.", "Appointment not found" : "Tapaamista ei löydy", - "User not found" : "Käyttäjää ei löydy" + "User not found" : "Käyttäjää ei löydy", + "Reminder" : "Muistutus", + "+ Add reminder" : "+ Lisää muistutus", + "with" : "kanssa", + "Available times:" : "Saatavilla olevat ajat:", + "Suggestions" : "Ehdotukset", + "Details" : "Tiedot" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/fr.js b/l10n/fr.js index 6c90df30ebbc4dfd3a1016a0fe37a6b02e2dfcea..5fab761b6075c04fbfbbec0497708521338fef0b 100644 --- a/l10n/fr.js +++ b/l10n/fr.js @@ -1,147 +1,181 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "L'adresse e-mail fournie est trop longue", "User-Session unexpectedly expired" : "La session utilisateur a expiré", "Provided email-address is not valid" : "L'adresse e-mail fournie n'est pas valide", "%s has published the calendar »%s«" : "%s a publié l'agenda «%s»", "Unexpected error sending email. Please contact your administrator." : "Erreur inattendue pendant l'envoi de l'e-mail. Veuillez contacter votre administrateur.", - "Successfully sent email to %1$s" : "Envoi d'email vers %1$s réussi", + "Successfully sent email to %1$s" : "Envoi d'e-mail vers %1$s réussi", "Hello," : "Bonjour,", "We wanted to inform you that %s has published the calendar »%s«." : "Nous voulions vous informer que %s a publié l'agenda « %s ».", "Open »%s«" : "Ouvrir «%s»", "Cheers!" : "À bientôt !", "Upcoming events" : "Événements à venir", + "No more events today" : "Aucun autre événement aujourd'hui", + "No upcoming events" : "Aucun événement à venir", + "More events" : "Plus d'événements", + "%1$s with %2$s" : "%1$s avec %2$s", + "Calendar" : "Agenda", + "New booking {booking}" : "Nouvelle prise de rendez-vous {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) a pris le rendez-vous \"{config_display_name}\" le {date_time}.", "Appointments" : "Rendez-vous", "Schedule appointment \"%s\"" : "Planifier le rendez-vous \"%s\"", "Schedule an appointment" : "Planifier un rendez-vous", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Préparez-vous pour %s", "Follow up for %s" : "Suivi pour %s", - "Your appointment \"%s\" needs confirmation" : "Votre réservation de créneau \"%s\" nécessite une confirmation", + "Your appointment \"%s\" with %s needs confirmation" : "Votre rendez-vous \"%s\" avec %s nécessite une confirmation", "Dear %s, please confirm your booking" : "Cher %s, merci de confirmer votre réservation", "Confirm" : "Confirmer", + "Appointment with:" : "Rendez-vous avec :", + "Description:" : "Description :", "This confirmation link expires in %s hours." : "Ce lien de confirmation expire dans %s heures.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Si vous souhaitez finalement annuler ce rendez-vous, merci de prendre contact avec l'organisateur.", - "Appointment:" : "Rendez-vous :", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Si vous souhaitez finalement annuler le rendez-vous, merci de contacter l'organisateur en répondant à cet e-mail ou en visitant la page de son profil.", + "Your appointment \"%s\" with %s has been accepted" : "Votre rendez-vous \"%s\" avec %s a été accepté", + "Dear %s, your booking has been accepted." : "Cher %s, votre réservation a été acceptée.", + "Appointment for:" : "Rendez-vous pour :", "Date:" : "Date :", + "You will receive a link with the confirmation email" : "Vous allez recevoir un lien avec l'e-mail de confirmation", "Where:" : "Lieu :", - "Description:" : "Description :", - "Calendar" : "Agenda", - "A Calendar app for Nextcloud" : "Application Calendrier pour Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "L'application Agenda est une interface utilisateur pour le serveur CalDAV de Nextcloud. Synchronisez facilement les événements de divers appareils avec votre Nextcloud et modifiez-les en ligne. \n\n* 🚀 ** Intégration avec d'autres applications Nextcloud ! ** Actuellement Contacts - plus à venir. \n* 🌐 ** Assistance WebCal! ** Vous voulez voir les jours de match de votre équipe préférée dans votre calendrier ? Aucun problème ! \n* 🙋 ** Participants ! ** Invitez des personnes à vos événements \n* ⌚️ ** Libre / Occupé : ** Voir quand vos participants sont disponibles pour se rencontrer \n* ⏰ ** Rappels ! ** Obtenez des alarmes pour les événements dans votre navigateur et par e-mail. \n* 🔍 Recherche ! Trouvez facilement vos événements\n* ☑️ Tâches ! Retrouvez les tâches avec une échéance directement dans l'agenda\n* 🙈 ** Nous ne réinventons pas la roue ! ** Basé sur la grande [bibliothèque c-dav] (https://github.com/nextcloud/cdav-library), [ical.js] (https: // github.com/mozilla-comm/ical.js) et [fullcalendar] (https://github.com/fullcalendar/fullcalendar).", + "Comment:" : "Commentaire :", + "You have a new appointment booking \"%s\" from %s" : "Vous avez un nouveau rendez-vous \"%s\" avec %s", + "Dear %s, %s (%s) booked an appointment with you." : "Cher·ère %s, %s (%s) a pris rendez-vous avec vous.", + "A Calendar app for Nextcloud" : "Application Agenda pour Nextcloud", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Une application de calendrier pour Nextcloud. Synchronisez facilement les événements de vos différents appareils avec votre Nextcloud et modifiez-les en ligne.\n\n* 🚀 **Intégration avec d'autres applications Nextcloud !** Comme Contacts, Discussion, Tâches, Deck et Cercles\n* 🌐 **Prise en charge de WebCal !** Vous souhaitez consulter les jours de match de votre équipe préférée dans votre calendrier ? Aucun problème ! * \n🙋 **Participants !** Invitez des personnes à vos événements\n* ⌚ **Libre/Occupé !** Voyez quand vos participants sont disponibles pour une réunion\n* ⏰ **Rappels !** Recevez des alarmes pour les événements directement dans votre navigateur et par e-mail\n* 🔍 **Recherche !** Trouvez facilement vos événements\n* ☑️ **Tâches !** Consultez les tâches ou les cartes Deck avec une date d'échéance directement dans le calendrier\n* 🔈 **Salles de discussion !** Créez une salle de discussion associée lors de la réservation d'une réunion en un seul clic\n* 📆 **Prise de rendez-vous** Envoyez un lien aux personnes pour qu'elles puissent prendre rendez-vous avec vous [via cette application](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Pièces jointes !** Ajoutez, téléchargez et consultez les pièces jointes des événements\n* 🙈 **On ne réinvente pas la roue !** Basé sur le célèbre [c-dav] bibliothèque](https://github.com/nextcloud/cdav-library), bibliothèques [ical.js](https://github.com/mozilla-comm/ical.js) et [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Jour précédent", "Previous week" : "Semaine précédente", + "Previous year" : "Année préc.", "Previous month" : "Mois précédent", "Next day" : "Jour suivant", "Next week" : "Semaine prochaine", + "Next year" : "Année suiv.", "Next month" : "Mois prochain", - "New event" : "Nouvel événement", + "Create new event" : "Créer un nouvel événement", + "Event" : "Événement", "Today" : "Auj.", "Day" : "Jour", "Week" : "Semaine", "Month" : "Mois", + "Year" : "Année", "List" : "Liste", + "Appointment link was copied to clipboard" : "Le lien vers l'événement a été copié dans le presse-papiers", + "Appointment link could not be copied to clipboard" : "Le lien vers l'événement n'a pas pu être copié dans le presse-papiers", "Preview" : "Prévisualiser", "Copy link" : "Copier le lien", "Edit" : "Modifier", "Delete" : "Supprimer", - "Appointment link was copied to clipboard" : "Le lien vers l'événement a été copié dans le presse-papiers", - "Appointment link could not be copied to clipboard" : "Le lien vers l'événement n'a pas pu être copié dans le presse-papiers", - "Add new" : "Ajouter un nouveau", - "Untitled calendar" : "Calendrier sans titre", - "Edit name" : "Modifier le nom", - "Saving name …" : "Enregistrement du nom en cours …", - "Edit color" : "Modifier la couleur", - "Saving color …" : "Enregistrement de la couleur …", - "Copy private link" : "Copier le lien privé", - "Export" : "Exporter", - "Unshare from me" : "Cesser le partage avec moi", - "Disable calendar \"{calendar}\"" : "Désactiver l'agenda {calendar}", + "Appointment schedules" : "Calendriers de rendez-vous", + "Create new" : "Créer un nouveau", + "Disable calendar \"{calendar}\"" : "Désactiver l'agenda \"{calendar}\"", "Disable untitled calendar" : "Désactiver agenda sans titre", - "Enable calendar \"{calendar}\"" : "Activer l'agenda {calendar}", + "Enable calendar \"{calendar}\"" : "Activer l'agenda \"{calendar}\"", "Enable untitled calendar" : "Activer agenda sans titre", "An error occurred, unable to change visibility of the calendar." : "Une erreur est survenue, impossible de modifier la visibilité de l'agenda.", - "An error occurred, unable to delete the calendar." : "Une erreur est survenue, impossible de supprimer l'agenda.", - "Calendar link copied to clipboard." : "Lien de l'agenda copié dans le presse-papier.", - "Calendar link could not be copied to clipboard." : "Impossible de copier le lien de l'agenda dans le presse-papier.", - "An error occurred, unable to rename the calendar." : "Une erreur est survenue, impossible de renommer l'agenda.", - "An error occurred, unable to change the calendar's color." : "Une erreur est survenue, impossible de modifier la couleur de l'agenda.", + "Untitled calendar" : "Agenda sans titre", + "Shared with you by" : "Partagé avec vous par", + "Edit and share calendar" : "Éditer et partager l'agenda", + "Edit calendar" : "Éditer l'agenda", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Suppression du partage de l'agenda dans {countdown} seconde","Suppression du partage de l'agenda dans {countdown} secondes","Suppression du partage de l'agenda dans {countdown} secondes"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Suppression de l'agenda dans {countdown} seconde","Suppression de l'agenda dans {countdown} secondes","Suppression de l'agenda dans {countdown} secondes"], + "An error occurred, unable to create the calendar." : "Une erreur est survenue, impossible de créer l'agenda.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Veuillez saisir un lien valide (débutant par http://, https://, webcal:// ou webcals://)", + "Calendars" : "Agendas", + "Add new" : "Ajouter un nouveau", + "New calendar" : "Nouvel agenda", + "Name for new calendar" : "Nom du nouvel agenda", + "Creating calendar …" : "Création de l'agenda …", + "New calendar with task list" : "Nouvel agenda avec liste de tâches", + "New subscription from link (read-only)" : "Nouvel abonnement par lien (lecture seule)", + "Creating subscription …" : "Création de l'abonnement en cours ...", + "Add public holiday calendar" : "Ajouter un calendrier des jours fériés", + "Add custom public calendar" : "Ajouter un agenda public personnalisé", + "Calendar link copied to clipboard." : "Lien de l'agenda copié dans le presse-papier.", + "Calendar link could not be copied to clipboard." : "Impossible de copier le lien de l'agenda dans le presse-papier.", + "Copy subscription link" : "Copier le lien d'inscription", + "Copying link …" : "Copie du lien …", + "Copied link" : "Lien copié", + "Could not copy link" : "Impossible de copier le lien", + "Export" : "Exporter", + "Untitled item" : "Élément sans titre", + "Unknown calendar" : "Agenda inconnu", + "Could not load deleted calendars and objects" : "Impossible de charger les agendas et objets supprimés", + "Could not delete calendar or event" : "Impossible de supprimer le calendrier ou l'événement", + "Could not restore calendar or event" : "Impossible de restaurer l'agenda ou l'événement", + "Do you really want to empty the trash bin?" : "Voulez-vous vraiment vider la corbeille ?", + "Empty trash bin" : "Vider la corbeille", + "Trash bin" : "Corbeille", + "Loading deleted items." : "Chargement des éléments supprimés.", + "You do not have any deleted items." : "Vous n'avez aucun élément supprimé.", + "Name" : "Nom", + "Deleted" : "Supprimé", + "Restore" : "Restaurer", + "Delete permanently" : "Supprimer définitivement", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Les éléments dans la corbeille sont supprimés après {numDays} jour","Les éléments dans la corbeille sont supprimés après {numDays} jours","Les éléments dans la corbeille sont supprimés après {numDays} jours"], + "Could not update calendar order." : "Impossible de mettre à jour l'ordre des agendas.", + "Shared calendars" : "Agendas partagés", + "Deck" : "Deck", + "Hidden" : "Cachés", + "Internal link" : "Lien interne", + "A private link that can be used with external clients" : "Un lien privé qui peut être utilisé avec des clients externes", + "Copy internal link" : "Copier le lien interne", + "An error occurred, unable to publish calendar." : "Une erreur est survenue, impossible de publier l'agenda.", + "An error occurred, unable to send email." : "Une erreur s’est produite, impossible d’envoyer l'e-mail.", + "Embed code copied to clipboard." : "Code d'intégration copié dans le presse-papier.", + "Embed code could not be copied to clipboard." : "Le code d'intégration n'a pas pu être copié dans le presse-papier.", + "Unpublishing calendar failed" : "Impossible de dé-publier l'agenda", "Share link" : "Lien de partage", - "Publish calendar" : "Publier l'agenda", - "Publishing calendar" : "Publication de l'agenda en cours", "Copy public link" : "Copier le lien public", "Send link to calendar via email" : "Envoyer le lien vers l'agenda par e-mail", "Enter one address" : "Saisissez une adresse", "Sending email …" : "Envoi de l'e-mail...", - "Copy subscription link" : "Copier le lien d'inscription", - "Copying link …" : "Copie du lien …", - "Copied link" : "Lien copié", - "Could not copy link" : "Impossible de copier le lien", "Copy embedding code" : "Copier le code d'intégration", "Copying code …" : "Copie du code …", "Copied code" : "Code copié", "Could not copy code" : "Impossible de copier le code", "Delete share link" : "Supprimer le lien de partage", "Deleting share link …" : "Suppression du lien partagé …", - "An error occurred, unable to publish calendar." : "Une erreur est survenue, impossible de publier l'agenda.", - "An error occurred, unable to send email." : "Une erreur s'est produite, impossible d'envoyer l'e-mail.", - "Embed code copied to clipboard." : "Code d'intégration copié dans le presse-papier.", - "Embed code could not be copied to clipboard." : "Le code d'intégration n'a pas pu être copié dans le presse-papier.", - "Unpublishing calendar failed" : "Impossible de dé-publier l'agenda", - "Share with users or groups" : "Partager avec des utilisateurs ou des groupes", - "No users or groups" : "Aucun utilisateur ni groupe", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Équipe)", + "An error occurred while unsharing the calendar." : "Une erreur est survenue lors de l'annulation du partage de l'agenda.", + "An error occurred, unable to change the permission of the share." : "Une erreur s’est produite, impossible de changer la permission du partage.", "can edit" : "peut modifier", "Unshare with {displayName}" : "Ne plus partager avec {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Une erreur s’est produite, impossible de changer le partage du calendrier.", - "An error occurred, unable to change the permission of the share." : "Une erreur s’est produite, impossible de changer la permission du partage.", - "+ New calendar" : "+ Nouvel agenda", - "New calendar" : "Nouvel agenda", - "Name for new calendar" : "Nom du nouvel agenda", - "Creating calendar …" : "Création de l'agenda …", - "New calendar with task list" : "Nouvel agenda avec liste de tâches", - "New subscription from link (read-only)" : "Nouvel abonnement par lien (lecture seule)", - "Creating subscription …" : "Création de l'abonnement en cours ...", - "An error occurred, unable to create the calendar." : "Une erreur est survenue, impossible de créer l'agenda.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Veuillez saisir un lien valide (débutant par http://, https://, webcal:// ou webcals://)", - "Trash bin" : "Corbeille", - "Loading deleted elements." : "Chargement des éléments supprimés.", - "You do not have any deleted elements." : "Vous n'avez aucun élément dans la corbeille.", - "Name" : "Nom", - "Deleted" : "Supprimé", - "Restore" : "Restaurer", - "Delete permanently" : "Supprimer définitivement", - "Empty trash bin" : "Vider la corbeille", - "Untitled element" : "Élément sans titre", - "Unknown calendar" : "Agenda inconnu", - "Could not load deleted calendars and objects" : "Impossible de charger les calendriers et objets supprimés", - "Could not restore calendar or event" : "Impossible de restaurer le calendrier ou l'événement", - "Do you really want to empty the trash bin?" : "Voulez-vous vraiment vider la corbeille ?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Les éléments dans la corbeille sont supprimés après {numDays} jours","Les éléments dans la corbeille sont supprimés après {numDays} jours","Les éléments dans la corbeille sont supprimés après {numDays} jours"], - "Could not update calendar order." : "Impossible de mettre à jour l'ordre du calendrier.", - "Import calendars" : "Importer des calendriers", + "Share with users or groups" : "Partager avec des utilisateurs ou des groupes", + "No users or groups" : "Aucun utilisateur ni groupe", + "Failed to save calendar name and color" : "Échec d'enregistrement du nom et de la couleur de l'agenda", + "Calendar name …" : "Nom de l'agenda ...", + "Never show me as busy (set this calendar to transparent)" : "Ne jamais me considérer occupé (définir ce calendrier comme transparent)", + "Share calendar" : "Partager l'agenda", + "Unshare from me" : "Quitter ce partage", + "Save" : "Enregistrer", + "Import calendars" : "Importer des agendas", "Please select a calendar to import into …" : "Veuillez sélectionner un agenda dans lequel importer  …", "Filename" : "Nom du fichier", "Calendar to import into" : "Agenda dans lequel importer", "Cancel" : "Annuler", "_Import calendar_::_Import calendars_" : ["Importer un agenda","Importer des agendas","Importer des agendas"], + "Select the default location for attachments" : "Sélectionner l'emplacement par défaut pour les pièces jointes", + "Pick" : "Choisir", + "Invalid location selected" : "Emplacement sélectionné non valide", + "Attachments folder successfully saved." : "Dossier par défaut des pièces jointes enregistré.", + "Error on saving attachments folder." : "Erreur lors de l'enregistrement du dossier des pièces jointes.", + "Default attachments location" : "Emplacement par défaut des pièces jointes", "{filename} could not be parsed" : "{filename} n'a pas pu être analysé", "No valid files found, aborting import" : "Aucun fichier valide trouvé, annulation de l’importation", - "Import partially failed. Imported {accepted} out of {total}." : "Échec partiel de l’importation. Import de {accepted} sur {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : [" %n évènement importé avec succès","%n évènements importés avec succès","%n évènements importés avec succès"], + "Import partially failed. Imported {accepted} out of {total}." : "Échec partiel de l’importation. Import de {accepted} sur {total}.", "Automatic" : "Automatique", "Automatic ({detected})" : "Automatique ({detected})", "New setting was not saved successfully." : "Le nouveau paramètre n'a pas pu être enregistré.", - "Shortcut overview" : "Aperçu des raccourcis", - "or" : "ou", "Navigation" : "Navigation", "Previous period" : "Période précédente", "Next period" : "Période suivante", "Views" : "Affichages", - "Day view" : "Affichage journalier", + "Day view" : "Affichage jour", "Week view" : "Affichage semaine", - "Month view" : "Affichage mensuel", - "List view" : "Affichage liste", + "Month view" : "Affichage mois", + "Year view" : "Affichage année", + "List view" : "Vue en liste", "Actions" : "Actions", "Create event" : "Créer un événement", "Show shortcuts" : "Afficher les raccourcis", @@ -149,41 +183,54 @@ OC.L10N.register( "Close editor" : "Fermer l'éditeur", "Save edited event" : "Sauvegarder l'événement édité", "Delete edited event" : "Supprimer l'événement édité", - "Duplicate event" : "Événement en double", + "Duplicate event" : "Dupliquer l'événement", + "Shortcut overview" : "Aperçu des raccourcis", + "or" : "ou", + "Calendar settings" : "Paramètres de Agenda", + "At event start" : "Au début de l'événement", + "No reminder" : "Aucun rappel", + "Failed to save default calendar" : "Échec d'enregistrement de l'agenda par défaut", + "CalDAV link copied to clipboard." : "Lien CalDAV copié dans le presse-papier.", + "CalDAV link could not be copied to clipboard." : "Impossible de copier le lien CalDAV dans le presse-papier.", "Enable birthday calendar" : "Activer l'agenda des anniversaires", "Show tasks in calendar" : "Afficher les tâches dans l'agenda", "Enable simplified editor" : "Activer l'éditeur simplifié", - "Limit visible events per view" : "Limiter le nombre d’évènements affichés", + "Limit the number of events displayed in the monthly view" : "Limiter le nombre d'évènements affichés dans la vue mensuelle", "Show weekends" : "Afficher les week-ends", "Show week numbers" : "Afficher les numéros de semaine", "Time increments" : "Incréments de temps", + "Default calendar for incoming invitations" : "Agenda par défaut pour les invitations entrantes", "Default reminder" : "Rappel par défaut", "Copy primary CalDAV address" : "Copier l'adresse CalDAV principale", "Copy iOS/macOS CalDAV address" : "Copier l'adresse CalDAV pour iOS/macOS", - "Personal availability settings" : "Paramètres de disponibilité personnelle", + "Personal availability settings" : "Paramètres de disponibilités personnelles", "Show keyboard shortcuts" : "Afficher les raccourcis clavier", - "No reminder" : "Aucun rappel", - "CalDAV link copied to clipboard." : "Lien CalDAV copié dans le presse-papier.", - "CalDAV link could not be copied to clipboard." : "Impossible de copier le lien CalDAV dans le presse-papier.", - "Appointment was created successfully" : "Le rendez-vous a été créé avec succès", - "Appointment was updated successfully" : "Le rendez-vous a été modifié avec succès", + "Appointment schedule successfully created" : "Création du calendrier de rendez-vous réussie", + "Appointment schedule successfully updated" : "Mise à jour du calendrier de rendez-vous réussie", "_{duration} minute_::_{duration} minutes_" : ["{duration} minute","{duration} minutes","{duration} minutes"], "0 minutes" : "0 minutes", - "_{duration} hour_::_{duration} hours_" : ["{duration} heure","{duration} heures","{duration} heures"], - "_{duration} day_::_{duration} days_" : ["{duration} jour","{duration} jours","{duration} jours"], - "_{duration} week_::_{duration} weeks_" : ["{duration} semaine","{duration} semaines","{duration} semaines"], - "_{duration} month_::_{duration} months_" : ["{duration} mois","{duration} mois","{duration} mois"], - "_{duration} year_::_{duration} years_" : ["{duration} année","{duration} années","{duration} années"], + "_{duration} hour_::_{duration} hours_" : ["{duration} heure","{duration} heures"], + "_{duration} day_::_{duration} days_" : ["{duration} jour","{duration} jours"], + "_{duration} week_::_{duration} weeks_" : ["{duration} semaine","{duration} semaines"], + "_{duration} month_::_{duration} months_" : ["{duration} mois","{duration} mois"], + "_{duration} year_::_{duration} years_" : ["{duration} année","{duration} années"], "To configure appointments, add your email address in personal settings." : "Pour configurer les rendez-vous, ajouter votre adresse e-mail dans les paramètres personnels.", "Public – shown on the profile page" : "Public - affiché sur la page du profil", "Private – only accessible via secret link" : "Privé - uniquement accessible via un lien secret", - "Location" : "Emplacement", + "Appointment schedule saved" : "Calendrier de rendez-vous sauvegardé", + "Create appointment schedule" : "Création d'un calendrier de rendez-vous", + "Edit appointment schedule" : "Édition du calendrier de rendez-vous", + "Update" : "Mettre à jour", + "Appointment name" : "Nom du rendez-vous", + "Location" : "Lieu", + "Create a Talk room" : "Créer une salle de conversation", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Un lien unique sera généré pour chaque rendez-vous réservé et envoyé via l'e-mail de confirmation", "Description" : "Description", "Visibility" : "Visibilité", "Duration" : "Durée", "Increments" : "Incréments", - "Additional calendars to check for conflicts" : "Calendriers supplémentaires à vérifier pour les conflits", - "Pick time ranges where appointments are allowed" : "Sélectionnez les plages de temps où les rendez-vous sont autorisés", + "Additional calendars to check for conflicts" : "Agendas supplémentaires à vérifier pour les conflits", + "Pick time ranges where appointments are allowed" : "Sélectionnez les plages de temps pendant lesquelles les rendez-vous sont autorisés", "to" : "à", "Delete slot" : "Supprimer le créneau", "No times set" : "Aucun horaire défini", @@ -195,143 +242,184 @@ OC.L10N.register( "Friday" : "Vendredi", "Saturday" : "Samedi", "Sunday" : "Dimanche", + "Weekdays" : "Jours de la semaine", "Add time before and after the event" : "Ajouter du temps avant et après l'évènement", "Before the event" : "Avant l'évènement", "After the event" : "Après l'évènement", "Planning restrictions" : "Restrictions de planning", - "Minimum time before next available slot" : "Durée minimale avant la prochaine plage disponible", + "Minimum time before next available slot" : "Intervalle minimum avant le prochain créneau disponible", "Max slots per day" : "Nombre maximum de créneaux par jour", "Limit how far in the future appointments can be booked" : "Limiter le délai dans lequel les rendez-vous futurs peuvent être pris.", - "Create appointment" : "Créer un rendez-vous", - "Edit appointment" : "Modifier le rendez-vous", - "Save" : "Enregistrer", - "Update" : "Mettre à jour", + "It seems a rate limit has been reached. Please try again later." : "Il semblerait qu'une limite de vitesse ait été atteinte. Veuillez réessayer plus tard.", "Please confirm your reservation" : "Veuillez confirmer votre réservation", - "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Nous vous avons envoyé un email avec les détails. Veuillez confirmer votre rendez-vous en utilisant le lien dans l'email. Vous pouvez maintenant fermer cette page.", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Nous vous avons envoyé un e-mail avec les détails. Veuillez confirmer votre rendez-vous en utilisant le lien dans l'e-mail. Vous pouvez maintenant fermer cette page.", "Your name" : "Votre nom", "Your email address" : "Votre e-mail", "Please share anything that will help prepare for our meeting" : "Merci de partager tout ce qui peut être utile à la préparation de notre réunion", "Could not book the appointment. Please try again later or contact the organizer." : "Impossible de réserver le rendez-vous. Veuillez réessayer plus tard ou contacter l'organisateur.", - "Book the appointment" : "Réserver le créneau", - "Reminder" : "Rappel", + "Back" : "Retour", + "Book appointment" : "Prendre rendez-vous", + "Error fetching Talk conversations." : "Erreur lors du listage des salons de discussion Talk.", + "Conversation does not have a valid URL." : "L'URL de la conversation n'est pas valide", + "Successfully added Talk conversation link to location." : "Le lien de conversation Talk a été ajouté avec succès au lieu.", + "Successfully added Talk conversation link to description." : "Le lien de conversation Talk a été ajouté avec succès à la description.", + "Failed to apply Talk room." : "Impossible de modifier le salon de discussion Talk.", + "Error creating Talk conversation" : "Erreur lors de la création de la conversation Talk", + "Select a Talk Room" : "Choisissez un salon de discussion Talk", + "Add Talk conversation" : "Ajouter une conversation Talk", + "Fetching Talk rooms…" : "Chargement des salons de discussion Talk...", + "No Talk room available" : "Aucun salon de discussion Talk disponible", + "Create a new conversation" : "Créer une nouvelle conversation", + "Select conversation" : "Sélectionnez une conversation", + "on" : "le", + "at" : "le", "before at" : "avant", "Notification" : "Notification", - "Email" : "Adresse e-mail", + "Email" : "E-mail", "Audio notification" : "Notification sonore", "Other notification" : "Autre notification", "Relative to event" : "Par rapport à l’événement", - "On date" : "Échéance", + "On date" : "À une date précise", "Edit time" : "Modifier le rappel", "Save time" : "Enregistrer le rappel", - "Remove reminder" : "Supprimer le rappel", - "on" : "le", - "at" : "le", - "+ Add reminder" : "+ Ajouter un rappel", + "Remove reminder" : "Retirer le rappel", "Add reminder" : "Ajouter un rappel", - "_second_::_seconds_" : ["seconde","secondes","secondes"], - "_minute_::_minutes_" : ["minute","minutes","minutes"], - "_hour_::_hours_" : ["heure","heures","heures"], - "_day_::_days_" : ["jour","jours","jours"], - "_week_::_weeks_" : ["semaine","semaines","semaines"], + "seconds" : "secondes", + "minutes" : "minutes", + "hours" : "heures", + "days" : "jours", + "weeks" : "semaines", + "Choose a file to add as attachment" : "Choisissez un fichier à ajouter en pièce jointe", + "Choose a file to share as a link" : "Sélectionnez un fichier à partager par lien", + "Attachment {name} already exist!" : "La pièce jointe {name} existe déjà !", + "Could not upload attachment(s)" : "Impossible de téléverser la/les pièce(s) jointe(s)", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Vous êtes sur le point de télécharger un fichier. Veuillez vérifier le nom du fichier avant de l'ouvrir. Voulez-vous continuer ?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Vous êtes sur le point de naviguer vers {host}. Êtes-vous sûr de vouloir continuer ? Lien : {link}", + "Proceed" : "Continuer", + "No attachments" : "Pas de pièce jointe", + "Add from Files" : "Ajouter depuis Fichiers", + "Upload from device" : "Téléverser depuis l'appareil", + "Delete file" : "Supprimer le fichier", + "Confirmation" : "Confirmation", + "_{count} attachment_::_{count} attachments_" : ["{count} pièce jointe","{count} pièces jointes","{count} pièces jointes"], "Suggested" : "Suggéré", "Available" : "Disponible", - "Not available" : "Non disponible", - "Checking availability" : "Vérification de la disponiblité", "Invitation accepted" : "Invitation acceptée", "Accepted {organizerName}'s invitation" : "Invitation de {organizerName} acceptée", - "Invitation declined" : "Invitation refusée", - "Declined {organizerName}'s invitation" : "Invitation de {organizerName} refusée", - "Invitation is delegated" : "L'invitation est déléguée", "Participation marked as tentative" : "Participation marquée comme provisoire", - "Invitation sent" : "Invitation envoyée", + "Invitation is delegated" : "L'invitation est déléguée", + "Not available" : "Non disponible", + "Invitation declined" : "Invitation déclinée", + "Declined {organizerName}'s invitation" : "Invitation de {organizerName} déclinée", + "Availability will be checked" : "La disponibilité sera vérifiée", + "Invitation will be sent" : "Les invitations seront envoyées", + "Failed to check availability" : "Échec de vérification de disponiblité", + "Failed to deliver invitation" : "Échec de l'envoi de l'invitation", + "Awaiting response" : "En attente de la réponse", + "Checking availability" : "Vérification de la disponiblité", "Has not responded to {organizerName}'s invitation yet" : "N'a pas encore répondu à l'invitation de {organizerName}", - "Availability of attendees, resources and rooms" : "Disponibilité des participants, ressources et salles.", + "chairperson" : "président", + "required participant" : "participant obligatoire", + "non-participant" : "ne participe pas", + "optional participant" : "participant facultatif", "{organizer} (organizer)" : "{organizer} (organizer)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Disponibilités des participants, ressources et salles.", + "Suggestion accepted" : "Suggestion acceptée", + "Legend" : "Légende", + "Out of office" : "Absent du bureau", + "Attendees:" : "Participants :", + "Done" : "Terminé", + "Search room" : "Chercher une salle", + "Room name" : "Nom de la salle", + "Check room availability" : "Vérifier la disponibilité de la salle", "Free" : "Libre", "Busy (tentative)" : "Occupé (provisoire)", "Busy" : "Occupé", - "Out of office" : "Absent du bureau", "Unknown" : "Inconnu", - "Accept" : "Accepter", - "Decline" : "Refuser", - "Tentative" : "Provisoire", + "Find a time" : "Trouver un horaire", "The invitation has been accepted successfully." : "L'invitation a été acceptée.", "Failed to accept the invitation." : "Échec lors de l'acceptation de l'invitation.", - "The invitation has been declined successfully." : "L'invitation a été refusée.", - "Failed to decline the invitation." : "Échec lors du refus de l'invitation.", + "The invitation has been declined successfully." : "L'invitation a été déclinée.", + "Failed to decline the invitation." : "Impossible de décliner l'invitation.", "Your participation has been marked as tentative." : "Votre participation a été marquée comme provisoire", "Failed to set the participation status to tentative." : "Erreur en voulant mettre votre participation comme provisoire.", - "Create Talk room for this event" : "Créer une salle de discussion pour cet événement", - "Show busy times" : "Afficher les périodes occupées", + "Accept" : "Accepter", + "Decline" : "Décliner", + "Tentative" : "Provisoire", "No attendees yet" : "Aucun participant pour l'instant", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} invité(s), {confirmedCount} confirmé(s)", + "Please add at least one attendee to use the \"Find a time\" feature." : "Veuillez ajouter au moins un participant pour utiliser la fonction « Trouver un horaire ».", + "Successfully appended link to talk room to location." : "Le lien vers la salle de réunion a été ajouté avec succès au lieu.", "Successfully appended link to talk room to description." : "Le lien vers la discussion a été ajouté à la description", "Error creating Talk room" : "Erreur lors de la création de la salle de discussion", - "Send email" : "Envoyer un e-mail", + "Attendees" : "Participants", + "_%n more guest_::_%n more guests_" : ["%n invité de plus","%n invités de plus ","%n invités en plus"], + "Remove group" : "Retirer le groupe", + "Remove attendee" : "Retirer le participant", + "Request reply" : "Demander une réponse", "Chairperson" : "Président", "Required participant" : "Participant obligatoire", "Optional participant" : "Participant facultatif", "Non-participant" : "Ne participe pas", - "Remove attendee" : "Supprimer le participant", - "Search for emails, users or contacts" : "Rechercher des e-mails, utilisateurs ou contacts", + "_%n member_::_%n members_" : ["%n membre","%n membres","%n membres"], + "Search for emails, users, contacts, contact groups or teams" : "Rechercher des e-mails, des utilisateurs, des contacts, des groupes de contacts ou des équipes", "No match found" : "Aucun résultat trouvé", + "Note that members of circles get invited but are not synced yet." : "Notez que les membres des cercles sont invités mais ne sont pas encore synchronisés.", + "Note that members of contact groups get invited but are not synced yet." : "Notez que les membres des groupes de contact sont invités mais ne sont pas encore synchronisés.", "(organizer)" : "(organisateur)", + "Make {label} the organizer" : "Faire de {label} l'organisateur", + "Make {label} the organizer and attend" : "Faire de {label} l'organisateur et le participant", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Pour envoyer des invitations et en gérer les réponses, [linkopen]ajoutez votre adresse e-mail dans vos paramètres personnels[linkclose].", - "Remove color" : "Supprimer la couleur", + "Remove color" : "Retirer la couleur", "Event title" : "Titre de l'événement", - "All day" : "Toute la journée", - "Cannot modify all-day setting for events that are part of a recurrence-set." : "Impossible de modifier le paramètre de la journée entière pour les événements qui font partie d'un ensemble de récurrence.", - "from {startDate}" : "du {startDate}", - "from {startDate} at {startTime}" : "du {startDate} à {startTime}", - "to {endDate}" : "au {endDate}", - "to {endDate} at {endTime}" : "au {endDate} à {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Impossible de modifier le paramètre de la journée entière pour les événements qui font partie d'un ensemble de récurrences.", + "From" : "De", + "To" : "À", "Repeat" : "Répéter", - "End repeat" : "Arrêter la répétition", - "Select to end repeat" : "Sélectionner pour terminer la répétition", + "_time_::_times_" : ["fois","fois","fois"], "never" : "jamais", "on date" : "à une date précise", "after" : "après ", - "_time_::_times_" : ["fois","fois","fois"], - "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Cet événement est une exception dans un ensemble de récurrence. Vous ne pouvez pas y ajouter une règle de récurrence.", + "End repeat" : "Arrêter la répétition", + "Select to end repeat" : "Sélectionner pour terminer la répétition", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Cet événement est une exception dans un ensemble de récurrences. Vous ne pouvez pas y ajouter une règle de récurrence.", "first" : "premier", - "third" : "troisième", - "fourth" : "quatrième", - "fifth" : "cinquième", - "second to last" : "avant-dernier", - "last" : "dernier", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Les modifications apportées à la règle de récurrence ne s’appliqueront qu’à cet événement et à tous les événements futurs.", "Repeat every" : "Répéter chaque", "By day of the month" : "Par jour du mois", "On the" : "Le", + "_day_::_days_" : ["jour","jours","jours"], + "_week_::_weeks_" : ["semaine","semaines","semaines"], "_month_::_months_" : ["mois","mois","mois"], "_year_::_years_" : ["année","années","années"], + "On specific day" : "Un jour précis", "weekday" : "jour de la semaine", "weekend day" : "jour de weekend", - "No recurrence" : "Pas de récurrence ", + "Does not repeat" : "Ne se répète pas.", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "La définition de la récurrence de cet événement n’est pas entièrement prise en charge par Nextcloud. Si vous modifiez les options de récurrence, certaines récurrences peuvent être perdues.", - "Suggestions" : "Suggestions", "No rooms or resources yet" : "Aucun lieu ou ressource pour le moment", + "Resources" : "Ressources", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} place assise","{seatingCapacity} places assises","{seatingCapacity} places assises"], "Add resource" : "Ajouter une ressource", - "Has a projector" : "Dispose d'un projecteur", + "Has a projector" : "Dispose d'un vidéoprojecteur", "Has a whiteboard" : "Dispose d'un tableau blanc", "Wheelchair accessible" : "Accessible en fauteuil roulant", - "Remove resource" : "Supprimer la ressource", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} place assise","{seatingCapacity} places assises","{seatingCapacity} places assises"], - "Projector" : "Projecteur", - "Whiteboard" : "Tableau blanc", + "Remove resource" : "Retirer la ressource", "Search for resources or rooms" : "Rechercher une ressource ou un lieu", "available" : "disponible", "unavailable" : "indisponible", + "Show all rooms" : "Montrer toutes les salles", + "Projector" : "Vidéoprojecteur", + "Whiteboard" : "Tableau blanc", "Room type" : "Type de salle", "Any" : "Toutes", "Minimum seating capacity" : "Nombre minimum de places assises", - "More" : "Plus", - "Update this occurrence" : "Mettre à jour cette occurrence", + "More details" : "Plus de détails", "Update this and all future" : "Mettre à jour cette occurrence et toutes les prochaines", + "Update this occurrence" : "Mettre à jour cette occurrence", "Public calendar does not exist" : "L'agenda public n'existe pas", "Maybe the share was deleted or has expired?" : "Le partage a expiré ou a été supprimé ?", - "Please select a time zone:" : "Veuillez sélectionner un fuseau horaire : ", - "Pick a time" : "Indiquez une heure", - "Pick a date" : "Indiquez une date", "from {formattedDate}" : "du {formattedDate}", "to {formattedDate}" : "au {formattedDate}", "on {formattedDate}" : "le {formattedDate}", @@ -341,9 +429,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} à {formattedTime}", "Please enter a valid date" : "Veuillez saisir une date valide", "Please enter a valid date and time" : "Veuillez saisir une date et une heure valides", + "Select a time zone" : "Sélectionner un fuseau horaire", + "Please select a time zone:" : "Veuillez sélectionner un fuseau horaire : ", + "Pick a time" : "Indiquer une heure", + "Pick a date" : "Indiquer une date", "Type to search time zone" : "Commencer la saisie pour rechercher le fuseau horaire", "Global" : "Général", - "Select date" : "Sélectionner la date", + "Holidays in {region}" : "Jours fériés {region}", + "An error occurred, unable to read public calendars." : "Une erreur est survenue, impossible de lire les agendas publics.", + "An error occurred, unable to subscribe to calendar." : "Une erreur est survenue, impossible de s'abonner à l'agenda.", + "Public holiday calendars" : "Calendriers des jours fériés", + "Public calendars" : "Agendas publics", + "No valid public calendars configured" : "Aucun agenda public valide configuré", + "Speak to the server administrator to resolve this issue." : "Discutez avec l'administrateur du serveur pour résoudre ce problème.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Les calendriers des jours fériés sont fournis par Thunderbird. Les données du calendrier seront téléchargées depuis {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Ces agendas publics sont suggérés par l'administrateur du serveur. Les données des agendas seront téléchargés depuis le site web respectif.", + "By {authors}" : "Par {authors}", + "Subscribed" : "Abonné", + "Subscribe" : "S'abonner", + "Could not fetch slots" : "Impossible de récupérer les créneaux", + "Select a date" : "Sélectionner une date", "Select slot" : "Sélectionnez le créneau", "No slots available" : "Aucun créneau disponible", "The slot for your appointment has been confirmed" : "Le créneau pour votre rendez-vous a été confirmé", @@ -358,26 +463,27 @@ OC.L10N.register( "Book an appointment with {name}" : "Réserver un rendez-vous avec {name}", "No public appointments found for {name}" : "Aucun rendez-vous public trouvé pour {name}", "Personal" : "Personnel", - "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "La détection automatique a déterminé que votre fuseau horaire était UTC.\nIl s'agit très probablement du résultat des mesures de sécurité de votre navigateur Web.\nVeuillez régler votre fuseau horaire manuellement dans les paramètres du calendrier.", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "La détection automatique a déterminé que votre fuseau horaire était UTC.\nIl s'agit très probablement du résultat des mesures de sécurité de votre navigateur Web.\nVeuillez régler votre fuseau horaire manuellement dans les paramètres de Agenda.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Le fuseau horaire configuré ({timezoneId}) n'a pas été trouvé. Retour à l'UTC.\nVeuillez modifier votre fuseau horaire dans les paramètres et signaler ce problème.", - "No more events today" : "Aucun autre événement aujourd'hui", - "No upcoming events" : "Aucun événement à venir", - "Create a new event" : "Créer un nouvel événement", - "[Today]" : "[Aujourd'hui]", - "[Tomorrow]" : "[Demain]", - "[Yesterday]" : "[Hier]", - "[Last] dddd" : "dddd [dernier]", + "Availability of {displayName}" : "Disponibilité de {displayName}", + "Edit event" : "Modifier l'événement", "Event does not exist" : "L'événement n'existe pas", "Duplicate" : "Dupliquer", "Delete this occurrence" : "Supprimer cette occurrence", "Delete this and all future" : "Supprimer cette occurrence et toutes les prochaines", - "Details" : "Détails", - "Attendees" : "Participants", - "Resources" : "Ressources", + "All day" : "Journée entière", + "Modifications wont get propagated to the organizer and other attendees" : "Les modifications ne sont pas transmises à l'organisateur et aux autres participants", + "Managing shared access" : "Gestion des accès partagés", + "Deny access" : "Refuser l'accès", + "Invite" : "Inviter", + "_User requires access to your file_::_Users require access to your file_" : ["Un utilisateur requiert un accès à votre fichier","Des utilisateurs requièrent un accès à votre fichier","Des utilisateurs requièrent un accès à votre fichier"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Pièce jointe nécessitant un accès partagé","Pièces jointes nécessitant un accès partagé","Pièces jointes nécessitant un accès partagé"], + "Untitled event" : "Événement sans titre", "Close" : "Fermer", - "Show more details" : "Afficher plus de détails", + "Modifications will not get propagated to the organizer and other attendees" : "Les modifications ne seront pas transmises à l'organisateur et aux autres participants", "Subscribe to {name}" : "S'abonner à {name}", "Export {name}" : "Exporter {name}", + "Show availability" : "Afficher les disponibilités", "Anniversary" : "Anniversaire", "Appointment" : "Rendez-vous", "Business" : "Entreprise", @@ -393,8 +499,8 @@ OC.L10N.register( "Travel" : "Voyage", "Vacation" : "Congé", "Midnight on the day the event starts" : "Dès minuit, le jour de l'évènement", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n jour avant l'évènement, à {formattedHourMinute}","%n jours avant l'évènement, à {formattedHourMinute}","%n jours avant l'évènement, à {formattedHourMinute}"], - "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semaine avant l'évènement, à {formattedHourMinute}","%n semaines avant l'évènement, à {formattedHourMinute}","%n semaines avant l'évènement, à {formattedHourMinute}"], + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n jour avant l'évènement, à {formattedHourMinute}","%n jours avant l'évènement, à {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semaine avant l'évènement, à {formattedHourMinute}","%n semaines avant l'évènement, à {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "le jour de l'évènement, à {formattedHourMinute}", "at the event's start" : "au début de l'évènement", "at the event's end" : "à la fin de l'évènement", @@ -405,36 +511,41 @@ OC.L10N.register( "on {time}" : "le {time}", "on {time} ({timezoneId})" : "le {time} ({timezoneId})", "Week {number} of {year}" : "Semaine {number} de {year}", - "Does not repeat" : "Ne se répète pas.", "Daily" : "Journalier", "Weekly" : "Hebdomadaire", "Monthly" : "Mensuel", "Yearly" : "Annuel", - "_Every %n day_::_Every %n days_" : ["Tout les %n jour","Tous les %n jours","Tous les %n jours"], - "_Every %n week_::_Every %n weeks_" : ["Toute les %n semaine","Toutes les %n semaines","Toutes les %n semaines"], - "_Every %n month_::_Every %n months_" : ["Tous les %n mois","Tous les %n mois","Tous les %n mois"], - "_Every %n year_::_Every %n years_" : ["Tous les %n ans","Tous les %n ans","Tous les %n ans"], - "_on {weekday}_::_on {weekdays}_" : ["le {weekday}","les {weekdays}","les {weekdays}"], - "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["le {dayOfMonthList}","les {dayOfMonthList}","les {dayOfMonthList}"], + "_Every %n day_::_Every %n days_" : ["Tout les %n jour","Tous les %n jours"], + "_Every %n week_::_Every %n weeks_" : ["Toute les %n semaine","Toutes les %n semaines"], + "_Every %n month_::_Every %n months_" : ["Tous les %n mois","Tous les %n mois"], + "_Every %n year_::_Every %n years_" : ["Tous les %n ans","Tous les %n ans"], + "_on {weekday}_::_on {weekdays}_" : ["le {weekday}","les {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["le {dayOfMonthList}","les {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "le {ordinalNumber} {byDaySet}", - "in {monthNames}" : "en {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "en {monthNames} le {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "en {monthNames}, le {ordinalNumber} {byDaySet}", "until {untilDate}" : "jusqu'au {untilDate}", "_%n time_::_%n times_" : ["%n fois","%n fois","%n fois"], - "Untitled event" : "Événement sans titre", + "second" : "seconde", + "third" : "troisième", + "fourth" : "quatrième", + "fifth" : "cinquième", + "second to last" : "avant-dernier", + "last" : "dernier", "Untitled task" : "Tâche sans titre", "Please ask your administrator to enable the Tasks App." : "Veuillez demander à votre administrateur d’activer l'application Tasks.", - "Prev" : "Préc.", - "Next" : "Suiv.", - "Prev year" : "Année préc.", - "Next year" : "Année suiv.", - "Year" : "Année", + "You are not allowed to edit this event as an attendee." : "Vous n'êtes pas autorisé à modifier cet événement en tant que participant.", "W" : "S", "%n more" : "%n de plus", "No events to display" : "Aucun événement à afficher", + "All participants declined" : "Tous les participants ont décliné", + "Please confirm your participation" : "Veuillez confirmer votre participation", + "You declined this event" : "Vous avez décliné cet événement", + "Your participation is tentative" : "Votre participation est provisoire", "_+%n more_::_+%n more_" : ["+%n de plus","+%n de plus","+%n de plus"], "No events" : "Pas d'évènements", "Create a new event or change the visible time-range" : "Créer un nouvel évènement ou modifier la période visible", + "Failed to save event" : "Échec de la sauvegarde de l'événement", "It might have been deleted, or there was a typo in a link" : "Il a peut-être été supprimé, ou il y a une erreur dans le lien", "It might have been deleted, or there was a typo in the link" : "Il a peut-être été supprimé, ou il y a une erreur dans le lien", "Meeting room" : "Salle de réunion", @@ -446,7 +557,9 @@ OC.L10N.register( "When shared show only busy" : "Si partagé, afficher seulement comme occupé", "When shared hide this event" : "Si partagé, masquer l'évènement", "The visibility of this event in shared calendars." : "Visibilité de cet évènement dans les agendas partagés.", - "Add a location" : "Ajouter un emplacement", + "Add a location" : "Ajouter un lieu", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Ajouter une description\n\n- Sur quoi porte cette réunion\n- Points à l'ordre du jour\n- Tout ce que les participants doivent préparer", + "Open Link" : "Ouvrir le lien", "Add a description" : "Ajouter une description", "Status" : "Statut", "Confirmed" : "Confirmé", @@ -460,135 +573,26 @@ OC.L10N.register( "Add this as a new category" : "Ajouter comme nouvelle catégorie", "Custom color" : "Couleur personnalisée", "Special color of this event. Overrides the calendar-color." : "Couleur de l'évènement. Remplace la couleur de l'agenda.", - "Chat room for event" : "Salle de discussion de cet événement", + "Error while sharing file" : "Erreur lors du partage du fichier", + "Error while sharing file with user" : "Erreur lors du partage du fichier avec un utilisateur", + "Error creating a folder {folder}" : "Erreur lors de la création d'un dossier {folder}", + "Attachment {fileName} already exists!" : "La pièce jointe {fileName} existe déjà !", + "Attachment {fileName} added!" : "Pièce jointe {fileName} ajoutée !", + "An error occurred during uploading file {fileName}" : "Une erreur s'est produite lors de l'envoi du fichier {fileName}", + "An error occurred during getting file information" : "Une erreur est survenue lors de la récupération des informations du fichier", + "Talk conversation for event" : "Conversation Talk pour l'événement", + "An error occurred, unable to delete the calendar." : "Une erreur est survenue, impossible de supprimer l'agenda.", "Imported {filename}" : "{filename} importé", - "Meditation" : "Méditation", - "Relaxing" : "Détente", - "Relax" : "Détente", - "Break" : "Pause", - "Commute" : "Transport", - "Commuting" : "En transit", - "Shuttle" : "Navette", - "Invoice" : "Facture", - "Finance" : "Finance", - "Bank" : "Banque", - "Money" : "Argent", - "Wedding" : "Mariage", - "Dog" : "Chien", - "Concert" : "Concert", - "Festival" : "Festival", - "Theater" : "Théâtre", - "Theatre" : "Théâtre", - "Presentation" : "Présentation", - "Talk" : "Discussion", - "Speech" : "Prise de parole", - "Deadline" : "Date limite", - "Submission" : "Envoi", - "Reporting" : "Rapports", - "Camping" : "Camping", - "Camp" : "Camping", - "Election" : "Élection", - "Voting" : "Vote", - "Vote" : "Vote", - "Barbecue" : "Barbecue", - "Barbeque" : "Barbecue", - "Garden" : "Jardin", - "Farm" : "Ferme", - "Movie" : "Film", - "Cinema" : "Cinéma", - "Graduation" : "Examen", - "Brainstorm" : "Réunion", - "Review" : "Revoir", - "Audit" : "Audit", - "Inspection" : "Inspection", - "Proofreading" : "Relecture", - "Baseball" : "Baseball", - "Meet" : "Rencontre", - "Planning" : "Planning", - "Pointing" : "Pointage", - "Retrospective" : "Rétrospective", - "Office" : "Bureau", - "Contributor week" : "Semaine des contributeurs", - "Mail" : "Mail", - "Soccer" : "Football", - "Football" : "Football", - "Gaming" : "Jeu", - "Drive" : "Trajet en voiture", - "Driving" : "Conduite", - "Bicycle" : "Vélo", - "Cycle" : "Vélo", - "Cycling" : "Vélo", - "Biking" : "Vélo", - "Bike" : "Vélo", - "Podcast" : "Podcast", - "Basketball" : "Basketball", - "Fishing" : "Pêche", - "Hiking" : "Randonnée", - "Hike" : "Randonnée", - "Art" : "Art", - "Exhibition" : "Exposition", - "Museum" : "Musée", - "Pilates" : "Pilates", - "Park" : "Promenade au parc", - "Walk" : "Marche", - "Studying" : "Études", - "Doctor" : "Docteur", - "Health" : "Santé", - "Dentist" : "Dentiste", - "Hospital" : "Hôpital", - "Interview" : "Interview", - "Training" : "Entraînement", - "Practice" : "Entraînement", - "Sports" : "Sports", - "Exercise" : "Sport", - "Work out" : "Sport", - "Working out" : "Entraînement", - "Gym" : "Gym", - "Barber" : "Barbier", - "Haircut" : "Coiffeur", - "Hairdresser" : "Coiffeur", - "Exam" : "Examen", - "Written test" : "Test écrit", - "Oral test" : "Test oral", - "Working" : "Travail", - "New Years Eve" : "Jour de l'An", - "NYE" : "Jour de l'An", - "Fireworks" : "Feu artifice", - "Running" : "Course à pied", - "Go for a run" : "Jogging", - "Marathon" : "Marathon", - "Video-conference" : "Visioconférence", - "Conference-call" : "Conférence téléphonique", - "Video-call" : "Appel vidéo", - "Video-chat" : "Conversation vidéo", - "Video-meeting" : "Rendez-vous en visioconférence", - "Call" : "Appel", - "Calling" : "Appeler", - "Christmas" : "Noël", - "Conference" : "Conférence", - "Pizza" : "Pizza", - "Travelling" : "Voyager", - "Trip" : "Voyage", - "Journey" : "Trajet", - "Collaborate" : "Collaboration", - "Pair" : "Pair", - "Lecture" : "Lecture", - "Seminar" : "Séminaire", - "Teaching" : "Enseignement", - "Photograph" : "Photographe", - "Party" : "Fête", - "Celebration" : "Fête", - "Celebrate" : "Fête", - "Birthday" : "Anniversaire", - "Shopping" : "Courses", - "Groceries" : "Courses", - "Skate" : "Skate-board", - "Skateboard" : "Skate-board", - "Wine tasting" : "Dégustation de vin", - "Golf" : "Golf", - "Dinner" : "Diner", - "Lunch" : "Repas", + "This is an event reminder." : "Ceci est un rappel d'événement.", + "Error while parsing a PROPFIND error" : "Erreur lors de l'analyse d'une erreur PROPFIND", "Appointment not found" : "Rendez-vous non trouvé", - "User not found" : "Utilisateur non trouvé" + "User not found" : "Utilisateur non trouvé", + "Reminder" : "Rappel", + "+ Add reminder" : "+ Ajouter un rappel", + "Select automatic slot" : "Sélectionner un créneau automatique", + "with" : "avec", + "Available times:" : "Horaires disponibles:", + "Suggestions" : "Suggestions", + "Details" : "Détails" }, -"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); +"nplurals=2; plural=n > 1;"); diff --git a/l10n/fr.json b/l10n/fr.json index 3e0b7e46868c379a121419d618a0231ea0763384..bd9a6e02a0807fc7d138898d87094d9be06c6e90 100644 --- a/l10n/fr.json +++ b/l10n/fr.json @@ -1,145 +1,179 @@ { "translations": { + "Provided email-address is too long" : "L'adresse e-mail fournie est trop longue", "User-Session unexpectedly expired" : "La session utilisateur a expiré", "Provided email-address is not valid" : "L'adresse e-mail fournie n'est pas valide", "%s has published the calendar »%s«" : "%s a publié l'agenda «%s»", "Unexpected error sending email. Please contact your administrator." : "Erreur inattendue pendant l'envoi de l'e-mail. Veuillez contacter votre administrateur.", - "Successfully sent email to %1$s" : "Envoi d'email vers %1$s réussi", + "Successfully sent email to %1$s" : "Envoi d'e-mail vers %1$s réussi", "Hello," : "Bonjour,", "We wanted to inform you that %s has published the calendar »%s«." : "Nous voulions vous informer que %s a publié l'agenda « %s ».", "Open »%s«" : "Ouvrir «%s»", "Cheers!" : "À bientôt !", "Upcoming events" : "Événements à venir", + "No more events today" : "Aucun autre événement aujourd'hui", + "No upcoming events" : "Aucun événement à venir", + "More events" : "Plus d'événements", + "%1$s with %2$s" : "%1$s avec %2$s", + "Calendar" : "Agenda", + "New booking {booking}" : "Nouvelle prise de rendez-vous {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) a pris le rendez-vous \"{config_display_name}\" le {date_time}.", "Appointments" : "Rendez-vous", "Schedule appointment \"%s\"" : "Planifier le rendez-vous \"%s\"", "Schedule an appointment" : "Planifier un rendez-vous", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Préparez-vous pour %s", "Follow up for %s" : "Suivi pour %s", - "Your appointment \"%s\" needs confirmation" : "Votre réservation de créneau \"%s\" nécessite une confirmation", + "Your appointment \"%s\" with %s needs confirmation" : "Votre rendez-vous \"%s\" avec %s nécessite une confirmation", "Dear %s, please confirm your booking" : "Cher %s, merci de confirmer votre réservation", "Confirm" : "Confirmer", + "Appointment with:" : "Rendez-vous avec :", + "Description:" : "Description :", "This confirmation link expires in %s hours." : "Ce lien de confirmation expire dans %s heures.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Si vous souhaitez finalement annuler ce rendez-vous, merci de prendre contact avec l'organisateur.", - "Appointment:" : "Rendez-vous :", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Si vous souhaitez finalement annuler le rendez-vous, merci de contacter l'organisateur en répondant à cet e-mail ou en visitant la page de son profil.", + "Your appointment \"%s\" with %s has been accepted" : "Votre rendez-vous \"%s\" avec %s a été accepté", + "Dear %s, your booking has been accepted." : "Cher %s, votre réservation a été acceptée.", + "Appointment for:" : "Rendez-vous pour :", "Date:" : "Date :", + "You will receive a link with the confirmation email" : "Vous allez recevoir un lien avec l'e-mail de confirmation", "Where:" : "Lieu :", - "Description:" : "Description :", - "Calendar" : "Agenda", - "A Calendar app for Nextcloud" : "Application Calendrier pour Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "L'application Agenda est une interface utilisateur pour le serveur CalDAV de Nextcloud. Synchronisez facilement les événements de divers appareils avec votre Nextcloud et modifiez-les en ligne. \n\n* 🚀 ** Intégration avec d'autres applications Nextcloud ! ** Actuellement Contacts - plus à venir. \n* 🌐 ** Assistance WebCal! ** Vous voulez voir les jours de match de votre équipe préférée dans votre calendrier ? Aucun problème ! \n* 🙋 ** Participants ! ** Invitez des personnes à vos événements \n* ⌚️ ** Libre / Occupé : ** Voir quand vos participants sont disponibles pour se rencontrer \n* ⏰ ** Rappels ! ** Obtenez des alarmes pour les événements dans votre navigateur et par e-mail. \n* 🔍 Recherche ! Trouvez facilement vos événements\n* ☑️ Tâches ! Retrouvez les tâches avec une échéance directement dans l'agenda\n* 🙈 ** Nous ne réinventons pas la roue ! ** Basé sur la grande [bibliothèque c-dav] (https://github.com/nextcloud/cdav-library), [ical.js] (https: // github.com/mozilla-comm/ical.js) et [fullcalendar] (https://github.com/fullcalendar/fullcalendar).", + "Comment:" : "Commentaire :", + "You have a new appointment booking \"%s\" from %s" : "Vous avez un nouveau rendez-vous \"%s\" avec %s", + "Dear %s, %s (%s) booked an appointment with you." : "Cher·ère %s, %s (%s) a pris rendez-vous avec vous.", + "A Calendar app for Nextcloud" : "Application Agenda pour Nextcloud", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Une application de calendrier pour Nextcloud. Synchronisez facilement les événements de vos différents appareils avec votre Nextcloud et modifiez-les en ligne.\n\n* 🚀 **Intégration avec d'autres applications Nextcloud !** Comme Contacts, Discussion, Tâches, Deck et Cercles\n* 🌐 **Prise en charge de WebCal !** Vous souhaitez consulter les jours de match de votre équipe préférée dans votre calendrier ? Aucun problème ! * \n🙋 **Participants !** Invitez des personnes à vos événements\n* ⌚ **Libre/Occupé !** Voyez quand vos participants sont disponibles pour une réunion\n* ⏰ **Rappels !** Recevez des alarmes pour les événements directement dans votre navigateur et par e-mail\n* 🔍 **Recherche !** Trouvez facilement vos événements\n* ☑️ **Tâches !** Consultez les tâches ou les cartes Deck avec une date d'échéance directement dans le calendrier\n* 🔈 **Salles de discussion !** Créez une salle de discussion associée lors de la réservation d'une réunion en un seul clic\n* 📆 **Prise de rendez-vous** Envoyez un lien aux personnes pour qu'elles puissent prendre rendez-vous avec vous [via cette application](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Pièces jointes !** Ajoutez, téléchargez et consultez les pièces jointes des événements\n* 🙈 **On ne réinvente pas la roue !** Basé sur le célèbre [c-dav] bibliothèque](https://github.com/nextcloud/cdav-library), bibliothèques [ical.js](https://github.com/mozilla-comm/ical.js) et [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Jour précédent", "Previous week" : "Semaine précédente", + "Previous year" : "Année préc.", "Previous month" : "Mois précédent", "Next day" : "Jour suivant", "Next week" : "Semaine prochaine", + "Next year" : "Année suiv.", "Next month" : "Mois prochain", - "New event" : "Nouvel événement", + "Create new event" : "Créer un nouvel événement", + "Event" : "Événement", "Today" : "Auj.", "Day" : "Jour", "Week" : "Semaine", "Month" : "Mois", + "Year" : "Année", "List" : "Liste", + "Appointment link was copied to clipboard" : "Le lien vers l'événement a été copié dans le presse-papiers", + "Appointment link could not be copied to clipboard" : "Le lien vers l'événement n'a pas pu être copié dans le presse-papiers", "Preview" : "Prévisualiser", "Copy link" : "Copier le lien", "Edit" : "Modifier", "Delete" : "Supprimer", - "Appointment link was copied to clipboard" : "Le lien vers l'événement a été copié dans le presse-papiers", - "Appointment link could not be copied to clipboard" : "Le lien vers l'événement n'a pas pu être copié dans le presse-papiers", - "Add new" : "Ajouter un nouveau", - "Untitled calendar" : "Calendrier sans titre", - "Edit name" : "Modifier le nom", - "Saving name …" : "Enregistrement du nom en cours …", - "Edit color" : "Modifier la couleur", - "Saving color …" : "Enregistrement de la couleur …", - "Copy private link" : "Copier le lien privé", - "Export" : "Exporter", - "Unshare from me" : "Cesser le partage avec moi", - "Disable calendar \"{calendar}\"" : "Désactiver l'agenda {calendar}", + "Appointment schedules" : "Calendriers de rendez-vous", + "Create new" : "Créer un nouveau", + "Disable calendar \"{calendar}\"" : "Désactiver l'agenda \"{calendar}\"", "Disable untitled calendar" : "Désactiver agenda sans titre", - "Enable calendar \"{calendar}\"" : "Activer l'agenda {calendar}", + "Enable calendar \"{calendar}\"" : "Activer l'agenda \"{calendar}\"", "Enable untitled calendar" : "Activer agenda sans titre", "An error occurred, unable to change visibility of the calendar." : "Une erreur est survenue, impossible de modifier la visibilité de l'agenda.", - "An error occurred, unable to delete the calendar." : "Une erreur est survenue, impossible de supprimer l'agenda.", - "Calendar link copied to clipboard." : "Lien de l'agenda copié dans le presse-papier.", - "Calendar link could not be copied to clipboard." : "Impossible de copier le lien de l'agenda dans le presse-papier.", - "An error occurred, unable to rename the calendar." : "Une erreur est survenue, impossible de renommer l'agenda.", - "An error occurred, unable to change the calendar's color." : "Une erreur est survenue, impossible de modifier la couleur de l'agenda.", + "Untitled calendar" : "Agenda sans titre", + "Shared with you by" : "Partagé avec vous par", + "Edit and share calendar" : "Éditer et partager l'agenda", + "Edit calendar" : "Éditer l'agenda", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Suppression du partage de l'agenda dans {countdown} seconde","Suppression du partage de l'agenda dans {countdown} secondes","Suppression du partage de l'agenda dans {countdown} secondes"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Suppression de l'agenda dans {countdown} seconde","Suppression de l'agenda dans {countdown} secondes","Suppression de l'agenda dans {countdown} secondes"], + "An error occurred, unable to create the calendar." : "Une erreur est survenue, impossible de créer l'agenda.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Veuillez saisir un lien valide (débutant par http://, https://, webcal:// ou webcals://)", + "Calendars" : "Agendas", + "Add new" : "Ajouter un nouveau", + "New calendar" : "Nouvel agenda", + "Name for new calendar" : "Nom du nouvel agenda", + "Creating calendar …" : "Création de l'agenda …", + "New calendar with task list" : "Nouvel agenda avec liste de tâches", + "New subscription from link (read-only)" : "Nouvel abonnement par lien (lecture seule)", + "Creating subscription …" : "Création de l'abonnement en cours ...", + "Add public holiday calendar" : "Ajouter un calendrier des jours fériés", + "Add custom public calendar" : "Ajouter un agenda public personnalisé", + "Calendar link copied to clipboard." : "Lien de l'agenda copié dans le presse-papier.", + "Calendar link could not be copied to clipboard." : "Impossible de copier le lien de l'agenda dans le presse-papier.", + "Copy subscription link" : "Copier le lien d'inscription", + "Copying link …" : "Copie du lien …", + "Copied link" : "Lien copié", + "Could not copy link" : "Impossible de copier le lien", + "Export" : "Exporter", + "Untitled item" : "Élément sans titre", + "Unknown calendar" : "Agenda inconnu", + "Could not load deleted calendars and objects" : "Impossible de charger les agendas et objets supprimés", + "Could not delete calendar or event" : "Impossible de supprimer le calendrier ou l'événement", + "Could not restore calendar or event" : "Impossible de restaurer l'agenda ou l'événement", + "Do you really want to empty the trash bin?" : "Voulez-vous vraiment vider la corbeille ?", + "Empty trash bin" : "Vider la corbeille", + "Trash bin" : "Corbeille", + "Loading deleted items." : "Chargement des éléments supprimés.", + "You do not have any deleted items." : "Vous n'avez aucun élément supprimé.", + "Name" : "Nom", + "Deleted" : "Supprimé", + "Restore" : "Restaurer", + "Delete permanently" : "Supprimer définitivement", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Les éléments dans la corbeille sont supprimés après {numDays} jour","Les éléments dans la corbeille sont supprimés après {numDays} jours","Les éléments dans la corbeille sont supprimés après {numDays} jours"], + "Could not update calendar order." : "Impossible de mettre à jour l'ordre des agendas.", + "Shared calendars" : "Agendas partagés", + "Deck" : "Deck", + "Hidden" : "Cachés", + "Internal link" : "Lien interne", + "A private link that can be used with external clients" : "Un lien privé qui peut être utilisé avec des clients externes", + "Copy internal link" : "Copier le lien interne", + "An error occurred, unable to publish calendar." : "Une erreur est survenue, impossible de publier l'agenda.", + "An error occurred, unable to send email." : "Une erreur s’est produite, impossible d’envoyer l'e-mail.", + "Embed code copied to clipboard." : "Code d'intégration copié dans le presse-papier.", + "Embed code could not be copied to clipboard." : "Le code d'intégration n'a pas pu être copié dans le presse-papier.", + "Unpublishing calendar failed" : "Impossible de dé-publier l'agenda", "Share link" : "Lien de partage", - "Publish calendar" : "Publier l'agenda", - "Publishing calendar" : "Publication de l'agenda en cours", "Copy public link" : "Copier le lien public", "Send link to calendar via email" : "Envoyer le lien vers l'agenda par e-mail", "Enter one address" : "Saisissez une adresse", "Sending email …" : "Envoi de l'e-mail...", - "Copy subscription link" : "Copier le lien d'inscription", - "Copying link …" : "Copie du lien …", - "Copied link" : "Lien copié", - "Could not copy link" : "Impossible de copier le lien", "Copy embedding code" : "Copier le code d'intégration", "Copying code …" : "Copie du code …", "Copied code" : "Code copié", "Could not copy code" : "Impossible de copier le code", "Delete share link" : "Supprimer le lien de partage", "Deleting share link …" : "Suppression du lien partagé …", - "An error occurred, unable to publish calendar." : "Une erreur est survenue, impossible de publier l'agenda.", - "An error occurred, unable to send email." : "Une erreur s'est produite, impossible d'envoyer l'e-mail.", - "Embed code copied to clipboard." : "Code d'intégration copié dans le presse-papier.", - "Embed code could not be copied to clipboard." : "Le code d'intégration n'a pas pu être copié dans le presse-papier.", - "Unpublishing calendar failed" : "Impossible de dé-publier l'agenda", - "Share with users or groups" : "Partager avec des utilisateurs ou des groupes", - "No users or groups" : "Aucun utilisateur ni groupe", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Équipe)", + "An error occurred while unsharing the calendar." : "Une erreur est survenue lors de l'annulation du partage de l'agenda.", + "An error occurred, unable to change the permission of the share." : "Une erreur s’est produite, impossible de changer la permission du partage.", "can edit" : "peut modifier", "Unshare with {displayName}" : "Ne plus partager avec {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Une erreur s’est produite, impossible de changer le partage du calendrier.", - "An error occurred, unable to change the permission of the share." : "Une erreur s’est produite, impossible de changer la permission du partage.", - "+ New calendar" : "+ Nouvel agenda", - "New calendar" : "Nouvel agenda", - "Name for new calendar" : "Nom du nouvel agenda", - "Creating calendar …" : "Création de l'agenda …", - "New calendar with task list" : "Nouvel agenda avec liste de tâches", - "New subscription from link (read-only)" : "Nouvel abonnement par lien (lecture seule)", - "Creating subscription …" : "Création de l'abonnement en cours ...", - "An error occurred, unable to create the calendar." : "Une erreur est survenue, impossible de créer l'agenda.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Veuillez saisir un lien valide (débutant par http://, https://, webcal:// ou webcals://)", - "Trash bin" : "Corbeille", - "Loading deleted elements." : "Chargement des éléments supprimés.", - "You do not have any deleted elements." : "Vous n'avez aucun élément dans la corbeille.", - "Name" : "Nom", - "Deleted" : "Supprimé", - "Restore" : "Restaurer", - "Delete permanently" : "Supprimer définitivement", - "Empty trash bin" : "Vider la corbeille", - "Untitled element" : "Élément sans titre", - "Unknown calendar" : "Agenda inconnu", - "Could not load deleted calendars and objects" : "Impossible de charger les calendriers et objets supprimés", - "Could not restore calendar or event" : "Impossible de restaurer le calendrier ou l'événement", - "Do you really want to empty the trash bin?" : "Voulez-vous vraiment vider la corbeille ?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Les éléments dans la corbeille sont supprimés après {numDays} jours","Les éléments dans la corbeille sont supprimés après {numDays} jours","Les éléments dans la corbeille sont supprimés après {numDays} jours"], - "Could not update calendar order." : "Impossible de mettre à jour l'ordre du calendrier.", - "Import calendars" : "Importer des calendriers", + "Share with users or groups" : "Partager avec des utilisateurs ou des groupes", + "No users or groups" : "Aucun utilisateur ni groupe", + "Failed to save calendar name and color" : "Échec d'enregistrement du nom et de la couleur de l'agenda", + "Calendar name …" : "Nom de l'agenda ...", + "Never show me as busy (set this calendar to transparent)" : "Ne jamais me considérer occupé (définir ce calendrier comme transparent)", + "Share calendar" : "Partager l'agenda", + "Unshare from me" : "Quitter ce partage", + "Save" : "Enregistrer", + "Import calendars" : "Importer des agendas", "Please select a calendar to import into …" : "Veuillez sélectionner un agenda dans lequel importer  …", "Filename" : "Nom du fichier", "Calendar to import into" : "Agenda dans lequel importer", "Cancel" : "Annuler", "_Import calendar_::_Import calendars_" : ["Importer un agenda","Importer des agendas","Importer des agendas"], + "Select the default location for attachments" : "Sélectionner l'emplacement par défaut pour les pièces jointes", + "Pick" : "Choisir", + "Invalid location selected" : "Emplacement sélectionné non valide", + "Attachments folder successfully saved." : "Dossier par défaut des pièces jointes enregistré.", + "Error on saving attachments folder." : "Erreur lors de l'enregistrement du dossier des pièces jointes.", + "Default attachments location" : "Emplacement par défaut des pièces jointes", "{filename} could not be parsed" : "{filename} n'a pas pu être analysé", "No valid files found, aborting import" : "Aucun fichier valide trouvé, annulation de l’importation", - "Import partially failed. Imported {accepted} out of {total}." : "Échec partiel de l’importation. Import de {accepted} sur {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : [" %n évènement importé avec succès","%n évènements importés avec succès","%n évènements importés avec succès"], + "Import partially failed. Imported {accepted} out of {total}." : "Échec partiel de l’importation. Import de {accepted} sur {total}.", "Automatic" : "Automatique", "Automatic ({detected})" : "Automatique ({detected})", "New setting was not saved successfully." : "Le nouveau paramètre n'a pas pu être enregistré.", - "Shortcut overview" : "Aperçu des raccourcis", - "or" : "ou", "Navigation" : "Navigation", "Previous period" : "Période précédente", "Next period" : "Période suivante", "Views" : "Affichages", - "Day view" : "Affichage journalier", + "Day view" : "Affichage jour", "Week view" : "Affichage semaine", - "Month view" : "Affichage mensuel", - "List view" : "Affichage liste", + "Month view" : "Affichage mois", + "Year view" : "Affichage année", + "List view" : "Vue en liste", "Actions" : "Actions", "Create event" : "Créer un événement", "Show shortcuts" : "Afficher les raccourcis", @@ -147,41 +181,54 @@ "Close editor" : "Fermer l'éditeur", "Save edited event" : "Sauvegarder l'événement édité", "Delete edited event" : "Supprimer l'événement édité", - "Duplicate event" : "Événement en double", + "Duplicate event" : "Dupliquer l'événement", + "Shortcut overview" : "Aperçu des raccourcis", + "or" : "ou", + "Calendar settings" : "Paramètres de Agenda", + "At event start" : "Au début de l'événement", + "No reminder" : "Aucun rappel", + "Failed to save default calendar" : "Échec d'enregistrement de l'agenda par défaut", + "CalDAV link copied to clipboard." : "Lien CalDAV copié dans le presse-papier.", + "CalDAV link could not be copied to clipboard." : "Impossible de copier le lien CalDAV dans le presse-papier.", "Enable birthday calendar" : "Activer l'agenda des anniversaires", "Show tasks in calendar" : "Afficher les tâches dans l'agenda", "Enable simplified editor" : "Activer l'éditeur simplifié", - "Limit visible events per view" : "Limiter le nombre d’évènements affichés", + "Limit the number of events displayed in the monthly view" : "Limiter le nombre d'évènements affichés dans la vue mensuelle", "Show weekends" : "Afficher les week-ends", "Show week numbers" : "Afficher les numéros de semaine", "Time increments" : "Incréments de temps", + "Default calendar for incoming invitations" : "Agenda par défaut pour les invitations entrantes", "Default reminder" : "Rappel par défaut", "Copy primary CalDAV address" : "Copier l'adresse CalDAV principale", "Copy iOS/macOS CalDAV address" : "Copier l'adresse CalDAV pour iOS/macOS", - "Personal availability settings" : "Paramètres de disponibilité personnelle", + "Personal availability settings" : "Paramètres de disponibilités personnelles", "Show keyboard shortcuts" : "Afficher les raccourcis clavier", - "No reminder" : "Aucun rappel", - "CalDAV link copied to clipboard." : "Lien CalDAV copié dans le presse-papier.", - "CalDAV link could not be copied to clipboard." : "Impossible de copier le lien CalDAV dans le presse-papier.", - "Appointment was created successfully" : "Le rendez-vous a été créé avec succès", - "Appointment was updated successfully" : "Le rendez-vous a été modifié avec succès", + "Appointment schedule successfully created" : "Création du calendrier de rendez-vous réussie", + "Appointment schedule successfully updated" : "Mise à jour du calendrier de rendez-vous réussie", "_{duration} minute_::_{duration} minutes_" : ["{duration} minute","{duration} minutes","{duration} minutes"], "0 minutes" : "0 minutes", - "_{duration} hour_::_{duration} hours_" : ["{duration} heure","{duration} heures","{duration} heures"], - "_{duration} day_::_{duration} days_" : ["{duration} jour","{duration} jours","{duration} jours"], - "_{duration} week_::_{duration} weeks_" : ["{duration} semaine","{duration} semaines","{duration} semaines"], - "_{duration} month_::_{duration} months_" : ["{duration} mois","{duration} mois","{duration} mois"], - "_{duration} year_::_{duration} years_" : ["{duration} année","{duration} années","{duration} années"], + "_{duration} hour_::_{duration} hours_" : ["{duration} heure","{duration} heures"], + "_{duration} day_::_{duration} days_" : ["{duration} jour","{duration} jours"], + "_{duration} week_::_{duration} weeks_" : ["{duration} semaine","{duration} semaines"], + "_{duration} month_::_{duration} months_" : ["{duration} mois","{duration} mois"], + "_{duration} year_::_{duration} years_" : ["{duration} année","{duration} années"], "To configure appointments, add your email address in personal settings." : "Pour configurer les rendez-vous, ajouter votre adresse e-mail dans les paramètres personnels.", "Public – shown on the profile page" : "Public - affiché sur la page du profil", "Private – only accessible via secret link" : "Privé - uniquement accessible via un lien secret", - "Location" : "Emplacement", + "Appointment schedule saved" : "Calendrier de rendez-vous sauvegardé", + "Create appointment schedule" : "Création d'un calendrier de rendez-vous", + "Edit appointment schedule" : "Édition du calendrier de rendez-vous", + "Update" : "Mettre à jour", + "Appointment name" : "Nom du rendez-vous", + "Location" : "Lieu", + "Create a Talk room" : "Créer une salle de conversation", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Un lien unique sera généré pour chaque rendez-vous réservé et envoyé via l'e-mail de confirmation", "Description" : "Description", "Visibility" : "Visibilité", "Duration" : "Durée", "Increments" : "Incréments", - "Additional calendars to check for conflicts" : "Calendriers supplémentaires à vérifier pour les conflits", - "Pick time ranges where appointments are allowed" : "Sélectionnez les plages de temps où les rendez-vous sont autorisés", + "Additional calendars to check for conflicts" : "Agendas supplémentaires à vérifier pour les conflits", + "Pick time ranges where appointments are allowed" : "Sélectionnez les plages de temps pendant lesquelles les rendez-vous sont autorisés", "to" : "à", "Delete slot" : "Supprimer le créneau", "No times set" : "Aucun horaire défini", @@ -193,143 +240,184 @@ "Friday" : "Vendredi", "Saturday" : "Samedi", "Sunday" : "Dimanche", + "Weekdays" : "Jours de la semaine", "Add time before and after the event" : "Ajouter du temps avant et après l'évènement", "Before the event" : "Avant l'évènement", "After the event" : "Après l'évènement", "Planning restrictions" : "Restrictions de planning", - "Minimum time before next available slot" : "Durée minimale avant la prochaine plage disponible", + "Minimum time before next available slot" : "Intervalle minimum avant le prochain créneau disponible", "Max slots per day" : "Nombre maximum de créneaux par jour", "Limit how far in the future appointments can be booked" : "Limiter le délai dans lequel les rendez-vous futurs peuvent être pris.", - "Create appointment" : "Créer un rendez-vous", - "Edit appointment" : "Modifier le rendez-vous", - "Save" : "Enregistrer", - "Update" : "Mettre à jour", + "It seems a rate limit has been reached. Please try again later." : "Il semblerait qu'une limite de vitesse ait été atteinte. Veuillez réessayer plus tard.", "Please confirm your reservation" : "Veuillez confirmer votre réservation", - "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Nous vous avons envoyé un email avec les détails. Veuillez confirmer votre rendez-vous en utilisant le lien dans l'email. Vous pouvez maintenant fermer cette page.", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Nous vous avons envoyé un e-mail avec les détails. Veuillez confirmer votre rendez-vous en utilisant le lien dans l'e-mail. Vous pouvez maintenant fermer cette page.", "Your name" : "Votre nom", "Your email address" : "Votre e-mail", "Please share anything that will help prepare for our meeting" : "Merci de partager tout ce qui peut être utile à la préparation de notre réunion", "Could not book the appointment. Please try again later or contact the organizer." : "Impossible de réserver le rendez-vous. Veuillez réessayer plus tard ou contacter l'organisateur.", - "Book the appointment" : "Réserver le créneau", - "Reminder" : "Rappel", + "Back" : "Retour", + "Book appointment" : "Prendre rendez-vous", + "Error fetching Talk conversations." : "Erreur lors du listage des salons de discussion Talk.", + "Conversation does not have a valid URL." : "L'URL de la conversation n'est pas valide", + "Successfully added Talk conversation link to location." : "Le lien de conversation Talk a été ajouté avec succès au lieu.", + "Successfully added Talk conversation link to description." : "Le lien de conversation Talk a été ajouté avec succès à la description.", + "Failed to apply Talk room." : "Impossible de modifier le salon de discussion Talk.", + "Error creating Talk conversation" : "Erreur lors de la création de la conversation Talk", + "Select a Talk Room" : "Choisissez un salon de discussion Talk", + "Add Talk conversation" : "Ajouter une conversation Talk", + "Fetching Talk rooms…" : "Chargement des salons de discussion Talk...", + "No Talk room available" : "Aucun salon de discussion Talk disponible", + "Create a new conversation" : "Créer une nouvelle conversation", + "Select conversation" : "Sélectionnez une conversation", + "on" : "le", + "at" : "le", "before at" : "avant", "Notification" : "Notification", - "Email" : "Adresse e-mail", + "Email" : "E-mail", "Audio notification" : "Notification sonore", "Other notification" : "Autre notification", "Relative to event" : "Par rapport à l’événement", - "On date" : "Échéance", + "On date" : "À une date précise", "Edit time" : "Modifier le rappel", "Save time" : "Enregistrer le rappel", - "Remove reminder" : "Supprimer le rappel", - "on" : "le", - "at" : "le", - "+ Add reminder" : "+ Ajouter un rappel", + "Remove reminder" : "Retirer le rappel", "Add reminder" : "Ajouter un rappel", - "_second_::_seconds_" : ["seconde","secondes","secondes"], - "_minute_::_minutes_" : ["minute","minutes","minutes"], - "_hour_::_hours_" : ["heure","heures","heures"], - "_day_::_days_" : ["jour","jours","jours"], - "_week_::_weeks_" : ["semaine","semaines","semaines"], + "seconds" : "secondes", + "minutes" : "minutes", + "hours" : "heures", + "days" : "jours", + "weeks" : "semaines", + "Choose a file to add as attachment" : "Choisissez un fichier à ajouter en pièce jointe", + "Choose a file to share as a link" : "Sélectionnez un fichier à partager par lien", + "Attachment {name} already exist!" : "La pièce jointe {name} existe déjà !", + "Could not upload attachment(s)" : "Impossible de téléverser la/les pièce(s) jointe(s)", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Vous êtes sur le point de télécharger un fichier. Veuillez vérifier le nom du fichier avant de l'ouvrir. Voulez-vous continuer ?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Vous êtes sur le point de naviguer vers {host}. Êtes-vous sûr de vouloir continuer ? Lien : {link}", + "Proceed" : "Continuer", + "No attachments" : "Pas de pièce jointe", + "Add from Files" : "Ajouter depuis Fichiers", + "Upload from device" : "Téléverser depuis l'appareil", + "Delete file" : "Supprimer le fichier", + "Confirmation" : "Confirmation", + "_{count} attachment_::_{count} attachments_" : ["{count} pièce jointe","{count} pièces jointes","{count} pièces jointes"], "Suggested" : "Suggéré", "Available" : "Disponible", - "Not available" : "Non disponible", - "Checking availability" : "Vérification de la disponiblité", "Invitation accepted" : "Invitation acceptée", "Accepted {organizerName}'s invitation" : "Invitation de {organizerName} acceptée", - "Invitation declined" : "Invitation refusée", - "Declined {organizerName}'s invitation" : "Invitation de {organizerName} refusée", - "Invitation is delegated" : "L'invitation est déléguée", "Participation marked as tentative" : "Participation marquée comme provisoire", - "Invitation sent" : "Invitation envoyée", + "Invitation is delegated" : "L'invitation est déléguée", + "Not available" : "Non disponible", + "Invitation declined" : "Invitation déclinée", + "Declined {organizerName}'s invitation" : "Invitation de {organizerName} déclinée", + "Availability will be checked" : "La disponibilité sera vérifiée", + "Invitation will be sent" : "Les invitations seront envoyées", + "Failed to check availability" : "Échec de vérification de disponiblité", + "Failed to deliver invitation" : "Échec de l'envoi de l'invitation", + "Awaiting response" : "En attente de la réponse", + "Checking availability" : "Vérification de la disponiblité", "Has not responded to {organizerName}'s invitation yet" : "N'a pas encore répondu à l'invitation de {organizerName}", - "Availability of attendees, resources and rooms" : "Disponibilité des participants, ressources et salles.", + "chairperson" : "président", + "required participant" : "participant obligatoire", + "non-participant" : "ne participe pas", + "optional participant" : "participant facultatif", "{organizer} (organizer)" : "{organizer} (organizer)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Disponibilités des participants, ressources et salles.", + "Suggestion accepted" : "Suggestion acceptée", + "Legend" : "Légende", + "Out of office" : "Absent du bureau", + "Attendees:" : "Participants :", + "Done" : "Terminé", + "Search room" : "Chercher une salle", + "Room name" : "Nom de la salle", + "Check room availability" : "Vérifier la disponibilité de la salle", "Free" : "Libre", "Busy (tentative)" : "Occupé (provisoire)", "Busy" : "Occupé", - "Out of office" : "Absent du bureau", "Unknown" : "Inconnu", - "Accept" : "Accepter", - "Decline" : "Refuser", - "Tentative" : "Provisoire", + "Find a time" : "Trouver un horaire", "The invitation has been accepted successfully." : "L'invitation a été acceptée.", "Failed to accept the invitation." : "Échec lors de l'acceptation de l'invitation.", - "The invitation has been declined successfully." : "L'invitation a été refusée.", - "Failed to decline the invitation." : "Échec lors du refus de l'invitation.", + "The invitation has been declined successfully." : "L'invitation a été déclinée.", + "Failed to decline the invitation." : "Impossible de décliner l'invitation.", "Your participation has been marked as tentative." : "Votre participation a été marquée comme provisoire", "Failed to set the participation status to tentative." : "Erreur en voulant mettre votre participation comme provisoire.", - "Create Talk room for this event" : "Créer une salle de discussion pour cet événement", - "Show busy times" : "Afficher les périodes occupées", + "Accept" : "Accepter", + "Decline" : "Décliner", + "Tentative" : "Provisoire", "No attendees yet" : "Aucun participant pour l'instant", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} invité(s), {confirmedCount} confirmé(s)", + "Please add at least one attendee to use the \"Find a time\" feature." : "Veuillez ajouter au moins un participant pour utiliser la fonction « Trouver un horaire ».", + "Successfully appended link to talk room to location." : "Le lien vers la salle de réunion a été ajouté avec succès au lieu.", "Successfully appended link to talk room to description." : "Le lien vers la discussion a été ajouté à la description", "Error creating Talk room" : "Erreur lors de la création de la salle de discussion", - "Send email" : "Envoyer un e-mail", + "Attendees" : "Participants", + "_%n more guest_::_%n more guests_" : ["%n invité de plus","%n invités de plus ","%n invités en plus"], + "Remove group" : "Retirer le groupe", + "Remove attendee" : "Retirer le participant", + "Request reply" : "Demander une réponse", "Chairperson" : "Président", "Required participant" : "Participant obligatoire", "Optional participant" : "Participant facultatif", "Non-participant" : "Ne participe pas", - "Remove attendee" : "Supprimer le participant", - "Search for emails, users or contacts" : "Rechercher des e-mails, utilisateurs ou contacts", + "_%n member_::_%n members_" : ["%n membre","%n membres","%n membres"], + "Search for emails, users, contacts, contact groups or teams" : "Rechercher des e-mails, des utilisateurs, des contacts, des groupes de contacts ou des équipes", "No match found" : "Aucun résultat trouvé", + "Note that members of circles get invited but are not synced yet." : "Notez que les membres des cercles sont invités mais ne sont pas encore synchronisés.", + "Note that members of contact groups get invited but are not synced yet." : "Notez que les membres des groupes de contact sont invités mais ne sont pas encore synchronisés.", "(organizer)" : "(organisateur)", + "Make {label} the organizer" : "Faire de {label} l'organisateur", + "Make {label} the organizer and attend" : "Faire de {label} l'organisateur et le participant", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Pour envoyer des invitations et en gérer les réponses, [linkopen]ajoutez votre adresse e-mail dans vos paramètres personnels[linkclose].", - "Remove color" : "Supprimer la couleur", + "Remove color" : "Retirer la couleur", "Event title" : "Titre de l'événement", - "All day" : "Toute la journée", - "Cannot modify all-day setting for events that are part of a recurrence-set." : "Impossible de modifier le paramètre de la journée entière pour les événements qui font partie d'un ensemble de récurrence.", - "from {startDate}" : "du {startDate}", - "from {startDate} at {startTime}" : "du {startDate} à {startTime}", - "to {endDate}" : "au {endDate}", - "to {endDate} at {endTime}" : "au {endDate} à {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Impossible de modifier le paramètre de la journée entière pour les événements qui font partie d'un ensemble de récurrences.", + "From" : "De", + "To" : "À", "Repeat" : "Répéter", - "End repeat" : "Arrêter la répétition", - "Select to end repeat" : "Sélectionner pour terminer la répétition", + "_time_::_times_" : ["fois","fois","fois"], "never" : "jamais", "on date" : "à une date précise", "after" : "après ", - "_time_::_times_" : ["fois","fois","fois"], - "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Cet événement est une exception dans un ensemble de récurrence. Vous ne pouvez pas y ajouter une règle de récurrence.", + "End repeat" : "Arrêter la répétition", + "Select to end repeat" : "Sélectionner pour terminer la répétition", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Cet événement est une exception dans un ensemble de récurrences. Vous ne pouvez pas y ajouter une règle de récurrence.", "first" : "premier", - "third" : "troisième", - "fourth" : "quatrième", - "fifth" : "cinquième", - "second to last" : "avant-dernier", - "last" : "dernier", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Les modifications apportées à la règle de récurrence ne s’appliqueront qu’à cet événement et à tous les événements futurs.", "Repeat every" : "Répéter chaque", "By day of the month" : "Par jour du mois", "On the" : "Le", + "_day_::_days_" : ["jour","jours","jours"], + "_week_::_weeks_" : ["semaine","semaines","semaines"], "_month_::_months_" : ["mois","mois","mois"], "_year_::_years_" : ["année","années","années"], + "On specific day" : "Un jour précis", "weekday" : "jour de la semaine", "weekend day" : "jour de weekend", - "No recurrence" : "Pas de récurrence ", + "Does not repeat" : "Ne se répète pas.", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "La définition de la récurrence de cet événement n’est pas entièrement prise en charge par Nextcloud. Si vous modifiez les options de récurrence, certaines récurrences peuvent être perdues.", - "Suggestions" : "Suggestions", "No rooms or resources yet" : "Aucun lieu ou ressource pour le moment", + "Resources" : "Ressources", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} place assise","{seatingCapacity} places assises","{seatingCapacity} places assises"], "Add resource" : "Ajouter une ressource", - "Has a projector" : "Dispose d'un projecteur", + "Has a projector" : "Dispose d'un vidéoprojecteur", "Has a whiteboard" : "Dispose d'un tableau blanc", "Wheelchair accessible" : "Accessible en fauteuil roulant", - "Remove resource" : "Supprimer la ressource", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} place assise","{seatingCapacity} places assises","{seatingCapacity} places assises"], - "Projector" : "Projecteur", - "Whiteboard" : "Tableau blanc", + "Remove resource" : "Retirer la ressource", "Search for resources or rooms" : "Rechercher une ressource ou un lieu", "available" : "disponible", "unavailable" : "indisponible", + "Show all rooms" : "Montrer toutes les salles", + "Projector" : "Vidéoprojecteur", + "Whiteboard" : "Tableau blanc", "Room type" : "Type de salle", "Any" : "Toutes", "Minimum seating capacity" : "Nombre minimum de places assises", - "More" : "Plus", - "Update this occurrence" : "Mettre à jour cette occurrence", + "More details" : "Plus de détails", "Update this and all future" : "Mettre à jour cette occurrence et toutes les prochaines", + "Update this occurrence" : "Mettre à jour cette occurrence", "Public calendar does not exist" : "L'agenda public n'existe pas", "Maybe the share was deleted or has expired?" : "Le partage a expiré ou a été supprimé ?", - "Please select a time zone:" : "Veuillez sélectionner un fuseau horaire : ", - "Pick a time" : "Indiquez une heure", - "Pick a date" : "Indiquez une date", "from {formattedDate}" : "du {formattedDate}", "to {formattedDate}" : "au {formattedDate}", "on {formattedDate}" : "le {formattedDate}", @@ -339,9 +427,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} à {formattedTime}", "Please enter a valid date" : "Veuillez saisir une date valide", "Please enter a valid date and time" : "Veuillez saisir une date et une heure valides", + "Select a time zone" : "Sélectionner un fuseau horaire", + "Please select a time zone:" : "Veuillez sélectionner un fuseau horaire : ", + "Pick a time" : "Indiquer une heure", + "Pick a date" : "Indiquer une date", "Type to search time zone" : "Commencer la saisie pour rechercher le fuseau horaire", "Global" : "Général", - "Select date" : "Sélectionner la date", + "Holidays in {region}" : "Jours fériés {region}", + "An error occurred, unable to read public calendars." : "Une erreur est survenue, impossible de lire les agendas publics.", + "An error occurred, unable to subscribe to calendar." : "Une erreur est survenue, impossible de s'abonner à l'agenda.", + "Public holiday calendars" : "Calendriers des jours fériés", + "Public calendars" : "Agendas publics", + "No valid public calendars configured" : "Aucun agenda public valide configuré", + "Speak to the server administrator to resolve this issue." : "Discutez avec l'administrateur du serveur pour résoudre ce problème.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Les calendriers des jours fériés sont fournis par Thunderbird. Les données du calendrier seront téléchargées depuis {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Ces agendas publics sont suggérés par l'administrateur du serveur. Les données des agendas seront téléchargés depuis le site web respectif.", + "By {authors}" : "Par {authors}", + "Subscribed" : "Abonné", + "Subscribe" : "S'abonner", + "Could not fetch slots" : "Impossible de récupérer les créneaux", + "Select a date" : "Sélectionner une date", "Select slot" : "Sélectionnez le créneau", "No slots available" : "Aucun créneau disponible", "The slot for your appointment has been confirmed" : "Le créneau pour votre rendez-vous a été confirmé", @@ -356,26 +461,27 @@ "Book an appointment with {name}" : "Réserver un rendez-vous avec {name}", "No public appointments found for {name}" : "Aucun rendez-vous public trouvé pour {name}", "Personal" : "Personnel", - "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "La détection automatique a déterminé que votre fuseau horaire était UTC.\nIl s'agit très probablement du résultat des mesures de sécurité de votre navigateur Web.\nVeuillez régler votre fuseau horaire manuellement dans les paramètres du calendrier.", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "La détection automatique a déterminé que votre fuseau horaire était UTC.\nIl s'agit très probablement du résultat des mesures de sécurité de votre navigateur Web.\nVeuillez régler votre fuseau horaire manuellement dans les paramètres de Agenda.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Le fuseau horaire configuré ({timezoneId}) n'a pas été trouvé. Retour à l'UTC.\nVeuillez modifier votre fuseau horaire dans les paramètres et signaler ce problème.", - "No more events today" : "Aucun autre événement aujourd'hui", - "No upcoming events" : "Aucun événement à venir", - "Create a new event" : "Créer un nouvel événement", - "[Today]" : "[Aujourd'hui]", - "[Tomorrow]" : "[Demain]", - "[Yesterday]" : "[Hier]", - "[Last] dddd" : "dddd [dernier]", + "Availability of {displayName}" : "Disponibilité de {displayName}", + "Edit event" : "Modifier l'événement", "Event does not exist" : "L'événement n'existe pas", "Duplicate" : "Dupliquer", "Delete this occurrence" : "Supprimer cette occurrence", "Delete this and all future" : "Supprimer cette occurrence et toutes les prochaines", - "Details" : "Détails", - "Attendees" : "Participants", - "Resources" : "Ressources", + "All day" : "Journée entière", + "Modifications wont get propagated to the organizer and other attendees" : "Les modifications ne sont pas transmises à l'organisateur et aux autres participants", + "Managing shared access" : "Gestion des accès partagés", + "Deny access" : "Refuser l'accès", + "Invite" : "Inviter", + "_User requires access to your file_::_Users require access to your file_" : ["Un utilisateur requiert un accès à votre fichier","Des utilisateurs requièrent un accès à votre fichier","Des utilisateurs requièrent un accès à votre fichier"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Pièce jointe nécessitant un accès partagé","Pièces jointes nécessitant un accès partagé","Pièces jointes nécessitant un accès partagé"], + "Untitled event" : "Événement sans titre", "Close" : "Fermer", - "Show more details" : "Afficher plus de détails", + "Modifications will not get propagated to the organizer and other attendees" : "Les modifications ne seront pas transmises à l'organisateur et aux autres participants", "Subscribe to {name}" : "S'abonner à {name}", "Export {name}" : "Exporter {name}", + "Show availability" : "Afficher les disponibilités", "Anniversary" : "Anniversaire", "Appointment" : "Rendez-vous", "Business" : "Entreprise", @@ -391,8 +497,8 @@ "Travel" : "Voyage", "Vacation" : "Congé", "Midnight on the day the event starts" : "Dès minuit, le jour de l'évènement", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n jour avant l'évènement, à {formattedHourMinute}","%n jours avant l'évènement, à {formattedHourMinute}","%n jours avant l'évènement, à {formattedHourMinute}"], - "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semaine avant l'évènement, à {formattedHourMinute}","%n semaines avant l'évènement, à {formattedHourMinute}","%n semaines avant l'évènement, à {formattedHourMinute}"], + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n jour avant l'évènement, à {formattedHourMinute}","%n jours avant l'évènement, à {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n semaine avant l'évènement, à {formattedHourMinute}","%n semaines avant l'évènement, à {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "le jour de l'évènement, à {formattedHourMinute}", "at the event's start" : "au début de l'évènement", "at the event's end" : "à la fin de l'évènement", @@ -403,36 +509,41 @@ "on {time}" : "le {time}", "on {time} ({timezoneId})" : "le {time} ({timezoneId})", "Week {number} of {year}" : "Semaine {number} de {year}", - "Does not repeat" : "Ne se répète pas.", "Daily" : "Journalier", "Weekly" : "Hebdomadaire", "Monthly" : "Mensuel", "Yearly" : "Annuel", - "_Every %n day_::_Every %n days_" : ["Tout les %n jour","Tous les %n jours","Tous les %n jours"], - "_Every %n week_::_Every %n weeks_" : ["Toute les %n semaine","Toutes les %n semaines","Toutes les %n semaines"], - "_Every %n month_::_Every %n months_" : ["Tous les %n mois","Tous les %n mois","Tous les %n mois"], - "_Every %n year_::_Every %n years_" : ["Tous les %n ans","Tous les %n ans","Tous les %n ans"], - "_on {weekday}_::_on {weekdays}_" : ["le {weekday}","les {weekdays}","les {weekdays}"], - "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["le {dayOfMonthList}","les {dayOfMonthList}","les {dayOfMonthList}"], + "_Every %n day_::_Every %n days_" : ["Tout les %n jour","Tous les %n jours"], + "_Every %n week_::_Every %n weeks_" : ["Toute les %n semaine","Toutes les %n semaines"], + "_Every %n month_::_Every %n months_" : ["Tous les %n mois","Tous les %n mois"], + "_Every %n year_::_Every %n years_" : ["Tous les %n ans","Tous les %n ans"], + "_on {weekday}_::_on {weekdays}_" : ["le {weekday}","les {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["le {dayOfMonthList}","les {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "le {ordinalNumber} {byDaySet}", - "in {monthNames}" : "en {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "en {monthNames} le {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "en {monthNames}, le {ordinalNumber} {byDaySet}", "until {untilDate}" : "jusqu'au {untilDate}", "_%n time_::_%n times_" : ["%n fois","%n fois","%n fois"], - "Untitled event" : "Événement sans titre", + "second" : "seconde", + "third" : "troisième", + "fourth" : "quatrième", + "fifth" : "cinquième", + "second to last" : "avant-dernier", + "last" : "dernier", "Untitled task" : "Tâche sans titre", "Please ask your administrator to enable the Tasks App." : "Veuillez demander à votre administrateur d’activer l'application Tasks.", - "Prev" : "Préc.", - "Next" : "Suiv.", - "Prev year" : "Année préc.", - "Next year" : "Année suiv.", - "Year" : "Année", + "You are not allowed to edit this event as an attendee." : "Vous n'êtes pas autorisé à modifier cet événement en tant que participant.", "W" : "S", "%n more" : "%n de plus", "No events to display" : "Aucun événement à afficher", + "All participants declined" : "Tous les participants ont décliné", + "Please confirm your participation" : "Veuillez confirmer votre participation", + "You declined this event" : "Vous avez décliné cet événement", + "Your participation is tentative" : "Votre participation est provisoire", "_+%n more_::_+%n more_" : ["+%n de plus","+%n de plus","+%n de plus"], "No events" : "Pas d'évènements", "Create a new event or change the visible time-range" : "Créer un nouvel évènement ou modifier la période visible", + "Failed to save event" : "Échec de la sauvegarde de l'événement", "It might have been deleted, or there was a typo in a link" : "Il a peut-être été supprimé, ou il y a une erreur dans le lien", "It might have been deleted, or there was a typo in the link" : "Il a peut-être été supprimé, ou il y a une erreur dans le lien", "Meeting room" : "Salle de réunion", @@ -444,7 +555,9 @@ "When shared show only busy" : "Si partagé, afficher seulement comme occupé", "When shared hide this event" : "Si partagé, masquer l'évènement", "The visibility of this event in shared calendars." : "Visibilité de cet évènement dans les agendas partagés.", - "Add a location" : "Ajouter un emplacement", + "Add a location" : "Ajouter un lieu", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Ajouter une description\n\n- Sur quoi porte cette réunion\n- Points à l'ordre du jour\n- Tout ce que les participants doivent préparer", + "Open Link" : "Ouvrir le lien", "Add a description" : "Ajouter une description", "Status" : "Statut", "Confirmed" : "Confirmé", @@ -458,135 +571,26 @@ "Add this as a new category" : "Ajouter comme nouvelle catégorie", "Custom color" : "Couleur personnalisée", "Special color of this event. Overrides the calendar-color." : "Couleur de l'évènement. Remplace la couleur de l'agenda.", - "Chat room for event" : "Salle de discussion de cet événement", + "Error while sharing file" : "Erreur lors du partage du fichier", + "Error while sharing file with user" : "Erreur lors du partage du fichier avec un utilisateur", + "Error creating a folder {folder}" : "Erreur lors de la création d'un dossier {folder}", + "Attachment {fileName} already exists!" : "La pièce jointe {fileName} existe déjà !", + "Attachment {fileName} added!" : "Pièce jointe {fileName} ajoutée !", + "An error occurred during uploading file {fileName}" : "Une erreur s'est produite lors de l'envoi du fichier {fileName}", + "An error occurred during getting file information" : "Une erreur est survenue lors de la récupération des informations du fichier", + "Talk conversation for event" : "Conversation Talk pour l'événement", + "An error occurred, unable to delete the calendar." : "Une erreur est survenue, impossible de supprimer l'agenda.", "Imported {filename}" : "{filename} importé", - "Meditation" : "Méditation", - "Relaxing" : "Détente", - "Relax" : "Détente", - "Break" : "Pause", - "Commute" : "Transport", - "Commuting" : "En transit", - "Shuttle" : "Navette", - "Invoice" : "Facture", - "Finance" : "Finance", - "Bank" : "Banque", - "Money" : "Argent", - "Wedding" : "Mariage", - "Dog" : "Chien", - "Concert" : "Concert", - "Festival" : "Festival", - "Theater" : "Théâtre", - "Theatre" : "Théâtre", - "Presentation" : "Présentation", - "Talk" : "Discussion", - "Speech" : "Prise de parole", - "Deadline" : "Date limite", - "Submission" : "Envoi", - "Reporting" : "Rapports", - "Camping" : "Camping", - "Camp" : "Camping", - "Election" : "Élection", - "Voting" : "Vote", - "Vote" : "Vote", - "Barbecue" : "Barbecue", - "Barbeque" : "Barbecue", - "Garden" : "Jardin", - "Farm" : "Ferme", - "Movie" : "Film", - "Cinema" : "Cinéma", - "Graduation" : "Examen", - "Brainstorm" : "Réunion", - "Review" : "Revoir", - "Audit" : "Audit", - "Inspection" : "Inspection", - "Proofreading" : "Relecture", - "Baseball" : "Baseball", - "Meet" : "Rencontre", - "Planning" : "Planning", - "Pointing" : "Pointage", - "Retrospective" : "Rétrospective", - "Office" : "Bureau", - "Contributor week" : "Semaine des contributeurs", - "Mail" : "Mail", - "Soccer" : "Football", - "Football" : "Football", - "Gaming" : "Jeu", - "Drive" : "Trajet en voiture", - "Driving" : "Conduite", - "Bicycle" : "Vélo", - "Cycle" : "Vélo", - "Cycling" : "Vélo", - "Biking" : "Vélo", - "Bike" : "Vélo", - "Podcast" : "Podcast", - "Basketball" : "Basketball", - "Fishing" : "Pêche", - "Hiking" : "Randonnée", - "Hike" : "Randonnée", - "Art" : "Art", - "Exhibition" : "Exposition", - "Museum" : "Musée", - "Pilates" : "Pilates", - "Park" : "Promenade au parc", - "Walk" : "Marche", - "Studying" : "Études", - "Doctor" : "Docteur", - "Health" : "Santé", - "Dentist" : "Dentiste", - "Hospital" : "Hôpital", - "Interview" : "Interview", - "Training" : "Entraînement", - "Practice" : "Entraînement", - "Sports" : "Sports", - "Exercise" : "Sport", - "Work out" : "Sport", - "Working out" : "Entraînement", - "Gym" : "Gym", - "Barber" : "Barbier", - "Haircut" : "Coiffeur", - "Hairdresser" : "Coiffeur", - "Exam" : "Examen", - "Written test" : "Test écrit", - "Oral test" : "Test oral", - "Working" : "Travail", - "New Years Eve" : "Jour de l'An", - "NYE" : "Jour de l'An", - "Fireworks" : "Feu artifice", - "Running" : "Course à pied", - "Go for a run" : "Jogging", - "Marathon" : "Marathon", - "Video-conference" : "Visioconférence", - "Conference-call" : "Conférence téléphonique", - "Video-call" : "Appel vidéo", - "Video-chat" : "Conversation vidéo", - "Video-meeting" : "Rendez-vous en visioconférence", - "Call" : "Appel", - "Calling" : "Appeler", - "Christmas" : "Noël", - "Conference" : "Conférence", - "Pizza" : "Pizza", - "Travelling" : "Voyager", - "Trip" : "Voyage", - "Journey" : "Trajet", - "Collaborate" : "Collaboration", - "Pair" : "Pair", - "Lecture" : "Lecture", - "Seminar" : "Séminaire", - "Teaching" : "Enseignement", - "Photograph" : "Photographe", - "Party" : "Fête", - "Celebration" : "Fête", - "Celebrate" : "Fête", - "Birthday" : "Anniversaire", - "Shopping" : "Courses", - "Groceries" : "Courses", - "Skate" : "Skate-board", - "Skateboard" : "Skate-board", - "Wine tasting" : "Dégustation de vin", - "Golf" : "Golf", - "Dinner" : "Diner", - "Lunch" : "Repas", + "This is an event reminder." : "Ceci est un rappel d'événement.", + "Error while parsing a PROPFIND error" : "Erreur lors de l'analyse d'une erreur PROPFIND", "Appointment not found" : "Rendez-vous non trouvé", - "User not found" : "Utilisateur non trouvé" + "User not found" : "Utilisateur non trouvé", + "Reminder" : "Rappel", + "+ Add reminder" : "+ Ajouter un rappel", + "Select automatic slot" : "Sélectionner un créneau automatique", + "with" : "avec", + "Available times:" : "Horaires disponibles:", + "Suggestions" : "Suggestions", + "Details" : "Détails" },"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/ga.js b/l10n/ga.js new file mode 100644 index 0000000000000000000000000000000000000000..f41b16fea2d902197c03fc8ba670ea77ed0fda34 --- /dev/null +++ b/l10n/ga.js @@ -0,0 +1,598 @@ +OC.L10N.register( + "calendar", + { + "Provided email-address is too long" : "Ar choinníoll go bhfuil an seoladh ríomhphoist ró-fhada", + "User-Session unexpectedly expired" : "Chuaigh an Seisiún Úsáideora in éag gan choinne", + "Provided email-address is not valid" : "Ar choinníoll nach bhfuil an seoladh ríomhphoist bailí", + "%s has published the calendar »%s«" : "D'fhoilsigh %s an féilire »%s«", + "Unexpected error sending email. Please contact your administrator." : "Earráid gan choinne agus ríomhphost á sheoladh. Déan teagmháil le do riarthóir le do thoil.", + "Successfully sent email to %1$s" : "D'éirigh le seoladh ríomhphoist chuig %1$s", + "Hello," : "Dia dhuit,", + "We wanted to inform you that %s has published the calendar »%s«." : "Theastaigh uainn a chur in iúl duit go bhfuil an féilire »%s« foilsithe ag %s.", + "Open »%s«" : "Oscail »%s«", + "Cheers!" : "Sláinte mhaith!", + "Upcoming events" : "Imeachtaí atá ag Teacht", + "No more events today" : "Níl a thuilleadh imeachtaí ann inniu", + "No upcoming events" : "Níl aon imeachtaí le teacht", + "More events" : "Tuilleadh imeachtaí", + "%1$s with %2$s" : "%1$s le %2$s", + "Calendar" : "Féilire", + "New booking {booking}" : "Áirithint nua {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "chuir {display_name} ({email}) an coinne \"{config_display_name}\" in áirithe ar {date_time}.", + "Appointments" : "Coinní", + "Schedule appointment \"%s\"" : "Sceideal coinne \"%s\"", + "Schedule an appointment" : "Sceideal coinne", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Ullmhaigh do %s", + "Follow up for %s" : "Leantach le haghaidh %s", + "Your appointment \"%s\" with %s needs confirmation" : "Ní mór do choinne \"%s\" le %s a dhearbhú", + "Dear %s, please confirm your booking" : "A %s, a chara, deimhnigh d'áirithint le do thoil", + "Confirm" : "Deimhnigh", + "Appointment with:" : "Ceapachán le:", + "Description:" : "Cur síos:", + "This confirmation link expires in %s hours." : "Rachaidh an nasc dearbhaithe seo in éag i gceann %s uair.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Más mian leat an coinne a chur ar ceal tar éis an tsaoil, déan teagmháil le d’eagraí trí fhreagra a thabhairt don ríomhphost seo nó trí chuairt a thabhairt ar a leathanach próifíle le do thoil.", + "Your appointment \"%s\" with %s has been accepted" : "Glacadh le do choinne \"%s\" le %s", + "Dear %s, your booking has been accepted." : "A %s, a chara, glacadh le d'áirithint.", + "Appointment for:" : "Ceapachán le haghaidh:", + "Date:" : "Dáta:", + "You will receive a link with the confirmation email" : "Gheobhaidh tú nasc leis an ríomhphost deimhnithe", + "Where:" : "Cá háit:", + "Comment:" : "Nóta tráchta:", + "You have a new appointment booking \"%s\" from %s" : "Tá coinne nua agat le \"%s\" a chur in áirithe ó %s", + "Dear %s, %s (%s) booked an appointment with you." : "A %s, a chara, chuir %s (%s) coinne in áirithe leat.", + "A Calendar app for Nextcloud" : "Aip Féilire do Nextcloud", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aip Féilire do Nextcloud. Sioncronaigh go héasca imeachtaí ó ghléasanna éagsúla le do Nextcloud agus cuir in eagar iad ar líne.\n\n* 🚀 **Comhtháthú le haipeanna eile Nextcloud!** Cosúil le Teagmhálacha, Caint, Tascanna, Deic agus Ciorcail\n* 🌐 **Tacaíocht WebCal!** Ar mhaith leat laethanta cluichí na foirne is fearr leat a fheiceáil i d’fhéilire? Fadhb ar bith!\n* 🙋 **Freastalaithe!** Tabhair cuireadh do dhaoine teacht chuig d’imeachtaí\n* ⌚ **Saor in Aisce/Gnóthach!** Féach cathain a bheidh do lucht freastail ar fáil le bualadh\n* ⏰ **Meabhrúcháin!** Faigh aláram le haghaidh imeachtaí laistigh de do bhrabhsálaí agus trí ríomhphost\n* 🔍 **Cuardaigh!** Faigh do chuid imeachtaí ar a suaimhneas\n* ☑️ **Tascanna!** Féach tascanna nó cártaí Deic le dáta dlite díreach san fhéilire\n* 🔈 **Seomraí cainte!** Cruthaigh seomra Caint gaolmhar agus cruinniú á chur in áirithe agat gan ach cliceáil amháin\n* 📆 **Coinne a chur in áirithe** Seol nasc chuig daoine ionas gur féidir leo coinne a chur in áirithe leat [leis an aip seo] ( https://apps.nextcloud.com/apps/appointments)\n* 📎 **Ceangaltáin!** Cuir leis, uaslódáil agus féach ar cheangaltáin imeachta\n* 🙈 **Nílimid ag athchruthú an rotha!** Bunaithe ar an leabharlann iontach [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) agus [fullcalendar](https://lgithubar.com/library", + "Previous day" : "Lá roimhe sin", + "Previous week" : "An tseachtain roimhe sin", + "Previous year" : "bhliain roimhe sin", + "Previous month" : "an mhí roimhe sin", + "Next day" : "An chéad lá eile", + "Next week" : "An tseachtain seo chugainn", + "Next year" : "An bhliain seo chugainn", + "Next month" : "An mhí seo chugainn", + "Create new event" : "Cruthaigh imeacht nua", + "Event" : "Imeacht", + "Today" : "Inniu", + "Day" : "Lá", + "Week" : "Seachtain", + "Month" : "Mí", + "Year" : "Bliain", + "List" : "Liosta", + "Appointment link was copied to clipboard" : "Rinneadh an nasc coinní a chóipeáil chuig an ngearrthaisce", + "Appointment link could not be copied to clipboard" : "Níorbh fhéidir an nasc coinní a chóipeáil chuig an ngearrthaisce", + "Preview" : "Réamhamharc", + "Copy link" : "Cóipeáil an nasc", + "Edit" : "Cuir in eagar", + "Delete" : "Scrios", + "Appointment schedules" : "Sceidil ceapacháin", + "Create new" : "Cruthaigh nua", + "Disable calendar \"{calendar}\"" : "Díchumasaigh féilire \"{calendar}\"", + "Disable untitled calendar" : "Díchumasaigh féilire gan teideal", + "Enable calendar \"{calendar}\"" : "Cumasaigh féilire \"{calendar}\"", + "Enable untitled calendar" : "Cumasaigh féilire gan teideal", + "An error occurred, unable to change visibility of the calendar." : "Tharla earráid, níorbh fhéidir infheictheacht an fhéilire a athrú.", + "Untitled calendar" : "Féilire gan teideal", + "Shared with you by" : "Roinnte le leat ag", + "Edit and share calendar" : "Cuir féilire in eagar agus a roinnt", + "Edit calendar" : "Cuir féilire in eagar", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Ag dí-roinnt an fhéilire i {countdown} soicind","Ag dí-roinnt an fhéilire i {countdown} soicind","Ag dí-roinnt an fhéilire i {countdown} soicind","Ag dí-roinnt an fhéilire i {countdown} soicind","Ag dí-roinnt an fhéilire i {countdown} soicind"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["An féilire á scriosadh i {countdown} soicind","An féilire á scriosadh i {countdown} soicind","An féilire á scriosadh i {countdown} soicind","An féilire á scriosadh i {countdown} soicind","An féilire á scriosadh i {countdown} soicind"], + "An error occurred, unable to create the calendar." : "Tharla earráid, níorbh fhéidir an féilire a chruthú.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Cuir isteach nasc bailí (ag tosú le http://, https://, webcal://, nó webcals://) le do thoil", + "Calendars" : "Féilirí", + "Add new" : "Cuir nua leis", + "New calendar" : "Féilire nua", + "Name for new calendar" : "Ainm don fhéilire nua", + "Creating calendar …" : "Féilire á chruthú …", + "New calendar with task list" : "Féilire nua le liosta tascanna", + "New subscription from link (read-only)" : "Síntiús nua ón nasc (read-only)", + "Creating subscription …" : "Síntiús a chruthú …", + "Add public holiday calendar" : "Cuir féilire saoire poiblí leis", + "Add custom public calendar" : "Cuir féilire poiblí saincheaptha leis", + "Calendar link copied to clipboard." : "Cóipeáladh an nasc féilire chuig an ngearrthaisce.", + "Calendar link could not be copied to clipboard." : "Níorbh fhéidir nasc féilire a chóipeáil chuig an ngearrthaisce.", + "Copy subscription link" : "Cóipeáil nasc síntiús", + "Copying link …" : "Nasc á chóipeáil …", + "Copied link" : "Nasc cóipeáilte", + "Could not copy link" : "Níorbh fhéidir an nasc a chóipeáil", + "Export" : "Easpórtáil", + "Untitled item" : "Mír gan teideal", + "Unknown calendar" : "Féilire anaithnid", + "Could not load deleted calendars and objects" : "Níorbh fhéidir féilirí agus oibiachtaí scriosta a lódáil", + "Could not delete calendar or event" : "Níorbh fhéidir féilire nó imeacht a scriosadh", + "Could not restore calendar or event" : "Níorbh fhéidir féilire nó imeacht a chur ar ais", + "Do you really want to empty the trash bin?" : "Ar mhaith leat an bosca bruscair a fholmhú?", + "Empty trash bin" : "Bruscar folamh", + "Trash bin" : "Bruscar", + "Loading deleted items." : "Míreanna scriosta á lódáil.", + "You do not have any deleted items." : "Níl aon mhír scriosta agat.", + "Name" : "Ainm", + "Deleted" : "Scriosta", + "Restore" : "Athchóirigh", + "Delete permanently" : "Scrios go buan", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Scriostar míreanna sa bhosca bruscair tar éis {numDays} lá","Scriostar míreanna sa bhosca bruscair tar éis {numDays} laethanta","Scriostar míreanna sa bhosca bruscair tar éis {numDays} laethanta","Scriostar míreanna sa bhosca bruscair tar éis {numDays} laethanta","Scriostar míreanna sa bhosca bruscair tar éis {numDays} laethanta"], + "Could not update calendar order." : "Níorbh fhéidir an t-ordú féilire a nuashonrú.", + "Shared calendars" : "Féilirí roinnte", + "Deck" : "Deic", + "Hidden" : "I bhfolach", + "Internal link" : "Nasc inmheánach", + "A private link that can be used with external clients" : "Nasc príobháideach is féidir a úsáid le cliaint sheachtracha", + "Copy internal link" : "Cóipeáil an nasc inmheánach", + "An error occurred, unable to publish calendar." : "Tharla earráid, ní féidir an féilire a fhoilsiú.", + "An error occurred, unable to send email." : "Tharla earráid, ní féidir ríomhphost a sheoladh.", + "Embed code copied to clipboard." : "Cóipeáladh an cód chuig an ngearrthaisce.", + "Embed code could not be copied to clipboard." : "Níorbh fhéidir an cód leabaithe a chóipeáil chuig an ngearrthaisce.", + "Unpublishing calendar failed" : "Theip ar dhífhoilsiú an fhéilire", + "Share link" : "Comhroinn nasc", + "Copy public link" : "Cóipeáil nasc poiblí", + "Send link to calendar via email" : "Seol nasc chuig an bhféilire trí ríomhphost", + "Enter one address" : "Cuir isteach seoladh amháin", + "Sending email …" : "Ríomhphost á sheoladh …", + "Copy embedding code" : "Cóipeáil cód leabú", + "Copying code …" : "Cód á chóipeáil …", + "Copied code" : "Cód cóipeáilte", + "Could not copy code" : "Níorbh fhéidir an cód a chóipeáil", + "Delete share link" : "Scrios an nasc comhroinnte", + "Deleting share link …" : "Nasc comhroinnte á scriosadh …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Foireann)", + "An error occurred while unsharing the calendar." : "Tharla earráid agus an féilire á dhí-roinnt.", + "An error occurred, unable to change the permission of the share." : "Tharla earráid, níorbh fhéidir cead na comhroinnte a athrú.", + "can edit" : "is féidir in eagar", + "Unshare with {displayName}" : "Díroinn le {displayName}", + "Share with users or groups" : "Roinn le húsáideoirí nó le grúpaí", + "No users or groups" : "Gan úsáideoirí nó grúpaí", + "Failed to save calendar name and color" : "Theip ar shábháil ainm agus dath an fhéilire", + "Calendar name …" : "Ainm an fhéilire…", + "Never show me as busy (set this calendar to transparent)" : "Ná taispeáin dom chomh gnóthach riamh (socraigh an féilire seo go trédhearcach)", + "Share calendar" : "Comhroinn féilire", + "Unshare from me" : "Dí-roinn uaim", + "Save" : "Sábháil", + "Import calendars" : "Iompórtáil féilirí", + "Please select a calendar to import into …" : "Le do thoil roghnaigh féilire le hiompórtáil isteach in …", + "Filename" : "Ainm comhaid", + "Calendar to import into" : "Féilire le hiompórtáil isteach", + "Cancel" : "Cealaigh", + "_Import calendar_::_Import calendars_" : ["Iompórtáil féilire","Iompórtáil féilirí","Iompórtáil féilirí","Iompórtáil féilirí","Iompórtáil féilirí"], + "Select the default location for attachments" : "Roghnaigh an suíomh réamhshocraithe le haghaidh ceangaltán", + "Pick" : "Pioc", + "Invalid location selected" : "Suíomh neamhbhailí roghnaithe", + "Attachments folder successfully saved." : "D'éirigh le fillteán na gceangaltán a shábháil.", + "Error on saving attachments folder." : "Earráid agus fillteán na gceangaltán á shábháil.", + "Default attachments location" : "Default attachments location", + "{filename} could not be parsed" : "Níorbh fhéidir {filename} a pharsáil", + "No valid files found, aborting import" : "Níor aimsíodh aon chomhaid bhailí, ag cur deireadh leis an iompórtáil", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["D'éirigh le hiompórtáil %n imeacht","D'éirigh le hiompórtáil %n n-imeacht","D'éirigh le hiompórtáil %n n-imeacht","D'éirigh le hiompórtáil %n n-imeacht","D'éirigh le hiompórtáil %n n-imeacht"], + "Import partially failed. Imported {accepted} out of {total}." : "Theip ar an iompórtáil i bpáirt. Iompórtáladh {accepted} as {total}.", + "Automatic" : "Uathoibríoch", + "Automatic ({detected})" : "Uathoibríoch ({detected})", + "New setting was not saved successfully." : "Níor sábháladh an socrú nua.", + "Navigation" : "Loingseoireacht", + "Previous period" : "Tréimhse roimhe seo", + "Next period" : "An chéad tréimhse eile", + "Views" : "Radhairc", + "Day view" : "Radharc an lae", + "Week view" : "Radharc na seachtaine", + "Month view" : "Radharc na míosa", + "Year view" : "Radharc na bliana", + "List view" : "Amharc liosta", + "Actions" : "Gníomhartha", + "Create event" : "Cruthaigh imeacht", + "Show shortcuts" : "Taispeáin aicearraí", + "Editor" : "eagarthóir", + "Close editor" : "Dún eagarthóir", + "Save edited event" : "Sábháil imeacht curtha in eagar", + "Delete edited event" : "Scrios imeacht curtha in eagar", + "Duplicate event" : "Imeacht dhúblach", + "Shortcut overview" : "Forbhreathnú aicearra", + "or" : "nó", + "Calendar settings" : "Socruithe féilire", + "At event start" : "Ag tús na hócáide", + "No reminder" : "Gan meabhrúchán", + "Failed to save default calendar" : "Theip ar shábháil an fhéilire réamhshocraithe", + "CalDAV link copied to clipboard." : "Nasc CalDAV cóipeáilte chuig an ngearrthaisce.", + "CalDAV link could not be copied to clipboard." : "Níorbh fhéidir nasc CalDAV a chóipeáil chuig an ngearrthaisce.", + "Enable birthday calendar" : "Cumasaigh féilire lá breithe", + "Show tasks in calendar" : "Taispeáin tascanna i bhféilire", + "Enable simplified editor" : "Cumasaigh eagarthóir simplithe", + "Limit the number of events displayed in the monthly view" : "Teorainn a chur le líon na n-imeachtaí a thaispeántar san amharc míosúil", + "Show weekends" : "Taispeáin deireadh seachtaine", + "Show week numbers" : "Taispeáin uimhreacha na seachtaine", + "Time increments" : "Arduithe ama", + "Default calendar for incoming invitations" : "Féilire réamhshocraithe le haghaidh cuirí isteach", + "Default reminder" : "Meabhrúchán réamhshocraithe", + "Copy primary CalDAV address" : "Cóipeáil príomhsheoladh CalDAV", + "Copy iOS/macOS CalDAV address" : "Cóipeáil seoladh iOS/macOS CalDAV", + "Personal availability settings" : "Socruithe infhaighteachta pearsanta", + "Show keyboard shortcuts" : "Taispeáin aicearraí méarchláir", + "Appointment schedule successfully created" : "D'éirigh le sceideal na gcoinní a chruthú", + "Appointment schedule successfully updated" : "D'éirigh le sceideal na gcoinní a nuashonrú", + "_{duration} minute_::_{duration} minutes_" : ["{duration} nóiméad","{duration} nóiméad","{duration} nóiméad","{duration} nóiméad","{duration} nóiméad"], + "0 minutes" : "0 nóiméad", + "_{duration} hour_::_{duration} hours_" : ["{fad} uair","{fad} uair an chloig","{fad} uair an chloig","{fad} uair an chloig","{fad} uair an chloig"], + "_{duration} day_::_{duration} days_" : ["{fad} lá","{fad} lá","{fad} lá","{fad} lá","{fad} lá"], + "_{duration} week_::_{duration} weeks_" : ["{duration} seachtain","{duration} seachtain","{duration} seachtain","{duration} seachtain","{duration} seachtain"], + "_{duration} month_::_{duration} months_" : ["{duration} mhí","{duration} mhí","{duration} mhí","{duration} mhí","{duration} mhí"], + "_{duration} year_::_{duration} years_" : ["{duration} bliana","{duration} bliana","{duration} bliana","{duration} bliana","{duration} bliana"], + "To configure appointments, add your email address in personal settings." : "Chun coinní a chumrú, cuir do sheoladh ríomhphoist i socruithe pearsanta.", + "Public – shown on the profile page" : "Poiblí – léirithe ar an leathanach próifíle", + "Private – only accessible via secret link" : "Príobháideach – ní féidir teacht air ach trí nasc rúnda", + "Appointment schedule saved" : "Sceideal coinní sábháilte", + "Create appointment schedule" : "Cruthaigh sceideal coinne", + "Edit appointment schedule" : "Cuir sceideal na gcoinní in eagar", + "Update" : "Nuashonrú", + "Appointment name" : "Ainm an cheapacháin", + "Location" : "Suíomh", + "Create a Talk room" : "Cruthaigh seomra Caint", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Cruthófar nasc uathúil le haghaidh gach coinne a chuirtear in áirithe agus seolfar é tríd an ríomhphost deimhnithe", + "Description" : "Cur síos", + "Visibility" : "Infheictheacht", + "Duration" : "Fad", + "Increments" : "Incrimintí", + "Additional calendars to check for conflicts" : "Féilirí breise chun coinbhleachtaí a sheiceáil", + "Pick time ranges where appointments are allowed" : "Roghnaigh raonta ama ina gceadaítear coinní", + "to" : "chun", + "Delete slot" : "Scrios sliotán", + "No times set" : "Uimh amanna socraithe", + "Add" : "Cuir", + "Monday" : "Dé Luain", + "Tuesday" : "Dé Máirt", + "Wednesday" : "Dé Céadaoin", + "Thursday" : "Déardaoin", + "Friday" : "Aoine", + "Saturday" : "Sathairn", + "Sunday" : "Domhnach", + "Weekdays" : "Laethanta na seachtaine", + "Add time before and after the event" : "Cuir am leis roimh an imeacht agus ina dhiaidh", + "Before the event" : "Roimh an ócáid", + "After the event" : "Tar éis na hócáide", + "Planning restrictions" : "Srianta pleanála", + "Minimum time before next available slot" : "Íosmhéid ama roimh an gcéad sliotán eile atá ar fáil", + "Max slots per day" : "Sliotán uasta in aghaidh an lae", + "Limit how far in the future appointments can be booked" : "Teorainn a chur le cé chomh fada sa todhchaí is féidir coinní a chur in áirithe", + "It seems a rate limit has been reached. Please try again later." : "Is cosúil go bhfuil teorainn ráta bainte amach. Bain triail eile as ar ball le do thoil.", + "Please confirm your reservation" : "Deimhnigh d’áirithint le do thoil", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Sheolamar ríomhphost chugat le sonraí. Deimhnigh do choinne ag baint úsáide as an nasc sa ríomhphost le do thoil. Is féidir leat an leathanach seo a dhúnadh anois le do thoil.", + "Your name" : "Do ainm", + "Your email address" : "Do sheoladh ríomhphoist", + "Please share anything that will help prepare for our meeting" : "Roinnigí le bhur dtoil aon rud a chuideoidh linn ullmhú dár gcruinniú le do thoil", + "Could not book the appointment. Please try again later or contact the organizer." : "Níorbh fhéidir an coinne a chur in áirithe. Bain triail eile as ar ball le do thoil nó déan teagmháil leis an eagraí le do thoil.", + "Back" : "Ar ais", + "Book appointment" : "Coinne leabhar", + "Error fetching Talk conversations." : "Earráid agus comhráite Talk á fháil.", + "Conversation does not have a valid URL." : "Níl URL bailí ag an gcomhrá.", + "Successfully added Talk conversation link to location." : "D'éirigh leis an nasc Talk Chat a chur leis an suíomh.", + "Successfully added Talk conversation link to description." : "D'éirigh leis an nasc Talk conversation a chur leis an gcur síos.", + "Failed to apply Talk room." : "Theip ar an seomra cainte a chur i bhfeidhm.", + "Error creating Talk conversation" : "Earráid agus comhrá á chruthú", + "Select a Talk Room" : "Roghnaigh Seomra Caint", + "Add Talk conversation" : "Cuir comhrá leis", + "Fetching Talk rooms…" : "Seomraí Caint á bhfáil…", + "No Talk room available" : "Níl seomra cainte ar fáil", + "Create a new conversation" : "Cruthaigh comhrá nua", + "Select conversation" : "Roghnaigh comhrá", + "on" : "ar", + "at" : "ag", + "before at" : "roimh ag", + "Notification" : "Fógra", + "Email" : "Ríomhphost", + "Audio notification" : "Fógra fuaime", + "Other notification" : "Fógra eile", + "Relative to event" : "I gcoibhneas leis an imeacht", + "On date" : "Ar dháta", + "Edit time" : "Cuir am in eagar", + "Save time" : "Sábháil am", + "Remove reminder" : "Bain meabhrúchán", + "Add reminder" : "Cuir meabhrúchán leis", + "seconds" : "soicind", + "minutes" : "nóiméad", + "hours" : "uair an chloig", + "days" : "laethanta", + "weeks" : "seachtaine", + "Choose a file to add as attachment" : "Roghnaigh comhad le cur leis mar cheangaltán", + "Choose a file to share as a link" : "Roghnaigh comhad le roinnt mar nasc", + "Attachment {name} already exist!" : "Tá ceangaltán {name} ann cheana féin!", + "Could not upload attachment(s)" : "Níorbh fhéidir ceangaltán(cheangail) a uaslódáil", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Tá tú ar tí comhad a íoslódáil. Seiceáil ainm an chomhaid sula n-osclaíonn tú é. An bhfuil tú cinnte go leanfaidh tú ar aghaidh?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Tá tú ar tí nascleanúint a dhéanamh chuig {host}. An bhfuil tú cinnte leanúint ar aghaidh? Nasc: {link}", + "Proceed" : "Lean ar aghaidh", + "No attachments" : "Gan ceangaltáin", + "Add from Files" : "Cuir ó Chomhaid", + "Upload from device" : "Íosluchtaigh ó gléas", + "Delete file" : "Scrios an comhad", + "Confirmation" : "Daingniú", + "_{count} attachment_::_{count} attachments_" : ["{comhaireamh} ceangaltán","{comhaireamh} ceangaltán","{comhaireamh} ceangaltán","{comhaireamh} ceangaltán","{comhaireamh} ceangaltán"], + "Suggested" : "Molta", + "Available" : "Ar fáil", + "Invitation accepted" : "Glacadh le cuireadh", + "Accepted {organizerName}'s invitation" : "Glacadh le cuireadh {organizerName}", + "Participation marked as tentative" : "Rannpháirtíocht marcáilte mar thrialach", + "Invitation is delegated" : "Tarmligtear cuireadh", + "Not available" : "Níl sé ar fáil", + "Invitation declined" : "Diúltaíodh don chuireadh", + "Declined {organizerName}'s invitation" : "Dhiúltaigh {organizerName} cuireadh", + "Availability will be checked" : "Seiceálfar infhaighteacht", + "Invitation will be sent" : "Seolfar cuireadh", + "Failed to check availability" : "Theip ar infhaighteacht a sheiceáil", + "Failed to deliver invitation" : "Theip ar an gcuireadh a sheachadadh", + "Awaiting response" : "Ag feitheamh le freagra", + "Checking availability" : "Infhaighteacht a sheiceáil", + "Has not responded to {organizerName}'s invitation yet" : "Níor fhreagair cuireadh {organizerName} fós", + "Suggested times" : "Amanna molta", + "chairperson" : "cathaoirleach", + "required participant" : "rannpháirtí riachtanach", + "non-participant" : "neamh-rannpháirtí", + "optional participant" : "rannpháirtí roghnach", + "{organizer} (organizer)" : "{organizer} (eagraí)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Infhaighteacht lucht freastail, acmhainní agus seomraí", + "Suggestion accepted" : "Glacadh le moladh", + "Previous date" : "Dáta roimhe seo", + "Next date" : "An chéad dáta eile", + "Legend" : "Finscéal", + "Out of office" : "As oifig", + "Attendees:" : "Lucht freastail:", + "Done" : "Déanta", + "Search room" : "Seomra cuardaigh", + "Room name" : "Ainm an tseomra", + "Check room availability" : "Seiceáil infhaighteacht an tseomra", + "Free" : "Saor", + "Busy (tentative)" : "gnóthach (éiginnte)", + "Busy" : "Gnóthach", + "Unknown" : "Anaithnid", + "Find a time" : "Faigh am", + "The invitation has been accepted successfully." : "Glacadh leis an gcuireadh go rathúil.", + "Failed to accept the invitation." : "Theip ar glacadh leis an gcuireadh.", + "The invitation has been declined successfully." : "Diúltaíodh don chuireadh.", + "Failed to decline the invitation." : "Theip ar dhiúltú an cuireadh.", + "Your participation has been marked as tentative." : "Marcáladh do rannpháirtíocht mar shealadach.", + "Failed to set the participation status to tentative." : "Theip ar stádas na rannpháirtíochta a shocrú go sealadach.", + "Accept" : "Glac", + "Decline" : "Meath", + "Tentative" : "Sealadach", + "No attendees yet" : "Níl aon lucht freastail fós", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} cuireadh, {confirmedCount} dearbhaithe", + "Please add at least one attendee to use the \"Find a time\" feature." : "Cuir freastalaí amháin ar a laghad leis le go n-úsáidfidh tú an ghné \"Aimsigh am\".", + "Successfully appended link to talk room to location." : "D'éirigh le ceangal leis an seomra cainte a chur i gceangal le suíomh.", + "Successfully appended link to talk room to description." : "D'éirigh le ceangal leis an seomra cainte a chur i gceangal leis an gcur síos.", + "Error creating Talk room" : "Earráid agus an seomra cainte á chruthú", + "Attendees" : "Lucht freastail", + "_%n more guest_::_%n more guests_" : ["%n aoi eile","%n aíonna eile","%n aíonna eile","%n aíonna eile","%n aíonna eile"], + "Remove group" : "Bain an grúpa", + "Remove attendee" : "Bain an freastail", + "Request reply" : "Iarr freagra", + "Chairperson" : "Cathaoirleach", + "Required participant" : "Rannpháirtí riachtanach", + "Optional participant" : "Rannpháirtí roghnach", + "Non-participant" : "Neamh-rannpháirtí", + "_%n member_::_%n members_" : ["%n bhall","%n members","%n members","%n members","%n members"], + "Search for emails, users, contacts, contact groups or teams" : "Déan cuardach do ríomhphoist, úsáideoirí, teagmhálaithe, grúpaí teagmhála nó foirne", + "No match found" : "Níor aimsíodh aon mheaitseáil", + "Note that members of circles get invited but are not synced yet." : "Tabhair faoi deara go bhfaigheann baill de chiorcail cuireadh ach nach bhfuil siad sioncronaithe fós.", + "Note that members of contact groups get invited but are not synced yet." : "Tabhair faoi deara go bhfaigheann baill de ghrúpaí teagmhála cuireadh ach nach bhfuil siad sioncronaithe fós.", + "(organizer)" : "(eagraí)", + "Make {label} the organizer" : "Déan {label} an t-eagraí", + "Make {label} the organizer and attend" : "Déan {label} an t-eagraí agus freastal air", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Chun cuirí a sheoladh amach agus freagraí a láimhseáil, [linkopen]cuir do sheoladh ríomhphoist i socruithe pearsanta[linkclose].", + "Remove color" : "Bain dath", + "Event title" : "Teideal an imeachta", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Ní féidir an socrú lae a mhodhnú le haghaidh imeachtaí atá mar chuid de thacar atarlaithe.", + "From" : "Ó", + "To" : "Chun", + "Repeat" : "Déan arís", + "_time_::_times_" : ["am","amanna","amanna","amanna","amanna"], + "never" : "riamh", + "on date" : "ar dháta", + "after" : "tar éis", + "End repeat" : "Cuir deireadh leis an athuair", + "Select to end repeat" : "Roghnaigh chun deireadh a chur leis an athuair", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Is eisceacht é an teagmhas seo maidir le tacar atarlaithe. Ní féidir leat riail atarlaithe a chur leis.", + "first" : " an chéad", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Ní bhainfidh athruithe ar an riail atarlaithe ach leis seo agus le gach tarlú sa todhchaí.", + "Repeat every" : "Déan gach", + "By day of the month" : "De réir lá na míosa", + "On the" : "Ar an", + "_day_::_days_" : ["lá","laethanta","laethanta","laethanta","laethanta"], + "_week_::_weeks_" : ["seachtain","seachtaine","seachtaine","seachtaine","seachtaine"], + "_month_::_months_" : ["mí","míonna","míonna","míonna","míonna"], + "_year_::_years_" : ["bliain","blianta","blianta","blianta","blianta"], + "On specific day" : "Ar lá ar leith", + "weekday" : "i rith na seachtaine", + "weekend day" : "lá deireadh seachtaine", + "Does not repeat" : "Ní athuair", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Ní thacaíonn Nextcloud go hiomlán le sainmhíniú atarlaithe an imeachta seo. Má chuireann tú na roghanna atarlaithe in eagar, seans go gcaillfear atarlú áirithe.", + "No rooms or resources yet" : "Níl seomraí ná acmhainní ann fós", + "Resources" : "Acmhainní", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : [" {suíocháin Cumas} suíochán","{Toilleadh suíocháin} suíocháin","{Toilleadh suíocháin} suíocháin","{Toilleadh suíocháin} suíocháin","{Toilleadh suíocháin} suíocháin"], + "Add resource" : "Cuir acmhainn leis", + "Has a projector" : "Tá teilgeoir", + "Has a whiteboard" : "Tá clár bán", + "Wheelchair accessible" : "Inrochtana do chathaoireacha rothaí", + "Remove resource" : "Bain acmhainn", + "Search for resources or rooms" : "Cuardaigh acmhainní nó seomraí", + "available" : "ar fáil", + "unavailable" : "ar fáil", + "Show all rooms" : "Taispeáin gach seomra", + "Projector" : "Teilgeoir", + "Whiteboard" : "Clár bán", + "Room type" : "Cineál seomra", + "Any" : "Aon", + "Minimum seating capacity" : "Toilleadh suíocháin íosta", + "More details" : "Tuilleadh sonraí", + "Update this and all future" : "Nuashonraigh seo agus gach todhchaí", + "Update this occurrence" : "Nuashonraigh an teagmhas seo", + "Public calendar does not exist" : "Níl féilire poiblí ann", + "Maybe the share was deleted or has expired?" : "B'fhéidir gur scriosadh an sciar nó go bhfuil sé imithe in éag?", + "from {formattedDate}" : "ó {formattedDate}", + "to {formattedDate}" : "chuig {formattedDate}", + "on {formattedDate}" : "ar {formattedDate}", + "from {formattedDate} at {formattedTime}" : "ó {formattedDate} ag {formattedTime}", + "to {formattedDate} at {formattedTime}" : "chuig {formattedDate} ag {formattedTime}", + "on {formattedDate} at {formattedTime}" : "ar {formattedDate} ag {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} ag {formattedTime}", + "Please enter a valid date" : "Cuir isteach dáta bailí le do thoil", + "Please enter a valid date and time" : "Cuir isteach dáta agus am bailí le do thoil", + "Select a time zone" : "Roghnaigh crios ama", + "Please select a time zone:" : "Roghnaigh crios ama le do thoil:", + "Pick a time" : "Roghnaigh am", + "Pick a date" : "Roghnaigh dáta", + "Type to search time zone" : "Clóscríobh chun crios ama a chuardach", + "Global" : "Domhanda", + "Holidays in {region}" : "Laethanta Saoire i {region}", + "An error occurred, unable to read public calendars." : "Tharla earráid, níorbh fhéidir féilirí poiblí a léamh.", + "An error occurred, unable to subscribe to calendar." : "Tharla earráid, ní féidir liostáil le féilire.", + "Public holiday calendars" : "Féilirí saoire poiblí", + "Public calendars" : "Féilirí poiblí", + "No valid public calendars configured" : "Níl aon fhéilire poiblí bailí cumraithe", + "Speak to the server administrator to resolve this issue." : "Labhair le riarthóir an fhreastalaí chun an fhadhb seo a réiteach.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Soláthraíonn Thunderbird féilirí saoire poiblí. Déanfar sonraí féilire a íoslódáil ó {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Molann riarthóir an fhreastalaí na féilirí poiblí seo. Déanfar sonraí féilire a íoslódáil ón suíomh Gréasáin faoi seach.", + "By {authors}" : "Le {authors}", + "Subscribed" : "Suibscríofa", + "Subscribe" : "Liostáil", + "Could not fetch slots" : "Níorbh fhéidir sliotáin a fháil", + "Select a date" : "Roghnaigh dáta", + "Select slot" : "Roghnaigh sliotán", + "No slots available" : "Níl sliotáin ar fáil", + "The slot for your appointment has been confirmed" : "Tá an sliotán le haghaidh do choinne deimhnithe", + "Appointment Details:" : "Sonraí Coinne:", + "Time:" : "Am:", + "Booked for:" : "Áirithe le haghaidh:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Go raibh maith agat. Deimhníodh d'áirithint ó {startDate} go {endDate}.", + "Book another appointment:" : "Cuir coinne eile in áirithe:", + "See all available slots" : "Féach ar gach sliotán atá ar fáil", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Níl an sliotán do do choinne ó {startDate} go {endDate} ar fáil a thuilleadh.", + "Please book a different slot:" : "Cuir sliotán eile in áirithe le do thoil:", + "Book an appointment with {name}" : "Cuir coinne le {name} in áirithe", + "No public appointments found for {name}" : "Níor aimsíodh aon cheapachán poiblí le haghaidh {name}", + "Personal" : "Pearsanta", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Chinn an bhrath uathoibríoch crios ama gurb é UTC do chrios ama.\nIs dócha gurb é seo an toradh ar bhearta slándála do bhrabhsálaí gréasáin.\nSocraigh do chrios ama de láimh sna socruithe féilire le do thoil.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Níor aimsíodh do chrios ama cumraithe ({timezoneId}). Ag titim ar ais go UTC.\nAthraigh do chrios ama sna socruithe agus cuir in iúl don fhadhb seo le do thoil.", + "Availability of {displayName}" : "Infhaighteacht na{displayName}", + "Event does not exist" : "Níl imeacht ann", + "Duplicate" : "Dúblach", + "Delete this occurrence" : "Scrios an teagmhas seo", + "Delete this and all future" : "Scrios seo agus gach todhchaí", + "All day" : "An lá ar fad", + "Modifications wont get propagated to the organizer and other attendees" : "Ní dhéanfar modhnuithe a iomadú chuig an eagraí agus chuig lucht freastail eile", + "Managing shared access" : "Rochtain roinnte a bhainistiú", + "Deny access" : "Diúltaigh rochtain", + "Invite" : "Cuireadh", + "_User requires access to your file_::_Users require access to your file_" : ["Éilíonn an t-úsáideoir rochtain ar do chomhad","Teastaíonn rochtain ar do chomhad ó úsáideoirí","Teastaíonn rochtain ar do chomhad ó úsáideoirí","Teastaíonn rochtain ar do chomhad ó úsáideoirí","Teastaíonn rochtain ar do chomhad ó úsáideoirí"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Teastaíonn rochtain roinnte ón gceangaltán","Ceangaltáin óna dteastaíonn rochtain roinnte","Ceangaltáin óna dteastaíonn rochtain roinnte","Ceangaltáin óna dteastaíonn rochtain roinnte","Ceangaltáin óna dteastaíonn rochtain roinnte"], + "Untitled event" : "Imeacht gan teideal", + "Close" : "Dún", + "Modifications will not get propagated to the organizer and other attendees" : "Ní dhéanfar na modhnuithe a fhorleathadh chuig an eagraí agus chuig lucht freastail eile", + "Subscribe to {name}" : "Liostáil le {name}", + "Export {name}" : "Easpórtáil {name}", + "Show availability" : "Taispeáin infhaighteacht", + "Anniversary" : "Comóradh", + "Appointment" : "Ceapachán", + "Business" : "Gnó", + "Education" : "Oideachas", + "Holiday" : "Saoire", + "Meeting" : "Cruinniú", + "Miscellaneous" : "Ilghnéitheach", + "Non-working hours" : "Uaireanta neamh-oibre", + "Not in office" : "Ní in oifig", + "Phone call" : "Glaoch fóin", + "Sick day" : "Lá breoite", + "Special occasion" : "Ócáid speisialta", + "Travel" : "Taisteal", + "Vacation" : "Laethanta saoire", + "Midnight on the day the event starts" : "Meán oíche ar an lá a thosaíonn an ócáid", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n lá roimh an imeacht ag {formattedHourMinute}","%n lá roimh an imeacht ag {formattedHourMinute}","%n lá roimh an imeacht ag {formattedHourMinute}","%n lá roimh an imeacht ag {formattedHourMinute}","%n lá roimh an imeacht ag {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n seachtain roimh an imeacht ag {formattedHourMinute}","%n seachtain roimh an imeacht ag {formattedHourMinute}","%n seachtain roimh an imeacht ag {formattedHourMinute}","%n seachtain roimh an imeacht ag {formattedHourMinute}","%n seachtain roimh an imeacht ag {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "ar lá an imeachta ag {formattedHourMinute}", + "at the event's start" : "ag tús na hócáide", + "at the event's end" : "ag deireadh na hócáide", + "{time} before the event starts" : "{time} sula dtosaíonn an t-imeacht", + "{time} before the event ends" : "{time} sula dtiocfaidh deireadh leis an imeacht", + "{time} after the event starts" : "{time} tar éis don imeacht tosú", + "{time} after the event ends" : "{time} tar éis don imeacht críochnú", + "on {time}" : "ar {am}", + "on {time} ({timezoneId})" : "ar {time} ({timezoneId})", + "Week {number} of {year}" : "Seachtain {uimhir} de {bliain}", + "Daily" : "Laethúil", + "Weekly" : "Seachtainiúil", + "Monthly" : "Go míosúil", + "Yearly" : "Bliantúil", + "_Every %n day_::_Every %n days_" : ["Gach %n lá","Gach %n lá","Gach %n lá","Gach %n lá","Gach %n lá"], + "_Every %n week_::_Every %n weeks_" : ["Gach %n seachtain","Gach %n seachtain","Gach %n seachtain","Gach %n seachtain","Gach %n seachtain"], + "_Every %n month_::_Every %n months_" : ["Gach %n mí","Gach %n mí","Gach %n mí","Gach %n mí","Gach %n mí"], + "_Every %n year_::_Every %n years_" : ["Gach %n bliain","Gach %n bliain","Gach %n bliain","Gach %n bliain","Gach %n bliain"], + "_on {weekday}_::_on {weekdays}_" : ["ar {weekday}","ar {weekdays}","ar {weekdays}","ar {weekdays}","ar {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["ar lá {dayOfMonthList}","ar laethanta {dayOfMonthList}","ar laethanta {dayOfMonthList}","ar laethanta {dayOfMonthList}","ar laethanta {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "ar an {ordinalNumber} {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "in {monthNames} ar an {dayOfMonthList}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} ar an {ordinalNumber} {byDaySet}", + "until {untilDate}" : "go dtí {untilDate}", + "_%n time_::_%n times_" : ["%n am","%n uair","%n uair","%n uair","%n uair"], + "second" : "soicind", + "third" : "an tríú", + "fourth" : "an ceathrú", + "fifth" : "an cúigiú", + "second to last" : "dara go deireanach", + "last" : "go deireanach", + "Untitled task" : "Tasc gan teideal", + "Please ask your administrator to enable the Tasks App." : "Iarr ar do riarthóir an Aip Tascanna a chumasú le do thoil.", + "You are not allowed to edit this event as an attendee." : "Níl cead agat an imeacht seo a chur in eagar mar fhreastalaí.", + "W" : "W", + "%n more" : "%n níos mó", + "No events to display" : "Níl aon imeachtaí le taispeáint", + "All participants declined" : "Dhiúltaigh na rannpháirtithe go léir", + "Please confirm your participation" : "Deimhnigh do rannpháirtíocht", + "You declined this event" : "Dhiúltaigh tú don imeacht seo", + "Your participation is tentative" : "Tá do rannpháirtíocht trialach", + "_+%n more_::_+%n more_" : ["+%n eile","+%n eile","+%n eile","+%n eile","+%n eile"], + "No events" : "Gan imeachtaí", + "Create a new event or change the visible time-range" : "Cruthaigh imeacht nua nó athraigh an raon ama infheicthe", + "Failed to save event" : "Theip ar shábháil an imeachta", + "It might have been deleted, or there was a typo in a link" : "Seans gur scriosadh é, nó go raibh clóscríobh i nasc", + "It might have been deleted, or there was a typo in the link" : "Seans gur scriosadh é, nó go raibh clóscríobh sa nasc", + "Meeting room" : "Seomra cruinnithe", + "Lecture hall" : "halla léachta", + "Seminar room" : "Seomra seimineáir", + "Other" : "Eile", + "When shared show" : "Nuair a bheidh an seó roinnte", + "When shared show full event" : "Nuair a chomhroinntear taispeáin imeacht iomlán", + "When shared show only busy" : "Nuair a bheidh an seó roinnte ach gnóthach", + "When shared hide this event" : "Nuair a bheidh tú roinnte cuir an t-imeacht seo i bhfolach", + "The visibility of this event in shared calendars." : "Infheictheacht an imeachta seo i bhféilirí roinnte.", + "Add a location" : "Cuir suíomh leis", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Cuir cur síos leis\n\n- Cad faoi atá an cruinniú seo?\n- Míreanna ar an gclár\n- Rud ar bith is gá do rannpháirtithe a ullmhú", + "Status" : "Stádas", + "Confirmed" : "Deimhnithe", + "Canceled" : "Ar ceal", + "Confirmation about the overall status of the event." : "Deimhniú faoi stádas foriomlán an imeachta.", + "Show as" : "Taispeáin mar", + "Take this event into account when calculating free-busy information." : "Cuir an t-imeacht seo san áireamh agus faisnéis saor-ghnóthach á ríomh.", + "Categories" : "Catagóirí", + "Categories help you to structure and organize your events." : "Cuidíonn catagóirí leat do chuid imeachtaí a struchtúrú agus a eagrú.", + "Search or add categories" : "Cuardaigh nó cuir catagóirí leis", + "Add this as a new category" : "Cuir é seo leis mar chatagóir nua", + "Custom color" : "Dath saincheaptha", + "Special color of this event. Overrides the calendar-color." : "Dath speisialta na hócáide seo. sháraíonn an dath féilire.", + "Error while sharing file" : "Earráid agus an comhad á roinnt", + "Error while sharing file with user" : "Earráid agus an comhad á roinnt leis an úsáideoir", + "Error creating a folder {folder}" : "Earráid ag cruthú fillteáin {folder}", + "Attachment {fileName} already exists!" : "Tá ceangaltán {fileName} ann cheana féin!", + "Attachment {fileName} added!" : "Cuireadh an ceangaltán {fileName} leis!", + "An error occurred during uploading file {fileName}" : "Tharla earráid agus an comhad {fileName} á uaslódáil", + "An error occurred during getting file information" : "Tharla earráid agus faisnéis comhaid á fáil", + "Talk conversation for event" : "Labhair comhrá don imeacht", + "An error occurred, unable to delete the calendar." : "Tharla earráid, níorbh fhéidir an féilire a scriosadh.", + "Imported {filename}" : "Iompórtáladh {filename}", + "This is an event reminder." : "Is meabhrúchán imeachta é seo.", + "Error while parsing a PROPFIND error" : "Earráid agus earráid PROPFIND á parsáil", + "Appointment not found" : "Níor aimsíodh an coinne", + "User not found" : "Úsáideoir gan aimsiú", + "Reminder" : "Meabhrúchán", + "+ Add reminder" : "+ Cuir meabhrúchán leis", + "Select automatic slot" : "Roghnaigh sliotán uathoibríoch", + "with" : "le", + "Available times:" : "Amanna ar fáil:", + "Suggestions" : "Moltaí", + "Details" : "Sonraí" +}, +"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"); diff --git a/l10n/ga.json b/l10n/ga.json new file mode 100644 index 0000000000000000000000000000000000000000..d8dad1bf49da02531de58d8fd2c6c3666bc737ec --- /dev/null +++ b/l10n/ga.json @@ -0,0 +1,596 @@ +{ "translations": { + "Provided email-address is too long" : "Ar choinníoll go bhfuil an seoladh ríomhphoist ró-fhada", + "User-Session unexpectedly expired" : "Chuaigh an Seisiún Úsáideora in éag gan choinne", + "Provided email-address is not valid" : "Ar choinníoll nach bhfuil an seoladh ríomhphoist bailí", + "%s has published the calendar »%s«" : "D'fhoilsigh %s an féilire »%s«", + "Unexpected error sending email. Please contact your administrator." : "Earráid gan choinne agus ríomhphost á sheoladh. Déan teagmháil le do riarthóir le do thoil.", + "Successfully sent email to %1$s" : "D'éirigh le seoladh ríomhphoist chuig %1$s", + "Hello," : "Dia dhuit,", + "We wanted to inform you that %s has published the calendar »%s«." : "Theastaigh uainn a chur in iúl duit go bhfuil an féilire »%s« foilsithe ag %s.", + "Open »%s«" : "Oscail »%s«", + "Cheers!" : "Sláinte mhaith!", + "Upcoming events" : "Imeachtaí atá ag Teacht", + "No more events today" : "Níl a thuilleadh imeachtaí ann inniu", + "No upcoming events" : "Níl aon imeachtaí le teacht", + "More events" : "Tuilleadh imeachtaí", + "%1$s with %2$s" : "%1$s le %2$s", + "Calendar" : "Féilire", + "New booking {booking}" : "Áirithint nua {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "chuir {display_name} ({email}) an coinne \"{config_display_name}\" in áirithe ar {date_time}.", + "Appointments" : "Coinní", + "Schedule appointment \"%s\"" : "Sceideal coinne \"%s\"", + "Schedule an appointment" : "Sceideal coinne", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Ullmhaigh do %s", + "Follow up for %s" : "Leantach le haghaidh %s", + "Your appointment \"%s\" with %s needs confirmation" : "Ní mór do choinne \"%s\" le %s a dhearbhú", + "Dear %s, please confirm your booking" : "A %s, a chara, deimhnigh d'áirithint le do thoil", + "Confirm" : "Deimhnigh", + "Appointment with:" : "Ceapachán le:", + "Description:" : "Cur síos:", + "This confirmation link expires in %s hours." : "Rachaidh an nasc dearbhaithe seo in éag i gceann %s uair.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Más mian leat an coinne a chur ar ceal tar éis an tsaoil, déan teagmháil le d’eagraí trí fhreagra a thabhairt don ríomhphost seo nó trí chuairt a thabhairt ar a leathanach próifíle le do thoil.", + "Your appointment \"%s\" with %s has been accepted" : "Glacadh le do choinne \"%s\" le %s", + "Dear %s, your booking has been accepted." : "A %s, a chara, glacadh le d'áirithint.", + "Appointment for:" : "Ceapachán le haghaidh:", + "Date:" : "Dáta:", + "You will receive a link with the confirmation email" : "Gheobhaidh tú nasc leis an ríomhphost deimhnithe", + "Where:" : "Cá háit:", + "Comment:" : "Nóta tráchta:", + "You have a new appointment booking \"%s\" from %s" : "Tá coinne nua agat le \"%s\" a chur in áirithe ó %s", + "Dear %s, %s (%s) booked an appointment with you." : "A %s, a chara, chuir %s (%s) coinne in áirithe leat.", + "A Calendar app for Nextcloud" : "Aip Féilire do Nextcloud", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aip Féilire do Nextcloud. Sioncronaigh go héasca imeachtaí ó ghléasanna éagsúla le do Nextcloud agus cuir in eagar iad ar líne.\n\n* 🚀 **Comhtháthú le haipeanna eile Nextcloud!** Cosúil le Teagmhálacha, Caint, Tascanna, Deic agus Ciorcail\n* 🌐 **Tacaíocht WebCal!** Ar mhaith leat laethanta cluichí na foirne is fearr leat a fheiceáil i d’fhéilire? Fadhb ar bith!\n* 🙋 **Freastalaithe!** Tabhair cuireadh do dhaoine teacht chuig d’imeachtaí\n* ⌚ **Saor in Aisce/Gnóthach!** Féach cathain a bheidh do lucht freastail ar fáil le bualadh\n* ⏰ **Meabhrúcháin!** Faigh aláram le haghaidh imeachtaí laistigh de do bhrabhsálaí agus trí ríomhphost\n* 🔍 **Cuardaigh!** Faigh do chuid imeachtaí ar a suaimhneas\n* ☑️ **Tascanna!** Féach tascanna nó cártaí Deic le dáta dlite díreach san fhéilire\n* 🔈 **Seomraí cainte!** Cruthaigh seomra Caint gaolmhar agus cruinniú á chur in áirithe agat gan ach cliceáil amháin\n* 📆 **Coinne a chur in áirithe** Seol nasc chuig daoine ionas gur féidir leo coinne a chur in áirithe leat [leis an aip seo] ( https://apps.nextcloud.com/apps/appointments)\n* 📎 **Ceangaltáin!** Cuir leis, uaslódáil agus féach ar cheangaltáin imeachta\n* 🙈 **Nílimid ag athchruthú an rotha!** Bunaithe ar an leabharlann iontach [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) agus [fullcalendar](https://lgithubar.com/library", + "Previous day" : "Lá roimhe sin", + "Previous week" : "An tseachtain roimhe sin", + "Previous year" : "bhliain roimhe sin", + "Previous month" : "an mhí roimhe sin", + "Next day" : "An chéad lá eile", + "Next week" : "An tseachtain seo chugainn", + "Next year" : "An bhliain seo chugainn", + "Next month" : "An mhí seo chugainn", + "Create new event" : "Cruthaigh imeacht nua", + "Event" : "Imeacht", + "Today" : "Inniu", + "Day" : "Lá", + "Week" : "Seachtain", + "Month" : "Mí", + "Year" : "Bliain", + "List" : "Liosta", + "Appointment link was copied to clipboard" : "Rinneadh an nasc coinní a chóipeáil chuig an ngearrthaisce", + "Appointment link could not be copied to clipboard" : "Níorbh fhéidir an nasc coinní a chóipeáil chuig an ngearrthaisce", + "Preview" : "Réamhamharc", + "Copy link" : "Cóipeáil an nasc", + "Edit" : "Cuir in eagar", + "Delete" : "Scrios", + "Appointment schedules" : "Sceidil ceapacháin", + "Create new" : "Cruthaigh nua", + "Disable calendar \"{calendar}\"" : "Díchumasaigh féilire \"{calendar}\"", + "Disable untitled calendar" : "Díchumasaigh féilire gan teideal", + "Enable calendar \"{calendar}\"" : "Cumasaigh féilire \"{calendar}\"", + "Enable untitled calendar" : "Cumasaigh féilire gan teideal", + "An error occurred, unable to change visibility of the calendar." : "Tharla earráid, níorbh fhéidir infheictheacht an fhéilire a athrú.", + "Untitled calendar" : "Féilire gan teideal", + "Shared with you by" : "Roinnte le leat ag", + "Edit and share calendar" : "Cuir féilire in eagar agus a roinnt", + "Edit calendar" : "Cuir féilire in eagar", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Ag dí-roinnt an fhéilire i {countdown} soicind","Ag dí-roinnt an fhéilire i {countdown} soicind","Ag dí-roinnt an fhéilire i {countdown} soicind","Ag dí-roinnt an fhéilire i {countdown} soicind","Ag dí-roinnt an fhéilire i {countdown} soicind"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["An féilire á scriosadh i {countdown} soicind","An féilire á scriosadh i {countdown} soicind","An féilire á scriosadh i {countdown} soicind","An féilire á scriosadh i {countdown} soicind","An féilire á scriosadh i {countdown} soicind"], + "An error occurred, unable to create the calendar." : "Tharla earráid, níorbh fhéidir an féilire a chruthú.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Cuir isteach nasc bailí (ag tosú le http://, https://, webcal://, nó webcals://) le do thoil", + "Calendars" : "Féilirí", + "Add new" : "Cuir nua leis", + "New calendar" : "Féilire nua", + "Name for new calendar" : "Ainm don fhéilire nua", + "Creating calendar …" : "Féilire á chruthú …", + "New calendar with task list" : "Féilire nua le liosta tascanna", + "New subscription from link (read-only)" : "Síntiús nua ón nasc (read-only)", + "Creating subscription …" : "Síntiús a chruthú …", + "Add public holiday calendar" : "Cuir féilire saoire poiblí leis", + "Add custom public calendar" : "Cuir féilire poiblí saincheaptha leis", + "Calendar link copied to clipboard." : "Cóipeáladh an nasc féilire chuig an ngearrthaisce.", + "Calendar link could not be copied to clipboard." : "Níorbh fhéidir nasc féilire a chóipeáil chuig an ngearrthaisce.", + "Copy subscription link" : "Cóipeáil nasc síntiús", + "Copying link …" : "Nasc á chóipeáil …", + "Copied link" : "Nasc cóipeáilte", + "Could not copy link" : "Níorbh fhéidir an nasc a chóipeáil", + "Export" : "Easpórtáil", + "Untitled item" : "Mír gan teideal", + "Unknown calendar" : "Féilire anaithnid", + "Could not load deleted calendars and objects" : "Níorbh fhéidir féilirí agus oibiachtaí scriosta a lódáil", + "Could not delete calendar or event" : "Níorbh fhéidir féilire nó imeacht a scriosadh", + "Could not restore calendar or event" : "Níorbh fhéidir féilire nó imeacht a chur ar ais", + "Do you really want to empty the trash bin?" : "Ar mhaith leat an bosca bruscair a fholmhú?", + "Empty trash bin" : "Bruscar folamh", + "Trash bin" : "Bruscar", + "Loading deleted items." : "Míreanna scriosta á lódáil.", + "You do not have any deleted items." : "Níl aon mhír scriosta agat.", + "Name" : "Ainm", + "Deleted" : "Scriosta", + "Restore" : "Athchóirigh", + "Delete permanently" : "Scrios go buan", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Scriostar míreanna sa bhosca bruscair tar éis {numDays} lá","Scriostar míreanna sa bhosca bruscair tar éis {numDays} laethanta","Scriostar míreanna sa bhosca bruscair tar éis {numDays} laethanta","Scriostar míreanna sa bhosca bruscair tar éis {numDays} laethanta","Scriostar míreanna sa bhosca bruscair tar éis {numDays} laethanta"], + "Could not update calendar order." : "Níorbh fhéidir an t-ordú féilire a nuashonrú.", + "Shared calendars" : "Féilirí roinnte", + "Deck" : "Deic", + "Hidden" : "I bhfolach", + "Internal link" : "Nasc inmheánach", + "A private link that can be used with external clients" : "Nasc príobháideach is féidir a úsáid le cliaint sheachtracha", + "Copy internal link" : "Cóipeáil an nasc inmheánach", + "An error occurred, unable to publish calendar." : "Tharla earráid, ní féidir an féilire a fhoilsiú.", + "An error occurred, unable to send email." : "Tharla earráid, ní féidir ríomhphost a sheoladh.", + "Embed code copied to clipboard." : "Cóipeáladh an cód chuig an ngearrthaisce.", + "Embed code could not be copied to clipboard." : "Níorbh fhéidir an cód leabaithe a chóipeáil chuig an ngearrthaisce.", + "Unpublishing calendar failed" : "Theip ar dhífhoilsiú an fhéilire", + "Share link" : "Comhroinn nasc", + "Copy public link" : "Cóipeáil nasc poiblí", + "Send link to calendar via email" : "Seol nasc chuig an bhféilire trí ríomhphost", + "Enter one address" : "Cuir isteach seoladh amháin", + "Sending email …" : "Ríomhphost á sheoladh …", + "Copy embedding code" : "Cóipeáil cód leabú", + "Copying code …" : "Cód á chóipeáil …", + "Copied code" : "Cód cóipeáilte", + "Could not copy code" : "Níorbh fhéidir an cód a chóipeáil", + "Delete share link" : "Scrios an nasc comhroinnte", + "Deleting share link …" : "Nasc comhroinnte á scriosadh …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Foireann)", + "An error occurred while unsharing the calendar." : "Tharla earráid agus an féilire á dhí-roinnt.", + "An error occurred, unable to change the permission of the share." : "Tharla earráid, níorbh fhéidir cead na comhroinnte a athrú.", + "can edit" : "is féidir in eagar", + "Unshare with {displayName}" : "Díroinn le {displayName}", + "Share with users or groups" : "Roinn le húsáideoirí nó le grúpaí", + "No users or groups" : "Gan úsáideoirí nó grúpaí", + "Failed to save calendar name and color" : "Theip ar shábháil ainm agus dath an fhéilire", + "Calendar name …" : "Ainm an fhéilire…", + "Never show me as busy (set this calendar to transparent)" : "Ná taispeáin dom chomh gnóthach riamh (socraigh an féilire seo go trédhearcach)", + "Share calendar" : "Comhroinn féilire", + "Unshare from me" : "Dí-roinn uaim", + "Save" : "Sábháil", + "Import calendars" : "Iompórtáil féilirí", + "Please select a calendar to import into …" : "Le do thoil roghnaigh féilire le hiompórtáil isteach in …", + "Filename" : "Ainm comhaid", + "Calendar to import into" : "Féilire le hiompórtáil isteach", + "Cancel" : "Cealaigh", + "_Import calendar_::_Import calendars_" : ["Iompórtáil féilire","Iompórtáil féilirí","Iompórtáil féilirí","Iompórtáil féilirí","Iompórtáil féilirí"], + "Select the default location for attachments" : "Roghnaigh an suíomh réamhshocraithe le haghaidh ceangaltán", + "Pick" : "Pioc", + "Invalid location selected" : "Suíomh neamhbhailí roghnaithe", + "Attachments folder successfully saved." : "D'éirigh le fillteán na gceangaltán a shábháil.", + "Error on saving attachments folder." : "Earráid agus fillteán na gceangaltán á shábháil.", + "Default attachments location" : "Default attachments location", + "{filename} could not be parsed" : "Níorbh fhéidir {filename} a pharsáil", + "No valid files found, aborting import" : "Níor aimsíodh aon chomhaid bhailí, ag cur deireadh leis an iompórtáil", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["D'éirigh le hiompórtáil %n imeacht","D'éirigh le hiompórtáil %n n-imeacht","D'éirigh le hiompórtáil %n n-imeacht","D'éirigh le hiompórtáil %n n-imeacht","D'éirigh le hiompórtáil %n n-imeacht"], + "Import partially failed. Imported {accepted} out of {total}." : "Theip ar an iompórtáil i bpáirt. Iompórtáladh {accepted} as {total}.", + "Automatic" : "Uathoibríoch", + "Automatic ({detected})" : "Uathoibríoch ({detected})", + "New setting was not saved successfully." : "Níor sábháladh an socrú nua.", + "Navigation" : "Loingseoireacht", + "Previous period" : "Tréimhse roimhe seo", + "Next period" : "An chéad tréimhse eile", + "Views" : "Radhairc", + "Day view" : "Radharc an lae", + "Week view" : "Radharc na seachtaine", + "Month view" : "Radharc na míosa", + "Year view" : "Radharc na bliana", + "List view" : "Amharc liosta", + "Actions" : "Gníomhartha", + "Create event" : "Cruthaigh imeacht", + "Show shortcuts" : "Taispeáin aicearraí", + "Editor" : "eagarthóir", + "Close editor" : "Dún eagarthóir", + "Save edited event" : "Sábháil imeacht curtha in eagar", + "Delete edited event" : "Scrios imeacht curtha in eagar", + "Duplicate event" : "Imeacht dhúblach", + "Shortcut overview" : "Forbhreathnú aicearra", + "or" : "nó", + "Calendar settings" : "Socruithe féilire", + "At event start" : "Ag tús na hócáide", + "No reminder" : "Gan meabhrúchán", + "Failed to save default calendar" : "Theip ar shábháil an fhéilire réamhshocraithe", + "CalDAV link copied to clipboard." : "Nasc CalDAV cóipeáilte chuig an ngearrthaisce.", + "CalDAV link could not be copied to clipboard." : "Níorbh fhéidir nasc CalDAV a chóipeáil chuig an ngearrthaisce.", + "Enable birthday calendar" : "Cumasaigh féilire lá breithe", + "Show tasks in calendar" : "Taispeáin tascanna i bhféilire", + "Enable simplified editor" : "Cumasaigh eagarthóir simplithe", + "Limit the number of events displayed in the monthly view" : "Teorainn a chur le líon na n-imeachtaí a thaispeántar san amharc míosúil", + "Show weekends" : "Taispeáin deireadh seachtaine", + "Show week numbers" : "Taispeáin uimhreacha na seachtaine", + "Time increments" : "Arduithe ama", + "Default calendar for incoming invitations" : "Féilire réamhshocraithe le haghaidh cuirí isteach", + "Default reminder" : "Meabhrúchán réamhshocraithe", + "Copy primary CalDAV address" : "Cóipeáil príomhsheoladh CalDAV", + "Copy iOS/macOS CalDAV address" : "Cóipeáil seoladh iOS/macOS CalDAV", + "Personal availability settings" : "Socruithe infhaighteachta pearsanta", + "Show keyboard shortcuts" : "Taispeáin aicearraí méarchláir", + "Appointment schedule successfully created" : "D'éirigh le sceideal na gcoinní a chruthú", + "Appointment schedule successfully updated" : "D'éirigh le sceideal na gcoinní a nuashonrú", + "_{duration} minute_::_{duration} minutes_" : ["{duration} nóiméad","{duration} nóiméad","{duration} nóiméad","{duration} nóiméad","{duration} nóiméad"], + "0 minutes" : "0 nóiméad", + "_{duration} hour_::_{duration} hours_" : ["{fad} uair","{fad} uair an chloig","{fad} uair an chloig","{fad} uair an chloig","{fad} uair an chloig"], + "_{duration} day_::_{duration} days_" : ["{fad} lá","{fad} lá","{fad} lá","{fad} lá","{fad} lá"], + "_{duration} week_::_{duration} weeks_" : ["{duration} seachtain","{duration} seachtain","{duration} seachtain","{duration} seachtain","{duration} seachtain"], + "_{duration} month_::_{duration} months_" : ["{duration} mhí","{duration} mhí","{duration} mhí","{duration} mhí","{duration} mhí"], + "_{duration} year_::_{duration} years_" : ["{duration} bliana","{duration} bliana","{duration} bliana","{duration} bliana","{duration} bliana"], + "To configure appointments, add your email address in personal settings." : "Chun coinní a chumrú, cuir do sheoladh ríomhphoist i socruithe pearsanta.", + "Public – shown on the profile page" : "Poiblí – léirithe ar an leathanach próifíle", + "Private – only accessible via secret link" : "Príobháideach – ní féidir teacht air ach trí nasc rúnda", + "Appointment schedule saved" : "Sceideal coinní sábháilte", + "Create appointment schedule" : "Cruthaigh sceideal coinne", + "Edit appointment schedule" : "Cuir sceideal na gcoinní in eagar", + "Update" : "Nuashonrú", + "Appointment name" : "Ainm an cheapacháin", + "Location" : "Suíomh", + "Create a Talk room" : "Cruthaigh seomra Caint", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Cruthófar nasc uathúil le haghaidh gach coinne a chuirtear in áirithe agus seolfar é tríd an ríomhphost deimhnithe", + "Description" : "Cur síos", + "Visibility" : "Infheictheacht", + "Duration" : "Fad", + "Increments" : "Incrimintí", + "Additional calendars to check for conflicts" : "Féilirí breise chun coinbhleachtaí a sheiceáil", + "Pick time ranges where appointments are allowed" : "Roghnaigh raonta ama ina gceadaítear coinní", + "to" : "chun", + "Delete slot" : "Scrios sliotán", + "No times set" : "Uimh amanna socraithe", + "Add" : "Cuir", + "Monday" : "Dé Luain", + "Tuesday" : "Dé Máirt", + "Wednesday" : "Dé Céadaoin", + "Thursday" : "Déardaoin", + "Friday" : "Aoine", + "Saturday" : "Sathairn", + "Sunday" : "Domhnach", + "Weekdays" : "Laethanta na seachtaine", + "Add time before and after the event" : "Cuir am leis roimh an imeacht agus ina dhiaidh", + "Before the event" : "Roimh an ócáid", + "After the event" : "Tar éis na hócáide", + "Planning restrictions" : "Srianta pleanála", + "Minimum time before next available slot" : "Íosmhéid ama roimh an gcéad sliotán eile atá ar fáil", + "Max slots per day" : "Sliotán uasta in aghaidh an lae", + "Limit how far in the future appointments can be booked" : "Teorainn a chur le cé chomh fada sa todhchaí is féidir coinní a chur in áirithe", + "It seems a rate limit has been reached. Please try again later." : "Is cosúil go bhfuil teorainn ráta bainte amach. Bain triail eile as ar ball le do thoil.", + "Please confirm your reservation" : "Deimhnigh d’áirithint le do thoil", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Sheolamar ríomhphost chugat le sonraí. Deimhnigh do choinne ag baint úsáide as an nasc sa ríomhphost le do thoil. Is féidir leat an leathanach seo a dhúnadh anois le do thoil.", + "Your name" : "Do ainm", + "Your email address" : "Do sheoladh ríomhphoist", + "Please share anything that will help prepare for our meeting" : "Roinnigí le bhur dtoil aon rud a chuideoidh linn ullmhú dár gcruinniú le do thoil", + "Could not book the appointment. Please try again later or contact the organizer." : "Níorbh fhéidir an coinne a chur in áirithe. Bain triail eile as ar ball le do thoil nó déan teagmháil leis an eagraí le do thoil.", + "Back" : "Ar ais", + "Book appointment" : "Coinne leabhar", + "Error fetching Talk conversations." : "Earráid agus comhráite Talk á fháil.", + "Conversation does not have a valid URL." : "Níl URL bailí ag an gcomhrá.", + "Successfully added Talk conversation link to location." : "D'éirigh leis an nasc Talk Chat a chur leis an suíomh.", + "Successfully added Talk conversation link to description." : "D'éirigh leis an nasc Talk conversation a chur leis an gcur síos.", + "Failed to apply Talk room." : "Theip ar an seomra cainte a chur i bhfeidhm.", + "Error creating Talk conversation" : "Earráid agus comhrá á chruthú", + "Select a Talk Room" : "Roghnaigh Seomra Caint", + "Add Talk conversation" : "Cuir comhrá leis", + "Fetching Talk rooms…" : "Seomraí Caint á bhfáil…", + "No Talk room available" : "Níl seomra cainte ar fáil", + "Create a new conversation" : "Cruthaigh comhrá nua", + "Select conversation" : "Roghnaigh comhrá", + "on" : "ar", + "at" : "ag", + "before at" : "roimh ag", + "Notification" : "Fógra", + "Email" : "Ríomhphost", + "Audio notification" : "Fógra fuaime", + "Other notification" : "Fógra eile", + "Relative to event" : "I gcoibhneas leis an imeacht", + "On date" : "Ar dháta", + "Edit time" : "Cuir am in eagar", + "Save time" : "Sábháil am", + "Remove reminder" : "Bain meabhrúchán", + "Add reminder" : "Cuir meabhrúchán leis", + "seconds" : "soicind", + "minutes" : "nóiméad", + "hours" : "uair an chloig", + "days" : "laethanta", + "weeks" : "seachtaine", + "Choose a file to add as attachment" : "Roghnaigh comhad le cur leis mar cheangaltán", + "Choose a file to share as a link" : "Roghnaigh comhad le roinnt mar nasc", + "Attachment {name} already exist!" : "Tá ceangaltán {name} ann cheana féin!", + "Could not upload attachment(s)" : "Níorbh fhéidir ceangaltán(cheangail) a uaslódáil", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Tá tú ar tí comhad a íoslódáil. Seiceáil ainm an chomhaid sula n-osclaíonn tú é. An bhfuil tú cinnte go leanfaidh tú ar aghaidh?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Tá tú ar tí nascleanúint a dhéanamh chuig {host}. An bhfuil tú cinnte leanúint ar aghaidh? Nasc: {link}", + "Proceed" : "Lean ar aghaidh", + "No attachments" : "Gan ceangaltáin", + "Add from Files" : "Cuir ó Chomhaid", + "Upload from device" : "Íosluchtaigh ó gléas", + "Delete file" : "Scrios an comhad", + "Confirmation" : "Daingniú", + "_{count} attachment_::_{count} attachments_" : ["{comhaireamh} ceangaltán","{comhaireamh} ceangaltán","{comhaireamh} ceangaltán","{comhaireamh} ceangaltán","{comhaireamh} ceangaltán"], + "Suggested" : "Molta", + "Available" : "Ar fáil", + "Invitation accepted" : "Glacadh le cuireadh", + "Accepted {organizerName}'s invitation" : "Glacadh le cuireadh {organizerName}", + "Participation marked as tentative" : "Rannpháirtíocht marcáilte mar thrialach", + "Invitation is delegated" : "Tarmligtear cuireadh", + "Not available" : "Níl sé ar fáil", + "Invitation declined" : "Diúltaíodh don chuireadh", + "Declined {organizerName}'s invitation" : "Dhiúltaigh {organizerName} cuireadh", + "Availability will be checked" : "Seiceálfar infhaighteacht", + "Invitation will be sent" : "Seolfar cuireadh", + "Failed to check availability" : "Theip ar infhaighteacht a sheiceáil", + "Failed to deliver invitation" : "Theip ar an gcuireadh a sheachadadh", + "Awaiting response" : "Ag feitheamh le freagra", + "Checking availability" : "Infhaighteacht a sheiceáil", + "Has not responded to {organizerName}'s invitation yet" : "Níor fhreagair cuireadh {organizerName} fós", + "Suggested times" : "Amanna molta", + "chairperson" : "cathaoirleach", + "required participant" : "rannpháirtí riachtanach", + "non-participant" : "neamh-rannpháirtí", + "optional participant" : "rannpháirtí roghnach", + "{organizer} (organizer)" : "{organizer} (eagraí)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Infhaighteacht lucht freastail, acmhainní agus seomraí", + "Suggestion accepted" : "Glacadh le moladh", + "Previous date" : "Dáta roimhe seo", + "Next date" : "An chéad dáta eile", + "Legend" : "Finscéal", + "Out of office" : "As oifig", + "Attendees:" : "Lucht freastail:", + "Done" : "Déanta", + "Search room" : "Seomra cuardaigh", + "Room name" : "Ainm an tseomra", + "Check room availability" : "Seiceáil infhaighteacht an tseomra", + "Free" : "Saor", + "Busy (tentative)" : "gnóthach (éiginnte)", + "Busy" : "Gnóthach", + "Unknown" : "Anaithnid", + "Find a time" : "Faigh am", + "The invitation has been accepted successfully." : "Glacadh leis an gcuireadh go rathúil.", + "Failed to accept the invitation." : "Theip ar glacadh leis an gcuireadh.", + "The invitation has been declined successfully." : "Diúltaíodh don chuireadh.", + "Failed to decline the invitation." : "Theip ar dhiúltú an cuireadh.", + "Your participation has been marked as tentative." : "Marcáladh do rannpháirtíocht mar shealadach.", + "Failed to set the participation status to tentative." : "Theip ar stádas na rannpháirtíochta a shocrú go sealadach.", + "Accept" : "Glac", + "Decline" : "Meath", + "Tentative" : "Sealadach", + "No attendees yet" : "Níl aon lucht freastail fós", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} cuireadh, {confirmedCount} dearbhaithe", + "Please add at least one attendee to use the \"Find a time\" feature." : "Cuir freastalaí amháin ar a laghad leis le go n-úsáidfidh tú an ghné \"Aimsigh am\".", + "Successfully appended link to talk room to location." : "D'éirigh le ceangal leis an seomra cainte a chur i gceangal le suíomh.", + "Successfully appended link to talk room to description." : "D'éirigh le ceangal leis an seomra cainte a chur i gceangal leis an gcur síos.", + "Error creating Talk room" : "Earráid agus an seomra cainte á chruthú", + "Attendees" : "Lucht freastail", + "_%n more guest_::_%n more guests_" : ["%n aoi eile","%n aíonna eile","%n aíonna eile","%n aíonna eile","%n aíonna eile"], + "Remove group" : "Bain an grúpa", + "Remove attendee" : "Bain an freastail", + "Request reply" : "Iarr freagra", + "Chairperson" : "Cathaoirleach", + "Required participant" : "Rannpháirtí riachtanach", + "Optional participant" : "Rannpháirtí roghnach", + "Non-participant" : "Neamh-rannpháirtí", + "_%n member_::_%n members_" : ["%n bhall","%n members","%n members","%n members","%n members"], + "Search for emails, users, contacts, contact groups or teams" : "Déan cuardach do ríomhphoist, úsáideoirí, teagmhálaithe, grúpaí teagmhála nó foirne", + "No match found" : "Níor aimsíodh aon mheaitseáil", + "Note that members of circles get invited but are not synced yet." : "Tabhair faoi deara go bhfaigheann baill de chiorcail cuireadh ach nach bhfuil siad sioncronaithe fós.", + "Note that members of contact groups get invited but are not synced yet." : "Tabhair faoi deara go bhfaigheann baill de ghrúpaí teagmhála cuireadh ach nach bhfuil siad sioncronaithe fós.", + "(organizer)" : "(eagraí)", + "Make {label} the organizer" : "Déan {label} an t-eagraí", + "Make {label} the organizer and attend" : "Déan {label} an t-eagraí agus freastal air", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Chun cuirí a sheoladh amach agus freagraí a láimhseáil, [linkopen]cuir do sheoladh ríomhphoist i socruithe pearsanta[linkclose].", + "Remove color" : "Bain dath", + "Event title" : "Teideal an imeachta", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Ní féidir an socrú lae a mhodhnú le haghaidh imeachtaí atá mar chuid de thacar atarlaithe.", + "From" : "Ó", + "To" : "Chun", + "Repeat" : "Déan arís", + "_time_::_times_" : ["am","amanna","amanna","amanna","amanna"], + "never" : "riamh", + "on date" : "ar dháta", + "after" : "tar éis", + "End repeat" : "Cuir deireadh leis an athuair", + "Select to end repeat" : "Roghnaigh chun deireadh a chur leis an athuair", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Is eisceacht é an teagmhas seo maidir le tacar atarlaithe. Ní féidir leat riail atarlaithe a chur leis.", + "first" : " an chéad", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Ní bhainfidh athruithe ar an riail atarlaithe ach leis seo agus le gach tarlú sa todhchaí.", + "Repeat every" : "Déan gach", + "By day of the month" : "De réir lá na míosa", + "On the" : "Ar an", + "_day_::_days_" : ["lá","laethanta","laethanta","laethanta","laethanta"], + "_week_::_weeks_" : ["seachtain","seachtaine","seachtaine","seachtaine","seachtaine"], + "_month_::_months_" : ["mí","míonna","míonna","míonna","míonna"], + "_year_::_years_" : ["bliain","blianta","blianta","blianta","blianta"], + "On specific day" : "Ar lá ar leith", + "weekday" : "i rith na seachtaine", + "weekend day" : "lá deireadh seachtaine", + "Does not repeat" : "Ní athuair", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Ní thacaíonn Nextcloud go hiomlán le sainmhíniú atarlaithe an imeachta seo. Má chuireann tú na roghanna atarlaithe in eagar, seans go gcaillfear atarlú áirithe.", + "No rooms or resources yet" : "Níl seomraí ná acmhainní ann fós", + "Resources" : "Acmhainní", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : [" {suíocháin Cumas} suíochán","{Toilleadh suíocháin} suíocháin","{Toilleadh suíocháin} suíocháin","{Toilleadh suíocháin} suíocháin","{Toilleadh suíocháin} suíocháin"], + "Add resource" : "Cuir acmhainn leis", + "Has a projector" : "Tá teilgeoir", + "Has a whiteboard" : "Tá clár bán", + "Wheelchair accessible" : "Inrochtana do chathaoireacha rothaí", + "Remove resource" : "Bain acmhainn", + "Search for resources or rooms" : "Cuardaigh acmhainní nó seomraí", + "available" : "ar fáil", + "unavailable" : "ar fáil", + "Show all rooms" : "Taispeáin gach seomra", + "Projector" : "Teilgeoir", + "Whiteboard" : "Clár bán", + "Room type" : "Cineál seomra", + "Any" : "Aon", + "Minimum seating capacity" : "Toilleadh suíocháin íosta", + "More details" : "Tuilleadh sonraí", + "Update this and all future" : "Nuashonraigh seo agus gach todhchaí", + "Update this occurrence" : "Nuashonraigh an teagmhas seo", + "Public calendar does not exist" : "Níl féilire poiblí ann", + "Maybe the share was deleted or has expired?" : "B'fhéidir gur scriosadh an sciar nó go bhfuil sé imithe in éag?", + "from {formattedDate}" : "ó {formattedDate}", + "to {formattedDate}" : "chuig {formattedDate}", + "on {formattedDate}" : "ar {formattedDate}", + "from {formattedDate} at {formattedTime}" : "ó {formattedDate} ag {formattedTime}", + "to {formattedDate} at {formattedTime}" : "chuig {formattedDate} ag {formattedTime}", + "on {formattedDate} at {formattedTime}" : "ar {formattedDate} ag {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} ag {formattedTime}", + "Please enter a valid date" : "Cuir isteach dáta bailí le do thoil", + "Please enter a valid date and time" : "Cuir isteach dáta agus am bailí le do thoil", + "Select a time zone" : "Roghnaigh crios ama", + "Please select a time zone:" : "Roghnaigh crios ama le do thoil:", + "Pick a time" : "Roghnaigh am", + "Pick a date" : "Roghnaigh dáta", + "Type to search time zone" : "Clóscríobh chun crios ama a chuardach", + "Global" : "Domhanda", + "Holidays in {region}" : "Laethanta Saoire i {region}", + "An error occurred, unable to read public calendars." : "Tharla earráid, níorbh fhéidir féilirí poiblí a léamh.", + "An error occurred, unable to subscribe to calendar." : "Tharla earráid, ní féidir liostáil le féilire.", + "Public holiday calendars" : "Féilirí saoire poiblí", + "Public calendars" : "Féilirí poiblí", + "No valid public calendars configured" : "Níl aon fhéilire poiblí bailí cumraithe", + "Speak to the server administrator to resolve this issue." : "Labhair le riarthóir an fhreastalaí chun an fhadhb seo a réiteach.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Soláthraíonn Thunderbird féilirí saoire poiblí. Déanfar sonraí féilire a íoslódáil ó {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Molann riarthóir an fhreastalaí na féilirí poiblí seo. Déanfar sonraí féilire a íoslódáil ón suíomh Gréasáin faoi seach.", + "By {authors}" : "Le {authors}", + "Subscribed" : "Suibscríofa", + "Subscribe" : "Liostáil", + "Could not fetch slots" : "Níorbh fhéidir sliotáin a fháil", + "Select a date" : "Roghnaigh dáta", + "Select slot" : "Roghnaigh sliotán", + "No slots available" : "Níl sliotáin ar fáil", + "The slot for your appointment has been confirmed" : "Tá an sliotán le haghaidh do choinne deimhnithe", + "Appointment Details:" : "Sonraí Coinne:", + "Time:" : "Am:", + "Booked for:" : "Áirithe le haghaidh:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Go raibh maith agat. Deimhníodh d'áirithint ó {startDate} go {endDate}.", + "Book another appointment:" : "Cuir coinne eile in áirithe:", + "See all available slots" : "Féach ar gach sliotán atá ar fáil", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Níl an sliotán do do choinne ó {startDate} go {endDate} ar fáil a thuilleadh.", + "Please book a different slot:" : "Cuir sliotán eile in áirithe le do thoil:", + "Book an appointment with {name}" : "Cuir coinne le {name} in áirithe", + "No public appointments found for {name}" : "Níor aimsíodh aon cheapachán poiblí le haghaidh {name}", + "Personal" : "Pearsanta", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Chinn an bhrath uathoibríoch crios ama gurb é UTC do chrios ama.\nIs dócha gurb é seo an toradh ar bhearta slándála do bhrabhsálaí gréasáin.\nSocraigh do chrios ama de láimh sna socruithe féilire le do thoil.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Níor aimsíodh do chrios ama cumraithe ({timezoneId}). Ag titim ar ais go UTC.\nAthraigh do chrios ama sna socruithe agus cuir in iúl don fhadhb seo le do thoil.", + "Availability of {displayName}" : "Infhaighteacht na{displayName}", + "Event does not exist" : "Níl imeacht ann", + "Duplicate" : "Dúblach", + "Delete this occurrence" : "Scrios an teagmhas seo", + "Delete this and all future" : "Scrios seo agus gach todhchaí", + "All day" : "An lá ar fad", + "Modifications wont get propagated to the organizer and other attendees" : "Ní dhéanfar modhnuithe a iomadú chuig an eagraí agus chuig lucht freastail eile", + "Managing shared access" : "Rochtain roinnte a bhainistiú", + "Deny access" : "Diúltaigh rochtain", + "Invite" : "Cuireadh", + "_User requires access to your file_::_Users require access to your file_" : ["Éilíonn an t-úsáideoir rochtain ar do chomhad","Teastaíonn rochtain ar do chomhad ó úsáideoirí","Teastaíonn rochtain ar do chomhad ó úsáideoirí","Teastaíonn rochtain ar do chomhad ó úsáideoirí","Teastaíonn rochtain ar do chomhad ó úsáideoirí"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Teastaíonn rochtain roinnte ón gceangaltán","Ceangaltáin óna dteastaíonn rochtain roinnte","Ceangaltáin óna dteastaíonn rochtain roinnte","Ceangaltáin óna dteastaíonn rochtain roinnte","Ceangaltáin óna dteastaíonn rochtain roinnte"], + "Untitled event" : "Imeacht gan teideal", + "Close" : "Dún", + "Modifications will not get propagated to the organizer and other attendees" : "Ní dhéanfar na modhnuithe a fhorleathadh chuig an eagraí agus chuig lucht freastail eile", + "Subscribe to {name}" : "Liostáil le {name}", + "Export {name}" : "Easpórtáil {name}", + "Show availability" : "Taispeáin infhaighteacht", + "Anniversary" : "Comóradh", + "Appointment" : "Ceapachán", + "Business" : "Gnó", + "Education" : "Oideachas", + "Holiday" : "Saoire", + "Meeting" : "Cruinniú", + "Miscellaneous" : "Ilghnéitheach", + "Non-working hours" : "Uaireanta neamh-oibre", + "Not in office" : "Ní in oifig", + "Phone call" : "Glaoch fóin", + "Sick day" : "Lá breoite", + "Special occasion" : "Ócáid speisialta", + "Travel" : "Taisteal", + "Vacation" : "Laethanta saoire", + "Midnight on the day the event starts" : "Meán oíche ar an lá a thosaíonn an ócáid", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n lá roimh an imeacht ag {formattedHourMinute}","%n lá roimh an imeacht ag {formattedHourMinute}","%n lá roimh an imeacht ag {formattedHourMinute}","%n lá roimh an imeacht ag {formattedHourMinute}","%n lá roimh an imeacht ag {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n seachtain roimh an imeacht ag {formattedHourMinute}","%n seachtain roimh an imeacht ag {formattedHourMinute}","%n seachtain roimh an imeacht ag {formattedHourMinute}","%n seachtain roimh an imeacht ag {formattedHourMinute}","%n seachtain roimh an imeacht ag {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "ar lá an imeachta ag {formattedHourMinute}", + "at the event's start" : "ag tús na hócáide", + "at the event's end" : "ag deireadh na hócáide", + "{time} before the event starts" : "{time} sula dtosaíonn an t-imeacht", + "{time} before the event ends" : "{time} sula dtiocfaidh deireadh leis an imeacht", + "{time} after the event starts" : "{time} tar éis don imeacht tosú", + "{time} after the event ends" : "{time} tar éis don imeacht críochnú", + "on {time}" : "ar {am}", + "on {time} ({timezoneId})" : "ar {time} ({timezoneId})", + "Week {number} of {year}" : "Seachtain {uimhir} de {bliain}", + "Daily" : "Laethúil", + "Weekly" : "Seachtainiúil", + "Monthly" : "Go míosúil", + "Yearly" : "Bliantúil", + "_Every %n day_::_Every %n days_" : ["Gach %n lá","Gach %n lá","Gach %n lá","Gach %n lá","Gach %n lá"], + "_Every %n week_::_Every %n weeks_" : ["Gach %n seachtain","Gach %n seachtain","Gach %n seachtain","Gach %n seachtain","Gach %n seachtain"], + "_Every %n month_::_Every %n months_" : ["Gach %n mí","Gach %n mí","Gach %n mí","Gach %n mí","Gach %n mí"], + "_Every %n year_::_Every %n years_" : ["Gach %n bliain","Gach %n bliain","Gach %n bliain","Gach %n bliain","Gach %n bliain"], + "_on {weekday}_::_on {weekdays}_" : ["ar {weekday}","ar {weekdays}","ar {weekdays}","ar {weekdays}","ar {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["ar lá {dayOfMonthList}","ar laethanta {dayOfMonthList}","ar laethanta {dayOfMonthList}","ar laethanta {dayOfMonthList}","ar laethanta {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "ar an {ordinalNumber} {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "in {monthNames} ar an {dayOfMonthList}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} ar an {ordinalNumber} {byDaySet}", + "until {untilDate}" : "go dtí {untilDate}", + "_%n time_::_%n times_" : ["%n am","%n uair","%n uair","%n uair","%n uair"], + "second" : "soicind", + "third" : "an tríú", + "fourth" : "an ceathrú", + "fifth" : "an cúigiú", + "second to last" : "dara go deireanach", + "last" : "go deireanach", + "Untitled task" : "Tasc gan teideal", + "Please ask your administrator to enable the Tasks App." : "Iarr ar do riarthóir an Aip Tascanna a chumasú le do thoil.", + "You are not allowed to edit this event as an attendee." : "Níl cead agat an imeacht seo a chur in eagar mar fhreastalaí.", + "W" : "W", + "%n more" : "%n níos mó", + "No events to display" : "Níl aon imeachtaí le taispeáint", + "All participants declined" : "Dhiúltaigh na rannpháirtithe go léir", + "Please confirm your participation" : "Deimhnigh do rannpháirtíocht", + "You declined this event" : "Dhiúltaigh tú don imeacht seo", + "Your participation is tentative" : "Tá do rannpháirtíocht trialach", + "_+%n more_::_+%n more_" : ["+%n eile","+%n eile","+%n eile","+%n eile","+%n eile"], + "No events" : "Gan imeachtaí", + "Create a new event or change the visible time-range" : "Cruthaigh imeacht nua nó athraigh an raon ama infheicthe", + "Failed to save event" : "Theip ar shábháil an imeachta", + "It might have been deleted, or there was a typo in a link" : "Seans gur scriosadh é, nó go raibh clóscríobh i nasc", + "It might have been deleted, or there was a typo in the link" : "Seans gur scriosadh é, nó go raibh clóscríobh sa nasc", + "Meeting room" : "Seomra cruinnithe", + "Lecture hall" : "halla léachta", + "Seminar room" : "Seomra seimineáir", + "Other" : "Eile", + "When shared show" : "Nuair a bheidh an seó roinnte", + "When shared show full event" : "Nuair a chomhroinntear taispeáin imeacht iomlán", + "When shared show only busy" : "Nuair a bheidh an seó roinnte ach gnóthach", + "When shared hide this event" : "Nuair a bheidh tú roinnte cuir an t-imeacht seo i bhfolach", + "The visibility of this event in shared calendars." : "Infheictheacht an imeachta seo i bhféilirí roinnte.", + "Add a location" : "Cuir suíomh leis", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Cuir cur síos leis\n\n- Cad faoi atá an cruinniú seo?\n- Míreanna ar an gclár\n- Rud ar bith is gá do rannpháirtithe a ullmhú", + "Status" : "Stádas", + "Confirmed" : "Deimhnithe", + "Canceled" : "Ar ceal", + "Confirmation about the overall status of the event." : "Deimhniú faoi stádas foriomlán an imeachta.", + "Show as" : "Taispeáin mar", + "Take this event into account when calculating free-busy information." : "Cuir an t-imeacht seo san áireamh agus faisnéis saor-ghnóthach á ríomh.", + "Categories" : "Catagóirí", + "Categories help you to structure and organize your events." : "Cuidíonn catagóirí leat do chuid imeachtaí a struchtúrú agus a eagrú.", + "Search or add categories" : "Cuardaigh nó cuir catagóirí leis", + "Add this as a new category" : "Cuir é seo leis mar chatagóir nua", + "Custom color" : "Dath saincheaptha", + "Special color of this event. Overrides the calendar-color." : "Dath speisialta na hócáide seo. sháraíonn an dath féilire.", + "Error while sharing file" : "Earráid agus an comhad á roinnt", + "Error while sharing file with user" : "Earráid agus an comhad á roinnt leis an úsáideoir", + "Error creating a folder {folder}" : "Earráid ag cruthú fillteáin {folder}", + "Attachment {fileName} already exists!" : "Tá ceangaltán {fileName} ann cheana féin!", + "Attachment {fileName} added!" : "Cuireadh an ceangaltán {fileName} leis!", + "An error occurred during uploading file {fileName}" : "Tharla earráid agus an comhad {fileName} á uaslódáil", + "An error occurred during getting file information" : "Tharla earráid agus faisnéis comhaid á fáil", + "Talk conversation for event" : "Labhair comhrá don imeacht", + "An error occurred, unable to delete the calendar." : "Tharla earráid, níorbh fhéidir an féilire a scriosadh.", + "Imported {filename}" : "Iompórtáladh {filename}", + "This is an event reminder." : "Is meabhrúchán imeachta é seo.", + "Error while parsing a PROPFIND error" : "Earráid agus earráid PROPFIND á parsáil", + "Appointment not found" : "Níor aimsíodh an coinne", + "User not found" : "Úsáideoir gan aimsiú", + "Reminder" : "Meabhrúchán", + "+ Add reminder" : "+ Cuir meabhrúchán leis", + "Select automatic slot" : "Roghnaigh sliotán uathoibríoch", + "with" : "le", + "Available times:" : "Amanna ar fáil:", + "Suggestions" : "Moltaí", + "Details" : "Sonraí" +},"pluralForm" :"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);" +} \ No newline at end of file diff --git a/l10n/gl.js b/l10n/gl.js index 6d235b758642c5873404af895bcf9a21028a7373..e6f949f46c76ad9fa4f9506af65a3dd20f29fe63 100644 --- a/l10n/gl.js +++ b/l10n/gl.js @@ -1,111 +1,171 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "O enderezo de correo indicado é longo de máis", "User-Session unexpectedly expired" : "A sesión de usuario caducou inesperadamente", "Provided email-address is not valid" : "O enderezo de correo-e indicado non é válido", "%s has published the calendar »%s«" : "%s publicou o calendario «%s»", - "Unexpected error sending email. Please contact your administrator." : "Produciuse un erro inesperado ao enviar correo. Póñase en contacto co seu administrador.", + "Unexpected error sending email. Please contact your administrator." : "Produciuse un erro non agardado ao enviar correo. Póñase en contacto coa administración desta instancia.", + "Successfully sent email to %1$s" : "O correo foi enviado satisfactoriamente %1$s", "Hello," : "Ola,", "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte de que %s publicou o calendario «%s»", "Open »%s«" : "Abrir «%s»", "Cheers!" : "Saúdos!", "Upcoming events" : "Próximos eventos", - "Appointments" : "Cita", + "No more events today" : "Hoxe non hai máis eventos", + "No upcoming events" : "Non hai eventos próximos", + "More events" : "Máis eventos", + "%1$s with %2$s" : "%1$s con %2$s", + "Calendar" : "Calendario", + "New booking {booking}" : "Nova reserva {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) reservou a cita «{config_display_name}»o {date_time}.", + "Appointments" : "Citas", + "Schedule appointment \"%s\"" : "Programar cita «%s»", + "Schedule an appointment" : "Programar unha cita", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Preparar para %s", + "Follow up for %s" : "Facer un seguimento a %s", + "Your appointment \"%s\" with %s needs confirmation" : "A súa cita «%s» con %s necesita confirmación", + "Dear %s, please confirm your booking" : "Estimado %s, agradecémoslle que confirme a súa reserva", "Confirm" : "Confirmar", + "Appointment with:" : "Cita con:", + "Description:" : "Descrición:", + "This confirmation link expires in %s hours." : "Esta ligazón de confirmación caduca en %s horas.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Se, após todo, aínda quere cancelar a cita, póñase en contacto co seu organizador respondendo a este correo ou visitando a súa páxina de perfil.", + "Your appointment \"%s\" with %s has been accepted" : "Foi aceptada a súa cita «%s» con %s.", + "Dear %s, your booking has been accepted." : "Estimado %s, a súa reserva foi aceptada.", + "Appointment for:" : "Cita para:", "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Recibirá unha ligazón co correo de confirmación", "Where:" : "Onde:", - "Description:" : "Descrición:", - "Calendar" : "Calendario", - "A Calendar app for Nextcloud" : "Unha aplicación de calendario para o Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "A aplicación de Calendario é unha interface de usuario para o servidor CalDAV do Nextcloud. Sincronice doadamente eventos en varios dispositivos co seu Nextcloud e edíteos en líña.\n\n* 🚀 **Integración con outras aplicación do Nextcloud!** Actualmente Contactos – outras por chegar.\n* 🌐 **Compatibilidade con WebCal!** Quere ver os partidos do seu equipo favorito no seu calendario? Non hai problema!\n* 🙋 **Asistentes** Convide á xente aos seus eventos.\n* ⌚️ **Libre/Ocupado:** Verá cando os asistentes están dispoñíbeis\n* ⏰ **Lembretes!** Obteña alarmas para eventos no navegador e por correo-e.\n* 🔍 Busca! Atopa os teus eventos ao teu gusto\n* ☑️ Tarefas! Vexa as tarefas con data de vencemento directamente no calendario\n* 🙈 **Non reinventamos a roda!** Baseada nas grandes bibliotecas [davclient.js](https://github.com/evert/davclient.js), [ical.js](https://github.com/mozilla-comm/ical.js) e [fullcalendar](https://github.com/fullcalendar/fullcalendar).", + "Comment:" : "Comentario:", + "You have a new appointment booking \"%s\" from %s" : "Ten unha nova reserva de cita «%s» de %s", + "Dear %s, %s (%s) booked an appointment with you." : "Estimado %s, %s (%s) reservou unha cita con Vde.", + "A Calendar app for Nextcloud" : "Unha aplicación de calendario para Nextcloud", "Previous day" : "Día anterior", "Previous week" : "Semana anterior", + "Previous year" : "Ano anterior", "Previous month" : "Mes anterior", "Next day" : "Día seguinte", "Next week" : "Semana seguinte", + "Next year" : "Ano seguinte", "Next month" : "Mes seguinte", - "New event" : "Novo evento", + "Create new event" : "Crear un novo evento", + "Event" : "Evento", "Today" : "Hoxe", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Ano", "List" : "Lista", + "Appointment link was copied to clipboard" : "A ligazón da cita copiouse no portapapeis", + "Appointment link could not be copied to clipboard" : "Non foi posíbel copiar a ligazón da cita no portapapeis", "Preview" : "Vista previa", "Copy link" : "Copiar a ligazón", "Edit" : "Editar", "Delete" : "Eliminar", - "Add new" : "Engadir novo", - "Untitled calendar" : "Calendario sen título", - "Edit name" : "Editar o nome", - "Saving name …" : "Gardando o nome …", - "Edit color" : "Editar a cor", - "Saving color …" : "Gardando a cor …", - "Copy private link" : "Copiar a ligazón privada", - "Export" : "Exportar", - "Unshare from me" : "Deixar de compartir", + "Appointment schedules" : "Calendarios de citas", + "Create new" : "Crear novo", + "Disable calendar \"{calendar}\"" : "Desactivar o calendario «{calendar}»", + "Disable untitled calendar" : "Desactivar o calendario sen título", + "Enable calendar \"{calendar}\"" : "Activar o calendario «{calendar}»", + "Enable untitled calendar" : "Activar o calendario sen título", "An error occurred, unable to change visibility of the calendar." : "Produciuse un erro, non é posíbel cambiar a visibilidade do calendario.", - "An error occurred, unable to delete the calendar." : "Produciuse un erro, non é posíbel eliminar o calendario.", - "Calendar link copied to clipboard." : "A ligazón do calendario foi copiada no portapapeis.", - "Calendar link could not be copied to clipboard." : "Non foi posíbel copiar a ligazón do calendario no portapapeis.", - "An error occurred, unable to rename the calendar." : "Produciuse un erro, non é posíbel renomear o calendario.", - "An error occurred, unable to change the calendar's color." : "Produciuse un erro, non é posíbel cambiar a cor do calendario.", + "Untitled calendar" : "Calendario sen título", + "Shared with you by" : "Compartido con Vde. por", + "Edit and share calendar" : "Editar e compartir o calendario", + "Edit calendar" : "Editar o calendario", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Deixar de compartir o calendario en {countdown} segundo","Deixar de compartir o calendario en {countdown} segundos"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Eliminar o calendario en {countdown} segundo","Eliminar o calendario en {countdown} segundos"], - "Share link" : "Compartir ligazón", - "Publish calendar" : "Publicar o calendario", - "Publishing calendar" : "Publicando o calendario", - "Copy public link" : "Copiar a ligazón pública", - "Send link to calendar via email" : "Enviar a ligazón ao calendario por correo", - "Enter one address" : "Introduza un enderezo", - "Sending email …" : "Enviando correo …", + "An error occurred, unable to create the calendar." : "Produciuse un erro, non é posíbel crear o calendario.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Introduza unha ligazón correcta (comezando con http://, https://, webcal://, or webcals://)", + "Calendars" : "Calendarios", + "Add new" : "Engadir novo", + "New calendar" : "Novo calendario", + "Name for new calendar" : "Nome para o novo calendario", + "Creating calendar …" : "Creando o calendario…", + "New calendar with task list" : "Novo calendario con lista de tarefas", + "New subscription from link (read-only)" : "Nova subscrición desde ligazón (só lectura)", + "Creating subscription …" : "Creando subscrición …", + "Add public holiday calendar" : "Engadir o calendario de días festivos", + "Add custom public calendar" : "Engadir un calendario público personalizado", + "Calendar link copied to clipboard." : "A ligazón do calendario foi copiada no portapapeis.", + "Calendar link could not be copied to clipboard." : "Non foi posíbel copiar a ligazón do calendario no portapapeis.", "Copy subscription link" : "Copiar a ligazón de subscrición", - "Copying link …" : "Copiando a ligazón …", + "Copying link …" : "Copiando a ligazón…", "Copied link" : "Ligazón copiada", "Could not copy link" : "Non foi posíbel copiar a ligazón", - "Copy embedding code" : "Copia o código incrustado", - "Copying code …" : "Copiando o código …", - "Copied code" : "Código copiado", - "Could not copy code" : "Non foi posíbel copiar o código", - "Delete share link" : "Eliminar a ligazón compartida", - "Deleting share link …" : "Eliminando a ligazón compartida …", + "Export" : "Exportar", + "Untitled item" : "Elemento sen título", + "Unknown calendar" : "Calendario descoñecido", + "Could not load deleted calendars and objects" : "Non foi posíbel cargar os calendarios e obxectos eliminados", + "Could not delete calendar or event" : "Non foi posíbel eliminar o calendario ou o evento", + "Could not restore calendar or event" : "Non foi posíbel restaurar o calendario ou o evento", + "Do you really want to empty the trash bin?" : " Confirma que quere baleirar o lixo?", + "Empty trash bin" : "Baleirar o lixo", + "Trash bin" : "Cesto do lixo.", + "Loading deleted items." : "Cargando elementos eliminados.", + "You do not have any deleted items." : "Non ten ningún elemento eliminado.", + "Name" : "Nome", + "Deleted" : "Eliminada", + "Restore" : "Restaurar", + "Delete permanently" : "Eliminar definitivamente", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Os elementos do cesto do lixo elimínanse após {numDays} día","Os elementos do cesto do lixo elimínanse após {numDays} días"], + "Could not update calendar order." : "Non foi posíbel actualizar a orde do calendario.", + "Shared calendars" : "Calendarios compartidos", + "Deck" : "Gabeta", + "Hidden" : "Agochada", + "Internal link" : "Ligazón interna", + "A private link that can be used with external clients" : "Unha ligazón privada que se pode usar con clientes externos", + "Copy internal link" : "Copiar a ligazón interna", "An error occurred, unable to publish calendar." : "Produciuse un erro, non é posíbel publicar o calendario.", "An error occurred, unable to send email." : "Produciuse un erro, non é posíbel enviar o correo", "Embed code copied to clipboard." : "Código incrustado copiado ao portapapeis.", "Embed code could not be copied to clipboard." : "Non foi posíbel copiar o código incrustado no portapapeis.", "Unpublishing calendar failed" : "Produciuse un fallo ao deixar de publicar o calendario", - "Share with users or groups" : "Compartir con usuarios ou grupos", - "No users or groups" : "Non hai usuarios nin grupos", + "Share link" : "Ligazón para compartir", + "Copy public link" : "Copiar a ligazón pública", + "Send link to calendar via email" : "Enviar a ligazón ao calendario por correo", + "Enter one address" : "Introduza un enderezo", + "Sending email …" : "Enviando o correo…", + "Copy embedding code" : "Copiar o código incrustado", + "Copying code …" : "Copiando o código…", + "Copied code" : "Código copiado", + "Could not copy code" : "Non foi posíbel copiar o código", + "Delete share link" : "Eliminar a ligazón para compartir", + "Deleting share link …" : "Eliminando a ligazón para compartir…", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Equipo)", + "An error occurred while unsharing the calendar." : "Produciuse un erro ao deixar de compartir o calendario.", + "An error occurred, unable to change the permission of the share." : "Produciuse un erro, non é posíbel cambiar o permiso da compartición.", "can edit" : "pode editar", "Unshare with {displayName}" : "Deixar de compartir con {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Produciuse un erro, non é posíbel cambiar a non compartición do calendario.", - "An error occurred, unable to change the permission of the share." : "Produciuse un erro, non é posíbel cambiar o permiso da compartición.", - "+ New calendar" : "+ Novo calendario", - "New calendar" : "Novo calendario", - "Creating calendar …" : "Creando o calendario …", - "New calendar with task list" : "Novo calendario con lista de tarefas", - "New subscription from link (read-only)" : "Nova subscrición dende ligazón (só lectura)", - "Creating subscription …" : "Creando subscrición …", - "An error occurred, unable to create the calendar." : "Produciuse un erro, non é posíbel crear o calendario.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Introduza unha ligazón correcta (comezando con http://, https://, webcal://, or webcals://)", - "Name" : "Nome", - "Deleted" : "Eliminada", - "Restore" : "Restaurar", - "Delete permanently" : "Eliminar de xeito permanente", - "Could not update calendar order." : "Non foi posíbel actualizar a orde do calendario.", + "Share with users or groups" : "Compartir con usuarios ou grupos", + "No users or groups" : "Non hai usuarios nin grupos", + "Failed to save calendar name and color" : "Produciuse un fallo ao gardar o nome e a cor do calendario", + "Calendar name …" : "Nome do calendario…", + "Never show me as busy (set this calendar to transparent)" : "Non amosarme nunca como ocupado (definir este calendario como transparente)", + "Share calendar" : "Compartir o calendario", + "Unshare from me" : "Deixar de compartir comigo", + "Save" : "Gardar", "Import calendars" : "Importar calendarios", "Please select a calendar to import into …" : "Seleccione un calendario para importalo a …", "Filename" : "Nome de ficheiro", "Calendar to import into" : "Calendario ao que importar", "Cancel" : "Cancelar", "_Import calendar_::_Import calendars_" : ["Importar calendario","Importar calendarios"], + "Select the default location for attachments" : "Seleccione a localización predeterminada para os anexos", + "Pick" : "Escoller", + "Invalid location selected" : "Seleccionou unha localización incorrecta", + "Attachments folder successfully saved." : "O cartafol de anexos foi gardado correctamente.", + "Error on saving attachments folder." : "Produciuse un erro ao gardar o cartafol de anexos.", + "Default attachments location" : "Localización predeterminada dos anexos", "{filename} could not be parsed" : "Non foi posíbel analizar {filename}", - "No valid files found, aborting import" : "Non se atoparon ficheiros válidos, cancelando a importación.", + "No valid files found, aborting import" : "Non se atopou ningún ficheiro válido, cancelando a importación.", + "_Successfully imported %n event_::_Successfully imported %n events_" : [" %n evento importado satisfactoriamente","%n eventos importados satisfactoriamente"], "Import partially failed. Imported {accepted} out of {total}." : "Fallou parcialmente a importación. Importáronse {accepted} de {total}.", "Automatic" : "Automatico", "Automatic ({detected})" : "Automático ({detected})", "New setting was not saved successfully." : "O novo axuste non foi fardado correctamente.", - "Shortcut overview" : "Vista xeral dos atallos", - "or" : "ou", "Navigation" : "Navegación", "Previous period" : "Período anterior", "Next period" : "Período seguinte", @@ -113,27 +173,66 @@ OC.L10N.register( "Day view" : "Vista do día", "Week view" : "Vista da semana", "Month view" : "Vista do mes", + "Year view" : "Vista do ano", "List view" : "Ver como lista", "Actions" : "Accións", "Create event" : "Crear evento", "Show shortcuts" : "Amosar atallos", "Editor" : "Editor", + "Close editor" : "Pechar o editor", + "Save edited event" : "Gardar o evento editado", + "Delete edited event" : "Eliminar o evento editado", + "Duplicate event" : "Evento duplicado", + "Shortcut overview" : "Vista xeral dos atallos", + "or" : "ou", + "Calendar settings" : "Axustes de Calendario", + "At event start" : "No inicio do evento", + "No reminder" : "Non hai lembretes", + "Failed to save default calendar" : "Produciuse un fallo ao gardar o calendario predeterminado", + "CalDAV link copied to clipboard." : "Copiada a ligazón CalDAV ao portapapeis.", + "CalDAV link could not be copied to clipboard." : "Non foi posíbel copiar a ligazón CalDAV ao portapapeis.", "Enable birthday calendar" : "Activar o calendario de aniversarios", "Show tasks in calendar" : "Amosar as tarefas no calendario", "Enable simplified editor" : "Activar o editor simplificado", - "Limit visible events per view" : "Limitar os eventos visíbeis por vista", + "Limit the number of events displayed in the monthly view" : "Limite o número de eventos que se amosan na vista mensual", "Show weekends" : "Amosar os fins de semana", "Show week numbers" : "Amosar o número de semana", + "Time increments" : "Incrementos de tempo", + "Default calendar for incoming invitations" : "Calendario predeterminado para os convites entrantes", + "Default reminder" : "Lembrete predeterminado", "Copy primary CalDAV address" : "Copiar o enderezo principal do CalDAV", "Copy iOS/macOS CalDAV address" : "Copiar o enderezo CalDAV de iOS/macOS", + "Personal availability settings" : "Configuración persoal de dispoñibilidade", "Show keyboard shortcuts" : "Amosar os atallos de teclado", - "No reminder" : "Non hai lembretes", - "CalDAV link copied to clipboard." : "Copiada a ligazón CalDAV ao portapapeis.", - "CalDAV link could not be copied to clipboard." : "Non foi posíbel copiar a ligazón CalDAV ao portapapeis.", + "Appointment schedule successfully created" : "O calendario de citas foi creado correctamente", + "Appointment schedule successfully updated" : "O calendario de citas foi actualizado correctamente", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minuto","{duration} minutos"], + "0 minutes" : "0 minutos", + "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} horas"], + "_{duration} day_::_{duration} days_" : ["{duration} día","{duration} días"], + "_{duration} week_::_{duration} weeks_" : ["{duration} semana","{duration} semanas"], + "_{duration} month_::_{duration} months_" : ["{duration} mes","{duration} meses"], + "_{duration} year_::_{duration} years_" : ["{duration} ano","{duration} anos"], + "To configure appointments, add your email address in personal settings." : "Para configurar citas, engada o seu enderezo de correo nos axustes persoais.", + "Public – shown on the profile page" : "Público – amosase na páxina do perfil", + "Private – only accessible via secret link" : "Privado – accesíbel só mediante unha ligazón secreta", + "Appointment schedule saved" : "Gardouse o calendario de citas", + "Create appointment schedule" : "Crear o calendario de citas", + "Edit appointment schedule" : "Editar o calendario de citas", + "Update" : "Actualizar", + "Appointment name" : "Nome da cita", "Location" : "Localización", + "Create a Talk room" : "Crear unha sala de Parladoiro", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Xerarase unha ligazón única para cada cita reservada e enviarase a través do correo de confirmación", "Description" : "Descrición", + "Visibility" : "Visibilidade", "Duration" : "Duración", + "Increments" : "Incrementos", + "Additional calendars to check for conflicts" : "Calendarios adicionais para comprobar se hai conflitos", + "Pick time ranges where appointments are allowed" : "Escolla intervalos de tempo nos que se permiten citas", "to" : "para", + "Delete slot" : "Eliminar franxa horaria", + "No times set" : "Non hai horarios fixados", "Add" : "Engadir", "Monday" : "luns", "Tuesday" : "martes", @@ -142,9 +241,37 @@ OC.L10N.register( "Friday" : "venres", "Saturday" : "sábado", "Sunday" : "domingo", - "Save" : "Gardar", - "Update" : "Actualizar", + "Weekdays" : "Días laborábeis", + "Add time before and after the event" : "Engadir tempo antes e após o evento", + "Before the event" : "Antes do evento", + "After the event" : "Após o evento", + "Planning restrictions" : "Restricións de planificación", + "Minimum time before next available slot" : "Tempo mínimo antes da seguinte franxa horaria dispoñíbel", + "Max slots per day" : "Máximo de franxas horarias por día", + "Limit how far in the future appointments can be booked" : "Limita ata onde se poden reservar citas futuras", + "It seems a rate limit has been reached. Please try again later." : "Semella que se acadou o límite da taxa. Tenteo de novo máis tarde.", + "Please confirm your reservation" : "Confirme a súa reserva", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Témoslle enviado un correo cos detalles. Confirme a súa cita usando a ligazón do correo. Xa pode pechar esta páxina agora.", + "Your name" : "O seu nome", "Your email address" : "O seu enderezo de correo", + "Please share anything that will help prepare for our meeting" : "Comparta calquera cousa que axude a preparar a nosa xuntanza", + "Could not book the appointment. Please try again later or contact the organizer." : "Non foi posíbel reservar a cita. Ténteo de novo máis tarde ou póñase en contacto co organizador.", + "Back" : "Atras", + "Book appointment" : "Concertar cita", + "Error fetching Talk conversations." : "Produciuse un erro ao recuperar as conversas en Parladoiro", + "Conversation does not have a valid URL." : "A conversa non ten un URL válido.", + "Successfully added Talk conversation link to location." : "Engadiuse correctamente a ligazón da conversa en Parladoiro á localización.", + "Successfully added Talk conversation link to description." : "Engadiuse correctamente a ligazón da conversa en Parladoiro á descrición.", + "Failed to apply Talk room." : "Produciuse un fallo ao aplicar a sala de Parladoiro", + "Error creating Talk conversation" : "Produciuse un erro ao crear a conversa en Parladoiro", + "Select a Talk Room" : "Seleccionar unha sala de Parladoiro", + "Add Talk conversation" : "Engadir unha conversa de Parladoiro", + "Fetching Talk rooms…" : "Recuperando salas de Parladoiro…", + "No Talk room available" : "Non hai ningunha sala de Parladoiro dispoñíbel", + "Create a new conversation" : "Crear unha nova conversa", + "Select conversation" : "Seleccionar conversa", + "on" : "o", + "at" : "ás", "before at" : "antes dás", "Notification" : "Notificación", "Email" : "Correo-e", @@ -155,119 +282,208 @@ OC.L10N.register( "Edit time" : "Editar a hora", "Save time" : "Gardar a hora", "Remove reminder" : "Retirar o lembrete", - "on" : "o", - "at" : "ás", - "+ Add reminder" : "+ Engadir lembrete", - "Add reminder" : "Engadir recordatorio", - "_second_::_seconds_" : ["segundo","segundos"], - "_minute_::_minutes_" : ["minuto","minutos"], - "_hour_::_hours_" : ["hora","horas"], - "_day_::_days_" : ["día","días"], - "_week_::_weeks_" : ["semana","semanas"], + "Add reminder" : "Engadir lembrete", + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Escoller un ficheiro para engadir como anexo", + "Choose a file to share as a link" : "Escoller un ficheiro para compartir como ligazón", + "Attachment {name} already exist!" : "O anexo {name} xa existe!", + "Could not upload attachment(s)" : "Non foi posíbel enviar os anexos", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Está a piques de navegar a {host}. Confirma que quere continuar? Ligazón: {link}", + "Proceed" : "Continuar", + "No attachments" : "Sen anexos", + "Add from Files" : "Engadir desde Ficheiros", + "Upload from device" : "Enviar desde o dispositivo", + "Delete file" : "Eliminar ficheiro", + "Confirmation" : "Confirmación", + "_{count} attachment_::_{count} attachments_" : ["{count} anexo","{count} anexos"], + "Suggested" : "Suxerido", "Available" : "Dispoñíbel", + "Invitation accepted" : "Aceptouse o convite", + "Accepted {organizerName}'s invitation" : "Aceptouse o convite de {organizerName}", + "Participation marked as tentative" : "Participación marcada como provisional", + "Invitation is delegated" : "O convite está delegado", "Not available" : "Non dispoñíbel", + "Invitation declined" : "Convite declinado", + "Declined {organizerName}'s invitation" : "Declinouse o convite de {organizerName}", + "Availability will be checked" : "Verificarase a dispoñibilidade", + "Invitation will be sent" : "Enviarase un convite", + "Failed to check availability" : "Produciuse un erro ao verificar a dispoñibilidade", + "Failed to deliver invitation" : "Produciuse un fallo ao entregar o convite.", + "Awaiting response" : "Agardando a resposta", + "Checking availability" : "Comprobando a dispoñibilidade", + "Has not responded to {organizerName}'s invitation yet" : "Aínda non respondeu ao convite de {organizerName}", + "chairperson" : "presidente", + "required participant" : "precísase do participante", + "non-participant" : "non participa", + "optional participant" : "participante opcional", + "{organizer} (organizer)" : "{organizer} (organizador)", + "{attendee} ({role})" : "{attendee} ({role})", "Availability of attendees, resources and rooms" : "Dispoñibilidade de asistentes, recursos e salas", + "Suggestion accepted" : "Aceptouse a suxestión", + "Legend" : "Lenda", + "Out of office" : "Fóra da oficina", + "Attendees:" : "Asistentes:", + "Done" : "Feito", + "Search room" : "Buscar sala", + "Room name" : "Nome da sala", + "Check room availability" : "Comprobar a dispoñibilidade de salas", "Free" : "Libre", - "Busy (tentative)" : "Ocupado (tentativa)", + "Busy (tentative)" : "Ocupado (provisional)", "Busy" : "Ocupado", - "Out of office" : "Fóra da oficina", "Unknown" : "Descoñecido", + "Find a time" : "Atopar un momento", + "The invitation has been accepted successfully." : "O convite foi aceptado correctamente.", + "Failed to accept the invitation." : "Produciuse un fallo ao aceptar o convite.", + "The invitation has been declined successfully." : "O convite foi declinado correctamente.", + "Failed to decline the invitation." : "Produciuse un fallo ao declinar o convite.", + "Your participation has been marked as tentative." : "A súa participación foi marcada como provisional.", + "Failed to set the participation status to tentative." : "Produciuse un fallo ao definir o estado de participación como provisional.", "Accept" : "Aceptar", "Decline" : "Declinar", - "Tentative" : "Tentativa", - "Create Talk room for this event" : "Crear sala de conversas para este evento", - "Show busy times" : "Amosar as horas ocupadas", + "Tentative" : "Provisional", "No attendees yet" : "Aínda non hai participantes", - "Successfully appended link to talk room to description." : "Engadiuse satisfactoriamente unha ligazón á descrición da sala de conversas.", - "Error creating Talk room" : "Produciuse un erro ao crear a sala de conversas", - "Send email" : "Enviar o correo", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} convites, {confirmedCount} confirmados", + "Successfully appended link to talk room to location." : "Engadiuse satisfactoriamente a ligazón á localización da sala de conversa.", + "Successfully appended link to talk room to description." : "Engadiuse satisfactoriamente unha ligazón á descrición da sala de conversa.", + "Error creating Talk room" : "Produciuse un erro ao crear a sala de Parladoiro", + "Attendees" : "Asistentes", + "_%n more guest_::_%n more guests_" : ["%n convidado máis","%n convidados máis"], + "Remove group" : "Retirar o grupo", + "Remove attendee" : "Retirar o asistente", + "Request reply" : "Solicitar resposta", "Chairperson" : "Presidente", - "Required participant" : "Participante obrigatorio", + "Required participant" : "Precísase do participante", "Optional participant" : "Participante opcional", - "Non-participant" : "Non participantes", - "Remove attendee" : "Eliminar o asistente", + "Non-participant" : "Non participa", + "_%n member_::_%n members_" : ["%n membro","%n membros"], "No match found" : "Non se atopou ningunha coincidencia", + "Note that members of circles get invited but are not synced yet." : "Teña en conta que os membros dos círculos son convidados mais aínda non se sincronizan.", + "Note that members of contact groups get invited but are not synced yet." : "Teña en conta que os membros dos grupos de contacto son convidados mais aínda non se sincronizan.", "(organizer)" : "(organizador)", - "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Para enviar convites e xestionar respostas, [linkopen]engada o seu enderezo de correo electrónico na configuración persoal[linkclose].", + "Make {label} the organizer" : "Converter a {label} en organizador", + "Make {label} the organizer and attend" : "Converter a {label} en organizador e participante", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Para enviar convites e xestionar respostas, [linkopen]engada o seu enderezo de correo nos axustes persoais[linkclose].", "Remove color" : "Retirar a cor", "Event title" : "Título do evento", - "All day" : "Todo o día", - "from {startDate}" : "dende {startDate}", - "from {startDate} at {startTime}" : "dende {startDate} ás {startTime}", - "to {endDate}" : "ata {endDate}", - "to {endDate} at {endTime}" : "ata {endDate} ás {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Non é posíbel modificar a configuración de todo o día para eventos que forman parte dun conxunto de recorrencia.", + "From" : "Desde", + "To" : "Ata", "Repeat" : "Repetir", - "End repeat" : "Fin da repetición", - "Select to end repeat" : "Seleccionar para finalizar a repetición", + "_time_::_times_" : ["vez","veces"], "never" : "nunca", "on date" : "na data", "after" : "após", - "_time_::_times_" : ["vez","veces"], + "End repeat" : "Fin da repetición", + "Select to end repeat" : "Seleccionar para finalizar a repetición", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Este evento é a excepción de recorrencia dun conxunto de recorrencia. Non pode engadirlle unha regra de recorrencia.", "first" : "primeiro", - "third" : "terceiro", - "fourth" : "cuarto", - "fifth" : "quinto", - "second to last" : "penúltimo", - "last" : "último", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Os cambios na regra de recorrencia só se aplicarán a esta e a todas as futuras recorrencias.", "Repeat every" : "Repetir cada", "By day of the month" : "Por día do mes", - "On the" : "Durante o", + "On the" : "O", + "_day_::_days_" : ["día","días"], + "_week_::_weeks_" : ["semana","semanas"], "_month_::_months_" : ["mes","meses"], "_year_::_years_" : ["ano","anos"], - "weekday" : "día da semana", - "weekend day" : "día da fin de semana", + "weekday" : "días laborábeis", + "weekend day" : "días da fin de semana", + "Does not repeat" : "Non repetir", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud non é totalmente compatíbel coa definición de recorrencia deste evento. Se edita as opcións de recorrencia, pódense perder certas recorrencias.", + "No rooms or resources yet" : "Aínda non hai salas nin recursos", + "Resources" : "Recursos", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asento","{seatingCapacity} asentos"], "Add resource" : "Engadir recurso", "Has a projector" : "Ten un proxector", "Has a whiteboard" : "Ten un encerado dixital", "Wheelchair accessible" : "Accesíbel para cadeiras de rodas", - "Remove resource" : "Retirar recurso", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asento","{seatingCapacity} asentos"], - "Projector" : "Proxector", - "Whiteboard" : "Encerado dixital", + "Remove resource" : "Retirar o recurso", "Search for resources or rooms" : "Buscar por recursos ou aulas", "available" : "dispoñíbel", - "More" : "Máis", - "Update this occurrence" : "Actualizar esta recorrencia", + "unavailable" : "non dispoñíbel", + "Show all rooms" : "Amosar todas as salas", + "Projector" : "Proxector", + "Whiteboard" : "Encerado dixital", + "Room type" : "Tipo de sala", + "Any" : "Calquera", + "Minimum seating capacity" : "Capacidade mínima de asentos", + "More details" : "Máis detalles", "Update this and all future" : "Actualizar esta e todas as futuras", + "Update this occurrence" : "Actualizar esta recorrencia", "Public calendar does not exist" : "O calendario público non existe", "Maybe the share was deleted or has expired?" : "Quizais a acción foi eliminada ou caducou.", - "Pick a time" : "Escolla un momento", - "Pick a date" : "Escolla unha data", - "from {formattedDate}" : "dende {formattedDate}", + "from {formattedDate}" : "desde {formattedDate}", "to {formattedDate}" : "ata {formattedDate}", "on {formattedDate}" : "o {formattedDate}", - "from {formattedDate} at {formattedTime}" : "dende {formattedDate} ás {formattedTime}", + "from {formattedDate} at {formattedTime}" : "desde {formattedDate} ás {formattedTime}", "to {formattedDate} at {formattedTime}" : "ata {formattedDate} ás {formattedTime}", "on {formattedDate} at {formattedTime}" : "o {formattedDate} ás {formattedTime}", "{formattedDate} at {formattedTime}" : "{formattedDate} ás {formattedTime}", "Please enter a valid date" : "Introduza unha data válida", "Please enter a valid date and time" : "Introduza unha data e hora válidas", + "Select a time zone" : "Seleccione un fuso horario", + "Please select a time zone:" : "Seleccione un fuso horario:", + "Pick a time" : "Escolla un momento", + "Pick a date" : "Escolla unha data", + "Type to search time zone" : "Escriba para buscar o fuso horario", "Global" : "Global", + "Holidays in {region}" : "Festivos en {region}", + "An error occurred, unable to read public calendars." : "Produciuse un erro, non é posíbel ler os calendarios públicos.", + "An error occurred, unable to subscribe to calendar." : "Produciuse un erro, non é posíbel subscribirse ao calendario.", + "Public holiday calendars" : "Calendarios de festivos", + "Public calendars" : "Calendarios públicos", + "No valid public calendars configured" : "Non se configurou ningún calendario público válido", + "Speak to the server administrator to resolve this issue." : "Fale coa administración do servidor para resolver este incidente.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Os calendarios de festivos son fornecidos porThunderbird . Os datos do calendario descargaranse de {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Estes calendarios públicos son suxeridos pola administración do servidor. Os datos do calendario descargaranse da páxina web correspondente.", + "By {authors}" : "Por {authors}", + "Subscribed" : "Subscrito", + "Subscribe" : "Subscribirse", + "Could not fetch slots" : "Non foi posíbel recuperar as franxas horarias", + "Select a date" : "Seleccione unha data", + "Select slot" : "Seleccionar franxa horaria", + "No slots available" : "Non hai franxas horarias dispoñíbeis", + "The slot for your appointment has been confirmed" : "Confirmouse a franxa horaria para a súa cita", + "Appointment Details:" : "Detalles da cita:", "Time:" : "Hora:", + "Booked for:" : "Reservada por:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Grazas. Confirmouse a súa reserva do {startDate} ao {endDate}.", + "Book another appointment:" : "Reserve outra cita:", + "See all available slots" : "Ver todas as franxas horarias dispoñíbeis", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "A franxa horaria para a súa cita de {startDate} a {endDate} xa non está dispoñíbel.", + "Please book a different slot:" : "Reserve unha franxa horaria diferente:", + "Book an appointment with {name}" : "Reserve unha cita con {name}", + "No public appointments found for {name}" : "Non se atopou ningunha cita pública para {name}", "Personal" : "Persoal", - "No more events today" : "Hoxe non hai máis eventos", - "No upcoming events" : "Non hai eventos próximos", - "Create a new event" : "Crear un novo evento", - "[Today]" : "[Hoxe]", - "[Tomorrow]" : "[Mañá]", - "[Yesterday]" : "[Onte]", - "[Last] dddd" : "[Último] dddd", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "A detección automática do fuso horario determinou que o seu fuso horario fose UTC.\nIsto probabelmente sexa o resultado das medidas de seguranza do seu navegador web.\nEstabeleza o seu fuso horario manualmente nos axustes do calendario.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Non se atopou o seu fuso horario configurado ({timezoneId}). Volvendo a UTC.\nCambie o seu fuso horario nos axustes e informe deste incidente.", + "Availability of {displayName}" : "Dispoñibilidade de {displayName}", + "Edit event" : "Editar o evento", "Event does not exist" : "O evento non existe", + "Duplicate" : "Duplicado", "Delete this occurrence" : "Eliminar esta recorrencia", "Delete this and all future" : "Eliminar esta e todas as futuras", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "All day" : "Todo o día", + "Modifications wont get propagated to the organizer and other attendees" : "As modificacións non van ser propagadas ao organizador e a outros asistentes", + "Managing shared access" : "Xestionar o acceso compartido", + "Deny access" : "Denegar o acceso", + "Invite" : "Convidar", + "_User requires access to your file_::_Users require access to your file_" : ["O usuario precisa acceso ao seu ficheiro","Os usuarios precisan acceso ao seu ficheiro"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["O anexo precisa acceso compartido","Anexos que precisan acceso compartido"], + "Untitled event" : "Evento sen título", "Close" : "Pechar", - "Show more details" : "Amosar máis detalles", + "Modifications will not get propagated to the organizer and other attendees" : "As modificacións non van ser propagadas ao organizador e a outros asistentes", "Subscribe to {name}" : "Subscribirse a {name}", + "Export {name}" : "Exportar {name}", + "Show availability" : "Amosar a dispoñibilidade", "Anniversary" : "Aniversario", "Appointment" : "Cita", "Business" : "Negocios", "Education" : "Educación", - "Holiday" : "Festivo", + "Holiday" : "Día festivo", "Meeting" : "Xuntanza", "Miscellaneous" : "Miscelánea", "Non-working hours" : "Horas non laborábeis", @@ -290,44 +506,53 @@ OC.L10N.register( "on {time}" : "ás {time}", "on {time} ({timezoneId})" : "ás {time} ({timezoneId})", "Week {number} of {year}" : "Semana {number} de {year}", - "Does not repeat" : "Non repetir", - "Daily" : "Cada día", + "Daily" : "A diario", "Weekly" : "Cada semana", "Monthly" : "Cada mes", "Yearly" : "Cada ano", - "_Every %n day_::_Every %n days_" : ["Cada día","Cada %n días"], + "_Every %n day_::_Every %n days_" : ["Todos os días","Cada %n días"], "_Every %n week_::_Every %n weeks_" : ["Cada semana","Cada %n semanas"], "_Every %n month_::_Every %n months_" : ["Cada mes","Cada %n meses"], "_Every %n year_::_Every %n years_" : ["Cada ano","Cada %n anos"], "_on {weekday}_::_on {weekdays}_" : ["o {weekday}","os {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["o día {dayOfMonthList}","os días {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "o {ordinalNumber} {byDaySet}", - "in {monthNames}" : "en {monthNames}", - "in {monthNames} on the {ordinalNumber} {byDaySet}" : "en {monthNames} no {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "en {monthNames} o {ordinalNumber} {byDaySet}", "until {untilDate}" : "ata {untilDate}", "_%n time_::_%n times_" : ["%n vez","%n veces"], - "Untitled event" : "Evento sen título", + "second" : "segundo", + "third" : "terceiro", + "fourth" : "cuarto", + "fifth" : "quinto", + "second to last" : "penúltimo", + "last" : "último", "Untitled task" : "Tarefa sen título", - "Please ask your administrator to enable the Tasks App." : "Pregúntelle ao seu administrador pola activación da aplicación de tarefas.", - "Prev" : "Previo", - "Next" : "Seguinte", - "Year" : "Ano", + "Please ask your administrator to enable the Tasks App." : "Pregúntelle a administración desta instancia pola activación da aplicación de tarefas.", + "You are not allowed to edit this event as an attendee." : "Vde. non ten permiso para editar este evento como asistente.", "W" : "S", "%n more" : "%n máis", "No events to display" : "Non hai eventos para amosar", + "All participants declined" : "Todos os participantes declinaron", + "Please confirm your participation" : "Agradecémoslle que confirme a súa participación", + "You declined this event" : "Vde. declinou este evento", + "Your participation is tentative" : "A súa participación é provisional.", "_+%n more_::_+%n more_" : ["+%n máis","+%n máis"], "No events" : "Non hai eventos", "Create a new event or change the visible time-range" : "Crear un novo evento ou cambiar o intervalo de tempo visíbel", + "Failed to save event" : "Produciuse un fallo ao gardar o evento", "It might have been deleted, or there was a typo in a link" : "Pode que fose eliminado ou houbese un erro de dixitación nunha ligazón", "It might have been deleted, or there was a typo in the link" : "Pode que fose eliminado ou houbese un erro de dixitación na ligazón", - "Other" : "Outro", + "Meeting room" : "Sala de xuntanzas", + "Lecture hall" : "Sala de conferencias", + "Seminar room" : "Sala de seminarios", + "Other" : "Outra", "When shared show" : "Amosar ao compartir", "When shared show full event" : "Amosar o evento completo ao compartir", "When shared show only busy" : "Amosar só o ocupado ao compartir", "When shared hide this event" : "Agochar este evento ao compartir", "The visibility of this event in shared calendars." : "A visibilidade deste evento nos calendarios compartidos.", "Add a location" : "Engadir unha localización", - "Add a description" : "Engadir unha descrición", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Engadir unha descrición\n\n– De que trata esta xuntanza\n– Puntos da orde do día\n– Todo o que teñan que preparar os participantes", "Status" : "Estado", "Confirmed" : "Confirmado", "Canceled" : "Cancelada", @@ -340,99 +565,23 @@ OC.L10N.register( "Add this as a new category" : "Engadir isto como unha nova categoría", "Custom color" : "Cor personalizada", "Special color of this event. Overrides the calendar-color." : "Cor especial deste evento. Anula a cor do calendario.", - "Chat room for event" : "Sala de conversas para o evento", + "Error while sharing file" : "Produciuse un erro ao compartir o ficheiro", + "Error while sharing file with user" : "Produciuse un erro ao compartir o ficheiro co usuario", + "Attachment {fileName} already exists!" : "O anexo {fileName} xa existe!", + "An error occurred during getting file information" : "Produciuse un erro ao obter a información do ficheiro", + "Talk conversation for event" : "Conversa en Parladoiro para o evento", + "An error occurred, unable to delete the calendar." : "Produciuse un erro, non é posíbel eliminar o calendario.", "Imported {filename}" : "{filename} foi importado", - "Meditation" : "Meditación", - "Relaxing" : "Relaxante", - "Relax" : "Relaxamento", - "Commuting" : "De casa ao traballo ou ao revés", - "Invoice" : "Factura", - "Presentation" : "Presentación", - "Talk" : "Talk", - "Camping" : "Campismo", - "Camp" : "Campo", - "Movie" : "Filme", - "Cinema" : "Cinema", - "Graduation" : "Graduación", - "Brainstorm" : "Tormenta de ideas", - "Review" : "Revisar", - "Baseball" : "Béisbol", - "Meet" : "Xuntanza", - "Planning" : "Planificación", - "Pointing" : "Sinalar", - "Retrospective" : "Retrospectiva", - "Office" : "Oficina", - "Contributor week" : "Semana de colaboradores", - "Mail" : "Correo", - "Soccer" : "Futbol", - "Football" : "Rugby", - "Gaming" : "Xogos", - "Drive" : "Conducir", - "Bicycle" : "Bicicleta", - "Cycle" : "Bici", - "Biking" : "Ciclismo", - "Bike" : "Bicicleta", - "Podcast" : "Podcast", - "Basketball" : "Baloncesto", - "Fishing" : "Pesca", - "Hiking" : "Excursionismo", - "Hike" : "Camiñada", - "Art" : "Arte", - "Exhibition" : "Exhibición", - "Museum" : "Museo", - "Pilates" : "Pilates", - "Park" : "Parque", - "Studying" : "Estudando", - "Doctor" : "Médico", - "Health" : "Saúde", - "Dentist" : "Dentista", - "Hospital" : "Hospital", - "Interview" : "Entrevista", - "Training" : "Adestramento", - "Practice" : "Práctica", - "Sports" : "Deportes", - "Exercise" : "Exercicio", - "Work out" : " Rutina de exercicio", - "Working out" : "Facendo exercicio", - "Gym" : "Ximnasio", - "Barber" : "Perruqueiro", - "Haircut" : "Corte de pelo", - "Exam" : "Exame", - "Working" : "Traballando", - "New Years Eve" : "Serán de fin de ano", - "NYE" : "Noitevella", - "Fireworks" : "Fogos artificiais", - "Running" : "Correndo", - "Go for a run" : "Ir correr", - "Marathon" : "Maratón", - "Video-conference" : "Vídeoconferencia", - "Conference-call" : "Chamada de conferencia", - "Video-call" : "Vídeochamada", - "Video-chat" : "Vídeoconversa", - "Video-meeting" : "Vídeoxuntanza", - "Call" : "Chamada", - "Calling" : "Chamando", - "Christmas" : "Nadal", - "Conference" : "Conferencia", - "Pizza" : "Pizza", - "Travelling" : "Viaxando", - "Journey" : "Traxecto", - "Collaborate" : "Colaborar", - "Pair" : "Parella", - "Lecture" : "Lectura", - "Seminar" : "Seminario", - "Photograph" : "Fotografo", - "Party" : "Festa", - "Celebration" : "Celebración", - "Celebrate" : "Celebrar", - "Birthday" : "Aniversario (nacemento)", - "Shopping" : "Compras", - "Skate" : "Patinar", - "Skateboard" : "Monopatín", - "Wine tasting" : "Cata de viños", - "Golf" : "Golf", - "Dinner" : "Cea", - "Lunch" : "Xantar", - "User not found" : "Non se atopou o usuario" + "This is an event reminder." : "Este é un lembrete de eventos.", + "Error while parsing a PROPFIND error" : "Produciuse un erro ao analizar un erro PROPFIND", + "Appointment not found" : "Non se atopou a cita", + "User not found" : "Non se atopou o usuario", + "Reminder" : "Lembrete", + "+ Add reminder" : "+ Engadir lembrete", + "Select automatic slot" : "Seleccionar a franxa automática", + "with" : "con", + "Available times:" : "Horarios dispoñíbeis", + "Suggestions" : "Suxestións", + "Details" : "Detalles" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/gl.json b/l10n/gl.json index 8d7f7cc381373147491dcca3a6b0f288d3c30cc7..6a7e01a67b548f2d4652d25cd350ad277e7f3ffa 100644 --- a/l10n/gl.json +++ b/l10n/gl.json @@ -1,109 +1,169 @@ { "translations": { + "Provided email-address is too long" : "O enderezo de correo indicado é longo de máis", "User-Session unexpectedly expired" : "A sesión de usuario caducou inesperadamente", "Provided email-address is not valid" : "O enderezo de correo-e indicado non é válido", "%s has published the calendar »%s«" : "%s publicou o calendario «%s»", - "Unexpected error sending email. Please contact your administrator." : "Produciuse un erro inesperado ao enviar correo. Póñase en contacto co seu administrador.", + "Unexpected error sending email. Please contact your administrator." : "Produciuse un erro non agardado ao enviar correo. Póñase en contacto coa administración desta instancia.", + "Successfully sent email to %1$s" : "O correo foi enviado satisfactoriamente %1$s", "Hello," : "Ola,", "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informarte de que %s publicou o calendario «%s»", "Open »%s«" : "Abrir «%s»", "Cheers!" : "Saúdos!", "Upcoming events" : "Próximos eventos", - "Appointments" : "Cita", + "No more events today" : "Hoxe non hai máis eventos", + "No upcoming events" : "Non hai eventos próximos", + "More events" : "Máis eventos", + "%1$s with %2$s" : "%1$s con %2$s", + "Calendar" : "Calendario", + "New booking {booking}" : "Nova reserva {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) reservou a cita «{config_display_name}»o {date_time}.", + "Appointments" : "Citas", + "Schedule appointment \"%s\"" : "Programar cita «%s»", + "Schedule an appointment" : "Programar unha cita", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Preparar para %s", + "Follow up for %s" : "Facer un seguimento a %s", + "Your appointment \"%s\" with %s needs confirmation" : "A súa cita «%s» con %s necesita confirmación", + "Dear %s, please confirm your booking" : "Estimado %s, agradecémoslle que confirme a súa reserva", "Confirm" : "Confirmar", + "Appointment with:" : "Cita con:", + "Description:" : "Descrición:", + "This confirmation link expires in %s hours." : "Esta ligazón de confirmación caduca en %s horas.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Se, após todo, aínda quere cancelar a cita, póñase en contacto co seu organizador respondendo a este correo ou visitando a súa páxina de perfil.", + "Your appointment \"%s\" with %s has been accepted" : "Foi aceptada a súa cita «%s» con %s.", + "Dear %s, your booking has been accepted." : "Estimado %s, a súa reserva foi aceptada.", + "Appointment for:" : "Cita para:", "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Recibirá unha ligazón co correo de confirmación", "Where:" : "Onde:", - "Description:" : "Descrición:", - "Calendar" : "Calendario", - "A Calendar app for Nextcloud" : "Unha aplicación de calendario para o Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "A aplicación de Calendario é unha interface de usuario para o servidor CalDAV do Nextcloud. Sincronice doadamente eventos en varios dispositivos co seu Nextcloud e edíteos en líña.\n\n* 🚀 **Integración con outras aplicación do Nextcloud!** Actualmente Contactos – outras por chegar.\n* 🌐 **Compatibilidade con WebCal!** Quere ver os partidos do seu equipo favorito no seu calendario? Non hai problema!\n* 🙋 **Asistentes** Convide á xente aos seus eventos.\n* ⌚️ **Libre/Ocupado:** Verá cando os asistentes están dispoñíbeis\n* ⏰ **Lembretes!** Obteña alarmas para eventos no navegador e por correo-e.\n* 🔍 Busca! Atopa os teus eventos ao teu gusto\n* ☑️ Tarefas! Vexa as tarefas con data de vencemento directamente no calendario\n* 🙈 **Non reinventamos a roda!** Baseada nas grandes bibliotecas [davclient.js](https://github.com/evert/davclient.js), [ical.js](https://github.com/mozilla-comm/ical.js) e [fullcalendar](https://github.com/fullcalendar/fullcalendar).", + "Comment:" : "Comentario:", + "You have a new appointment booking \"%s\" from %s" : "Ten unha nova reserva de cita «%s» de %s", + "Dear %s, %s (%s) booked an appointment with you." : "Estimado %s, %s (%s) reservou unha cita con Vde.", + "A Calendar app for Nextcloud" : "Unha aplicación de calendario para Nextcloud", "Previous day" : "Día anterior", "Previous week" : "Semana anterior", + "Previous year" : "Ano anterior", "Previous month" : "Mes anterior", "Next day" : "Día seguinte", "Next week" : "Semana seguinte", + "Next year" : "Ano seguinte", "Next month" : "Mes seguinte", - "New event" : "Novo evento", + "Create new event" : "Crear un novo evento", + "Event" : "Evento", "Today" : "Hoxe", "Day" : "Día", "Week" : "Semana", "Month" : "Mes", + "Year" : "Ano", "List" : "Lista", + "Appointment link was copied to clipboard" : "A ligazón da cita copiouse no portapapeis", + "Appointment link could not be copied to clipboard" : "Non foi posíbel copiar a ligazón da cita no portapapeis", "Preview" : "Vista previa", "Copy link" : "Copiar a ligazón", "Edit" : "Editar", "Delete" : "Eliminar", - "Add new" : "Engadir novo", - "Untitled calendar" : "Calendario sen título", - "Edit name" : "Editar o nome", - "Saving name …" : "Gardando o nome …", - "Edit color" : "Editar a cor", - "Saving color …" : "Gardando a cor …", - "Copy private link" : "Copiar a ligazón privada", - "Export" : "Exportar", - "Unshare from me" : "Deixar de compartir", + "Appointment schedules" : "Calendarios de citas", + "Create new" : "Crear novo", + "Disable calendar \"{calendar}\"" : "Desactivar o calendario «{calendar}»", + "Disable untitled calendar" : "Desactivar o calendario sen título", + "Enable calendar \"{calendar}\"" : "Activar o calendario «{calendar}»", + "Enable untitled calendar" : "Activar o calendario sen título", "An error occurred, unable to change visibility of the calendar." : "Produciuse un erro, non é posíbel cambiar a visibilidade do calendario.", - "An error occurred, unable to delete the calendar." : "Produciuse un erro, non é posíbel eliminar o calendario.", - "Calendar link copied to clipboard." : "A ligazón do calendario foi copiada no portapapeis.", - "Calendar link could not be copied to clipboard." : "Non foi posíbel copiar a ligazón do calendario no portapapeis.", - "An error occurred, unable to rename the calendar." : "Produciuse un erro, non é posíbel renomear o calendario.", - "An error occurred, unable to change the calendar's color." : "Produciuse un erro, non é posíbel cambiar a cor do calendario.", + "Untitled calendar" : "Calendario sen título", + "Shared with you by" : "Compartido con Vde. por", + "Edit and share calendar" : "Editar e compartir o calendario", + "Edit calendar" : "Editar o calendario", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Deixar de compartir o calendario en {countdown} segundo","Deixar de compartir o calendario en {countdown} segundos"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Eliminar o calendario en {countdown} segundo","Eliminar o calendario en {countdown} segundos"], - "Share link" : "Compartir ligazón", - "Publish calendar" : "Publicar o calendario", - "Publishing calendar" : "Publicando o calendario", - "Copy public link" : "Copiar a ligazón pública", - "Send link to calendar via email" : "Enviar a ligazón ao calendario por correo", - "Enter one address" : "Introduza un enderezo", - "Sending email …" : "Enviando correo …", + "An error occurred, unable to create the calendar." : "Produciuse un erro, non é posíbel crear o calendario.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Introduza unha ligazón correcta (comezando con http://, https://, webcal://, or webcals://)", + "Calendars" : "Calendarios", + "Add new" : "Engadir novo", + "New calendar" : "Novo calendario", + "Name for new calendar" : "Nome para o novo calendario", + "Creating calendar …" : "Creando o calendario…", + "New calendar with task list" : "Novo calendario con lista de tarefas", + "New subscription from link (read-only)" : "Nova subscrición desde ligazón (só lectura)", + "Creating subscription …" : "Creando subscrición …", + "Add public holiday calendar" : "Engadir o calendario de días festivos", + "Add custom public calendar" : "Engadir un calendario público personalizado", + "Calendar link copied to clipboard." : "A ligazón do calendario foi copiada no portapapeis.", + "Calendar link could not be copied to clipboard." : "Non foi posíbel copiar a ligazón do calendario no portapapeis.", "Copy subscription link" : "Copiar a ligazón de subscrición", - "Copying link …" : "Copiando a ligazón …", + "Copying link …" : "Copiando a ligazón…", "Copied link" : "Ligazón copiada", "Could not copy link" : "Non foi posíbel copiar a ligazón", - "Copy embedding code" : "Copia o código incrustado", - "Copying code …" : "Copiando o código …", - "Copied code" : "Código copiado", - "Could not copy code" : "Non foi posíbel copiar o código", - "Delete share link" : "Eliminar a ligazón compartida", - "Deleting share link …" : "Eliminando a ligazón compartida …", + "Export" : "Exportar", + "Untitled item" : "Elemento sen título", + "Unknown calendar" : "Calendario descoñecido", + "Could not load deleted calendars and objects" : "Non foi posíbel cargar os calendarios e obxectos eliminados", + "Could not delete calendar or event" : "Non foi posíbel eliminar o calendario ou o evento", + "Could not restore calendar or event" : "Non foi posíbel restaurar o calendario ou o evento", + "Do you really want to empty the trash bin?" : " Confirma que quere baleirar o lixo?", + "Empty trash bin" : "Baleirar o lixo", + "Trash bin" : "Cesto do lixo.", + "Loading deleted items." : "Cargando elementos eliminados.", + "You do not have any deleted items." : "Non ten ningún elemento eliminado.", + "Name" : "Nome", + "Deleted" : "Eliminada", + "Restore" : "Restaurar", + "Delete permanently" : "Eliminar definitivamente", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Os elementos do cesto do lixo elimínanse após {numDays} día","Os elementos do cesto do lixo elimínanse após {numDays} días"], + "Could not update calendar order." : "Non foi posíbel actualizar a orde do calendario.", + "Shared calendars" : "Calendarios compartidos", + "Deck" : "Gabeta", + "Hidden" : "Agochada", + "Internal link" : "Ligazón interna", + "A private link that can be used with external clients" : "Unha ligazón privada que se pode usar con clientes externos", + "Copy internal link" : "Copiar a ligazón interna", "An error occurred, unable to publish calendar." : "Produciuse un erro, non é posíbel publicar o calendario.", "An error occurred, unable to send email." : "Produciuse un erro, non é posíbel enviar o correo", "Embed code copied to clipboard." : "Código incrustado copiado ao portapapeis.", "Embed code could not be copied to clipboard." : "Non foi posíbel copiar o código incrustado no portapapeis.", "Unpublishing calendar failed" : "Produciuse un fallo ao deixar de publicar o calendario", - "Share with users or groups" : "Compartir con usuarios ou grupos", - "No users or groups" : "Non hai usuarios nin grupos", + "Share link" : "Ligazón para compartir", + "Copy public link" : "Copiar a ligazón pública", + "Send link to calendar via email" : "Enviar a ligazón ao calendario por correo", + "Enter one address" : "Introduza un enderezo", + "Sending email …" : "Enviando o correo…", + "Copy embedding code" : "Copiar o código incrustado", + "Copying code …" : "Copiando o código…", + "Copied code" : "Código copiado", + "Could not copy code" : "Non foi posíbel copiar o código", + "Delete share link" : "Eliminar a ligazón para compartir", + "Deleting share link …" : "Eliminando a ligazón para compartir…", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Equipo)", + "An error occurred while unsharing the calendar." : "Produciuse un erro ao deixar de compartir o calendario.", + "An error occurred, unable to change the permission of the share." : "Produciuse un erro, non é posíbel cambiar o permiso da compartición.", "can edit" : "pode editar", "Unshare with {displayName}" : "Deixar de compartir con {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Produciuse un erro, non é posíbel cambiar a non compartición do calendario.", - "An error occurred, unable to change the permission of the share." : "Produciuse un erro, non é posíbel cambiar o permiso da compartición.", - "+ New calendar" : "+ Novo calendario", - "New calendar" : "Novo calendario", - "Creating calendar …" : "Creando o calendario …", - "New calendar with task list" : "Novo calendario con lista de tarefas", - "New subscription from link (read-only)" : "Nova subscrición dende ligazón (só lectura)", - "Creating subscription …" : "Creando subscrición …", - "An error occurred, unable to create the calendar." : "Produciuse un erro, non é posíbel crear o calendario.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Introduza unha ligazón correcta (comezando con http://, https://, webcal://, or webcals://)", - "Name" : "Nome", - "Deleted" : "Eliminada", - "Restore" : "Restaurar", - "Delete permanently" : "Eliminar de xeito permanente", - "Could not update calendar order." : "Non foi posíbel actualizar a orde do calendario.", + "Share with users or groups" : "Compartir con usuarios ou grupos", + "No users or groups" : "Non hai usuarios nin grupos", + "Failed to save calendar name and color" : "Produciuse un fallo ao gardar o nome e a cor do calendario", + "Calendar name …" : "Nome do calendario…", + "Never show me as busy (set this calendar to transparent)" : "Non amosarme nunca como ocupado (definir este calendario como transparente)", + "Share calendar" : "Compartir o calendario", + "Unshare from me" : "Deixar de compartir comigo", + "Save" : "Gardar", "Import calendars" : "Importar calendarios", "Please select a calendar to import into …" : "Seleccione un calendario para importalo a …", "Filename" : "Nome de ficheiro", "Calendar to import into" : "Calendario ao que importar", "Cancel" : "Cancelar", "_Import calendar_::_Import calendars_" : ["Importar calendario","Importar calendarios"], + "Select the default location for attachments" : "Seleccione a localización predeterminada para os anexos", + "Pick" : "Escoller", + "Invalid location selected" : "Seleccionou unha localización incorrecta", + "Attachments folder successfully saved." : "O cartafol de anexos foi gardado correctamente.", + "Error on saving attachments folder." : "Produciuse un erro ao gardar o cartafol de anexos.", + "Default attachments location" : "Localización predeterminada dos anexos", "{filename} could not be parsed" : "Non foi posíbel analizar {filename}", - "No valid files found, aborting import" : "Non se atoparon ficheiros válidos, cancelando a importación.", + "No valid files found, aborting import" : "Non se atopou ningún ficheiro válido, cancelando a importación.", + "_Successfully imported %n event_::_Successfully imported %n events_" : [" %n evento importado satisfactoriamente","%n eventos importados satisfactoriamente"], "Import partially failed. Imported {accepted} out of {total}." : "Fallou parcialmente a importación. Importáronse {accepted} de {total}.", "Automatic" : "Automatico", "Automatic ({detected})" : "Automático ({detected})", "New setting was not saved successfully." : "O novo axuste non foi fardado correctamente.", - "Shortcut overview" : "Vista xeral dos atallos", - "or" : "ou", "Navigation" : "Navegación", "Previous period" : "Período anterior", "Next period" : "Período seguinte", @@ -111,27 +171,66 @@ "Day view" : "Vista do día", "Week view" : "Vista da semana", "Month view" : "Vista do mes", + "Year view" : "Vista do ano", "List view" : "Ver como lista", "Actions" : "Accións", "Create event" : "Crear evento", "Show shortcuts" : "Amosar atallos", "Editor" : "Editor", + "Close editor" : "Pechar o editor", + "Save edited event" : "Gardar o evento editado", + "Delete edited event" : "Eliminar o evento editado", + "Duplicate event" : "Evento duplicado", + "Shortcut overview" : "Vista xeral dos atallos", + "or" : "ou", + "Calendar settings" : "Axustes de Calendario", + "At event start" : "No inicio do evento", + "No reminder" : "Non hai lembretes", + "Failed to save default calendar" : "Produciuse un fallo ao gardar o calendario predeterminado", + "CalDAV link copied to clipboard." : "Copiada a ligazón CalDAV ao portapapeis.", + "CalDAV link could not be copied to clipboard." : "Non foi posíbel copiar a ligazón CalDAV ao portapapeis.", "Enable birthday calendar" : "Activar o calendario de aniversarios", "Show tasks in calendar" : "Amosar as tarefas no calendario", "Enable simplified editor" : "Activar o editor simplificado", - "Limit visible events per view" : "Limitar os eventos visíbeis por vista", + "Limit the number of events displayed in the monthly view" : "Limite o número de eventos que se amosan na vista mensual", "Show weekends" : "Amosar os fins de semana", "Show week numbers" : "Amosar o número de semana", + "Time increments" : "Incrementos de tempo", + "Default calendar for incoming invitations" : "Calendario predeterminado para os convites entrantes", + "Default reminder" : "Lembrete predeterminado", "Copy primary CalDAV address" : "Copiar o enderezo principal do CalDAV", "Copy iOS/macOS CalDAV address" : "Copiar o enderezo CalDAV de iOS/macOS", + "Personal availability settings" : "Configuración persoal de dispoñibilidade", "Show keyboard shortcuts" : "Amosar os atallos de teclado", - "No reminder" : "Non hai lembretes", - "CalDAV link copied to clipboard." : "Copiada a ligazón CalDAV ao portapapeis.", - "CalDAV link could not be copied to clipboard." : "Non foi posíbel copiar a ligazón CalDAV ao portapapeis.", + "Appointment schedule successfully created" : "O calendario de citas foi creado correctamente", + "Appointment schedule successfully updated" : "O calendario de citas foi actualizado correctamente", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minuto","{duration} minutos"], + "0 minutes" : "0 minutos", + "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} horas"], + "_{duration} day_::_{duration} days_" : ["{duration} día","{duration} días"], + "_{duration} week_::_{duration} weeks_" : ["{duration} semana","{duration} semanas"], + "_{duration} month_::_{duration} months_" : ["{duration} mes","{duration} meses"], + "_{duration} year_::_{duration} years_" : ["{duration} ano","{duration} anos"], + "To configure appointments, add your email address in personal settings." : "Para configurar citas, engada o seu enderezo de correo nos axustes persoais.", + "Public – shown on the profile page" : "Público – amosase na páxina do perfil", + "Private – only accessible via secret link" : "Privado – accesíbel só mediante unha ligazón secreta", + "Appointment schedule saved" : "Gardouse o calendario de citas", + "Create appointment schedule" : "Crear o calendario de citas", + "Edit appointment schedule" : "Editar o calendario de citas", + "Update" : "Actualizar", + "Appointment name" : "Nome da cita", "Location" : "Localización", + "Create a Talk room" : "Crear unha sala de Parladoiro", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Xerarase unha ligazón única para cada cita reservada e enviarase a través do correo de confirmación", "Description" : "Descrición", + "Visibility" : "Visibilidade", "Duration" : "Duración", + "Increments" : "Incrementos", + "Additional calendars to check for conflicts" : "Calendarios adicionais para comprobar se hai conflitos", + "Pick time ranges where appointments are allowed" : "Escolla intervalos de tempo nos que se permiten citas", "to" : "para", + "Delete slot" : "Eliminar franxa horaria", + "No times set" : "Non hai horarios fixados", "Add" : "Engadir", "Monday" : "luns", "Tuesday" : "martes", @@ -140,9 +239,37 @@ "Friday" : "venres", "Saturday" : "sábado", "Sunday" : "domingo", - "Save" : "Gardar", - "Update" : "Actualizar", + "Weekdays" : "Días laborábeis", + "Add time before and after the event" : "Engadir tempo antes e após o evento", + "Before the event" : "Antes do evento", + "After the event" : "Após o evento", + "Planning restrictions" : "Restricións de planificación", + "Minimum time before next available slot" : "Tempo mínimo antes da seguinte franxa horaria dispoñíbel", + "Max slots per day" : "Máximo de franxas horarias por día", + "Limit how far in the future appointments can be booked" : "Limita ata onde se poden reservar citas futuras", + "It seems a rate limit has been reached. Please try again later." : "Semella que se acadou o límite da taxa. Tenteo de novo máis tarde.", + "Please confirm your reservation" : "Confirme a súa reserva", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Témoslle enviado un correo cos detalles. Confirme a súa cita usando a ligazón do correo. Xa pode pechar esta páxina agora.", + "Your name" : "O seu nome", "Your email address" : "O seu enderezo de correo", + "Please share anything that will help prepare for our meeting" : "Comparta calquera cousa que axude a preparar a nosa xuntanza", + "Could not book the appointment. Please try again later or contact the organizer." : "Non foi posíbel reservar a cita. Ténteo de novo máis tarde ou póñase en contacto co organizador.", + "Back" : "Atras", + "Book appointment" : "Concertar cita", + "Error fetching Talk conversations." : "Produciuse un erro ao recuperar as conversas en Parladoiro", + "Conversation does not have a valid URL." : "A conversa non ten un URL válido.", + "Successfully added Talk conversation link to location." : "Engadiuse correctamente a ligazón da conversa en Parladoiro á localización.", + "Successfully added Talk conversation link to description." : "Engadiuse correctamente a ligazón da conversa en Parladoiro á descrición.", + "Failed to apply Talk room." : "Produciuse un fallo ao aplicar a sala de Parladoiro", + "Error creating Talk conversation" : "Produciuse un erro ao crear a conversa en Parladoiro", + "Select a Talk Room" : "Seleccionar unha sala de Parladoiro", + "Add Talk conversation" : "Engadir unha conversa de Parladoiro", + "Fetching Talk rooms…" : "Recuperando salas de Parladoiro…", + "No Talk room available" : "Non hai ningunha sala de Parladoiro dispoñíbel", + "Create a new conversation" : "Crear unha nova conversa", + "Select conversation" : "Seleccionar conversa", + "on" : "o", + "at" : "ás", "before at" : "antes dás", "Notification" : "Notificación", "Email" : "Correo-e", @@ -153,119 +280,208 @@ "Edit time" : "Editar a hora", "Save time" : "Gardar a hora", "Remove reminder" : "Retirar o lembrete", - "on" : "o", - "at" : "ás", - "+ Add reminder" : "+ Engadir lembrete", - "Add reminder" : "Engadir recordatorio", - "_second_::_seconds_" : ["segundo","segundos"], - "_minute_::_minutes_" : ["minuto","minutos"], - "_hour_::_hours_" : ["hora","horas"], - "_day_::_days_" : ["día","días"], - "_week_::_weeks_" : ["semana","semanas"], + "Add reminder" : "Engadir lembrete", + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "días", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Escoller un ficheiro para engadir como anexo", + "Choose a file to share as a link" : "Escoller un ficheiro para compartir como ligazón", + "Attachment {name} already exist!" : "O anexo {name} xa existe!", + "Could not upload attachment(s)" : "Non foi posíbel enviar os anexos", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Está a piques de navegar a {host}. Confirma que quere continuar? Ligazón: {link}", + "Proceed" : "Continuar", + "No attachments" : "Sen anexos", + "Add from Files" : "Engadir desde Ficheiros", + "Upload from device" : "Enviar desde o dispositivo", + "Delete file" : "Eliminar ficheiro", + "Confirmation" : "Confirmación", + "_{count} attachment_::_{count} attachments_" : ["{count} anexo","{count} anexos"], + "Suggested" : "Suxerido", "Available" : "Dispoñíbel", + "Invitation accepted" : "Aceptouse o convite", + "Accepted {organizerName}'s invitation" : "Aceptouse o convite de {organizerName}", + "Participation marked as tentative" : "Participación marcada como provisional", + "Invitation is delegated" : "O convite está delegado", "Not available" : "Non dispoñíbel", + "Invitation declined" : "Convite declinado", + "Declined {organizerName}'s invitation" : "Declinouse o convite de {organizerName}", + "Availability will be checked" : "Verificarase a dispoñibilidade", + "Invitation will be sent" : "Enviarase un convite", + "Failed to check availability" : "Produciuse un erro ao verificar a dispoñibilidade", + "Failed to deliver invitation" : "Produciuse un fallo ao entregar o convite.", + "Awaiting response" : "Agardando a resposta", + "Checking availability" : "Comprobando a dispoñibilidade", + "Has not responded to {organizerName}'s invitation yet" : "Aínda non respondeu ao convite de {organizerName}", + "chairperson" : "presidente", + "required participant" : "precísase do participante", + "non-participant" : "non participa", + "optional participant" : "participante opcional", + "{organizer} (organizer)" : "{organizer} (organizador)", + "{attendee} ({role})" : "{attendee} ({role})", "Availability of attendees, resources and rooms" : "Dispoñibilidade de asistentes, recursos e salas", + "Suggestion accepted" : "Aceptouse a suxestión", + "Legend" : "Lenda", + "Out of office" : "Fóra da oficina", + "Attendees:" : "Asistentes:", + "Done" : "Feito", + "Search room" : "Buscar sala", + "Room name" : "Nome da sala", + "Check room availability" : "Comprobar a dispoñibilidade de salas", "Free" : "Libre", - "Busy (tentative)" : "Ocupado (tentativa)", + "Busy (tentative)" : "Ocupado (provisional)", "Busy" : "Ocupado", - "Out of office" : "Fóra da oficina", "Unknown" : "Descoñecido", + "Find a time" : "Atopar un momento", + "The invitation has been accepted successfully." : "O convite foi aceptado correctamente.", + "Failed to accept the invitation." : "Produciuse un fallo ao aceptar o convite.", + "The invitation has been declined successfully." : "O convite foi declinado correctamente.", + "Failed to decline the invitation." : "Produciuse un fallo ao declinar o convite.", + "Your participation has been marked as tentative." : "A súa participación foi marcada como provisional.", + "Failed to set the participation status to tentative." : "Produciuse un fallo ao definir o estado de participación como provisional.", "Accept" : "Aceptar", "Decline" : "Declinar", - "Tentative" : "Tentativa", - "Create Talk room for this event" : "Crear sala de conversas para este evento", - "Show busy times" : "Amosar as horas ocupadas", + "Tentative" : "Provisional", "No attendees yet" : "Aínda non hai participantes", - "Successfully appended link to talk room to description." : "Engadiuse satisfactoriamente unha ligazón á descrición da sala de conversas.", - "Error creating Talk room" : "Produciuse un erro ao crear a sala de conversas", - "Send email" : "Enviar o correo", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} convites, {confirmedCount} confirmados", + "Successfully appended link to talk room to location." : "Engadiuse satisfactoriamente a ligazón á localización da sala de conversa.", + "Successfully appended link to talk room to description." : "Engadiuse satisfactoriamente unha ligazón á descrición da sala de conversa.", + "Error creating Talk room" : "Produciuse un erro ao crear a sala de Parladoiro", + "Attendees" : "Asistentes", + "_%n more guest_::_%n more guests_" : ["%n convidado máis","%n convidados máis"], + "Remove group" : "Retirar o grupo", + "Remove attendee" : "Retirar o asistente", + "Request reply" : "Solicitar resposta", "Chairperson" : "Presidente", - "Required participant" : "Participante obrigatorio", + "Required participant" : "Precísase do participante", "Optional participant" : "Participante opcional", - "Non-participant" : "Non participantes", - "Remove attendee" : "Eliminar o asistente", + "Non-participant" : "Non participa", + "_%n member_::_%n members_" : ["%n membro","%n membros"], "No match found" : "Non se atopou ningunha coincidencia", + "Note that members of circles get invited but are not synced yet." : "Teña en conta que os membros dos círculos son convidados mais aínda non se sincronizan.", + "Note that members of contact groups get invited but are not synced yet." : "Teña en conta que os membros dos grupos de contacto son convidados mais aínda non se sincronizan.", "(organizer)" : "(organizador)", - "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Para enviar convites e xestionar respostas, [linkopen]engada o seu enderezo de correo electrónico na configuración persoal[linkclose].", + "Make {label} the organizer" : "Converter a {label} en organizador", + "Make {label} the organizer and attend" : "Converter a {label} en organizador e participante", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Para enviar convites e xestionar respostas, [linkopen]engada o seu enderezo de correo nos axustes persoais[linkclose].", "Remove color" : "Retirar a cor", "Event title" : "Título do evento", - "All day" : "Todo o día", - "from {startDate}" : "dende {startDate}", - "from {startDate} at {startTime}" : "dende {startDate} ás {startTime}", - "to {endDate}" : "ata {endDate}", - "to {endDate} at {endTime}" : "ata {endDate} ás {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Non é posíbel modificar a configuración de todo o día para eventos que forman parte dun conxunto de recorrencia.", + "From" : "Desde", + "To" : "Ata", "Repeat" : "Repetir", - "End repeat" : "Fin da repetición", - "Select to end repeat" : "Seleccionar para finalizar a repetición", + "_time_::_times_" : ["vez","veces"], "never" : "nunca", "on date" : "na data", "after" : "após", - "_time_::_times_" : ["vez","veces"], + "End repeat" : "Fin da repetición", + "Select to end repeat" : "Seleccionar para finalizar a repetición", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Este evento é a excepción de recorrencia dun conxunto de recorrencia. Non pode engadirlle unha regra de recorrencia.", "first" : "primeiro", - "third" : "terceiro", - "fourth" : "cuarto", - "fifth" : "quinto", - "second to last" : "penúltimo", - "last" : "último", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Os cambios na regra de recorrencia só se aplicarán a esta e a todas as futuras recorrencias.", "Repeat every" : "Repetir cada", "By day of the month" : "Por día do mes", - "On the" : "Durante o", + "On the" : "O", + "_day_::_days_" : ["día","días"], + "_week_::_weeks_" : ["semana","semanas"], "_month_::_months_" : ["mes","meses"], "_year_::_years_" : ["ano","anos"], - "weekday" : "día da semana", - "weekend day" : "día da fin de semana", + "weekday" : "días laborábeis", + "weekend day" : "días da fin de semana", + "Does not repeat" : "Non repetir", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud non é totalmente compatíbel coa definición de recorrencia deste evento. Se edita as opcións de recorrencia, pódense perder certas recorrencias.", + "No rooms or resources yet" : "Aínda non hai salas nin recursos", + "Resources" : "Recursos", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asento","{seatingCapacity} asentos"], "Add resource" : "Engadir recurso", "Has a projector" : "Ten un proxector", "Has a whiteboard" : "Ten un encerado dixital", "Wheelchair accessible" : "Accesíbel para cadeiras de rodas", - "Remove resource" : "Retirar recurso", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} asento","{seatingCapacity} asentos"], - "Projector" : "Proxector", - "Whiteboard" : "Encerado dixital", + "Remove resource" : "Retirar o recurso", "Search for resources or rooms" : "Buscar por recursos ou aulas", "available" : "dispoñíbel", - "More" : "Máis", - "Update this occurrence" : "Actualizar esta recorrencia", + "unavailable" : "non dispoñíbel", + "Show all rooms" : "Amosar todas as salas", + "Projector" : "Proxector", + "Whiteboard" : "Encerado dixital", + "Room type" : "Tipo de sala", + "Any" : "Calquera", + "Minimum seating capacity" : "Capacidade mínima de asentos", + "More details" : "Máis detalles", "Update this and all future" : "Actualizar esta e todas as futuras", + "Update this occurrence" : "Actualizar esta recorrencia", "Public calendar does not exist" : "O calendario público non existe", "Maybe the share was deleted or has expired?" : "Quizais a acción foi eliminada ou caducou.", - "Pick a time" : "Escolla un momento", - "Pick a date" : "Escolla unha data", - "from {formattedDate}" : "dende {formattedDate}", + "from {formattedDate}" : "desde {formattedDate}", "to {formattedDate}" : "ata {formattedDate}", "on {formattedDate}" : "o {formattedDate}", - "from {formattedDate} at {formattedTime}" : "dende {formattedDate} ás {formattedTime}", + "from {formattedDate} at {formattedTime}" : "desde {formattedDate} ás {formattedTime}", "to {formattedDate} at {formattedTime}" : "ata {formattedDate} ás {formattedTime}", "on {formattedDate} at {formattedTime}" : "o {formattedDate} ás {formattedTime}", "{formattedDate} at {formattedTime}" : "{formattedDate} ás {formattedTime}", "Please enter a valid date" : "Introduza unha data válida", "Please enter a valid date and time" : "Introduza unha data e hora válidas", + "Select a time zone" : "Seleccione un fuso horario", + "Please select a time zone:" : "Seleccione un fuso horario:", + "Pick a time" : "Escolla un momento", + "Pick a date" : "Escolla unha data", + "Type to search time zone" : "Escriba para buscar o fuso horario", "Global" : "Global", + "Holidays in {region}" : "Festivos en {region}", + "An error occurred, unable to read public calendars." : "Produciuse un erro, non é posíbel ler os calendarios públicos.", + "An error occurred, unable to subscribe to calendar." : "Produciuse un erro, non é posíbel subscribirse ao calendario.", + "Public holiday calendars" : "Calendarios de festivos", + "Public calendars" : "Calendarios públicos", + "No valid public calendars configured" : "Non se configurou ningún calendario público válido", + "Speak to the server administrator to resolve this issue." : "Fale coa administración do servidor para resolver este incidente.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Os calendarios de festivos son fornecidos porThunderbird . Os datos do calendario descargaranse de {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Estes calendarios públicos son suxeridos pola administración do servidor. Os datos do calendario descargaranse da páxina web correspondente.", + "By {authors}" : "Por {authors}", + "Subscribed" : "Subscrito", + "Subscribe" : "Subscribirse", + "Could not fetch slots" : "Non foi posíbel recuperar as franxas horarias", + "Select a date" : "Seleccione unha data", + "Select slot" : "Seleccionar franxa horaria", + "No slots available" : "Non hai franxas horarias dispoñíbeis", + "The slot for your appointment has been confirmed" : "Confirmouse a franxa horaria para a súa cita", + "Appointment Details:" : "Detalles da cita:", "Time:" : "Hora:", + "Booked for:" : "Reservada por:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Grazas. Confirmouse a súa reserva do {startDate} ao {endDate}.", + "Book another appointment:" : "Reserve outra cita:", + "See all available slots" : "Ver todas as franxas horarias dispoñíbeis", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "A franxa horaria para a súa cita de {startDate} a {endDate} xa non está dispoñíbel.", + "Please book a different slot:" : "Reserve unha franxa horaria diferente:", + "Book an appointment with {name}" : "Reserve unha cita con {name}", + "No public appointments found for {name}" : "Non se atopou ningunha cita pública para {name}", "Personal" : "Persoal", - "No more events today" : "Hoxe non hai máis eventos", - "No upcoming events" : "Non hai eventos próximos", - "Create a new event" : "Crear un novo evento", - "[Today]" : "[Hoxe]", - "[Tomorrow]" : "[Mañá]", - "[Yesterday]" : "[Onte]", - "[Last] dddd" : "[Último] dddd", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "A detección automática do fuso horario determinou que o seu fuso horario fose UTC.\nIsto probabelmente sexa o resultado das medidas de seguranza do seu navegador web.\nEstabeleza o seu fuso horario manualmente nos axustes do calendario.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Non se atopou o seu fuso horario configurado ({timezoneId}). Volvendo a UTC.\nCambie o seu fuso horario nos axustes e informe deste incidente.", + "Availability of {displayName}" : "Dispoñibilidade de {displayName}", + "Edit event" : "Editar o evento", "Event does not exist" : "O evento non existe", + "Duplicate" : "Duplicado", "Delete this occurrence" : "Eliminar esta recorrencia", "Delete this and all future" : "Eliminar esta e todas as futuras", - "Details" : "Detalles", - "Attendees" : "Asistentes", - "Resources" : "Recursos", + "All day" : "Todo o día", + "Modifications wont get propagated to the organizer and other attendees" : "As modificacións non van ser propagadas ao organizador e a outros asistentes", + "Managing shared access" : "Xestionar o acceso compartido", + "Deny access" : "Denegar o acceso", + "Invite" : "Convidar", + "_User requires access to your file_::_Users require access to your file_" : ["O usuario precisa acceso ao seu ficheiro","Os usuarios precisan acceso ao seu ficheiro"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["O anexo precisa acceso compartido","Anexos que precisan acceso compartido"], + "Untitled event" : "Evento sen título", "Close" : "Pechar", - "Show more details" : "Amosar máis detalles", + "Modifications will not get propagated to the organizer and other attendees" : "As modificacións non van ser propagadas ao organizador e a outros asistentes", "Subscribe to {name}" : "Subscribirse a {name}", + "Export {name}" : "Exportar {name}", + "Show availability" : "Amosar a dispoñibilidade", "Anniversary" : "Aniversario", "Appointment" : "Cita", "Business" : "Negocios", "Education" : "Educación", - "Holiday" : "Festivo", + "Holiday" : "Día festivo", "Meeting" : "Xuntanza", "Miscellaneous" : "Miscelánea", "Non-working hours" : "Horas non laborábeis", @@ -288,44 +504,53 @@ "on {time}" : "ás {time}", "on {time} ({timezoneId})" : "ás {time} ({timezoneId})", "Week {number} of {year}" : "Semana {number} de {year}", - "Does not repeat" : "Non repetir", - "Daily" : "Cada día", + "Daily" : "A diario", "Weekly" : "Cada semana", "Monthly" : "Cada mes", "Yearly" : "Cada ano", - "_Every %n day_::_Every %n days_" : ["Cada día","Cada %n días"], + "_Every %n day_::_Every %n days_" : ["Todos os días","Cada %n días"], "_Every %n week_::_Every %n weeks_" : ["Cada semana","Cada %n semanas"], "_Every %n month_::_Every %n months_" : ["Cada mes","Cada %n meses"], "_Every %n year_::_Every %n years_" : ["Cada ano","Cada %n anos"], "_on {weekday}_::_on {weekdays}_" : ["o {weekday}","os {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["o día {dayOfMonthList}","os días {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "o {ordinalNumber} {byDaySet}", - "in {monthNames}" : "en {monthNames}", - "in {monthNames} on the {ordinalNumber} {byDaySet}" : "en {monthNames} no {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "en {monthNames} o {ordinalNumber} {byDaySet}", "until {untilDate}" : "ata {untilDate}", "_%n time_::_%n times_" : ["%n vez","%n veces"], - "Untitled event" : "Evento sen título", + "second" : "segundo", + "third" : "terceiro", + "fourth" : "cuarto", + "fifth" : "quinto", + "second to last" : "penúltimo", + "last" : "último", "Untitled task" : "Tarefa sen título", - "Please ask your administrator to enable the Tasks App." : "Pregúntelle ao seu administrador pola activación da aplicación de tarefas.", - "Prev" : "Previo", - "Next" : "Seguinte", - "Year" : "Ano", + "Please ask your administrator to enable the Tasks App." : "Pregúntelle a administración desta instancia pola activación da aplicación de tarefas.", + "You are not allowed to edit this event as an attendee." : "Vde. non ten permiso para editar este evento como asistente.", "W" : "S", "%n more" : "%n máis", "No events to display" : "Non hai eventos para amosar", + "All participants declined" : "Todos os participantes declinaron", + "Please confirm your participation" : "Agradecémoslle que confirme a súa participación", + "You declined this event" : "Vde. declinou este evento", + "Your participation is tentative" : "A súa participación é provisional.", "_+%n more_::_+%n more_" : ["+%n máis","+%n máis"], "No events" : "Non hai eventos", "Create a new event or change the visible time-range" : "Crear un novo evento ou cambiar o intervalo de tempo visíbel", + "Failed to save event" : "Produciuse un fallo ao gardar o evento", "It might have been deleted, or there was a typo in a link" : "Pode que fose eliminado ou houbese un erro de dixitación nunha ligazón", "It might have been deleted, or there was a typo in the link" : "Pode que fose eliminado ou houbese un erro de dixitación na ligazón", - "Other" : "Outro", + "Meeting room" : "Sala de xuntanzas", + "Lecture hall" : "Sala de conferencias", + "Seminar room" : "Sala de seminarios", + "Other" : "Outra", "When shared show" : "Amosar ao compartir", "When shared show full event" : "Amosar o evento completo ao compartir", "When shared show only busy" : "Amosar só o ocupado ao compartir", "When shared hide this event" : "Agochar este evento ao compartir", "The visibility of this event in shared calendars." : "A visibilidade deste evento nos calendarios compartidos.", "Add a location" : "Engadir unha localización", - "Add a description" : "Engadir unha descrición", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Engadir unha descrición\n\n– De que trata esta xuntanza\n– Puntos da orde do día\n– Todo o que teñan que preparar os participantes", "Status" : "Estado", "Confirmed" : "Confirmado", "Canceled" : "Cancelada", @@ -338,99 +563,23 @@ "Add this as a new category" : "Engadir isto como unha nova categoría", "Custom color" : "Cor personalizada", "Special color of this event. Overrides the calendar-color." : "Cor especial deste evento. Anula a cor do calendario.", - "Chat room for event" : "Sala de conversas para o evento", + "Error while sharing file" : "Produciuse un erro ao compartir o ficheiro", + "Error while sharing file with user" : "Produciuse un erro ao compartir o ficheiro co usuario", + "Attachment {fileName} already exists!" : "O anexo {fileName} xa existe!", + "An error occurred during getting file information" : "Produciuse un erro ao obter a información do ficheiro", + "Talk conversation for event" : "Conversa en Parladoiro para o evento", + "An error occurred, unable to delete the calendar." : "Produciuse un erro, non é posíbel eliminar o calendario.", "Imported {filename}" : "{filename} foi importado", - "Meditation" : "Meditación", - "Relaxing" : "Relaxante", - "Relax" : "Relaxamento", - "Commuting" : "De casa ao traballo ou ao revés", - "Invoice" : "Factura", - "Presentation" : "Presentación", - "Talk" : "Talk", - "Camping" : "Campismo", - "Camp" : "Campo", - "Movie" : "Filme", - "Cinema" : "Cinema", - "Graduation" : "Graduación", - "Brainstorm" : "Tormenta de ideas", - "Review" : "Revisar", - "Baseball" : "Béisbol", - "Meet" : "Xuntanza", - "Planning" : "Planificación", - "Pointing" : "Sinalar", - "Retrospective" : "Retrospectiva", - "Office" : "Oficina", - "Contributor week" : "Semana de colaboradores", - "Mail" : "Correo", - "Soccer" : "Futbol", - "Football" : "Rugby", - "Gaming" : "Xogos", - "Drive" : "Conducir", - "Bicycle" : "Bicicleta", - "Cycle" : "Bici", - "Biking" : "Ciclismo", - "Bike" : "Bicicleta", - "Podcast" : "Podcast", - "Basketball" : "Baloncesto", - "Fishing" : "Pesca", - "Hiking" : "Excursionismo", - "Hike" : "Camiñada", - "Art" : "Arte", - "Exhibition" : "Exhibición", - "Museum" : "Museo", - "Pilates" : "Pilates", - "Park" : "Parque", - "Studying" : "Estudando", - "Doctor" : "Médico", - "Health" : "Saúde", - "Dentist" : "Dentista", - "Hospital" : "Hospital", - "Interview" : "Entrevista", - "Training" : "Adestramento", - "Practice" : "Práctica", - "Sports" : "Deportes", - "Exercise" : "Exercicio", - "Work out" : " Rutina de exercicio", - "Working out" : "Facendo exercicio", - "Gym" : "Ximnasio", - "Barber" : "Perruqueiro", - "Haircut" : "Corte de pelo", - "Exam" : "Exame", - "Working" : "Traballando", - "New Years Eve" : "Serán de fin de ano", - "NYE" : "Noitevella", - "Fireworks" : "Fogos artificiais", - "Running" : "Correndo", - "Go for a run" : "Ir correr", - "Marathon" : "Maratón", - "Video-conference" : "Vídeoconferencia", - "Conference-call" : "Chamada de conferencia", - "Video-call" : "Vídeochamada", - "Video-chat" : "Vídeoconversa", - "Video-meeting" : "Vídeoxuntanza", - "Call" : "Chamada", - "Calling" : "Chamando", - "Christmas" : "Nadal", - "Conference" : "Conferencia", - "Pizza" : "Pizza", - "Travelling" : "Viaxando", - "Journey" : "Traxecto", - "Collaborate" : "Colaborar", - "Pair" : "Parella", - "Lecture" : "Lectura", - "Seminar" : "Seminario", - "Photograph" : "Fotografo", - "Party" : "Festa", - "Celebration" : "Celebración", - "Celebrate" : "Celebrar", - "Birthday" : "Aniversario (nacemento)", - "Shopping" : "Compras", - "Skate" : "Patinar", - "Skateboard" : "Monopatín", - "Wine tasting" : "Cata de viños", - "Golf" : "Golf", - "Dinner" : "Cea", - "Lunch" : "Xantar", - "User not found" : "Non se atopou o usuario" + "This is an event reminder." : "Este é un lembrete de eventos.", + "Error while parsing a PROPFIND error" : "Produciuse un erro ao analizar un erro PROPFIND", + "Appointment not found" : "Non se atopou a cita", + "User not found" : "Non se atopou o usuario", + "Reminder" : "Lembrete", + "+ Add reminder" : "+ Engadir lembrete", + "Select automatic slot" : "Seleccionar a franxa automática", + "with" : "con", + "Available times:" : "Horarios dispoñíbeis", + "Suggestions" : "Suxestións", + "Details" : "Detalles" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/he.js b/l10n/he.js index 472bd4224d079c61192c30fd1db06331ffbe897c..ae35ff2aa41db547d3ca59e050b167e9a687cc75 100644 --- a/l10n/he.js +++ b/l10n/he.js @@ -1,111 +1,154 @@ OC.L10N.register( "calendar", { - "User-Session unexpectedly expired" : "ההפעלה של המשתמש הסתיימה באופן בלתי צפוי", - "Provided email-address is not valid" : "כתובת הדוא\"ל שצוינה אינה חוקית", + "Provided email-address is too long" : "כתובת הדוא\"ל שהוזנה ארוכה מידי", + "User-Session unexpectedly expired" : "החיבור של המשתמש הסתיימה באופן בלתי צפוי", + "Provided email-address is not valid" : "כתובת הדוא\"ל שהוזנה אינה חוקית", "%s has published the calendar »%s«" : "%sפרסם את לוח השנה»%s«", "Unexpected error sending email. Please contact your administrator." : "שגיאה לא צפויה בשליחת דוא\"ל. אנא פנה למנהל המערכת שלך.", + "Successfully sent email to %1$s" : "דוא\"ל נשלח בהצלחה ל%1$s", "Hello," : "שלום,", "We wanted to inform you that %s has published the calendar »%s«." : "רצינו להודיע לך ש-%s פירסם את לוח השנה. »%s«.", - "Open »%s«" : "פתיחת „%s”", + "Open »%s«" : "פתח את „%s”", "Cheers!" : "ברכותינו!", - "Upcoming events" : "אירועים הבאים בקרוב", + "Upcoming events" : "אירועים קרובים", + "No more events today" : "אין אירועים נוספים היום", + "No upcoming events" : "אין אירועים בזמן הקרוב", + "More events" : "אירועים נוספים", + "Calendar" : "יומן", + "New booking {booking}" : "יצירת אירוע חדש {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) תיזמן את הפגישה \"{config_display_name}\" ב{date_time}.", "Appointments" : "פגישות", - "Confirm" : "אימות", - "Date:" : "תאריך:", - "Where:" : "איפה:", + "Schedule appointment \"%s\"" : "קבע את הפגישה \"%s\"", + "Schedule an appointment" : "קבע פגישה", + "Prepare for %s" : "התכונן ל%s", + "Your appointment \"%s\" with %s needs confirmation" : "הפגישה שלך \"%s\" עם %s דרושה אישור", + "Dear %s, please confirm your booking" : "היי %s, אשר/י בבקשה את תזמון הפגישה שלך", + "Confirm" : "אישור", "Description:" : "תיאור:", - "Calendar" : "יומן", + "This confirmation link expires in %s hours." : "קישור האישור יפוג בעוד %s שעות.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "אם ברצונך לבטל את הפגישה למרות הכל, בבקשה צור קשר עם המארגן ע\"י תגובה למייל זה או באמצעות עמוד הפרופיל שלו.", + "Your appointment \"%s\" with %s has been accepted" : "פגישתך \"%s\" עם %s אושרה", + "Dear %s, your booking has been accepted." : "היי %s, תזמון הפגישה שלך התקבל.", + "Appointment for:" : "פגישה עבור:", + "Date:" : "בתאריך:", + "You will receive a link with the confirmation email" : "יישלח אליך קישור יחד עם מייל האישור", + "Where:" : "איפה:", + "Comment:" : "הערה:", + "You have a new appointment booking \"%s\" from %s" : "קיבלת זימון חדש לפגישה \"%s\" מ%s", + "Dear %s, %s (%s) booked an appointment with you." : "היי %s, %s (%s) זימן פגישה איתך.", "A Calendar app for Nextcloud" : "יישומון לוח שנה ל־Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "אפליקציית לוח השנה היא ממשק משתמש לשרת CalDAV של Nextcloud. סנכרן בקלות אירועים ממכשירים שונים עם Nextcloud שלך, וערוך אותם באופן מקוון.\n\n* 🚀 **אינטגרציה עם אפליקציות Nextcloud אחרות!** כרגע אנשי קשר - עוד יבוא.\n* 🌐 **תמיכה ב- WebCal!** רוצה לראות את ימי המשחק של הקבוצה האהובה עליך ביומן שלך? אין בעיה!\n* 🙋 **משתתפים!** הזמן אנשים לאירועים שלך\n* ⌚️ **חינם/עסוק!** ראה מתי המשתתפים שלך זמינים להיפגש\n* ⏰ **תזכורות!** קבל אזעקות לאירועים בתוך הדפדפן שלך ודרך אי-מייל\n* 🔍 חפש! מצא את האירועים שלך בנחת\n* ☑️ משימות! ראה משימות עם תאריך יעד ישירות בלוח השנה\n* 🙈 **אנחנו לא ממציאים את הגלגל מחדש!** בהתבסס על [ספריית c-dav] הנהדרת, וספריות \n(https://github.com/nextcloud/cdav-library), [ical.js] (https: // github.com/mozilla-comm/ical.js) ו- [fullcalendar] (https://github.com/fullcalendar/fullcalendar).", - "Previous day" : "היום הקודם", - "Previous week" : "השבוע הקודם", - "Previous month" : "החודש הקודם", + "Previous day" : "יום לאחור", + "Previous week" : "שבוע לאחור", + "Previous year" : "שנה אחורה", + "Previous month" : "חודש לאחור", "Next day" : "היום הבא", - "Next week" : "השבוע הבא", - "Next month" : "החודש הבא", - "New event" : "אירוע חדש", + "Next week" : "שבוע קדימה", + "Next year" : "שנה קדימה", + "Next month" : "חודש קדימה", + "Create new event" : "צור אירוע חדש", + "Event" : "אירוע", "Today" : "היום", "Day" : "יום", "Week" : "שבוע", "Month" : "חודש", + "Year" : "שנה", "List" : "רשימה", + "Appointment link was copied to clipboard" : "קישור לפגישה הועתק ללוח", + "Appointment link could not be copied to clipboard" : "לא ניתן להעתיק את הקישור", "Preview" : "תצוגה מקדימה", "Copy link" : "העתקת קישור", "Edit" : "עריכה", "Delete" : "מחיקה", + "Create new" : "יצירת חדש", + "Disable calendar \"{calendar}\"" : "השבת את לוח השנה \"{calendar}\"", + "Disable untitled calendar" : "השבת לוח שנה ללא כותרת זה", + "Enable calendar \"{calendar}\"" : "החל את לוח השנה \"{calendar}\"", + "Enable untitled calendar" : "החל לוח שנה ללא כותרת זה", + "An error occurred, unable to change visibility of the calendar." : "אירעה שגיאה, לא ניתן לשנות את אופן ההצגה של לוח השנה.", "Untitled calendar" : "לוח שנה ללא כותרת", - "Edit name" : "ערוך שם", - "Saving name …" : "שמירת השם ...", - "Edit color" : "ערוך צבע", - "Saving color …" : "שמירת הצבע ...", - "Copy private link" : "העתקת קישור פרטי", - "Export" : "ייצוא", - "Unshare from me" : "ביטול השיתוף איתי", - "An error occurred, unable to change visibility of the calendar." : "אירעה שגיאה--לא מצליחים לשנות את הראות של לוח השנה.", - "An error occurred, unable to delete the calendar." : "אירעה שגיאה, לא ניתן למחוק את היומן.", - "Calendar link copied to clipboard." : "הקישור ללוח השנה הועתק ללוח הגזירים.", - "Calendar link could not be copied to clipboard." : "לא ניתן להעתיק את הקישור ללוח השנה אל לוח הגזירים.", - "An error occurred, unable to rename the calendar." : "אירעה שגיאה--לא מצליחים לשנות את שם לוח השנה.", - "An error occurred, unable to change the calendar's color." : "אירעה שגיאה--לא מצליחים לשנות את צבע לוח השנה.", + "Shared with you by" : "שותף איתך ע\"י", + "Edit and share calendar" : "ערוך ושתף לוח שנה זה", + "Edit calendar" : "ערוך לוח שנה זה", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["ביטול שיתוף לוח השנה בתוך {countdown} שניות","ביטול שיתוף לוח השנה בתוך {countdown} שניות","ביטול שיתוף לוח השנה בתוך {countdown} שניות","ביטול שיתוף לוח השנה בתוך {countdown} שניות"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["מחיקת לוח השנה בתוך {countdown} שניות","מחיקת לוח השנה בתוך {countdown} שניות","מחיקת לוח השנה בתוך {countdown} שניות","מחיקת לוח השנה בתוך {countdown} שניות"], + "An error occurred, unable to create the calendar." : "אירעה שגיאה--לא ניתן ליצור את לוח השנה.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "נא למלא קישור תקני (מתחיל ב־‎http://‎,‏ https://‎,‏ webcal://‎, או webcals://‎)", + "Calendars" : "לוחות שנה", + "Add new" : "הוסף חדש", + "New calendar" : "לוח שנה חדש", + "Name for new calendar" : "שם עבור לוח השנה החדש", + "Creating calendar …" : "יוצר לוח שנה  ...", + "New calendar with task list" : "לוח שנה חדש עם רשימת משימות", + "New subscription from link (read-only)" : "מינוי חדש מקישור (קריאה בלבד)", + "Creating subscription …" : "יוצר מנוי …", + "Add public holiday calendar" : "הוסף לוח מועדים ציבורי חדש", + "Add custom public calendar" : "הוסף לוח מותאם אישית ציבורי חדש", + "Calendar link copied to clipboard." : "הקישור ללוח השנה הועתק ללוח הגזירים.", + "Calendar link could not be copied to clipboard." : "לא ניתן להעתיק את הקישור ללוח השנה אל לוח הגזירים.", + "Copy subscription link" : "העתק את קישור המנוי", + "Copying link …" : "מעתיק את הקישור  ...", + "Copied link" : "הועתק קישור", + "Could not copy link" : "לא ניתן להעתיק קישור", + "Export" : "ייצוא", + "Untitled item" : "פריט ללא כותרת", + "Unknown calendar" : "לוח שנה לא ידוע", + "Could not load deleted calendars and objects" : "לא ניתן היה לטעון לוחות שנה ופריטים מחוקים", + "Could not restore calendar or event" : "לא ניתן היה לשחזר לוח שנה או אירוע", + "Do you really want to empty the trash bin?" : "האם אמת בכוונתך לרוקן את סל האשפה?", + "Empty trash bin" : "פינוי סל האשפה", + "Trash bin" : "סל האשפה", + "Loading deleted items." : "טוען פריטים שנמחקו.", + "You do not have any deleted items." : "אין לך פריטים מחוקים", + "Name" : "שם", + "Deleted" : "נמחק", + "Restore" : "שחזור", + "Delete permanently" : "מחיקה לצמיתות", + "Could not update calendar order." : "לא היה ניתן לעדכן את סדר לוח השנה.", + "Deck" : "חפיסה", + "Hidden" : "מוסתר", + "Internal link" : "קישור פנימי", + "A private link that can be used with external clients" : "קישור פרטי שיכול לשמש עבור משתמשים חיצוניים", + "Copy internal link" : "העתקת קישור פנימי", + "An error occurred, unable to publish calendar." : "אירעה שגיאה, לא ניתן לפרסם יומן.", + "An error occurred, unable to send email." : "אירעה שגיאה, לא ניתן לשלוח הודעת דוא״ל.", + "Embed code copied to clipboard." : "קוד ההטמעה הועתק ללוח הגזירים.", + "Embed code could not be copied to clipboard." : "לא ניתן להעתיק את קוד ההטמעה ללוח הגזירים.", + "Unpublishing calendar failed" : "ביטול פרסום לוח השנה נכשל", "Share link" : "שיתוף קישור", - "Publish calendar" : "פרסם את לוח השנה", - "Publishing calendar" : "מפרסם את לוח השנה", "Copy public link" : "העתקת הקישור הציבורי", "Send link to calendar via email" : "שלח קישור ללוח השנה באמצעות דוא\"ל", "Enter one address" : "הזן כתובת אחת", "Sending email …" : "שולח דוא\"ל ...", - "Copy subscription link" : "העתק את קישור המנוי", - "Copying link …" : "מעתיק את הקישור  ...", - "Copied link" : "הועתק קישור", - "Could not copy link" : "לא ניתן להעתיק קישור", "Copy embedding code" : "העתקת קוד הטמעה", "Copying code …" : "הקוד מועתק …", "Copied code" : "הקוד הועתק", "Could not copy code" : "לא ניתן להעתיק את הקוד", "Delete share link" : "מחיקת קישור שיתוף", "Deleting share link …" : "מחיקת קישור השיתוף…", - "An error occurred, unable to publish calendar." : "אירעה שגיאה, לא ניתן לפרסם יומן.", - "An error occurred, unable to send email." : "אירעה שגיאה, לא ניתן לשלוח הודעת דוא״ל.", - "Embed code copied to clipboard." : "קוד ההטמעה הועתק ללוח הגזירים.", - "Embed code could not be copied to clipboard." : "לא ניתן להעתיק את קוד ההטמעה ללוח הגזירים.", - "Unpublishing calendar failed" : "ביטול פרסום לוח השנה נכשל", - "Share with users or groups" : "שיתוף עם משתמשים או קבוצות", - "No users or groups" : "אין משתמשים או קבוצות", + "An error occurred while unsharing the calendar." : "אירעה שגיאה במהלך ביטול שיתוף לוח השנה", + "An error occurred, unable to change the permission of the share." : "אירעה שגיאה, לא ניתן לשנות את הרשאות השיתוף.", "can edit" : "ניתן לערוך", "Unshare with {displayName}" : "ביטול שיתוף עם {displayName}", - "An error occurred, unable to change the unshare the calendar." : "אירעה שגיאה, לא ניתן לשנות את ביטול שיתוף היומן.", - "An error occurred, unable to change the permission of the share." : "אירעה שגיאה, לא ניתן לשנות את הרשאות השיתוף.", - "+ New calendar" : "+ לוח שנה חדש", - "New calendar" : "לוח שנה חדש", - "Creating calendar …" : "יוצר לוח שנה  ...", - "New calendar with task list" : "לוח שנה חדש עם רשימת משימות", - "New subscription from link (read-only)" : "מינוי חדש מקישור (קריאה בלבד)", - "Creating subscription …" : "יוצר מנוי …", - "An error occurred, unable to create the calendar." : "אירעה שגיאה--לא ניתן ליצור את לוח השנה.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "נא למלא קישור תקני (מתחיל ב־‎http://‎,‏ https://‎,‏ webcal://‎, או webcals://‎)", - "Name" : "שם", - "Deleted" : "נמחק", - "Restore" : "שחזור", - "Delete permanently" : "מחיקה לצמיתות", - "Empty trash bin" : "פינוי סל האשפה", - "Could not update calendar order." : "לא היה ניתן לעדכן את סדר לוח השנה.", + "Share with users or groups" : "שיתוף עם משתמשים או קבוצות", + "No users or groups" : "אין משתמשים או קבוצות", + "Failed to save calendar name and color" : "נכשל בשמירת שם וצבע לוח השנה", + "Calendar name …" : "שם לוח השנה ...", + "Share calendar" : "שיתוף לוח השנה", + "Unshare from me" : "ביטול השיתוף איתי", + "Save" : "שמור", "Import calendars" : "יבוא לוחות שנה", "Please select a calendar to import into …" : "בחר לוח שנה לייבוא אליו …", "Filename" : "שם קובץ", "Calendar to import into" : "לוח שנה לייבוא אליו", "Cancel" : "ביטול", - "_Import calendar_::_Import calendars_" : ["יבוא לוחות שנה","יבוא לוחות שנה","יבוא לוחות שנה","יבוא לוחות שנה"], + "_Import calendar_::_Import calendars_" : ["יבוא לוחות שנה","יבוא לוחות שנה","יבוא לוחות שנה"], "{filename} could not be parsed" : "לא ניתן לפענח את {filename}", "No valid files found, aborting import" : "לא נמצאו קבצים תקפים, הייבוא מבוטל", "Import partially failed. Imported {accepted} out of {total}." : "הייבוא נכשל חלקית. מיובא {accepted} מתוך {total}.", "Automatic" : "אוטומטי", "Automatic ({detected})" : "אוטומטי ({detected})", "New setting was not saved successfully." : "ההגדרה החדשה לא נשמרה בהצלחה.", - "Shortcut overview" : "סקירת קיצור דרך", - "or" : "או", "Navigation" : "ניווט", "Previous period" : "התקופה הקודמת", "Next period" : "התקופה הבאה", @@ -117,18 +160,20 @@ OC.L10N.register( "Actions" : "פעולות", "Create event" : "יצירת אירוע", "Show shortcuts" : "הצגת קיצורי דרך", + "Shortcut overview" : "סקירת קיצור דרך", + "or" : "או", + "No reminder" : "אין תזכורת", + "CalDAV link copied to clipboard." : "קישור ה־CalDAV הועתק ללוח הגזירים.", + "CalDAV link could not be copied to clipboard." : "לא ניתן להעתיק את קישור ה־CalDAV ללוח הגזירים.", "Enable birthday calendar" : "אפשר לוח שנה ליום הולדת ", "Show tasks in calendar" : "הצג משימות בלוח השנה", "Enable simplified editor" : "אפשר עורך פשוט", - "Limit visible events per view" : "הגבל אירועים גלויים לפי צפייה", "Show weekends" : "הצגת סופי שבוע", "Show week numbers" : "הצגת מספרי שבועות", "Copy primary CalDAV address" : "העתקת כתובת CalDAV עיקרית", "Copy iOS/macOS CalDAV address" : "העתקת כתובת CalDAV ל־iOS/macOS", "Show keyboard shortcuts" : "הצגת קיצורי מקלדת", - "No reminder" : "אין תזכורת", - "CalDAV link copied to clipboard." : "קישור ה־CalDAV הועתק ללוח הגזירים.", - "CalDAV link could not be copied to clipboard." : "לא ניתן להעתיק את קישור ה־CalDAV ללוח הגזירים.", + "Update" : "עדכון", "Location" : "מיקום", "Description" : "תיאור", "Duration" : "משך", @@ -141,9 +186,11 @@ OC.L10N.register( "Friday" : "יום שישי", "Saturday" : "יום שבת", "Sunday" : "יום ראשון", - "Save" : "שמור", - "Update" : "עדכון", "Your email address" : "כתובת הדוא״ל שלך", + "Back" : "אחורה", + "Select conversation" : "בחירת דיון", + "on" : "על", + "at" : "ב-", "before at" : "לפני", "Notification" : "הוֹדָעָה", "Email" : "דוא״ל", @@ -154,74 +201,70 @@ OC.L10N.register( "Edit time" : "עריכת שעה", "Save time" : "שמירת שעה", "Remove reminder" : "הסרת תזכורת", - "on" : "על", - "at" : "ב-", - "+ Add reminder" : "+ הוספת תזכורת", - "_second_::_seconds_" : ["שנייה","שניות","שניות","שניות"], - "_minute_::_minutes_" : ["דקה","דקות","דקות","דקות"], - "_hour_::_hours_" : ["שעה","שעתיים","שעות","שעות"], - "_day_::_days_" : ["יום","יומיים","ימים","ימים"], - "_week_::_weeks_" : ["שבוע","שבועיים","שבועות","שבועות"], + "seconds" : "שניות", + "minutes" : "דקות", + "hours" : "שעות", + "days" : "ימים", + "weeks" : "שבועיים", + "Choose a file to add as attachment" : "בחירת קובץ להוספה כקובץ מצורף", + "Choose a file to share as a link" : "נא לבחור קובץ לשיתוף כקישור", + "Proceed" : "להמשיך", + "Delete file" : "מחיקת קבצים", "Available" : "זמינות", "Availability of attendees, resources and rooms" : "זמינות של משתתפים, משאבים וחדרים", + "Out of office" : "מחוץ למשרד", + "Attendees:" : "משתתפים:", + "Done" : "הסתיים", + "Room name" : "שם החדר", "Free" : "פנוי", "Busy (tentative)" : "תפוס (טנטטיבי)", "Busy" : "עסוק", - "Out of office" : "מחוץ למשרד", "Unknown" : "לא ידוע", "Accept" : "אשר", "Decline" : "דחייה", "Tentative" : "טנטטיבית", - "Create Talk room for this event" : "צור חדר שיחות לאירוע זה", - "Show busy times" : "הראה זמנים עמוסים", "No attendees yet" : "עדיין אין משתתפים", "Successfully appended link to talk room to description." : "הקישור צורף ל\"חדר השיחות\" לתיאור בהצלחה.", "Error creating Talk room" : "שגיאה ביצירת \"חדר השיחות\"", - "Send email" : "שליחת דואר אלקטרוני", + "Attendees" : "משתתפים", + "Remove group" : "הסרת קבוצה", + "Remove attendee" : "הסר את המשתתף", "Chairperson" : "יושב ראש", "Required participant" : "משתתף חובה", "Optional participant" : "משתתף אופציונלי", "Non-participant" : "לא משתתף", - "Remove attendee" : "הסר את המשתתף", "No match found" : "לא נמצאה התאמה", "(organizer)" : "(מארגן)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "כדי לשלוח הזמנות ולטפל בתגובות, [linkopen] הוסף את כתובת הדוא\"ל שלך בהגדרות האישיות [linkclose].", "Remove color" : "הסר צבע", "Event title" : "כותרת האירוע", - "All day" : "כל היום", - "from {startDate}" : "החל מ- {startDate}", - "from {startDate} at {startTime}" : "החל מ- {startDate} בשעה {startTime}", - "to {endDate}" : "ל- {endDate}", - "to {endDate} at {endTime}" : "ל- {endDate} בשעה {endTime}", + "From" : "מאת", + "To" : "אל", "Repeat" : "חזרה", - "End repeat" : "סיום חזרה", - "Select to end repeat" : "בחר כדי לסיים את החזרה", + "_time_::_times_" : ["בשעה","בשעה","בשעות"], "never" : "לעולם לא", "on date" : "בתאריך", "after" : "לאחר", - "_time_::_times_" : ["בשעה","בשעה","בשעה","בשעות"], + "End repeat" : "סיום חזרה", + "Select to end repeat" : "בחר כדי לסיים את החזרה", "first" : "ראשון", - "third" : "שלישי", - "fourth" : "רביעי", - "fifth" : "חמישי", - "second to last" : "אחד לפני האחרון", - "last" : "אחרון", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "שינויים ב-recurrence-rule יחולו רק על האירוע הזה ועל כל אירועים עתידיים.", "Repeat every" : "חזור על כל", "By day of the month" : "לפי היום בחודש", "On the" : "על", + "_day_::_days_" : ["יום","יומיים","ימים"], + "_week_::_weeks_" : ["שבוע","שבועיים","שבועות","שבועות"], "_month_::_months_" : ["חודש","חודשיים","חודשים","חודשים"], "_year_::_years_" : ["שנה","שנתיים","שנים","שנים"], "weekday" : "יום בשבוע", "weekend day" : "יום בסופ״ש", + "Does not repeat" : "אינו חוזר", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "הגדרת ה-recurrence (=הישנות) של אירוע זה אינה נתמכת במלואה על ידי Nextcloud. אם אתה עורך את ה-recurrence-options, הישנות מסוימות עשויות לאבד.", - "More" : "יותר", - "Update this occurrence" : "עדכון המופע הזה", + "Resources" : "משאבים", "Update this and all future" : "עדכון של זה והעתידיים", + "Update this occurrence" : "עדכון המופע הזה", "Public calendar does not exist" : "לוח השנה הציבורי אינו קיים", "Maybe the share was deleted or has expired?" : "אולי השיתוף נמחק או פג תוקפו?", - "Pick a time" : "בחר זמן", - "Pick a date" : "תבחר תאריך", "from {formattedDate}" : "מ- {formattedDate}", "to {formattedDate}" : "אל {formattedDate}", "on {formattedDate}" : "בתאריך {formattedDate}", @@ -231,24 +274,20 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} בשעה {formattedTime}", "Please enter a valid date" : "נא להקליד תאריך תקני", "Please enter a valid date and time" : "נא להקליד שעה ותאריך תקניים", + "Pick a time" : "בחר זמן", + "Pick a date" : "תבחר תאריך", "Global" : "גלובלי", + "Subscribe" : "הרשמה", "Time:" : "שעה:", "Personal" : "אישי", - "No more events today" : "אין עוד אירועים היום", - "No upcoming events" : "אין אירועים בזמן הקרוב", - "Create a new event" : "צור אירוע חדש", - "[Today]" : "[היום]", - "[Tomorrow]" : "[מחר]", - "[Yesterday]" : "[אתמול]", - "[Last] dddd" : "[Last] dddd", + "Edit event" : "עריכת אירוע", "Event does not exist" : "האירוע לא קיים", "Delete this occurrence" : "מחיקת המופע הזה", "Delete this and all future" : "מחיקת זה והבאים", - "Details" : "פרטים", - "Attendees" : "משתתפים", - "Resources" : "משאבים", + "All day" : "כל היום", + "Invite" : "הזמנה", + "Untitled event" : "אירוע ללא כותרת", "Close" : "סגירה", - "Show more details" : "הצגת פרטים נוספים", "Subscribe to {name}" : "הרשמה אל {name}", "Anniversary" : "יום השנה", "Appointment" : "פגישה", @@ -265,7 +304,7 @@ OC.L10N.register( "Travel" : "טיול", "Vacation" : "חופשה", "Midnight on the day the event starts" : "חצות ביום שלפני שמתחיל האירוע", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["יום לפני האירוע בשעה {formattedHourMinute}","יומיים לפני האירוע בשעה {formattedHourMinute}","%n ימים לפני האירוע בשעה {formattedHourMinute}","%n ימים לפני האירוע בשעה {formattedHourMinute}"], + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["יום לפני האירוע בשעה {formattedHourMinute}","יומיים לפני האירוע בשעה {formattedHourMinute}","%n ימים לפני האירוע בשעה {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["שבוע לפני האירוע בשעה {formattedHourMinute}","שבועיים לפני האירוע בשעה {formattedHourMinute}","%n שבועות לפני האירוע בשעה {formattedHourMinute}","%n שבועות לפני האירוע בשעה {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "ביום האירוע בשעה {formattedHourMinute}", "at the event's start" : "עם תחילת האירוע", @@ -277,32 +316,32 @@ OC.L10N.register( "on {time}" : "בשעה {time}", "on {time} ({timezoneId})" : "בשעה {time} ({timezoneId})", "Week {number} of {year}" : "שבוע {number} ב־{year}", - "Does not repeat" : "אינו חוזר", "Daily" : "יומי", "Weekly" : "שבועי", "Monthly" : "חודשי", "Yearly" : "שנתי", - "_Every %n day_::_Every %n days_" : ["כל יום","כל יומיים","כל %n ימים","כל %n ימים"], + "_Every %n day_::_Every %n days_" : ["כל יום","כל יומיים","כל %n ימים"], "_Every %n week_::_Every %n weeks_" : ["כל שבוע","כל שבועיים","כל %n שבועות","כל %n שבועות"], - "_Every %n month_::_Every %n months_" : ["כל חודש","כל חודשיים","כל %n חודשים","כל %n חודשים"], - "_Every %n year_::_Every %n years_" : ["כל שנה","כל שנתיים","כל %n שנים","כל %n שנים"], - "_on {weekday}_::_on {weekdays}_" : ["ב-{weekday}","ב-{weekday}","ב-{weekday}","ב-{weekdays}"], - "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["בימים {dayOfMonthList}","בימים {dayOfMonthList}","בימים {dayOfMonthList}","בימים {dayOfMonthList}"], + "_Every %n month_::_Every %n months_" : ["כל חודש","כל חודשיים","כל %n חודשים"], + "_Every %n year_::_Every %n years_" : ["כל שנה","כל שנתיים","כל %n שנים"], + "_on {weekday}_::_on {weekdays}_" : ["ב-{weekday}","ב-{weekday}","ב-{weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["בימים {dayOfMonthList}","בימים {dayOfMonthList}","בימים {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "ב- {ordinalNumber} {byDaySet}", - "in {monthNames}" : "ב- {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "ב- {monthNames} ב- {ordinalNumber} {byDaySet}", "until {untilDate}" : "עד {untilDate}", - "_%n time_::_%n times_" : ["פעם אחת","פעמיים","%n פעמים","%n פעמים"], - "Untitled event" : "אירוע ללא כותרת", + "_%n time_::_%n times_" : ["פעם אחת","פעמיים","%n פעמים"], + "second" : "שנייה", + "third" : "שלישי", + "fourth" : "רביעי", + "fifth" : "חמישי", + "second to last" : "אחד לפני האחרון", + "last" : "אחרון", "Untitled task" : "משימה ללא כותרת", "Please ask your administrator to enable the Tasks App." : "אנא בקש ממנהל המערכת להפעיל את אפליקציית ה-Tasks.", - "Prev" : "קודם", - "Next" : "הבא", - "Year" : "שנה", "W" : "W", "%n more" : "%n עוד", "No events to display" : "אין אירועים להצגה", - "_+%n more_::_+%n more_" : ["+ עוד פעם","+ עוד פעמיים","+ עוד %n פעמים","+ עוד %n פעמים"], + "_+%n more_::_+%n more_" : ["+ עוד פעם","+ עוד פעמיים","+ עוד %n פעמים"], "No events" : "אין אירועים", "Create a new event or change the visible time-range" : "צור אירוע חדש, או שנה את טווח הזמן הגלוי", "It might have been deleted, or there was a typo in a link" : "יתכן שהוא נמחק, או שהיה שגיאת הקלדה בקישור", @@ -314,7 +353,6 @@ OC.L10N.register( "When shared hide this event" : "כאשר משותף מסתיר אירוע זה", "The visibility of this event in shared calendars." : "הנראות של אירוע זה בלוחות שנה משותפים.", "Add a location" : "הוסף מיקום", - "Add a description" : "הוסף תיאור", "Status" : "מצב", "Confirmed" : "מאושר", "Canceled" : "מבוטלת", @@ -327,98 +365,11 @@ OC.L10N.register( "Add this as a new category" : "הוספת הקטגוריה הזאת כחדשה", "Custom color" : "צבע בהתאמה אישית", "Special color of this event. Overrides the calendar-color." : "צבע מיוחד עבור אירוע זה. דורס את הצבע של לוח השנה.", - "Chat room for event" : "חדר צ'ט לאירוע", + "Error while sharing file" : "שגיאה בשיתוף הקובץ", + "An error occurred, unable to delete the calendar." : "אירעה שגיאה, לא ניתן למחוק את היומן.", "Imported {filename}" : "יובא {filename} ", - "Meditation" : "מדיטציה", - "Relaxing" : "מנוחה", - "Relax" : "לנפוש", - "Commuting" : "בדרכים", - "Presentation" : "מצגת", - "Talk" : "שיחה", - "Camping" : "קֶמפִּינג (= מַחֲנָאוּת)", - "Camp" : "מחנה", - "Movie" : "סרט", - "Cinema" : "בית קולנוע", - "Graduation" : "טֶקֶס סִיוּם לימודים", - "Brainstorm" : "סיעור מוחות", - "Review" : "סקירה", - "Baseball" : "בייסבול = (כַּדוּר בָּסִיס)", - "Meet" : "לפגוש", - "Planning" : "תִכנוּן", - "Pointing" : "מצביע", - "Retrospective" : "רֶטרוֹספֶּקטִיבִי (=סוֹקֵר לְאָחוֹר)", - "Office" : "משרד", - "Contributor week" : "שבוע מנדבים", - "Mail" : "דואר", - "Soccer" : "כדורגל", - "Football" : "פוטבול/כדורגל", - "Gaming" : "גיימינג", - "Drive" : "נהיגה", - "Driving" : "נהיגה", - "Bicycle" : "אופניים", - "Cycle" : "רכיבה על אופנועים", - "Biking" : "רכיבה על אופניים", - "Podcast" : "פודקאסט", - "Basketball" : "כדורסל", - "Fishing" : "דַיוג", - "Hiking" : "טיול רגלי", - "Hike" : "לטייל", - "Art" : "אומנות", - "Exhibition" : "תערוכה", - "Museum" : "מוזיאון", - "Pilates" : "פילאטיס", - "Park" : "פארק", - "Studying" : "לימודים", - "Doctor" : "רופא", - "Health" : "בריאות", - "Dentist" : "רופא/ת שיניים", - "Hospital" : "בית חולים", - "Interview" : "ראיון", - "Training" : "אימון", - "Practice" : "לְתַרְגֵל", - "Sports" : "ספורט", - "Exercise" : "פעילות גופנית", - "Work out" : "להתאמן", - "Working out" : "מתאמן", - "Gym" : "חדר כושר", - "Barber" : "ספר", - "Haircut" : "תספורת", - "Exam" : "מבחן", - "Working" : "עבודה", - "New Years Eve" : "ראש השנה", - "NYE" : "NYE", - "Fireworks" : "זיקוקים", - "Running" : "ריצה", - "Go for a run" : "לצאת לריצה", - "Marathon" : "מרתון", - "Video-conference" : "ועידת וידאו", - "Conference-call" : "שיחת ועידה", - "Video-call" : "שיחת וידאו", - "Video-chat" : "וידאו צ'אט", - "Video-meeting" : "פגישת וידאו", - "Call" : "שִׂיחָה", - "Calling" : "שיחת טלפון", - "Christmas" : "חַג הַמוֹלָד", - "Conference" : "כנס", - "Pizza" : "פיצה", - "Travelling" : "נסיעה", - "Journey" : "מסע", - "Collaborate" : "שיתוף פעולה", - "Pair" : "זוג", - "Lecture" : "הרצאה", - "Seminar" : "סמינר", - "Photograph" : "צילום", - "Party" : "מסיבה", - "Celebration" : "חגיגה", - "Celebrate" : "לַחֲגוֹג", - "Birthday" : "יום הולדת", - "Shopping" : "קניות", - "Skate" : "לְהַחלִיק עַל מִחלָקַיִם", - "Skateboard" : "רכיבה על סקייטבורד", - "Wine tasting" : "טעימות יין", - "Golf" : "גוֹלף", - "Dinner" : "ארוחת ערב", - "Lunch" : "ארוחת צהריים", - "User not found" : "המשתמש לא נמצא" + "User not found" : "המשתמש לא נמצא", + "+ Add reminder" : "+ הוספת תזכורת", + "Details" : "פרטים" }, -"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;"); +"nplurals=3; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: 2;"); diff --git a/l10n/he.json b/l10n/he.json index b304d7e1535864df7a071702c0342390163df380..659b117490ab714bd055da76c9649c8b5e19f3a6 100644 --- a/l10n/he.json +++ b/l10n/he.json @@ -1,109 +1,152 @@ { "translations": { - "User-Session unexpectedly expired" : "ההפעלה של המשתמש הסתיימה באופן בלתי צפוי", - "Provided email-address is not valid" : "כתובת הדוא\"ל שצוינה אינה חוקית", + "Provided email-address is too long" : "כתובת הדוא\"ל שהוזנה ארוכה מידי", + "User-Session unexpectedly expired" : "החיבור של המשתמש הסתיימה באופן בלתי צפוי", + "Provided email-address is not valid" : "כתובת הדוא\"ל שהוזנה אינה חוקית", "%s has published the calendar »%s«" : "%sפרסם את לוח השנה»%s«", "Unexpected error sending email. Please contact your administrator." : "שגיאה לא צפויה בשליחת דוא\"ל. אנא פנה למנהל המערכת שלך.", + "Successfully sent email to %1$s" : "דוא\"ל נשלח בהצלחה ל%1$s", "Hello," : "שלום,", "We wanted to inform you that %s has published the calendar »%s«." : "רצינו להודיע לך ש-%s פירסם את לוח השנה. »%s«.", - "Open »%s«" : "פתיחת „%s”", + "Open »%s«" : "פתח את „%s”", "Cheers!" : "ברכותינו!", - "Upcoming events" : "אירועים הבאים בקרוב", + "Upcoming events" : "אירועים קרובים", + "No more events today" : "אין אירועים נוספים היום", + "No upcoming events" : "אין אירועים בזמן הקרוב", + "More events" : "אירועים נוספים", + "Calendar" : "יומן", + "New booking {booking}" : "יצירת אירוע חדש {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) תיזמן את הפגישה \"{config_display_name}\" ב{date_time}.", "Appointments" : "פגישות", - "Confirm" : "אימות", - "Date:" : "תאריך:", - "Where:" : "איפה:", + "Schedule appointment \"%s\"" : "קבע את הפגישה \"%s\"", + "Schedule an appointment" : "קבע פגישה", + "Prepare for %s" : "התכונן ל%s", + "Your appointment \"%s\" with %s needs confirmation" : "הפגישה שלך \"%s\" עם %s דרושה אישור", + "Dear %s, please confirm your booking" : "היי %s, אשר/י בבקשה את תזמון הפגישה שלך", + "Confirm" : "אישור", "Description:" : "תיאור:", - "Calendar" : "יומן", + "This confirmation link expires in %s hours." : "קישור האישור יפוג בעוד %s שעות.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "אם ברצונך לבטל את הפגישה למרות הכל, בבקשה צור קשר עם המארגן ע\"י תגובה למייל זה או באמצעות עמוד הפרופיל שלו.", + "Your appointment \"%s\" with %s has been accepted" : "פגישתך \"%s\" עם %s אושרה", + "Dear %s, your booking has been accepted." : "היי %s, תזמון הפגישה שלך התקבל.", + "Appointment for:" : "פגישה עבור:", + "Date:" : "בתאריך:", + "You will receive a link with the confirmation email" : "יישלח אליך קישור יחד עם מייל האישור", + "Where:" : "איפה:", + "Comment:" : "הערה:", + "You have a new appointment booking \"%s\" from %s" : "קיבלת זימון חדש לפגישה \"%s\" מ%s", + "Dear %s, %s (%s) booked an appointment with you." : "היי %s, %s (%s) זימן פגישה איתך.", "A Calendar app for Nextcloud" : "יישומון לוח שנה ל־Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "אפליקציית לוח השנה היא ממשק משתמש לשרת CalDAV של Nextcloud. סנכרן בקלות אירועים ממכשירים שונים עם Nextcloud שלך, וערוך אותם באופן מקוון.\n\n* 🚀 **אינטגרציה עם אפליקציות Nextcloud אחרות!** כרגע אנשי קשר - עוד יבוא.\n* 🌐 **תמיכה ב- WebCal!** רוצה לראות את ימי המשחק של הקבוצה האהובה עליך ביומן שלך? אין בעיה!\n* 🙋 **משתתפים!** הזמן אנשים לאירועים שלך\n* ⌚️ **חינם/עסוק!** ראה מתי המשתתפים שלך זמינים להיפגש\n* ⏰ **תזכורות!** קבל אזעקות לאירועים בתוך הדפדפן שלך ודרך אי-מייל\n* 🔍 חפש! מצא את האירועים שלך בנחת\n* ☑️ משימות! ראה משימות עם תאריך יעד ישירות בלוח השנה\n* 🙈 **אנחנו לא ממציאים את הגלגל מחדש!** בהתבסס על [ספריית c-dav] הנהדרת, וספריות \n(https://github.com/nextcloud/cdav-library), [ical.js] (https: // github.com/mozilla-comm/ical.js) ו- [fullcalendar] (https://github.com/fullcalendar/fullcalendar).", - "Previous day" : "היום הקודם", - "Previous week" : "השבוע הקודם", - "Previous month" : "החודש הקודם", + "Previous day" : "יום לאחור", + "Previous week" : "שבוע לאחור", + "Previous year" : "שנה אחורה", + "Previous month" : "חודש לאחור", "Next day" : "היום הבא", - "Next week" : "השבוע הבא", - "Next month" : "החודש הבא", - "New event" : "אירוע חדש", + "Next week" : "שבוע קדימה", + "Next year" : "שנה קדימה", + "Next month" : "חודש קדימה", + "Create new event" : "צור אירוע חדש", + "Event" : "אירוע", "Today" : "היום", "Day" : "יום", "Week" : "שבוע", "Month" : "חודש", + "Year" : "שנה", "List" : "רשימה", + "Appointment link was copied to clipboard" : "קישור לפגישה הועתק ללוח", + "Appointment link could not be copied to clipboard" : "לא ניתן להעתיק את הקישור", "Preview" : "תצוגה מקדימה", "Copy link" : "העתקת קישור", "Edit" : "עריכה", "Delete" : "מחיקה", + "Create new" : "יצירת חדש", + "Disable calendar \"{calendar}\"" : "השבת את לוח השנה \"{calendar}\"", + "Disable untitled calendar" : "השבת לוח שנה ללא כותרת זה", + "Enable calendar \"{calendar}\"" : "החל את לוח השנה \"{calendar}\"", + "Enable untitled calendar" : "החל לוח שנה ללא כותרת זה", + "An error occurred, unable to change visibility of the calendar." : "אירעה שגיאה, לא ניתן לשנות את אופן ההצגה של לוח השנה.", "Untitled calendar" : "לוח שנה ללא כותרת", - "Edit name" : "ערוך שם", - "Saving name …" : "שמירת השם ...", - "Edit color" : "ערוך צבע", - "Saving color …" : "שמירת הצבע ...", - "Copy private link" : "העתקת קישור פרטי", - "Export" : "ייצוא", - "Unshare from me" : "ביטול השיתוף איתי", - "An error occurred, unable to change visibility of the calendar." : "אירעה שגיאה--לא מצליחים לשנות את הראות של לוח השנה.", - "An error occurred, unable to delete the calendar." : "אירעה שגיאה, לא ניתן למחוק את היומן.", - "Calendar link copied to clipboard." : "הקישור ללוח השנה הועתק ללוח הגזירים.", - "Calendar link could not be copied to clipboard." : "לא ניתן להעתיק את הקישור ללוח השנה אל לוח הגזירים.", - "An error occurred, unable to rename the calendar." : "אירעה שגיאה--לא מצליחים לשנות את שם לוח השנה.", - "An error occurred, unable to change the calendar's color." : "אירעה שגיאה--לא מצליחים לשנות את צבע לוח השנה.", + "Shared with you by" : "שותף איתך ע\"י", + "Edit and share calendar" : "ערוך ושתף לוח שנה זה", + "Edit calendar" : "ערוך לוח שנה זה", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["ביטול שיתוף לוח השנה בתוך {countdown} שניות","ביטול שיתוף לוח השנה בתוך {countdown} שניות","ביטול שיתוף לוח השנה בתוך {countdown} שניות","ביטול שיתוף לוח השנה בתוך {countdown} שניות"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["מחיקת לוח השנה בתוך {countdown} שניות","מחיקת לוח השנה בתוך {countdown} שניות","מחיקת לוח השנה בתוך {countdown} שניות","מחיקת לוח השנה בתוך {countdown} שניות"], + "An error occurred, unable to create the calendar." : "אירעה שגיאה--לא ניתן ליצור את לוח השנה.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "נא למלא קישור תקני (מתחיל ב־‎http://‎,‏ https://‎,‏ webcal://‎, או webcals://‎)", + "Calendars" : "לוחות שנה", + "Add new" : "הוסף חדש", + "New calendar" : "לוח שנה חדש", + "Name for new calendar" : "שם עבור לוח השנה החדש", + "Creating calendar …" : "יוצר לוח שנה  ...", + "New calendar with task list" : "לוח שנה חדש עם רשימת משימות", + "New subscription from link (read-only)" : "מינוי חדש מקישור (קריאה בלבד)", + "Creating subscription …" : "יוצר מנוי …", + "Add public holiday calendar" : "הוסף לוח מועדים ציבורי חדש", + "Add custom public calendar" : "הוסף לוח מותאם אישית ציבורי חדש", + "Calendar link copied to clipboard." : "הקישור ללוח השנה הועתק ללוח הגזירים.", + "Calendar link could not be copied to clipboard." : "לא ניתן להעתיק את הקישור ללוח השנה אל לוח הגזירים.", + "Copy subscription link" : "העתק את קישור המנוי", + "Copying link …" : "מעתיק את הקישור  ...", + "Copied link" : "הועתק קישור", + "Could not copy link" : "לא ניתן להעתיק קישור", + "Export" : "ייצוא", + "Untitled item" : "פריט ללא כותרת", + "Unknown calendar" : "לוח שנה לא ידוע", + "Could not load deleted calendars and objects" : "לא ניתן היה לטעון לוחות שנה ופריטים מחוקים", + "Could not restore calendar or event" : "לא ניתן היה לשחזר לוח שנה או אירוע", + "Do you really want to empty the trash bin?" : "האם אמת בכוונתך לרוקן את סל האשפה?", + "Empty trash bin" : "פינוי סל האשפה", + "Trash bin" : "סל האשפה", + "Loading deleted items." : "טוען פריטים שנמחקו.", + "You do not have any deleted items." : "אין לך פריטים מחוקים", + "Name" : "שם", + "Deleted" : "נמחק", + "Restore" : "שחזור", + "Delete permanently" : "מחיקה לצמיתות", + "Could not update calendar order." : "לא היה ניתן לעדכן את סדר לוח השנה.", + "Deck" : "חפיסה", + "Hidden" : "מוסתר", + "Internal link" : "קישור פנימי", + "A private link that can be used with external clients" : "קישור פרטי שיכול לשמש עבור משתמשים חיצוניים", + "Copy internal link" : "העתקת קישור פנימי", + "An error occurred, unable to publish calendar." : "אירעה שגיאה, לא ניתן לפרסם יומן.", + "An error occurred, unable to send email." : "אירעה שגיאה, לא ניתן לשלוח הודעת דוא״ל.", + "Embed code copied to clipboard." : "קוד ההטמעה הועתק ללוח הגזירים.", + "Embed code could not be copied to clipboard." : "לא ניתן להעתיק את קוד ההטמעה ללוח הגזירים.", + "Unpublishing calendar failed" : "ביטול פרסום לוח השנה נכשל", "Share link" : "שיתוף קישור", - "Publish calendar" : "פרסם את לוח השנה", - "Publishing calendar" : "מפרסם את לוח השנה", "Copy public link" : "העתקת הקישור הציבורי", "Send link to calendar via email" : "שלח קישור ללוח השנה באמצעות דוא\"ל", "Enter one address" : "הזן כתובת אחת", "Sending email …" : "שולח דוא\"ל ...", - "Copy subscription link" : "העתק את קישור המנוי", - "Copying link …" : "מעתיק את הקישור  ...", - "Copied link" : "הועתק קישור", - "Could not copy link" : "לא ניתן להעתיק קישור", "Copy embedding code" : "העתקת קוד הטמעה", "Copying code …" : "הקוד מועתק …", "Copied code" : "הקוד הועתק", "Could not copy code" : "לא ניתן להעתיק את הקוד", "Delete share link" : "מחיקת קישור שיתוף", "Deleting share link …" : "מחיקת קישור השיתוף…", - "An error occurred, unable to publish calendar." : "אירעה שגיאה, לא ניתן לפרסם יומן.", - "An error occurred, unable to send email." : "אירעה שגיאה, לא ניתן לשלוח הודעת דוא״ל.", - "Embed code copied to clipboard." : "קוד ההטמעה הועתק ללוח הגזירים.", - "Embed code could not be copied to clipboard." : "לא ניתן להעתיק את קוד ההטמעה ללוח הגזירים.", - "Unpublishing calendar failed" : "ביטול פרסום לוח השנה נכשל", - "Share with users or groups" : "שיתוף עם משתמשים או קבוצות", - "No users or groups" : "אין משתמשים או קבוצות", + "An error occurred while unsharing the calendar." : "אירעה שגיאה במהלך ביטול שיתוף לוח השנה", + "An error occurred, unable to change the permission of the share." : "אירעה שגיאה, לא ניתן לשנות את הרשאות השיתוף.", "can edit" : "ניתן לערוך", "Unshare with {displayName}" : "ביטול שיתוף עם {displayName}", - "An error occurred, unable to change the unshare the calendar." : "אירעה שגיאה, לא ניתן לשנות את ביטול שיתוף היומן.", - "An error occurred, unable to change the permission of the share." : "אירעה שגיאה, לא ניתן לשנות את הרשאות השיתוף.", - "+ New calendar" : "+ לוח שנה חדש", - "New calendar" : "לוח שנה חדש", - "Creating calendar …" : "יוצר לוח שנה  ...", - "New calendar with task list" : "לוח שנה חדש עם רשימת משימות", - "New subscription from link (read-only)" : "מינוי חדש מקישור (קריאה בלבד)", - "Creating subscription …" : "יוצר מנוי …", - "An error occurred, unable to create the calendar." : "אירעה שגיאה--לא ניתן ליצור את לוח השנה.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "נא למלא קישור תקני (מתחיל ב־‎http://‎,‏ https://‎,‏ webcal://‎, או webcals://‎)", - "Name" : "שם", - "Deleted" : "נמחק", - "Restore" : "שחזור", - "Delete permanently" : "מחיקה לצמיתות", - "Empty trash bin" : "פינוי סל האשפה", - "Could not update calendar order." : "לא היה ניתן לעדכן את סדר לוח השנה.", + "Share with users or groups" : "שיתוף עם משתמשים או קבוצות", + "No users or groups" : "אין משתמשים או קבוצות", + "Failed to save calendar name and color" : "נכשל בשמירת שם וצבע לוח השנה", + "Calendar name …" : "שם לוח השנה ...", + "Share calendar" : "שיתוף לוח השנה", + "Unshare from me" : "ביטול השיתוף איתי", + "Save" : "שמור", "Import calendars" : "יבוא לוחות שנה", "Please select a calendar to import into …" : "בחר לוח שנה לייבוא אליו …", "Filename" : "שם קובץ", "Calendar to import into" : "לוח שנה לייבוא אליו", "Cancel" : "ביטול", - "_Import calendar_::_Import calendars_" : ["יבוא לוחות שנה","יבוא לוחות שנה","יבוא לוחות שנה","יבוא לוחות שנה"], + "_Import calendar_::_Import calendars_" : ["יבוא לוחות שנה","יבוא לוחות שנה","יבוא לוחות שנה"], "{filename} could not be parsed" : "לא ניתן לפענח את {filename}", "No valid files found, aborting import" : "לא נמצאו קבצים תקפים, הייבוא מבוטל", "Import partially failed. Imported {accepted} out of {total}." : "הייבוא נכשל חלקית. מיובא {accepted} מתוך {total}.", "Automatic" : "אוטומטי", "Automatic ({detected})" : "אוטומטי ({detected})", "New setting was not saved successfully." : "ההגדרה החדשה לא נשמרה בהצלחה.", - "Shortcut overview" : "סקירת קיצור דרך", - "or" : "או", "Navigation" : "ניווט", "Previous period" : "התקופה הקודמת", "Next period" : "התקופה הבאה", @@ -115,18 +158,20 @@ "Actions" : "פעולות", "Create event" : "יצירת אירוע", "Show shortcuts" : "הצגת קיצורי דרך", + "Shortcut overview" : "סקירת קיצור דרך", + "or" : "או", + "No reminder" : "אין תזכורת", + "CalDAV link copied to clipboard." : "קישור ה־CalDAV הועתק ללוח הגזירים.", + "CalDAV link could not be copied to clipboard." : "לא ניתן להעתיק את קישור ה־CalDAV ללוח הגזירים.", "Enable birthday calendar" : "אפשר לוח שנה ליום הולדת ", "Show tasks in calendar" : "הצג משימות בלוח השנה", "Enable simplified editor" : "אפשר עורך פשוט", - "Limit visible events per view" : "הגבל אירועים גלויים לפי צפייה", "Show weekends" : "הצגת סופי שבוע", "Show week numbers" : "הצגת מספרי שבועות", "Copy primary CalDAV address" : "העתקת כתובת CalDAV עיקרית", "Copy iOS/macOS CalDAV address" : "העתקת כתובת CalDAV ל־iOS/macOS", "Show keyboard shortcuts" : "הצגת קיצורי מקלדת", - "No reminder" : "אין תזכורת", - "CalDAV link copied to clipboard." : "קישור ה־CalDAV הועתק ללוח הגזירים.", - "CalDAV link could not be copied to clipboard." : "לא ניתן להעתיק את קישור ה־CalDAV ללוח הגזירים.", + "Update" : "עדכון", "Location" : "מיקום", "Description" : "תיאור", "Duration" : "משך", @@ -139,9 +184,11 @@ "Friday" : "יום שישי", "Saturday" : "יום שבת", "Sunday" : "יום ראשון", - "Save" : "שמור", - "Update" : "עדכון", "Your email address" : "כתובת הדוא״ל שלך", + "Back" : "אחורה", + "Select conversation" : "בחירת דיון", + "on" : "על", + "at" : "ב-", "before at" : "לפני", "Notification" : "הוֹדָעָה", "Email" : "דוא״ל", @@ -152,74 +199,70 @@ "Edit time" : "עריכת שעה", "Save time" : "שמירת שעה", "Remove reminder" : "הסרת תזכורת", - "on" : "על", - "at" : "ב-", - "+ Add reminder" : "+ הוספת תזכורת", - "_second_::_seconds_" : ["שנייה","שניות","שניות","שניות"], - "_minute_::_minutes_" : ["דקה","דקות","דקות","דקות"], - "_hour_::_hours_" : ["שעה","שעתיים","שעות","שעות"], - "_day_::_days_" : ["יום","יומיים","ימים","ימים"], - "_week_::_weeks_" : ["שבוע","שבועיים","שבועות","שבועות"], + "seconds" : "שניות", + "minutes" : "דקות", + "hours" : "שעות", + "days" : "ימים", + "weeks" : "שבועיים", + "Choose a file to add as attachment" : "בחירת קובץ להוספה כקובץ מצורף", + "Choose a file to share as a link" : "נא לבחור קובץ לשיתוף כקישור", + "Proceed" : "להמשיך", + "Delete file" : "מחיקת קבצים", "Available" : "זמינות", "Availability of attendees, resources and rooms" : "זמינות של משתתפים, משאבים וחדרים", + "Out of office" : "מחוץ למשרד", + "Attendees:" : "משתתפים:", + "Done" : "הסתיים", + "Room name" : "שם החדר", "Free" : "פנוי", "Busy (tentative)" : "תפוס (טנטטיבי)", "Busy" : "עסוק", - "Out of office" : "מחוץ למשרד", "Unknown" : "לא ידוע", "Accept" : "אשר", "Decline" : "דחייה", "Tentative" : "טנטטיבית", - "Create Talk room for this event" : "צור חדר שיחות לאירוע זה", - "Show busy times" : "הראה זמנים עמוסים", "No attendees yet" : "עדיין אין משתתפים", "Successfully appended link to talk room to description." : "הקישור צורף ל\"חדר השיחות\" לתיאור בהצלחה.", "Error creating Talk room" : "שגיאה ביצירת \"חדר השיחות\"", - "Send email" : "שליחת דואר אלקטרוני", + "Attendees" : "משתתפים", + "Remove group" : "הסרת קבוצה", + "Remove attendee" : "הסר את המשתתף", "Chairperson" : "יושב ראש", "Required participant" : "משתתף חובה", "Optional participant" : "משתתף אופציונלי", "Non-participant" : "לא משתתף", - "Remove attendee" : "הסר את המשתתף", "No match found" : "לא נמצאה התאמה", "(organizer)" : "(מארגן)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "כדי לשלוח הזמנות ולטפל בתגובות, [linkopen] הוסף את כתובת הדוא\"ל שלך בהגדרות האישיות [linkclose].", "Remove color" : "הסר צבע", "Event title" : "כותרת האירוע", - "All day" : "כל היום", - "from {startDate}" : "החל מ- {startDate}", - "from {startDate} at {startTime}" : "החל מ- {startDate} בשעה {startTime}", - "to {endDate}" : "ל- {endDate}", - "to {endDate} at {endTime}" : "ל- {endDate} בשעה {endTime}", + "From" : "מאת", + "To" : "אל", "Repeat" : "חזרה", - "End repeat" : "סיום חזרה", - "Select to end repeat" : "בחר כדי לסיים את החזרה", + "_time_::_times_" : ["בשעה","בשעה","בשעות"], "never" : "לעולם לא", "on date" : "בתאריך", "after" : "לאחר", - "_time_::_times_" : ["בשעה","בשעה","בשעה","בשעות"], + "End repeat" : "סיום חזרה", + "Select to end repeat" : "בחר כדי לסיים את החזרה", "first" : "ראשון", - "third" : "שלישי", - "fourth" : "רביעי", - "fifth" : "חמישי", - "second to last" : "אחד לפני האחרון", - "last" : "אחרון", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "שינויים ב-recurrence-rule יחולו רק על האירוע הזה ועל כל אירועים עתידיים.", "Repeat every" : "חזור על כל", "By day of the month" : "לפי היום בחודש", "On the" : "על", + "_day_::_days_" : ["יום","יומיים","ימים"], + "_week_::_weeks_" : ["שבוע","שבועיים","שבועות","שבועות"], "_month_::_months_" : ["חודש","חודשיים","חודשים","חודשים"], "_year_::_years_" : ["שנה","שנתיים","שנים","שנים"], "weekday" : "יום בשבוע", "weekend day" : "יום בסופ״ש", + "Does not repeat" : "אינו חוזר", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "הגדרת ה-recurrence (=הישנות) של אירוע זה אינה נתמכת במלואה על ידי Nextcloud. אם אתה עורך את ה-recurrence-options, הישנות מסוימות עשויות לאבד.", - "More" : "יותר", - "Update this occurrence" : "עדכון המופע הזה", + "Resources" : "משאבים", "Update this and all future" : "עדכון של זה והעתידיים", + "Update this occurrence" : "עדכון המופע הזה", "Public calendar does not exist" : "לוח השנה הציבורי אינו קיים", "Maybe the share was deleted or has expired?" : "אולי השיתוף נמחק או פג תוקפו?", - "Pick a time" : "בחר זמן", - "Pick a date" : "תבחר תאריך", "from {formattedDate}" : "מ- {formattedDate}", "to {formattedDate}" : "אל {formattedDate}", "on {formattedDate}" : "בתאריך {formattedDate}", @@ -229,24 +272,20 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} בשעה {formattedTime}", "Please enter a valid date" : "נא להקליד תאריך תקני", "Please enter a valid date and time" : "נא להקליד שעה ותאריך תקניים", + "Pick a time" : "בחר זמן", + "Pick a date" : "תבחר תאריך", "Global" : "גלובלי", + "Subscribe" : "הרשמה", "Time:" : "שעה:", "Personal" : "אישי", - "No more events today" : "אין עוד אירועים היום", - "No upcoming events" : "אין אירועים בזמן הקרוב", - "Create a new event" : "צור אירוע חדש", - "[Today]" : "[היום]", - "[Tomorrow]" : "[מחר]", - "[Yesterday]" : "[אתמול]", - "[Last] dddd" : "[Last] dddd", + "Edit event" : "עריכת אירוע", "Event does not exist" : "האירוע לא קיים", "Delete this occurrence" : "מחיקת המופע הזה", "Delete this and all future" : "מחיקת זה והבאים", - "Details" : "פרטים", - "Attendees" : "משתתפים", - "Resources" : "משאבים", + "All day" : "כל היום", + "Invite" : "הזמנה", + "Untitled event" : "אירוע ללא כותרת", "Close" : "סגירה", - "Show more details" : "הצגת פרטים נוספים", "Subscribe to {name}" : "הרשמה אל {name}", "Anniversary" : "יום השנה", "Appointment" : "פגישה", @@ -263,7 +302,7 @@ "Travel" : "טיול", "Vacation" : "חופשה", "Midnight on the day the event starts" : "חצות ביום שלפני שמתחיל האירוע", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["יום לפני האירוע בשעה {formattedHourMinute}","יומיים לפני האירוע בשעה {formattedHourMinute}","%n ימים לפני האירוע בשעה {formattedHourMinute}","%n ימים לפני האירוע בשעה {formattedHourMinute}"], + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["יום לפני האירוע בשעה {formattedHourMinute}","יומיים לפני האירוע בשעה {formattedHourMinute}","%n ימים לפני האירוע בשעה {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["שבוע לפני האירוע בשעה {formattedHourMinute}","שבועיים לפני האירוע בשעה {formattedHourMinute}","%n שבועות לפני האירוע בשעה {formattedHourMinute}","%n שבועות לפני האירוע בשעה {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "ביום האירוע בשעה {formattedHourMinute}", "at the event's start" : "עם תחילת האירוע", @@ -275,32 +314,32 @@ "on {time}" : "בשעה {time}", "on {time} ({timezoneId})" : "בשעה {time} ({timezoneId})", "Week {number} of {year}" : "שבוע {number} ב־{year}", - "Does not repeat" : "אינו חוזר", "Daily" : "יומי", "Weekly" : "שבועי", "Monthly" : "חודשי", "Yearly" : "שנתי", - "_Every %n day_::_Every %n days_" : ["כל יום","כל יומיים","כל %n ימים","כל %n ימים"], + "_Every %n day_::_Every %n days_" : ["כל יום","כל יומיים","כל %n ימים"], "_Every %n week_::_Every %n weeks_" : ["כל שבוע","כל שבועיים","כל %n שבועות","כל %n שבועות"], - "_Every %n month_::_Every %n months_" : ["כל חודש","כל חודשיים","כל %n חודשים","כל %n חודשים"], - "_Every %n year_::_Every %n years_" : ["כל שנה","כל שנתיים","כל %n שנים","כל %n שנים"], - "_on {weekday}_::_on {weekdays}_" : ["ב-{weekday}","ב-{weekday}","ב-{weekday}","ב-{weekdays}"], - "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["בימים {dayOfMonthList}","בימים {dayOfMonthList}","בימים {dayOfMonthList}","בימים {dayOfMonthList}"], + "_Every %n month_::_Every %n months_" : ["כל חודש","כל חודשיים","כל %n חודשים"], + "_Every %n year_::_Every %n years_" : ["כל שנה","כל שנתיים","כל %n שנים"], + "_on {weekday}_::_on {weekdays}_" : ["ב-{weekday}","ב-{weekday}","ב-{weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["בימים {dayOfMonthList}","בימים {dayOfMonthList}","בימים {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "ב- {ordinalNumber} {byDaySet}", - "in {monthNames}" : "ב- {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "ב- {monthNames} ב- {ordinalNumber} {byDaySet}", "until {untilDate}" : "עד {untilDate}", - "_%n time_::_%n times_" : ["פעם אחת","פעמיים","%n פעמים","%n פעמים"], - "Untitled event" : "אירוע ללא כותרת", + "_%n time_::_%n times_" : ["פעם אחת","פעמיים","%n פעמים"], + "second" : "שנייה", + "third" : "שלישי", + "fourth" : "רביעי", + "fifth" : "חמישי", + "second to last" : "אחד לפני האחרון", + "last" : "אחרון", "Untitled task" : "משימה ללא כותרת", "Please ask your administrator to enable the Tasks App." : "אנא בקש ממנהל המערכת להפעיל את אפליקציית ה-Tasks.", - "Prev" : "קודם", - "Next" : "הבא", - "Year" : "שנה", "W" : "W", "%n more" : "%n עוד", "No events to display" : "אין אירועים להצגה", - "_+%n more_::_+%n more_" : ["+ עוד פעם","+ עוד פעמיים","+ עוד %n פעמים","+ עוד %n פעמים"], + "_+%n more_::_+%n more_" : ["+ עוד פעם","+ עוד פעמיים","+ עוד %n פעמים"], "No events" : "אין אירועים", "Create a new event or change the visible time-range" : "צור אירוע חדש, או שנה את טווח הזמן הגלוי", "It might have been deleted, or there was a typo in a link" : "יתכן שהוא נמחק, או שהיה שגיאת הקלדה בקישור", @@ -312,7 +351,6 @@ "When shared hide this event" : "כאשר משותף מסתיר אירוע זה", "The visibility of this event in shared calendars." : "הנראות של אירוע זה בלוחות שנה משותפים.", "Add a location" : "הוסף מיקום", - "Add a description" : "הוסף תיאור", "Status" : "מצב", "Confirmed" : "מאושר", "Canceled" : "מבוטלת", @@ -325,98 +363,11 @@ "Add this as a new category" : "הוספת הקטגוריה הזאת כחדשה", "Custom color" : "צבע בהתאמה אישית", "Special color of this event. Overrides the calendar-color." : "צבע מיוחד עבור אירוע זה. דורס את הצבע של לוח השנה.", - "Chat room for event" : "חדר צ'ט לאירוע", + "Error while sharing file" : "שגיאה בשיתוף הקובץ", + "An error occurred, unable to delete the calendar." : "אירעה שגיאה, לא ניתן למחוק את היומן.", "Imported {filename}" : "יובא {filename} ", - "Meditation" : "מדיטציה", - "Relaxing" : "מנוחה", - "Relax" : "לנפוש", - "Commuting" : "בדרכים", - "Presentation" : "מצגת", - "Talk" : "שיחה", - "Camping" : "קֶמפִּינג (= מַחֲנָאוּת)", - "Camp" : "מחנה", - "Movie" : "סרט", - "Cinema" : "בית קולנוע", - "Graduation" : "טֶקֶס סִיוּם לימודים", - "Brainstorm" : "סיעור מוחות", - "Review" : "סקירה", - "Baseball" : "בייסבול = (כַּדוּר בָּסִיס)", - "Meet" : "לפגוש", - "Planning" : "תִכנוּן", - "Pointing" : "מצביע", - "Retrospective" : "רֶטרוֹספֶּקטִיבִי (=סוֹקֵר לְאָחוֹר)", - "Office" : "משרד", - "Contributor week" : "שבוע מנדבים", - "Mail" : "דואר", - "Soccer" : "כדורגל", - "Football" : "פוטבול/כדורגל", - "Gaming" : "גיימינג", - "Drive" : "נהיגה", - "Driving" : "נהיגה", - "Bicycle" : "אופניים", - "Cycle" : "רכיבה על אופנועים", - "Biking" : "רכיבה על אופניים", - "Podcast" : "פודקאסט", - "Basketball" : "כדורסל", - "Fishing" : "דַיוג", - "Hiking" : "טיול רגלי", - "Hike" : "לטייל", - "Art" : "אומנות", - "Exhibition" : "תערוכה", - "Museum" : "מוזיאון", - "Pilates" : "פילאטיס", - "Park" : "פארק", - "Studying" : "לימודים", - "Doctor" : "רופא", - "Health" : "בריאות", - "Dentist" : "רופא/ת שיניים", - "Hospital" : "בית חולים", - "Interview" : "ראיון", - "Training" : "אימון", - "Practice" : "לְתַרְגֵל", - "Sports" : "ספורט", - "Exercise" : "פעילות גופנית", - "Work out" : "להתאמן", - "Working out" : "מתאמן", - "Gym" : "חדר כושר", - "Barber" : "ספר", - "Haircut" : "תספורת", - "Exam" : "מבחן", - "Working" : "עבודה", - "New Years Eve" : "ראש השנה", - "NYE" : "NYE", - "Fireworks" : "זיקוקים", - "Running" : "ריצה", - "Go for a run" : "לצאת לריצה", - "Marathon" : "מרתון", - "Video-conference" : "ועידת וידאו", - "Conference-call" : "שיחת ועידה", - "Video-call" : "שיחת וידאו", - "Video-chat" : "וידאו צ'אט", - "Video-meeting" : "פגישת וידאו", - "Call" : "שִׂיחָה", - "Calling" : "שיחת טלפון", - "Christmas" : "חַג הַמוֹלָד", - "Conference" : "כנס", - "Pizza" : "פיצה", - "Travelling" : "נסיעה", - "Journey" : "מסע", - "Collaborate" : "שיתוף פעולה", - "Pair" : "זוג", - "Lecture" : "הרצאה", - "Seminar" : "סמינר", - "Photograph" : "צילום", - "Party" : "מסיבה", - "Celebration" : "חגיגה", - "Celebrate" : "לַחֲגוֹג", - "Birthday" : "יום הולדת", - "Shopping" : "קניות", - "Skate" : "לְהַחלִיק עַל מִחלָקַיִם", - "Skateboard" : "רכיבה על סקייטבורד", - "Wine tasting" : "טעימות יין", - "Golf" : "גוֹלף", - "Dinner" : "ארוחת ערב", - "Lunch" : "ארוחת צהריים", - "User not found" : "המשתמש לא נמצא" -},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;" + "User not found" : "המשתמש לא נמצא", + "+ Add reminder" : "+ הוספת תזכורת", + "Details" : "פרטים" +},"pluralForm" :"nplurals=3; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: 2;" } \ No newline at end of file diff --git a/l10n/hr.js b/l10n/hr.js index 0bc10fe1d86cbbdbc4b36ac7ec298b38b9465f66..0d7efa608a609f036a4d30acedd6fb34d108c07f 100644 --- a/l10n/hr.js +++ b/l10n/hr.js @@ -11,96 +11,91 @@ OC.L10N.register( "Open »%s«" : "Otvori »%s«", "Cheers!" : "Bok!", "Upcoming events" : "Nadolazeći događaji", + "No more events today" : "Danas više nema događaja", + "No upcoming events" : "Nema nadolazećih događaja", + "Calendar" : "Kalendar", "Appointments" : "Dogovori", "Confirm" : "Potvrdi", + "Description:" : "Opis:", "Date:" : "Datum:", "Where:" : "Gdje:", - "Description:" : "Opis:", - "Calendar" : "Kalendar", "A Calendar app for Nextcloud" : "Aplikacija Kalendar za Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aplikacija Kalendar je korisničko sučelje za Nextcloudov CalDAV poslužitelj. Jednostavno sinkronizirajte događaje s raznih uređaja s Nextcloudom i uređujte ih na mreži.\n\n* 🚀 **Integracija s drugim Nextcloudovim aplikacijama!** Trenutno kontakti – i još puno toga.\n* 🌐 **Podrška za WebCal!** Želite li u kalendaru vidjeti važne dane svojeg omiljenog tima? Nema problema!\n* 🙋 **Sudionici!** Pozovite ljude na svoje događaje.\n* ⌚️ **Slobodni/zauzeti!** Provjerite kada su sudionici slobodni\n* ⏰ **Podsjetnici!** Primite upozorenja o događajima u svojem pregledniku ili putem e-pošte.\n* 🔍 Pretraživanje! S lakoćom pronađite svoje događaje\n* ☑️ Zadaci! Pregledajte zadatke s datumom izvršenja izravno u kalendaru\n* 🙈 **Ne izmišljamo toplu vodu!** Na temelju odličnih [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) i [fullcalendar](https://github.com/fullcalendar/fullcalendar) biblioteka.", "Previous day" : "Prethodni dan", "Previous week" : "Prethodni tjedan", "Previous month" : "Prethodni mjesec", "Next day" : "Sljedeći dan", "Next week" : "Sljedeći tjedan", + "Next year" : "Sljedeće godine", "Next month" : "Sljedeći mjesec", - "New event" : "Novi događaj", "Today" : "Danas", "Day" : "Dan", "Week" : "Tjedan", "Month" : "Mjesec", + "Year" : "Godina", "List" : "Popis", "Preview" : "Pretpregled", "Copy link" : "Kopiraj poveznicu", "Edit" : "Uredi", "Delete" : "Izbriši", - "Untitled calendar" : "Kalendar bez naslova", - "Edit name" : "Uredi naziv", - "Saving name …" : "Spremanje naziva...", - "Edit color" : "Uredi boju", - "Saving color …" : "Spremanje boje...", - "Copy private link" : "Kopiraj privatnu poveznicu", - "Export" : "Izvoz", - "Unshare from me" : "Prekid dijeljenja sa mnom", + "Create new" : "Stvori novi", "An error occurred, unable to change visibility of the calendar." : "Došlo je do pogreške, nije moguće promijeniti vidljivost kalendara.", - "An error occurred, unable to delete the calendar." : "Došlo je do pogreške, nije moguće izbrisati kalendar.", - "Calendar link copied to clipboard." : "Poveznica kalendara kopirana je u međuspremnik.", - "Calendar link could not be copied to clipboard." : "Poveznica kalendara nije kopirana u međuspremnik.", - "An error occurred, unable to rename the calendar." : "Došlo je do pogreške, nije moguće promijeniti naziv kalendara.", - "An error occurred, unable to change the calendar's color." : "Došlo je do pogreške, nije moguće promijeniti boju kalendara.", + "Untitled calendar" : "Kalendar bez naslova", + "Shared with you by" : "S vama podijelio", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Prekid dijeljenja kalendara za {countdown} sekundu","Prekid dijeljenja kalendara za {countdown} sekundi","Prekid dijeljenja kalendara za {countdown} sekundi"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Brisanje kalendara za {countdown} sekundu","Brisanje kalendara za {countdown} sekundi","Brisanje kalendara za {countdown} sekundi"], + "An error occurred, unable to create the calendar." : "Došlo je do pogreške, nije moguće stvoriti kalendar.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Unesite valjanu poveznicu (mora početi s http://, https://, webcal:// ili webcals://)", + "Calendars" : "Kalendari", + "New calendar" : "Novi kalendar", + "Creating calendar …" : "Stvaranje kalendara...", + "New calendar with task list" : "Novi kalendar s popisom zadataka", + "New subscription from link (read-only)" : "Nova pretplata putem poveznice (samo za čitanje)", + "Creating subscription …" : "Stvaranje pretplate...", + "Calendar link copied to clipboard." : "Poveznica kalendara kopirana je u međuspremnik.", + "Calendar link could not be copied to clipboard." : "Poveznica kalendara nije kopirana u međuspremnik.", + "Copy subscription link" : "Kopiraj poveznicu pretplate", + "Copying link …" : "Kopiranje poveznice...", + "Copied link" : "Poveznica je kopirana", + "Could not copy link" : "Kopiranje poveznice nije uspjelo", + "Export" : "Izvoz", + "Untitled item" : "Stavka bez naslova", + "Could not load deleted calendars and objects" : "Učitavanje izbrisanih kalendara i objekata nije uspjelo", + "Could not restore calendar or event" : "Vraćanje kalendara ili događaja nije uspjelo", + "Do you really want to empty the trash bin?" : "Želite li zaista isprazniti kantu za smeće?", + "Empty trash bin" : "Isprazni kantu za smeće", + "Trash bin" : "Kanta za smeće", + "Name" : "Naziv", + "Deleted" : "Izbrisano", + "Restore" : "Vrati", + "Delete permanently" : "Trajno izbrišite", + "Could not update calendar order." : "Ažuriranje redoslijeda kalendara nije uspjelo.", + "Deck" : "Deck", + "Hidden" : "Skriveno", + "Internal link" : "Interna poveznica", + "Copy internal link" : "Kopiraj internu poveznicu", + "An error occurred, unable to publish calendar." : "Došlo je do pogreške, nije moguće objaviti kalendar.", + "An error occurred, unable to send email." : "Došlo je do pogreške, nije moguće poslati poruku e-pošte.", + "Embed code copied to clipboard." : "Šifra za ugradnju kopirana je u međuspremnik.", + "Embed code could not be copied to clipboard." : "Šifru za ugradnju nije moguće kopirati u međuspremnik.", + "Unpublishing calendar failed" : "Neuspješan prekid objave kalendara", "Share link" : "Dijeli poveznicu", - "Publish calendar" : "Objavi kalendar", - "Publishing calendar" : "Objavljivanje kalendara", "Copy public link" : "Kopiraj javnu poveznicu", "Send link to calendar via email" : "Pošalji poveznicu na kalendar putem e-pošte", "Enter one address" : "Unesi jednu adresu", "Sending email …" : "Slanje e-pošte u tijeku...", - "Copy subscription link" : "Kopiraj poveznicu pretplate", - "Copying link …" : "Kopiranje poveznice...", - "Copied link" : "Poveznica je kopirana", - "Could not copy link" : "Kopiranje poveznice nije uspjelo", "Copy embedding code" : "Kopiraj šifru za ugradnju", "Copying code …" : "Kopiranje šifre...", "Copied code" : "Šifra je kopirana", "Could not copy code" : "Kopiranje šifre nije uspjelo", "Delete share link" : "Izbriši poveznicu dijeljenja", "Deleting share link …" : "Brisanje poveznice dijeljenja...", - "An error occurred, unable to publish calendar." : "Došlo je do pogreške, nije moguće objaviti kalendar.", - "An error occurred, unable to send email." : "Došlo je do pogreške, nije moguće poslati poruku e-pošte.", - "Embed code copied to clipboard." : "Šifra za ugradnju kopirana je u međuspremnik.", - "Embed code could not be copied to clipboard." : "Šifru za ugradnju nije moguće kopirati u međuspremnik.", - "Unpublishing calendar failed" : "Neuspješan prekid objave kalendara", - "Share with users or groups" : "Dijelite s korisnicima ili grupama", - "No users or groups" : "Nema korisnika ili grupa", + "An error occurred, unable to change the permission of the share." : "Došlo je do pogreške, nije moguće promijeniti dopuštenje dijeljenja.", "can edit" : "uređivanje moguće", "Unshare with {displayName}" : "Prekid dijeljenja s {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Došlo je do pogreške, nije moguće promijeniti status dijeljenja kalendara.", - "An error occurred, unable to change the permission of the share." : "Došlo je do pogreške, nije moguće promijeniti dopuštenje dijeljenja.", - "+ New calendar" : "+ Novi kalendar", - "New calendar" : "Novi kalendar", - "Creating calendar …" : "Stvaranje kalendara...", - "New calendar with task list" : "Novi kalendar s popisom zadataka", - "New subscription from link (read-only)" : "Nova pretplata putem poveznice (samo za čitanje)", - "Creating subscription …" : "Stvaranje pretplate...", - "An error occurred, unable to create the calendar." : "Došlo je do pogreške, nije moguće stvoriti kalendar.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Unesite valjanu poveznicu (mora početi s http://, https://, webcal:// ili webcals://)", - "Trash bin" : "Kanta za smeće", - "Loading deleted elements." : "Učitavanje izbrisanih elemenata.", - "You do not have any deleted elements." : "Nemate izbrisanih elemenata.", - "Name" : "Naziv", - "Deleted" : "Izbrisano", - "Restore" : "Vrati", - "Delete permanently" : "Trajno izbrišite", - "Empty trash bin" : "Isprazni kantu za smeće", - "Untitled element" : "Element bez naslova", - "Could not load deleted calendars and objects" : "Učitavanje izbrisanih kalendara i objekata nije uspjelo", - "Could not restore calendar or event" : "Vraćanje kalendara ili događaja nije uspjelo", - "Do you really want to empty the trash bin?" : "Želite li zaista isprazniti kantu za smeće?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Elementi u kanti za smeće brišu se nakon {numDays} dan","Elementi u kanti za smeće brišu se nakon {numDays} dana","Elementi u kanti za smeće brišu se nakon {numDays} dana"], - "Could not update calendar order." : "Ažuriranje redoslijeda kalendara nije uspjelo.", + "Share with users or groups" : "Dijelite s korisnicima ili grupama", + "No users or groups" : "Nema korisnika ili grupa", + "Unshare from me" : "Prekid dijeljenja sa mnom", + "Save" : "Spremi", "Import calendars" : "Uvezi kalendare", "Please select a calendar to import into …" : "Odaberite kalendar za uvoz...", "Filename" : "Naziv datoteke", @@ -113,8 +108,6 @@ OC.L10N.register( "Automatic" : "Automatsko", "Automatic ({detected})" : "Automatsko ({detected})", "New setting was not saved successfully." : "Nova postavka nije uspješno spremljena.", - "Shortcut overview" : "Pregled prečaca", - "or" : "ili", "Navigation" : "Navigacija", "Previous period" : "Prethodno razdoblje", "Next period" : "Sljedeće razdoblje", @@ -126,10 +119,14 @@ OC.L10N.register( "Actions" : "Radnje", "Create event" : "Stvori događaj", "Show shortcuts" : "Prikaži prečace", + "Shortcut overview" : "Pregled prečaca", + "or" : "ili", + "No reminder" : "Nema podsjetnika", + "CalDAV link copied to clipboard." : "Poveznica kalendara CalDAV kopirana je u međuspremnik.", + "CalDAV link could not be copied to clipboard." : "Poveznica kalendara CalDAV nije kopirana u međuspremnik.", "Enable birthday calendar" : "Omogući kalendar rođendana", "Show tasks in calendar" : "Prikaži zadatke u kalendaru", "Enable simplified editor" : "Omogući jednostavan uređivač", - "Limit visible events per view" : "Ograniči vidljive događaje po pogledu", "Show weekends" : "Prikaži vikende", "Show week numbers" : "Prikaži brojeve tjedana", "Time increments" : "Vremenski prirasti", @@ -137,9 +134,7 @@ OC.L10N.register( "Copy primary CalDAV address" : "Kopiraj primarnu CalDAV adresu", "Copy iOS/macOS CalDAV address" : "Kopiraj iOS/macOS CalDAV adresu", "Show keyboard shortcuts" : "Prikaži tipkovne prečace", - "No reminder" : "Nema podsjetnika", - "CalDAV link copied to clipboard." : "Poveznica kalendara CalDAV kopirana je u međuspremnik.", - "CalDAV link could not be copied to clipboard." : "Poveznica kalendara CalDAV nije kopirana u međuspremnik.", + "Update" : "Ažuriraj", "Location" : "Lokacija", "Description" : "Opis", "Visibility" : "Vidljivost", @@ -154,10 +149,10 @@ OC.L10N.register( "Friday" : "Petak", "Saturday" : "Subota", "Sunday" : "Nedjelja", - "Save" : "Spremi", - "Update" : "Ažuriraj", "Your email address" : "Vaša adresa e-pošte", - "Reminder" : "Podsjetnik", + "Select conversation" : "Odaberi razgovor", + "on" : "na", + "at" : "u", "before at" : "prije u", "Notification" : "Obavijest", "Email" : "E-pošta", @@ -168,98 +163,89 @@ OC.L10N.register( "Edit time" : "Uredi vrijeme", "Save time" : "Spremi vrijeme", "Remove reminder" : "Ukloni podsjetnik", - "on" : "na", - "at" : "u", - "+ Add reminder" : "+ Dodaj podsjetnik", "Add reminder" : "Dodaj podsjetnik", - "_second_::_seconds_" : ["sekunda","sekundi","sekundi"], - "_minute_::_minutes_" : ["minuta","minuta","minuta"], - "_hour_::_hours_" : ["sat","sati","sati"], - "_day_::_days_" : ["dan","dana","dana"], - "_week_::_weeks_" : ["tjedan","tjedana","tjedana"], + "seconds" : "sekunda", + "minutes" : "minuta", + "hours" : "sati", + "days" : "dani", + "weeks" : "tjedana", + "Choose a file to add as attachment" : "Izaberi datoteku kao privitak", + "Choose a file to share as a link" : "Izaberi datoteku za dijeljenje putem poveznice", + "Proceed" : "Nastavi", + "Delete file" : "Izbriši datoteku", "Available" : "Dostupno", "Not available" : "Nije dostupno", - "Availability of attendees, resources and rooms" : "Raspoloživost sudionika, resursa i soba", "{organizer} (organizer)" : "{organizer} (organizator)", + "Availability of attendees, resources and rooms" : "Raspoloživost sudionika, resursa i soba", + "Out of office" : "Izvan ureda", + "Attendees:" : "Polaznici:", + "Room name" : "Naziv sobe", "Free" : "Dostupno", "Busy (tentative)" : "Zauzeto (uvjetno)", "Busy" : "Zauzeto", - "Out of office" : "Izvan ureda", "Unknown" : "Nepoznato", "Accept" : "Prihvati", "Decline" : "Odbij", "Tentative" : "Uvjetno", - "Create Talk room for this event" : "Stvori Talk sobu za ovaj događaj", - "Show busy times" : "Prikaži vremena zauzetosti", "No attendees yet" : "Još nema sudionika", "Successfully appended link to talk room to description." : "Uspješno dodana poveznica na Talk sobu u opis.", "Error creating Talk room" : "Pogreška pri stvaranju Talk sobe", - "Send email" : "Pošalji poruku e-pošte", + "Attendees" : "Sudionici", + "Remove group" : "Ukloni grupu", + "Remove attendee" : "Ukloni sudionika", "Chairperson" : "Predsjednik", "Required participant" : "Obavezan sudionik", "Optional participant" : "Neobavezan sudionik", "Non-participant" : "Nije sudionik", - "Remove attendee" : "Ukloni sudionika", - "Search for emails, users or contacts" : "Potražite poruke e-pošte, korisnike ili kontakte", "No match found" : "Nema podudaranja", "(organizer)" : "(organizator)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "[linkopen]Dodajte svoju adresu e-pošte u osobne postavke[linkclose] za slanje pozivnica i upravljanje odgovorima.", "Remove color" : "Ukloni boju", "Event title" : "Naslov događaja", - "All day" : "Cijeli dan", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Nije moguće mijenjati cjelodnevne postavke za događaje koji su dio skupa ponavljanja.", - "from {startDate}" : "od {startDate}", - "from {startDate} at {startTime}" : "od {startDate} u {startTime}", - "to {endDate}" : "do {endDate}", - "to {endDate} at {endTime}" : "do {endDate} u {endTime}", + "From" : "Od", + "To" : "Do", "Repeat" : "Ponovi", - "End repeat" : "Završi ponavljanje", - "Select to end repeat" : "Odaberi za završetak ponavljanja", + "_time_::_times_" : ["put","puta","puta"], "never" : "nikad", "on date" : "na datum", "after" : "nakon", - "_time_::_times_" : ["put","puta","puta"], + "End repeat" : "Završi ponavljanje", + "Select to end repeat" : "Odaberi za završetak ponavljanja", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Ovaj događaj je iznimka ponavljanja skupa ponavljanja. Ne možete mu dodati pravilo ponavljanja.", "first" : "prvi", - "third" : "treći", - "fourth" : "četvrti", - "fifth" : "peti", - "second to last" : "predzadnji", - "last" : "zadnji", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Promjene pravila ponavljanja primjenjuju se na ovo i sva buduća ponavljanja.", "Repeat every" : "Ponovi svakih", "By day of the month" : "Do dana u mjesecu", "On the" : "Na", + "_day_::_days_" : ["dan","dana","dana"], + "_week_::_weeks_" : ["tjedan","tjedana","tjedana"], "_month_::_months_" : ["mjesec","mjeseci","mjeseci"], "_year_::_years_" : ["godinu","godina","godina"], "weekday" : "dan u tjednu", "weekend day" : "dan vikendom", - "No recurrence" : "Nema ponavljanja", + "Does not repeat" : "Ne ponavlja se", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud ne podržava u potpunosti definiciju ponavljanja za ovaj događaj. Ako uredite mogućnosti ponavljanja, može doći do gubitka određenih ponavljanja.", - "Suggestions" : "Prijedlozi", "No rooms or resources yet" : "Još nema soba ili resursa", + "Resources" : "Resursi", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sjedalo","{seatingCapacity} sjedala","{seatingCapacity} sjedala"], "Add resource" : "Dodaj resurs", "Has a projector" : "Ima projektor", "Has a whiteboard" : "Ima ploču za pisanje", "Wheelchair accessible" : "Pristupačno za invalidska kolica", "Remove resource" : "Ukloni resurs", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sjedalo","{seatingCapacity} sjedala","{seatingCapacity} sjedala"], - "Projector" : "Projektor", - "Whiteboard" : "Ploča za pisanje", "Search for resources or rooms" : "Potražite resurse ili sobe", "available" : "dostupno", "unavailable" : "nedostupno", + "Projector" : "Projektor", + "Whiteboard" : "Ploča za pisanje", "Room type" : "Vrsta sobe", "Any" : "Bilo koji", "Minimum seating capacity" : "Minimalni broj sjedala", - "More" : "Više", - "Update this occurrence" : "Ažuriraj ovo ponavljanje", "Update this and all future" : "Ažuriraj ovo i sva buduća ponavljanja", + "Update this occurrence" : "Ažuriraj ovo ponavljanje", "Public calendar does not exist" : "Javni kalendar ne postoji", "Maybe the share was deleted or has expired?" : "Možda je dijeljenje izbrisano ili je isteklo?", - "Please select a time zone:" : "Odaberite vremensku zonu:", - "Pick a time" : "Odaberi vrijeme", - "Pick a date" : "Odaberi datum", "from {formattedDate}" : "od {formattedDate}", "to {formattedDate}" : "do {formattedDate}", "on {formattedDate}" : "{formattedDate}", @@ -269,27 +255,25 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} u {formattedTime}", "Please enter a valid date" : "Unesite važeći datum", "Please enter a valid date and time" : "Unesite važeći datum i vrijeme", + "Please select a time zone:" : "Odaberite vremensku zonu:", + "Pick a time" : "Odaberi vrijeme", + "Pick a date" : "Odaberi datum", "Type to search time zone" : "Upišite za pretraživanje vremenskih zona", "Global" : "Globalno", + "Subscribed" : "Pretplaćen", + "Subscribe" : "Preplata", "Time:" : "Vrijeme:", "Personal" : "Osobno", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Značajka automatskog otkrivanja vremenske zone utvrdila je vašu vremensku zonu kao UTC.\nVjerojatno zbog sigurnosnih mjera vašeg internetskog preglednika.\nRučno postavite vremensku zonu u postavkama kalendara.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Nije pronađena vaša konfigurirana vremenska zona ({timezoneId}). Postavka vremenske zone vraćena je na UTC.\nPromijenite vremensku zonu u postavkama i prijavite ovu poteškoću.", - "No more events today" : "Danas više nema događaja", - "No upcoming events" : "Nema nadolazećih događaja", - "Create a new event" : "Stvorite novi događaj", - "[Today]" : "[Danas]", - "[Tomorrow]" : "[Sutra]", - "[Yesterday]" : "[Jučer]", - "[Last] dddd" : "[Zadnji] dddd", + "Edit event" : "Uredi događaj", "Event does not exist" : "Događaj ne postoji", "Delete this occurrence" : "Izbriši ovo ponavljanje", "Delete this and all future" : "Izbriši ovo i sva buduća ponavljanja", - "Details" : "Pojedinosti", - "Attendees" : "Sudionici", - "Resources" : "Resursi", + "All day" : "Cijeli dan", + "Invite" : "Poziv", + "Untitled event" : "Događaj bez naslova", "Close" : "Zatvori", - "Show more details" : "Prikaži više pojedinosti", "Subscribe to {name}" : "Pretplati se na {name}", "Anniversary" : "Godišnjica", "Appointment" : "Dogovor", @@ -318,7 +302,6 @@ OC.L10N.register( "on {time}" : "u {time}", "on {time} ({timezoneId})" : "u {time} ({timezoneId})", "Week {number} of {year}" : "{number} tjedan {year}", - "Does not repeat" : "Ne ponavlja se", "Daily" : "Svaki dan", "Weekly" : "Svaki tjedan", "Monthly" : "Svaki mjesec", @@ -330,18 +313,17 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["{weekday}","{weekdays}","{weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["na dan {dayOfMonthList}","na dane {dayOfMonthList}","na dane {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber} {byDaySet}", - "in {monthNames}" : "u {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "u {monthNames} {ordinalNumber} {byDaySet}", "until {untilDate}" : "do {untilDate}", "_%n time_::_%n times_" : ["%n put","%n puta","%n puta"], - "Untitled event" : "Događaj bez naslova", + "second" : "drugi", + "third" : "treći", + "fourth" : "četvrti", + "fifth" : "peti", + "second to last" : "predzadnji", + "last" : "zadnji", "Untitled task" : "Zadatak bez naslova", "Please ask your administrator to enable the Tasks App." : "Zatražite od administratora da omogući aplikaciju Tasks.", - "Prev" : "Pret.", - "Next" : "Sljedeća", - "Prev year" : "Pret. godina", - "Next year" : "Sljedeće godine", - "Year" : "Godina", "W" : "W", "%n more" : "još %n", "No events to display" : "Nema događaja za prikaz", @@ -360,7 +342,6 @@ OC.L10N.register( "When shared hide this event" : "Kada se dijeli, sakrij događaj", "The visibility of this event in shared calendars." : "Vidljivost ovog događaja u dijeljenim kalendarima.", "Add a location" : "Dodaj lokaciju", - "Add a description" : "Dodaj opis", "Status" : "Status", "Confirmed" : "Potvrđeno", "Canceled" : "Otkazano", @@ -373,102 +354,13 @@ OC.L10N.register( "Add this as a new category" : "Dodaj kao novu kategoriju", "Custom color" : "Prilagođena boja", "Special color of this event. Overrides the calendar-color." : "Posebna boja ovog događaja. Primjenjuje se umjesto boje kalendara.", - "Chat room for event" : "Soba za razmjenu poruka za događaj", + "Error while sharing file" : "Pogreška pri dijeljenju datoteke", + "An error occurred, unable to delete the calendar." : "Došlo je do pogreške, nije moguće izbrisati kalendar.", "Imported {filename}" : "Uvezena datoteka {filename}", - "Meditation" : "Meditacija", - "Relaxing" : "Opuštanje", - "Relax" : "Opustite se", - "Commuting" : "Na putu", - "Invoice" : "Faktura", - "Presentation" : "Prezentacija", - "Talk" : "Razgovor", - "Camping" : "Kampiranje", - "Camp" : "Idi na kampiranje", - "Movie" : "Film", - "Cinema" : "Kino", - "Graduation" : "Diplomiranje", - "Brainstorm" : "Razmišljanje", - "Review" : "Pregled", - "Baseball" : "Bejzbol", - "Meet" : "Sastanak", - "Planning" : "Planiranje", - "Pointing" : "Pokazivanje", - "Retrospective" : "Retrospektiva", - "Office" : "Ured", - "Contributor week" : "Tjedan suradnika", - "Mail" : "Pošta", - "Soccer" : "Nogomet", - "Football" : "Nogomet", - "Gaming" : "Igranje", - "Drive" : "Vožnja", - "Driving" : "Vožnja", - "Bicycle" : "Bicikl", - "Cycle" : "Vožnja biciklom", - "Biking" : "Biciklizam", - "Bike" : "Bicikl", - "Podcast" : "Podcast", - "Basketball" : "Košarka", - "Fishing" : "Ribolov", - "Hiking" : "Planinarenje", - "Hike" : "Izlet", - "Art" : "Umjetnost", - "Exhibition" : "Izložba", - "Museum" : "Muzej", - "Pilates" : "Pilates", - "Park" : "Park", - "Studying" : "Učenje", - "Doctor" : "Liječnik", - "Health" : "Zdravlje", - "Dentist" : "Stomatolog", - "Hospital" : "Bolnica", - "Interview" : "Razgovor", - "Training" : "Trening", - "Practice" : "Vježba", - "Sports" : "Sport", - "Exercise" : "Tjelovježba", - "Work out" : "Vježba", - "Working out" : "Vježbanje", - "Gym" : "Teretana", - "Barber" : "Brijač", - "Haircut" : "Frizura", - "Exam" : "Ispit", - "Written test" : "Pisani ispit", - "Oral test" : "Usmeni ispit", - "Working" : "Rad", - "New Years Eve" : "Stara godina", - "NYE" : "NYE", - "Fireworks" : "Vatromet", - "Running" : "Trčanje", - "Go for a run" : "Trčati", - "Marathon" : "Maraton", - "Video-conference" : "Videokonferencija", - "Conference-call" : "Konferencijski poziv", - "Video-call" : "Videopoziv", - "Video-chat" : "Videorazgovor", - "Video-meeting" : "Videosastanak", - "Call" : "Poziv", - "Calling" : "Pozivanje", - "Christmas" : "Božić", - "Conference" : "Konferencija", - "Pizza" : "Pizza", - "Travelling" : "Putovanja", - "Journey" : "Putovanje", - "Collaborate" : "Suradnja", - "Pair" : "Par", - "Lecture" : "Predavanje", - "Seminar" : "Seminar", - "Photograph" : "Fotografija", - "Party" : "Tulum", - "Celebration" : "Proslava", - "Celebrate" : "Slavlje", - "Birthday" : "Rođendan", - "Shopping" : "Kupnja", - "Skate" : "Koturanje", - "Skateboard" : "Daska za koturanje", - "Wine tasting" : "Degustacija vina", - "Golf" : "Golf", - "Dinner" : "Večera", - "Lunch" : "Ručak", - "User not found" : "Korisnik nije pronađen" + "User not found" : "Korisnik nije pronađen", + "Reminder" : "Podsjetnik", + "+ Add reminder" : "+ Dodaj podsjetnik", + "Suggestions" : "Prijedlozi", + "Details" : "Pojedinosti" }, "nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"); diff --git a/l10n/hr.json b/l10n/hr.json index d16b35cd808a870738def2918daf8fce143d9e3a..9e6f3804edf456c14ddfd14225e12011fb53f9ec 100644 --- a/l10n/hr.json +++ b/l10n/hr.json @@ -9,96 +9,91 @@ "Open »%s«" : "Otvori »%s«", "Cheers!" : "Bok!", "Upcoming events" : "Nadolazeći događaji", + "No more events today" : "Danas više nema događaja", + "No upcoming events" : "Nema nadolazećih događaja", + "Calendar" : "Kalendar", "Appointments" : "Dogovori", "Confirm" : "Potvrdi", + "Description:" : "Opis:", "Date:" : "Datum:", "Where:" : "Gdje:", - "Description:" : "Opis:", - "Calendar" : "Kalendar", "A Calendar app for Nextcloud" : "Aplikacija Kalendar za Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aplikacija Kalendar je korisničko sučelje za Nextcloudov CalDAV poslužitelj. Jednostavno sinkronizirajte događaje s raznih uređaja s Nextcloudom i uređujte ih na mreži.\n\n* 🚀 **Integracija s drugim Nextcloudovim aplikacijama!** Trenutno kontakti – i još puno toga.\n* 🌐 **Podrška za WebCal!** Želite li u kalendaru vidjeti važne dane svojeg omiljenog tima? Nema problema!\n* 🙋 **Sudionici!** Pozovite ljude na svoje događaje.\n* ⌚️ **Slobodni/zauzeti!** Provjerite kada su sudionici slobodni\n* ⏰ **Podsjetnici!** Primite upozorenja o događajima u svojem pregledniku ili putem e-pošte.\n* 🔍 Pretraživanje! S lakoćom pronađite svoje događaje\n* ☑️ Zadaci! Pregledajte zadatke s datumom izvršenja izravno u kalendaru\n* 🙈 **Ne izmišljamo toplu vodu!** Na temelju odličnih [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) i [fullcalendar](https://github.com/fullcalendar/fullcalendar) biblioteka.", "Previous day" : "Prethodni dan", "Previous week" : "Prethodni tjedan", "Previous month" : "Prethodni mjesec", "Next day" : "Sljedeći dan", "Next week" : "Sljedeći tjedan", + "Next year" : "Sljedeće godine", "Next month" : "Sljedeći mjesec", - "New event" : "Novi događaj", "Today" : "Danas", "Day" : "Dan", "Week" : "Tjedan", "Month" : "Mjesec", + "Year" : "Godina", "List" : "Popis", "Preview" : "Pretpregled", "Copy link" : "Kopiraj poveznicu", "Edit" : "Uredi", "Delete" : "Izbriši", - "Untitled calendar" : "Kalendar bez naslova", - "Edit name" : "Uredi naziv", - "Saving name …" : "Spremanje naziva...", - "Edit color" : "Uredi boju", - "Saving color …" : "Spremanje boje...", - "Copy private link" : "Kopiraj privatnu poveznicu", - "Export" : "Izvoz", - "Unshare from me" : "Prekid dijeljenja sa mnom", + "Create new" : "Stvori novi", "An error occurred, unable to change visibility of the calendar." : "Došlo je do pogreške, nije moguće promijeniti vidljivost kalendara.", - "An error occurred, unable to delete the calendar." : "Došlo je do pogreške, nije moguće izbrisati kalendar.", - "Calendar link copied to clipboard." : "Poveznica kalendara kopirana je u međuspremnik.", - "Calendar link could not be copied to clipboard." : "Poveznica kalendara nije kopirana u međuspremnik.", - "An error occurred, unable to rename the calendar." : "Došlo je do pogreške, nije moguće promijeniti naziv kalendara.", - "An error occurred, unable to change the calendar's color." : "Došlo je do pogreške, nije moguće promijeniti boju kalendara.", + "Untitled calendar" : "Kalendar bez naslova", + "Shared with you by" : "S vama podijelio", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Prekid dijeljenja kalendara za {countdown} sekundu","Prekid dijeljenja kalendara za {countdown} sekundi","Prekid dijeljenja kalendara za {countdown} sekundi"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Brisanje kalendara za {countdown} sekundu","Brisanje kalendara za {countdown} sekundi","Brisanje kalendara za {countdown} sekundi"], + "An error occurred, unable to create the calendar." : "Došlo je do pogreške, nije moguće stvoriti kalendar.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Unesite valjanu poveznicu (mora početi s http://, https://, webcal:// ili webcals://)", + "Calendars" : "Kalendari", + "New calendar" : "Novi kalendar", + "Creating calendar …" : "Stvaranje kalendara...", + "New calendar with task list" : "Novi kalendar s popisom zadataka", + "New subscription from link (read-only)" : "Nova pretplata putem poveznice (samo za čitanje)", + "Creating subscription …" : "Stvaranje pretplate...", + "Calendar link copied to clipboard." : "Poveznica kalendara kopirana je u međuspremnik.", + "Calendar link could not be copied to clipboard." : "Poveznica kalendara nije kopirana u međuspremnik.", + "Copy subscription link" : "Kopiraj poveznicu pretplate", + "Copying link …" : "Kopiranje poveznice...", + "Copied link" : "Poveznica je kopirana", + "Could not copy link" : "Kopiranje poveznice nije uspjelo", + "Export" : "Izvoz", + "Untitled item" : "Stavka bez naslova", + "Could not load deleted calendars and objects" : "Učitavanje izbrisanih kalendara i objekata nije uspjelo", + "Could not restore calendar or event" : "Vraćanje kalendara ili događaja nije uspjelo", + "Do you really want to empty the trash bin?" : "Želite li zaista isprazniti kantu za smeće?", + "Empty trash bin" : "Isprazni kantu za smeće", + "Trash bin" : "Kanta za smeće", + "Name" : "Naziv", + "Deleted" : "Izbrisano", + "Restore" : "Vrati", + "Delete permanently" : "Trajno izbrišite", + "Could not update calendar order." : "Ažuriranje redoslijeda kalendara nije uspjelo.", + "Deck" : "Deck", + "Hidden" : "Skriveno", + "Internal link" : "Interna poveznica", + "Copy internal link" : "Kopiraj internu poveznicu", + "An error occurred, unable to publish calendar." : "Došlo je do pogreške, nije moguće objaviti kalendar.", + "An error occurred, unable to send email." : "Došlo je do pogreške, nije moguće poslati poruku e-pošte.", + "Embed code copied to clipboard." : "Šifra za ugradnju kopirana je u međuspremnik.", + "Embed code could not be copied to clipboard." : "Šifru za ugradnju nije moguće kopirati u međuspremnik.", + "Unpublishing calendar failed" : "Neuspješan prekid objave kalendara", "Share link" : "Dijeli poveznicu", - "Publish calendar" : "Objavi kalendar", - "Publishing calendar" : "Objavljivanje kalendara", "Copy public link" : "Kopiraj javnu poveznicu", "Send link to calendar via email" : "Pošalji poveznicu na kalendar putem e-pošte", "Enter one address" : "Unesi jednu adresu", "Sending email …" : "Slanje e-pošte u tijeku...", - "Copy subscription link" : "Kopiraj poveznicu pretplate", - "Copying link …" : "Kopiranje poveznice...", - "Copied link" : "Poveznica je kopirana", - "Could not copy link" : "Kopiranje poveznice nije uspjelo", "Copy embedding code" : "Kopiraj šifru za ugradnju", "Copying code …" : "Kopiranje šifre...", "Copied code" : "Šifra je kopirana", "Could not copy code" : "Kopiranje šifre nije uspjelo", "Delete share link" : "Izbriši poveznicu dijeljenja", "Deleting share link …" : "Brisanje poveznice dijeljenja...", - "An error occurred, unable to publish calendar." : "Došlo je do pogreške, nije moguće objaviti kalendar.", - "An error occurred, unable to send email." : "Došlo je do pogreške, nije moguće poslati poruku e-pošte.", - "Embed code copied to clipboard." : "Šifra za ugradnju kopirana je u međuspremnik.", - "Embed code could not be copied to clipboard." : "Šifru za ugradnju nije moguće kopirati u međuspremnik.", - "Unpublishing calendar failed" : "Neuspješan prekid objave kalendara", - "Share with users or groups" : "Dijelite s korisnicima ili grupama", - "No users or groups" : "Nema korisnika ili grupa", + "An error occurred, unable to change the permission of the share." : "Došlo je do pogreške, nije moguće promijeniti dopuštenje dijeljenja.", "can edit" : "uređivanje moguće", "Unshare with {displayName}" : "Prekid dijeljenja s {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Došlo je do pogreške, nije moguće promijeniti status dijeljenja kalendara.", - "An error occurred, unable to change the permission of the share." : "Došlo je do pogreške, nije moguće promijeniti dopuštenje dijeljenja.", - "+ New calendar" : "+ Novi kalendar", - "New calendar" : "Novi kalendar", - "Creating calendar …" : "Stvaranje kalendara...", - "New calendar with task list" : "Novi kalendar s popisom zadataka", - "New subscription from link (read-only)" : "Nova pretplata putem poveznice (samo za čitanje)", - "Creating subscription …" : "Stvaranje pretplate...", - "An error occurred, unable to create the calendar." : "Došlo je do pogreške, nije moguće stvoriti kalendar.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Unesite valjanu poveznicu (mora početi s http://, https://, webcal:// ili webcals://)", - "Trash bin" : "Kanta za smeće", - "Loading deleted elements." : "Učitavanje izbrisanih elemenata.", - "You do not have any deleted elements." : "Nemate izbrisanih elemenata.", - "Name" : "Naziv", - "Deleted" : "Izbrisano", - "Restore" : "Vrati", - "Delete permanently" : "Trajno izbrišite", - "Empty trash bin" : "Isprazni kantu za smeće", - "Untitled element" : "Element bez naslova", - "Could not load deleted calendars and objects" : "Učitavanje izbrisanih kalendara i objekata nije uspjelo", - "Could not restore calendar or event" : "Vraćanje kalendara ili događaja nije uspjelo", - "Do you really want to empty the trash bin?" : "Želite li zaista isprazniti kantu za smeće?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Elementi u kanti za smeće brišu se nakon {numDays} dan","Elementi u kanti za smeće brišu se nakon {numDays} dana","Elementi u kanti za smeće brišu se nakon {numDays} dana"], - "Could not update calendar order." : "Ažuriranje redoslijeda kalendara nije uspjelo.", + "Share with users or groups" : "Dijelite s korisnicima ili grupama", + "No users or groups" : "Nema korisnika ili grupa", + "Unshare from me" : "Prekid dijeljenja sa mnom", + "Save" : "Spremi", "Import calendars" : "Uvezi kalendare", "Please select a calendar to import into …" : "Odaberite kalendar za uvoz...", "Filename" : "Naziv datoteke", @@ -111,8 +106,6 @@ "Automatic" : "Automatsko", "Automatic ({detected})" : "Automatsko ({detected})", "New setting was not saved successfully." : "Nova postavka nije uspješno spremljena.", - "Shortcut overview" : "Pregled prečaca", - "or" : "ili", "Navigation" : "Navigacija", "Previous period" : "Prethodno razdoblje", "Next period" : "Sljedeće razdoblje", @@ -124,10 +117,14 @@ "Actions" : "Radnje", "Create event" : "Stvori događaj", "Show shortcuts" : "Prikaži prečace", + "Shortcut overview" : "Pregled prečaca", + "or" : "ili", + "No reminder" : "Nema podsjetnika", + "CalDAV link copied to clipboard." : "Poveznica kalendara CalDAV kopirana je u međuspremnik.", + "CalDAV link could not be copied to clipboard." : "Poveznica kalendara CalDAV nije kopirana u međuspremnik.", "Enable birthday calendar" : "Omogući kalendar rođendana", "Show tasks in calendar" : "Prikaži zadatke u kalendaru", "Enable simplified editor" : "Omogući jednostavan uređivač", - "Limit visible events per view" : "Ograniči vidljive događaje po pogledu", "Show weekends" : "Prikaži vikende", "Show week numbers" : "Prikaži brojeve tjedana", "Time increments" : "Vremenski prirasti", @@ -135,9 +132,7 @@ "Copy primary CalDAV address" : "Kopiraj primarnu CalDAV adresu", "Copy iOS/macOS CalDAV address" : "Kopiraj iOS/macOS CalDAV adresu", "Show keyboard shortcuts" : "Prikaži tipkovne prečace", - "No reminder" : "Nema podsjetnika", - "CalDAV link copied to clipboard." : "Poveznica kalendara CalDAV kopirana je u međuspremnik.", - "CalDAV link could not be copied to clipboard." : "Poveznica kalendara CalDAV nije kopirana u međuspremnik.", + "Update" : "Ažuriraj", "Location" : "Lokacija", "Description" : "Opis", "Visibility" : "Vidljivost", @@ -152,10 +147,10 @@ "Friday" : "Petak", "Saturday" : "Subota", "Sunday" : "Nedjelja", - "Save" : "Spremi", - "Update" : "Ažuriraj", "Your email address" : "Vaša adresa e-pošte", - "Reminder" : "Podsjetnik", + "Select conversation" : "Odaberi razgovor", + "on" : "na", + "at" : "u", "before at" : "prije u", "Notification" : "Obavijest", "Email" : "E-pošta", @@ -166,98 +161,89 @@ "Edit time" : "Uredi vrijeme", "Save time" : "Spremi vrijeme", "Remove reminder" : "Ukloni podsjetnik", - "on" : "na", - "at" : "u", - "+ Add reminder" : "+ Dodaj podsjetnik", "Add reminder" : "Dodaj podsjetnik", - "_second_::_seconds_" : ["sekunda","sekundi","sekundi"], - "_minute_::_minutes_" : ["minuta","minuta","minuta"], - "_hour_::_hours_" : ["sat","sati","sati"], - "_day_::_days_" : ["dan","dana","dana"], - "_week_::_weeks_" : ["tjedan","tjedana","tjedana"], + "seconds" : "sekunda", + "minutes" : "minuta", + "hours" : "sati", + "days" : "dani", + "weeks" : "tjedana", + "Choose a file to add as attachment" : "Izaberi datoteku kao privitak", + "Choose a file to share as a link" : "Izaberi datoteku za dijeljenje putem poveznice", + "Proceed" : "Nastavi", + "Delete file" : "Izbriši datoteku", "Available" : "Dostupno", "Not available" : "Nije dostupno", - "Availability of attendees, resources and rooms" : "Raspoloživost sudionika, resursa i soba", "{organizer} (organizer)" : "{organizer} (organizator)", + "Availability of attendees, resources and rooms" : "Raspoloživost sudionika, resursa i soba", + "Out of office" : "Izvan ureda", + "Attendees:" : "Polaznici:", + "Room name" : "Naziv sobe", "Free" : "Dostupno", "Busy (tentative)" : "Zauzeto (uvjetno)", "Busy" : "Zauzeto", - "Out of office" : "Izvan ureda", "Unknown" : "Nepoznato", "Accept" : "Prihvati", "Decline" : "Odbij", "Tentative" : "Uvjetno", - "Create Talk room for this event" : "Stvori Talk sobu za ovaj događaj", - "Show busy times" : "Prikaži vremena zauzetosti", "No attendees yet" : "Još nema sudionika", "Successfully appended link to talk room to description." : "Uspješno dodana poveznica na Talk sobu u opis.", "Error creating Talk room" : "Pogreška pri stvaranju Talk sobe", - "Send email" : "Pošalji poruku e-pošte", + "Attendees" : "Sudionici", + "Remove group" : "Ukloni grupu", + "Remove attendee" : "Ukloni sudionika", "Chairperson" : "Predsjednik", "Required participant" : "Obavezan sudionik", "Optional participant" : "Neobavezan sudionik", "Non-participant" : "Nije sudionik", - "Remove attendee" : "Ukloni sudionika", - "Search for emails, users or contacts" : "Potražite poruke e-pošte, korisnike ili kontakte", "No match found" : "Nema podudaranja", "(organizer)" : "(organizator)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "[linkopen]Dodajte svoju adresu e-pošte u osobne postavke[linkclose] za slanje pozivnica i upravljanje odgovorima.", "Remove color" : "Ukloni boju", "Event title" : "Naslov događaja", - "All day" : "Cijeli dan", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Nije moguće mijenjati cjelodnevne postavke za događaje koji su dio skupa ponavljanja.", - "from {startDate}" : "od {startDate}", - "from {startDate} at {startTime}" : "od {startDate} u {startTime}", - "to {endDate}" : "do {endDate}", - "to {endDate} at {endTime}" : "do {endDate} u {endTime}", + "From" : "Od", + "To" : "Do", "Repeat" : "Ponovi", - "End repeat" : "Završi ponavljanje", - "Select to end repeat" : "Odaberi za završetak ponavljanja", + "_time_::_times_" : ["put","puta","puta"], "never" : "nikad", "on date" : "na datum", "after" : "nakon", - "_time_::_times_" : ["put","puta","puta"], + "End repeat" : "Završi ponavljanje", + "Select to end repeat" : "Odaberi za završetak ponavljanja", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Ovaj događaj je iznimka ponavljanja skupa ponavljanja. Ne možete mu dodati pravilo ponavljanja.", "first" : "prvi", - "third" : "treći", - "fourth" : "četvrti", - "fifth" : "peti", - "second to last" : "predzadnji", - "last" : "zadnji", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Promjene pravila ponavljanja primjenjuju se na ovo i sva buduća ponavljanja.", "Repeat every" : "Ponovi svakih", "By day of the month" : "Do dana u mjesecu", "On the" : "Na", + "_day_::_days_" : ["dan","dana","dana"], + "_week_::_weeks_" : ["tjedan","tjedana","tjedana"], "_month_::_months_" : ["mjesec","mjeseci","mjeseci"], "_year_::_years_" : ["godinu","godina","godina"], "weekday" : "dan u tjednu", "weekend day" : "dan vikendom", - "No recurrence" : "Nema ponavljanja", + "Does not repeat" : "Ne ponavlja se", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud ne podržava u potpunosti definiciju ponavljanja za ovaj događaj. Ako uredite mogućnosti ponavljanja, može doći do gubitka određenih ponavljanja.", - "Suggestions" : "Prijedlozi", "No rooms or resources yet" : "Još nema soba ili resursa", + "Resources" : "Resursi", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sjedalo","{seatingCapacity} sjedala","{seatingCapacity} sjedala"], "Add resource" : "Dodaj resurs", "Has a projector" : "Ima projektor", "Has a whiteboard" : "Ima ploču za pisanje", "Wheelchair accessible" : "Pristupačno za invalidska kolica", "Remove resource" : "Ukloni resurs", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sjedalo","{seatingCapacity} sjedala","{seatingCapacity} sjedala"], - "Projector" : "Projektor", - "Whiteboard" : "Ploča za pisanje", "Search for resources or rooms" : "Potražite resurse ili sobe", "available" : "dostupno", "unavailable" : "nedostupno", + "Projector" : "Projektor", + "Whiteboard" : "Ploča za pisanje", "Room type" : "Vrsta sobe", "Any" : "Bilo koji", "Minimum seating capacity" : "Minimalni broj sjedala", - "More" : "Više", - "Update this occurrence" : "Ažuriraj ovo ponavljanje", "Update this and all future" : "Ažuriraj ovo i sva buduća ponavljanja", + "Update this occurrence" : "Ažuriraj ovo ponavljanje", "Public calendar does not exist" : "Javni kalendar ne postoji", "Maybe the share was deleted or has expired?" : "Možda je dijeljenje izbrisano ili je isteklo?", - "Please select a time zone:" : "Odaberite vremensku zonu:", - "Pick a time" : "Odaberi vrijeme", - "Pick a date" : "Odaberi datum", "from {formattedDate}" : "od {formattedDate}", "to {formattedDate}" : "do {formattedDate}", "on {formattedDate}" : "{formattedDate}", @@ -267,27 +253,25 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} u {formattedTime}", "Please enter a valid date" : "Unesite važeći datum", "Please enter a valid date and time" : "Unesite važeći datum i vrijeme", + "Please select a time zone:" : "Odaberite vremensku zonu:", + "Pick a time" : "Odaberi vrijeme", + "Pick a date" : "Odaberi datum", "Type to search time zone" : "Upišite za pretraživanje vremenskih zona", "Global" : "Globalno", + "Subscribed" : "Pretplaćen", + "Subscribe" : "Preplata", "Time:" : "Vrijeme:", "Personal" : "Osobno", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Značajka automatskog otkrivanja vremenske zone utvrdila je vašu vremensku zonu kao UTC.\nVjerojatno zbog sigurnosnih mjera vašeg internetskog preglednika.\nRučno postavite vremensku zonu u postavkama kalendara.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Nije pronađena vaša konfigurirana vremenska zona ({timezoneId}). Postavka vremenske zone vraćena je na UTC.\nPromijenite vremensku zonu u postavkama i prijavite ovu poteškoću.", - "No more events today" : "Danas više nema događaja", - "No upcoming events" : "Nema nadolazećih događaja", - "Create a new event" : "Stvorite novi događaj", - "[Today]" : "[Danas]", - "[Tomorrow]" : "[Sutra]", - "[Yesterday]" : "[Jučer]", - "[Last] dddd" : "[Zadnji] dddd", + "Edit event" : "Uredi događaj", "Event does not exist" : "Događaj ne postoji", "Delete this occurrence" : "Izbriši ovo ponavljanje", "Delete this and all future" : "Izbriši ovo i sva buduća ponavljanja", - "Details" : "Pojedinosti", - "Attendees" : "Sudionici", - "Resources" : "Resursi", + "All day" : "Cijeli dan", + "Invite" : "Poziv", + "Untitled event" : "Događaj bez naslova", "Close" : "Zatvori", - "Show more details" : "Prikaži više pojedinosti", "Subscribe to {name}" : "Pretplati se na {name}", "Anniversary" : "Godišnjica", "Appointment" : "Dogovor", @@ -316,7 +300,6 @@ "on {time}" : "u {time}", "on {time} ({timezoneId})" : "u {time} ({timezoneId})", "Week {number} of {year}" : "{number} tjedan {year}", - "Does not repeat" : "Ne ponavlja se", "Daily" : "Svaki dan", "Weekly" : "Svaki tjedan", "Monthly" : "Svaki mjesec", @@ -328,18 +311,17 @@ "_on {weekday}_::_on {weekdays}_" : ["{weekday}","{weekdays}","{weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["na dan {dayOfMonthList}","na dane {dayOfMonthList}","na dane {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber} {byDaySet}", - "in {monthNames}" : "u {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "u {monthNames} {ordinalNumber} {byDaySet}", "until {untilDate}" : "do {untilDate}", "_%n time_::_%n times_" : ["%n put","%n puta","%n puta"], - "Untitled event" : "Događaj bez naslova", + "second" : "drugi", + "third" : "treći", + "fourth" : "četvrti", + "fifth" : "peti", + "second to last" : "predzadnji", + "last" : "zadnji", "Untitled task" : "Zadatak bez naslova", "Please ask your administrator to enable the Tasks App." : "Zatražite od administratora da omogući aplikaciju Tasks.", - "Prev" : "Pret.", - "Next" : "Sljedeća", - "Prev year" : "Pret. godina", - "Next year" : "Sljedeće godine", - "Year" : "Godina", "W" : "W", "%n more" : "još %n", "No events to display" : "Nema događaja za prikaz", @@ -358,7 +340,6 @@ "When shared hide this event" : "Kada se dijeli, sakrij događaj", "The visibility of this event in shared calendars." : "Vidljivost ovog događaja u dijeljenim kalendarima.", "Add a location" : "Dodaj lokaciju", - "Add a description" : "Dodaj opis", "Status" : "Status", "Confirmed" : "Potvrđeno", "Canceled" : "Otkazano", @@ -371,102 +352,13 @@ "Add this as a new category" : "Dodaj kao novu kategoriju", "Custom color" : "Prilagođena boja", "Special color of this event. Overrides the calendar-color." : "Posebna boja ovog događaja. Primjenjuje se umjesto boje kalendara.", - "Chat room for event" : "Soba za razmjenu poruka za događaj", + "Error while sharing file" : "Pogreška pri dijeljenju datoteke", + "An error occurred, unable to delete the calendar." : "Došlo je do pogreške, nije moguće izbrisati kalendar.", "Imported {filename}" : "Uvezena datoteka {filename}", - "Meditation" : "Meditacija", - "Relaxing" : "Opuštanje", - "Relax" : "Opustite se", - "Commuting" : "Na putu", - "Invoice" : "Faktura", - "Presentation" : "Prezentacija", - "Talk" : "Razgovor", - "Camping" : "Kampiranje", - "Camp" : "Idi na kampiranje", - "Movie" : "Film", - "Cinema" : "Kino", - "Graduation" : "Diplomiranje", - "Brainstorm" : "Razmišljanje", - "Review" : "Pregled", - "Baseball" : "Bejzbol", - "Meet" : "Sastanak", - "Planning" : "Planiranje", - "Pointing" : "Pokazivanje", - "Retrospective" : "Retrospektiva", - "Office" : "Ured", - "Contributor week" : "Tjedan suradnika", - "Mail" : "Pošta", - "Soccer" : "Nogomet", - "Football" : "Nogomet", - "Gaming" : "Igranje", - "Drive" : "Vožnja", - "Driving" : "Vožnja", - "Bicycle" : "Bicikl", - "Cycle" : "Vožnja biciklom", - "Biking" : "Biciklizam", - "Bike" : "Bicikl", - "Podcast" : "Podcast", - "Basketball" : "Košarka", - "Fishing" : "Ribolov", - "Hiking" : "Planinarenje", - "Hike" : "Izlet", - "Art" : "Umjetnost", - "Exhibition" : "Izložba", - "Museum" : "Muzej", - "Pilates" : "Pilates", - "Park" : "Park", - "Studying" : "Učenje", - "Doctor" : "Liječnik", - "Health" : "Zdravlje", - "Dentist" : "Stomatolog", - "Hospital" : "Bolnica", - "Interview" : "Razgovor", - "Training" : "Trening", - "Practice" : "Vježba", - "Sports" : "Sport", - "Exercise" : "Tjelovježba", - "Work out" : "Vježba", - "Working out" : "Vježbanje", - "Gym" : "Teretana", - "Barber" : "Brijač", - "Haircut" : "Frizura", - "Exam" : "Ispit", - "Written test" : "Pisani ispit", - "Oral test" : "Usmeni ispit", - "Working" : "Rad", - "New Years Eve" : "Stara godina", - "NYE" : "NYE", - "Fireworks" : "Vatromet", - "Running" : "Trčanje", - "Go for a run" : "Trčati", - "Marathon" : "Maraton", - "Video-conference" : "Videokonferencija", - "Conference-call" : "Konferencijski poziv", - "Video-call" : "Videopoziv", - "Video-chat" : "Videorazgovor", - "Video-meeting" : "Videosastanak", - "Call" : "Poziv", - "Calling" : "Pozivanje", - "Christmas" : "Božić", - "Conference" : "Konferencija", - "Pizza" : "Pizza", - "Travelling" : "Putovanja", - "Journey" : "Putovanje", - "Collaborate" : "Suradnja", - "Pair" : "Par", - "Lecture" : "Predavanje", - "Seminar" : "Seminar", - "Photograph" : "Fotografija", - "Party" : "Tulum", - "Celebration" : "Proslava", - "Celebrate" : "Slavlje", - "Birthday" : "Rođendan", - "Shopping" : "Kupnja", - "Skate" : "Koturanje", - "Skateboard" : "Daska za koturanje", - "Wine tasting" : "Degustacija vina", - "Golf" : "Golf", - "Dinner" : "Večera", - "Lunch" : "Ručak", - "User not found" : "Korisnik nije pronađen" + "User not found" : "Korisnik nije pronađen", + "Reminder" : "Podsjetnik", + "+ Add reminder" : "+ Dodaj podsjetnik", + "Suggestions" : "Prijedlozi", + "Details" : "Pojedinosti" },"pluralForm" :"nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/hu.js b/l10n/hu.js index 0f830c362ad5c7f034fd312585f36c938a99975c..721ba7b2b234194b9f6022aed11696cbc2d65f71 100644 --- a/l10n/hu.js +++ b/l10n/hu.js @@ -1,139 +1,167 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "A megadott e-mail-cím túl hosszú", "User-Session unexpectedly expired" : "A felhasználói munkamenet váratlanul lejárt", "Provided email-address is not valid" : "A megadott e-mail-cím nem érvényes", "%s has published the calendar »%s«" : "%s közzétette ezt a naptárt: „%s”", "Unexpected error sending email. Please contact your administrator." : "Váratlan hiba üzenetküldéskor. Lépjen kapcsolatba a rendszergazdával.", "Successfully sent email to %1$s" : "E-mail sikeresen elküldve ide: %1$s", "Hello," : "Üdv,", - "We wanted to inform you that %s has published the calendar »%s«." : "Szeretnénk tájékoztatni, hogy %s közzétette ezt a naptárt: „%s”.", + "We wanted to inform you that %s has published the calendar »%s«." : "Tájékoztatjuk, hogy %s közzétette ezt a naptárat: „%s”.", "Open »%s«" : "„%s” megnyitása", "Cheers!" : "Üdv!", "Upcoming events" : "Közelgő események", + "No more events today" : "Ma nincs több esemény", + "No upcoming events" : "Nincsenek közelgő események", + "More events" : "További események", + "%1$s with %2$s" : "%1$s – %2$s", + "Calendar" : "Naptár", + "New booking {booking}" : "Új foglalás: {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) ekkorra foglalta le a(z) „{config_display_name}” találkozót: {date_time}.", "Appointments" : "Találkozók", "Schedule appointment \"%s\"" : "A(z) „%s” találkozó ütemezése", "Schedule an appointment" : "Találkozó ütemezése", + "%1$s - %2$s" : "%1$s – %2$s", "Prepare for %s" : "Előkészülés erre: %s", "Follow up for %s" : "Utókövetés ehhez: %s", - "Your appointment \"%s\" needs confirmation" : "A(z) „%s” találkozójához megerősítés szükséges", + "Your appointment \"%s\" with %s needs confirmation" : "A(z) „%s” találkozójához (a következővel: %s) megerősítés szükséges", "Dear %s, please confirm your booking" : "Kedves %s, erősítse meg a foglalását", "Confirm" : "Megerősítés", + "Appointment with:" : "Találkozó vele:", + "Description:" : "Leírás:", "This confirmation link expires in %s hours." : "Ez a megerősítő hivatkozás %s óra múlva lejár.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Ha mégis le kell mondania a találkozót, akkor vegye fel a kapcsolatot a szervezővel.", - "Appointment:" : "Találkozók:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Ha mégis le akarja mondani a találkozót, lépjen kapcsolatba a szervezővel úgy, hogy válaszol erre a levélre vagy felkeresi a profiloldalát.", + "Your appointment \"%s\" with %s has been accepted" : "A(z) „%s” találkozóját (a következővel: %s) elfogadta", + "Dear %s, your booking has been accepted." : "Kedves %s, a foglalását elfogadták.", + "Appointment for:" : "Találkozó ehhez:", "Date:" : "Dátum:", + "You will receive a link with the confirmation email" : "Egy hivatkozást fog kapni a megerősítő e-mailben", "Where:" : "Hely:", - "Description:" : "Leírás:", - "Calendar" : "Naptár", + "Comment:" : "Megjegyzés:", + "You have a new appointment booking \"%s\" from %s" : "Új találkozófoglalása van: „%s” a következőtől: %s", + "Dear %s, %s (%s) booked an appointment with you." : "Kedves %s, %s (%s) lefoglalt egy találkozót Önnel.", "A Calendar app for Nextcloud" : "Naptár alkalmazás a Nextcloudhoz", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "A Naptár alkalmazás egy felhasználói felület a Nextcloud CalDAV kiszolgálójához. Könnyen szinkronizálhatja a különböző eszközökről származó eseményeket a Nextcloud segítségével, és szerkesztheti azokat online.\n\n* 🚀 ** Integráció más nextcloudos alkalmazásokkal. ** Jelenleg a Névjegyekkel – de még több várható.\n* 🌐 ** WebCal támogatás. ** Szeretné megnézni kedvenc csapata mérkőzéseit a naptárában? Nem probléma.\n* 🙋 ** Résztvevők. ** Hívjon meg embereket az eseményeire\n* ⌚️ ** Szabad/elfoglalt. ** Nézze meg, mikor állnak rendelkezésre a résztvevők\n* ⏰ ** Emlékeztetők! ** Riasztásokat kaphat az eseményekről a böngészőben és e-mailben\n* 🔍 Keresés. Keresse meg eseményeit egyszerűen\n* ☑️ Feladatok. Az esedékes dátummal rendelkező feladatokat közvetlenül a naptárban láthatja\n* 🙈 ** Nem találjuk fel újra a kereket. ** A nagyszerű [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) és [fullcalendar](https://github.com/fullcalendar/fullcalendar) programkönyvtárak használatával.", "Previous day" : "Előző nap", "Previous week" : "Előző hét", + "Previous year" : "Előző év", "Previous month" : "Előző hónap", "Next day" : "Következő nap", "Next week" : "Következő hét", + "Next year" : "Köv. év", "Next month" : "Következő hónap", - "New event" : "Új esemény", + "Create new event" : "Új esemény létrehozása", + "Event" : "Esemény", "Today" : "Ma", "Day" : "Nap", "Week" : "Hét", "Month" : "Hónap", + "Year" : "Év", "List" : "Lista", + "Appointment link was copied to clipboard" : "Találkozóhivatkozás vágólapra másolva", + "Appointment link could not be copied to clipboard" : "A találkozóhivatkozást nem sikerült a vágólapra másolni", "Preview" : "Előnézet", "Copy link" : "Hivatkozás másolása", "Edit" : "Szerkesztés", "Delete" : "Törlés", - "Appointment link was copied to clipboard" : "Találkozóhivatkozás vágólapra másolva", - "Appointment link could not be copied to clipboard" : "A találkozóhivatkozást nem sikerült a vágólapra másolni", - "Add new" : "Új hozzáadása", - "Untitled calendar" : "Névtelen naptár", - "Edit name" : "Név szerkesztése", - "Saving name …" : "Név mentése…", - "Edit color" : "Színek szerkesztése", - "Saving color …" : "Szín mentése…", - "Copy private link" : "Személyes hivatkozás másolása", - "Export" : "Exportálás", - "Unshare from me" : "Megosztás visszavonása", + "Create new" : "Új létrehozása", "Disable calendar \"{calendar}\"" : "A(z) „{calendar}” naptár letiltása", "Disable untitled calendar" : "Névtelen naptár letiltása", "Enable calendar \"{calendar}\"" : "A(z) „{calendar}” naptár engedélyezése", "Enable untitled calendar" : "Névtelen naptár engedélyezése", "An error occurred, unable to change visibility of the calendar." : "Hiba lépett fel, a naptár kinézetét nem lehet megváltoztatni.", - "An error occurred, unable to delete the calendar." : "Hiba lépett fel, a naptárat nem lehet törölni.", - "Calendar link copied to clipboard." : "Naptári hivatkozás vágólapra másolva.", - "Calendar link could not be copied to clipboard." : "Naptári hivatkozást nem lehet vágólapra másolni.", - "An error occurred, unable to rename the calendar." : "Hiba lépett fel, a naptárat nem lehet átnevezni.", - "An error occurred, unable to change the calendar's color." : "Hiba lépett fel, a naptár színét nem lehet megváltoztatni.", + "Untitled calendar" : "Névtelen naptár", + "Shared with you by" : "Önnel megosztotta:", + "Edit and share calendar" : "Naptár szerkesztése és megosztása", + "Edit calendar" : "Naptár szerkesztése", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Megosztás leállítása {countdown} másodperc múlva","Megosztás leállítása {countdown} másodperc múlva"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Naptár törlése {countdown} másodperc múlva","Naptár törlése {countdown} másodperc múlva"], + "An error occurred, unable to create the calendar." : "Hiba történt, a naptárat nem lehet létrehozni.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Érvényes hivatkozást adjon meg (ezek egyikével kezdődjön: http://, https://, webcal://, vagy webcals://)", + "Calendars" : "Naptárak", + "Add new" : "Új hozzáadása", + "New calendar" : "Új naptár", + "Name for new calendar" : "Új naptár neve", + "Creating calendar …" : "Naptár létrehozása…", + "New calendar with task list" : "Új naptár feladatlistával", + "New subscription from link (read-only)" : "Új feliratkozás hivatkozásból (csak olvasható)", + "Creating subscription …" : "Feliratkozás létrehozása…", + "Add public holiday calendar" : "Ünnepnapok naptárának hozzáadása", + "Add custom public calendar" : "Egyéni nyilvános naptár hozzáadása", + "Calendar link copied to clipboard." : "Naptári hivatkozás vágólapra másolva.", + "Calendar link could not be copied to clipboard." : "Naptári hivatkozást nem lehet vágólapra másolni.", + "Copy subscription link" : "Feliratkozási hivatkozás másolása", + "Copying link …" : "Hivatkozás másolása…", + "Copied link" : "Hivatkozás másolva", + "Could not copy link" : "A hivatkozást nem lehet másolni", + "Export" : "Exportálás", + "Untitled item" : "Névtelen elem", + "Unknown calendar" : "Ismeretlen naptár", + "Could not load deleted calendars and objects" : "A törölt naptárak és objektumok nem tölthetők be", + "Could not delete calendar or event" : "A naptár vagy esemény nem törölhető", + "Could not restore calendar or event" : "A naptár vagy esemény nem állítható helyre", + "Do you really want to empty the trash bin?" : "Biztos, hogy üríti a kukát?", + "Empty trash bin" : "Kuka ürítése", + "Trash bin" : "Kuka", + "Loading deleted items." : "Törölt elemek betöltése.", + "You do not have any deleted items." : "Nincsenek törölt elemei.", + "Name" : "Név", + "Deleted" : "Törölt", + "Restore" : "Helyreállítás", + "Delete permanently" : "Végleges törlés", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["A kukában lévő elemek {numDays} nap után törölve lesznek","A kukában lévő elemek {numDays} nap után törölve lesznek"], + "Could not update calendar order." : "Nem sikerült frissíteni a naptárak sorrendjét.", + "Shared calendars" : "Megosztott naptárak", + "Deck" : "Kártyák", + "Hidden" : "Rejtett", + "Internal link" : "Belső hivatkozás", + "A private link that can be used with external clients" : "Privát hivatkozás, amely külső kliensekkel használhat", + "Copy internal link" : "Belső hivatkozás másolása", + "An error occurred, unable to publish calendar." : "Hiba lépett fel, nem lehet közzétenni a naptárat.", + "An error occurred, unable to send email." : "Hiba lépett fel, nem lehet e-mailt küldeni.", + "Embed code copied to clipboard." : "A beágyazó kód vágólapra másolva.", + "Embed code could not be copied to clipboard." : "A beágyazó kód vágólapra másolása sikertelen.", + "Unpublishing calendar failed" : "Naptár közzétételének visszavonása sikertelen", "Share link" : "Megosztás hivatkozással", - "Publish calendar" : "Naptár megosztása", - "Publishing calendar" : "Naptár megosztása", "Copy public link" : "Nyilvános hivatkozás másolása", "Send link to calendar via email" : "Naptárhivatkozás küldése e-mailben", "Enter one address" : "Adjon meg egy címet", "Sending email …" : "E-mail küldése…", - "Copy subscription link" : "Feliratkozási hivatkozás másolása", - "Copying link …" : "Hivatkozás másolása…", - "Copied link" : "Hivatkozás másolva", - "Could not copy link" : "A hivatkozást nem lehet másolni", "Copy embedding code" : "Beágyazó kód másolása", "Copying code …" : "Kód másolása…", "Copied code" : "Kód lemásolva", "Could not copy code" : "A kódot nem lehet másolni", "Delete share link" : "Megosztási hivatkozás törlése", "Deleting share link …" : "Megosztott hivatkozás törlése…", - "An error occurred, unable to publish calendar." : "Hiba lépett fel, nem lehet közzétenni a naptárat.", - "An error occurred, unable to send email." : "Hiba lépett fel, nem lehet e-mailt küldeni.", - "Embed code copied to clipboard." : "A beágyazó kód vágólapra másolva.", - "Embed code could not be copied to clipboard." : "A beágyazó kód vágólapra másolása sikertelen.", - "Unpublishing calendar failed" : "Naptár közzétételének visszavonása sikertelen", - "Share with users or groups" : "Megosztás felhasználókkal vagy csoportokkal", - "No users or groups" : "Nincsenek felhasználók vagy csoportok", + "An error occurred while unsharing the calendar." : "Hiba történt a naptár megosztásának megszüntetése során.", + "An error occurred, unable to change the permission of the share." : "Hiba történt, nem lehet megváltoztatni a megosztás jogosultságait.", "can edit" : "szerkesztheti", "Unshare with {displayName}" : "Megosztás megszüntetése a következővel: {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Hiba történt, nem lehet visszavonni a naptár megosztását.", - "An error occurred, unable to change the permission of the share." : "Hiba történt, nem lehet megváltoztatni a megosztás jogosultságait.", - "+ New calendar" : "+ Új naptár", - "New calendar" : "Új naptár", - "Name for new calendar" : "Új naptár neve", - "Creating calendar …" : "Naptár létrehozása…", - "New calendar with task list" : "Új naptár feladatlistával", - "New subscription from link (read-only)" : "Új feliratkozás hivatkozásból (csak olvasható)", - "Creating subscription …" : "Feliratkozás létrehozása…", - "An error occurred, unable to create the calendar." : "Hiba történt, a naptárat nem lehet létrehozni.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Érvényes hivatkozást adjon meg (ezek egyikével kezdődjön: http://, https://, webcal://, vagy webcals://)", - "Trash bin" : "Kuka", - "Loading deleted elements." : "Törölt elemek betöltése", - "You do not have any deleted elements." : "Nincsenek törölt elemei.", - "Name" : "Név", - "Deleted" : "Törölt", - "Restore" : "Helyreállítás", - "Delete permanently" : "Végleges törlés", - "Empty trash bin" : "Kuka ürítése", - "Untitled element" : "Névtelen elem", - "Unknown calendar" : "Ismeretlen naptár", - "Could not load deleted calendars and objects" : "A törölt naptárak és objektumok nem tölthetők be", - "Could not restore calendar or event" : "A naptár vagy esemény nem állítható helyre", - "Do you really want to empty the trash bin?" : "Biztos, hogy üríti a kukát?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["A kukában lévő elemek {numDays} nap után törölve lesznek","A kukában lévő elemek {numDays} nap után törölve lesznek"], - "Could not update calendar order." : "Nem sikerült frissíteni a naptárak sorrendjét.", + "Share with users or groups" : "Megosztás felhasználókkal vagy csoportokkal", + "No users or groups" : "Nincsenek felhasználók vagy csoportok", + "Failed to save calendar name and color" : "A naptár nevének és színének mentése sikertelen", + "Calendar name …" : "Naptár neve…", + "Share calendar" : "Naptár megosztása", + "Unshare from me" : "Megosztás visszavonása", + "Save" : "Mentés", "Import calendars" : "Naptárak importálása", "Please select a calendar to import into …" : "Válasszon naptárat, amelybe importál…", "Filename" : "Fájlnév", "Calendar to import into" : "Naptár importálva ide:", "Cancel" : "Mégse", "_Import calendar_::_Import calendars_" : ["Naptár importálása","Naptárak importálása"], + "Select the default location for attachments" : "Válassza ki a mellékletek alapértelmezett helyét", + "Invalid location selected" : "Érvénytelen hely választva", + "Attachments folder successfully saved." : "A mellékletek mappa sikeresen mentve.", + "Error on saving attachments folder." : "Hiba a mellékletek mappa mentése során.", + "Default attachments location" : "Mellékletek alapértelmezett helye", "{filename} could not be parsed" : "A {filename} nem dolgozható fel", "No valid files found, aborting import" : "Nem található érvényes fájl, importálás megszakítva", - "Import partially failed. Imported {accepted} out of {total}." : "Az importálás részlegesen sikertelen. {accepted} / {total} lett importálva.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n esemény sikeresen importálva","%n esemény sikeresen importálva"], + "Import partially failed. Imported {accepted} out of {total}." : "Az importálás részlegesen sikertelen. {accepted} / {total} lett importálva.", "Automatic" : "Automatikus", "Automatic ({detected})" : "Automatikus ({detected})", "New setting was not saved successfully." : "Az új beállítások nem lettek elmentve.", - "Shortcut overview" : "Gyorsbillentyűk áttekintése", - "or" : "vagy", "Navigation" : "Navigáció", "Previous period" : "Előző időszak", "Next period" : "Következő időszak", @@ -141,6 +169,7 @@ OC.L10N.register( "Day view" : "Nap nézet", "Week view" : "Hét nézet", "Month view" : "Hónap nézet", + "Year view" : "Év nézet", "List view" : "Lista nézet", "Actions" : "Műveletek", "Create event" : "Esemény létrehozása", @@ -150,10 +179,16 @@ OC.L10N.register( "Save edited event" : "Szerkesztett esemény mentése", "Delete edited event" : "Szerkesztett esemény törlése", "Duplicate event" : "Esemény megkettőzése", + "Shortcut overview" : "Gyorsbillentyűk áttekintése", + "or" : "vagy", + "Calendar settings" : "Naptár beállításai", + "No reminder" : "Nincs emlékeztető", + "CalDAV link copied to clipboard." : "CalDAV hivatkozás vágólapra másolva.", + "CalDAV link could not be copied to clipboard." : "A CalDAV hivatkozást nem lehet vágólapra másolni.", "Enable birthday calendar" : "Születésnapokat tartalamzó naptár engedélyezése", "Show tasks in calendar" : "Feladatok megjelenítése a naptárban", "Enable simplified editor" : "Egyszerűsített szerkesztő engedélyezése", - "Limit visible events per view" : "Látható események számának korlátozása nézetenként", + "Limit the number of events displayed in the monthly view" : "A havi nézetben megjelenített események számának korlátozása", "Show weekends" : "Hétvégék megjelenítése", "Show week numbers" : "Hetek számának megjelenítése", "Time increments" : "Idő lépésköze", @@ -162,12 +197,6 @@ OC.L10N.register( "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV cím másolása", "Personal availability settings" : "Személyes elérhetőség beállításai", "Show keyboard shortcuts" : "Billentyűparancsok megjelenítése", - "Calendar settings" : "Naptár beállításai", - "No reminder" : "Nincs emlékeztető", - "CalDAV link copied to clipboard." : "CalDAV hivatkozás vágólapra másolva.", - "CalDAV link could not be copied to clipboard." : "A CalDAV hivatkozást nem lehet vágólapra másolni.", - "Appointment was created successfully" : "A találkozó sikeresen létrehozva.", - "Appointment was updated successfully" : "A találkozó sikeresen frissítve.", "_{duration} minute_::_{duration} minutes_" : ["{duration} perc","{duration} perc"], "0 minutes" : "0 perc", "_{duration} hour_::_{duration} hours_" : ["{duration} óra","{duration} óra"], @@ -178,7 +207,11 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "A találkozók testreszabásához adja hozzá az e-mail-címét a személyes beállításokban.", "Public – shown on the profile page" : "Nyilvános – megjelenik a profiloldalán", "Private – only accessible via secret link" : "Privát – csak titkos hivatkozáson keresztül érhető el", + "Update" : "Frissítés", + "Appointment name" : "Találkozó neve", "Location" : "Hely", + "Create a Talk room" : "Beszélgetés szoba létrehozása", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Egy egyéni hivatkozás lesz előállítva minden egyes lefoglalt találkozóhoz, és el lesz küldve a megerősítő e-mailben", "Description" : "Leírás", "Visibility" : "Láthatóság", "Duration" : "Időtartam", @@ -196,6 +229,7 @@ OC.L10N.register( "Friday" : "péntek", "Saturday" : "szombat", "Sunday" : "vasárnap", + "Weekdays" : "Hétköznapok", "Add time before and after the event" : "Idő hozzáadása az esemény előtt és után", "Before the event" : "Esemény előtt", "After the event" : "Esemény utá", @@ -203,18 +237,18 @@ OC.L10N.register( "Minimum time before next available slot" : "A következő szabad idősáv előtti minimális idő", "Max slots per day" : "Napi idősávok legnagyobb száma", "Limit how far in the future appointments can be booked" : "Korlátozás, hogy mennyivel előre lehessen találkozót foglalni", - "Create appointment" : "Találkozó létrehozása", - "Edit appointment" : "Találkozó szerkesztése", - "Save" : "Mentés", - "Update" : "Frissítés", + "It seems a rate limit has been reached. Please try again later." : "Úgy néz ki, hogy elérte a forgalomkorlátot. Próbálja újra később", "Please confirm your reservation" : "Erősítse meg a foglalását", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Küldtünk egy e-mailt a részletekkel. Erősítse meg a találkozót a levélben található hivatkozással. Bezárhatja ezt az oldalt.", "Your name" : "Az Ön neve", "Your email address" : "Az Ön e-mail-címe", "Please share anything that will help prepare for our meeting" : "Osszon meg mindent, amely segít a találkozóra felkészüléshez", "Could not book the appointment. Please try again later or contact the organizer." : "A találkozót nem sikerült lefoglalni. Próbálja újra, vagy lépjen kapcsolatba a szervezővel.", - "Book the appointment" : "Találkozó lefoglalása", - "Reminder" : "Emlékeztető", + "Back" : "Vissza", + "Create a new conversation" : "Új beszélgetés létrehozása", + "Select conversation" : "Válasszon beszélgetést", + "on" : "be", + "at" : "ekkor: ", "before at" : "előtt", "Notification" : "Értesítés", "Email" : "E-mail", @@ -225,114 +259,119 @@ OC.L10N.register( "Edit time" : "Idő szerkesztése", "Save time" : "Időpont mentése", "Remove reminder" : "Értesítés eltávolítása", - "on" : "be", - "at" : "ekkor: ", - "+ Add reminder" : "+ Emlékeztető hozzáadása", "Add reminder" : "Emlékeztető hozzáadása", - "_second_::_seconds_" : ["másodperc","másodperc"], - "_minute_::_minutes_" : ["perc","perce"], - "_hour_::_hours_" : ["óra","óra"], - "_day_::_days_" : ["nap","nap"], - "_week_::_weeks_" : ["hét","hét"], + "seconds" : "másodpercek", + "minutes" : "perc", + "hours" : "órák", + "days" : "napok", + "weeks" : "hét", + "Choose a file to add as attachment" : "Válasszon mellékletként hozzáadandó fájlt", + "Choose a file to share as a link" : "Válasszon fájlt a hivatkozással történő megosztáshoz", + "Attachment {name} already exist!" : "A(z) {name} melléklet már létezik.", + "Could not upload attachment(s)" : "Nem sikerült feltölteni a mellékleteket", + "No attachments" : "Nincsenek mellékletek", + "Add from Files" : "Hozzáadás a Fájlokból", + "Upload from device" : "Feltöltés az eszközről", + "Delete file" : "Fájl törlése", + "Confirmation" : "Megerősítés", + "_{count} attachment_::_{count} attachments_" : ["{count} melléklet","{count} melléklet"], "Suggested" : "Javasolt", "Available" : "Elérhető", - "Not available" : "Nem érhető el", - "Checking availability" : "Elérhetőség ellenőrzése", "Invitation accepted" : "Meghívás elfogadva", "Accepted {organizerName}'s invitation" : "Elfogadta {organizerName} meghívását", + "Participation marked as tentative" : "A részvétel feltételesként jelölve", + "Invitation is delegated" : "Meghívás átruházva", + "Not available" : "Nem érhető el", "Invitation declined" : "Meghívás elutasítva", "Declined {organizerName}'s invitation" : "Elutasította {organizerName} meghívását", - "Invitation is delegated" : "Meghívás átruházva", - "Participation marked as tentative" : "A részvétel feltételesként jelölve", - "Invitation sent" : "Meghívó elküldve", + "Awaiting response" : "Válaszra várakozik", + "Checking availability" : "Elérhetőség ellenőrzése", "Has not responded to {organizerName}'s invitation yet" : "Még nem válaszolt {organizerName} meghívására", - "Availability of attendees, resources and rooms" : "A résztvevők, az erőforrások és a szobák rendelkezésre állása", "{organizer} (organizer)" : "{organizer} (szervező)", + "Availability of attendees, resources and rooms" : "A résztvevők, az erőforrások és a szobák rendelkezésre állása", + "Suggestion accepted" : "Javaslat elfogadva", + "Legend" : "Jelmagyarázat", + "Out of office" : "Irodán kívül", + "Attendees:" : "Résztvevők:", + "Done" : "Kész", + "Room name" : "Szoba neve", "Free" : "Szabad", "Busy (tentative)" : "Foglalt (feltételes)", "Busy" : "Foglalt", - "Out of office" : "Irodán kívül", "Unknown" : "Ismeretlen", - "Accept" : "Elfogadás", - "Decline" : "Elutasítás", - "Tentative" : "Feltételes", + "Find a time" : "Idő keresése", "The invitation has been accepted successfully." : "A meghívása sikeresen elfogadva.", "Failed to accept the invitation." : "A meghívás elfogadása sikertelen.", "The invitation has been declined successfully." : "A meghívás sikeresen elutasítva.", "Failed to decline the invitation." : "A meghívás elutasítása sikertelen.", "Your participation has been marked as tentative." : "A részvétele feltételesnek lett jelölve.", "Failed to set the participation status to tentative." : "A részvétele feltételesként megadása sikertelen.", - "Create Talk room for this event" : "Beszélgetés szoba létrehozása ehhez az eseményhez", - "Show busy times" : "Elfoglalt idők megjelenítése", + "Accept" : "Elfogadás", + "Decline" : "Elutasítás", + "Tentative" : "Feltételes", "No attendees yet" : "Még nincs résztvevő", + "Successfully appended link to talk room to location." : "A hely hivatkozásának beszélgetési szobához történő hozzáfűzése sikeres.", "Successfully appended link to talk room to description." : "Beszélgetés szoba hivatkozásának a leíráshoz csatolása sikeres.", "Error creating Talk room" : "Hiba a Beszélgetés szoba létrehozásakor", - "Send email" : "E-mail küldése", + "Attendees" : "Résztvevők", + "Remove group" : "Csoport eltávolítása", + "Remove attendee" : "Résztvevő eltávolítása", "Chairperson" : "Elnök", "Required participant" : "Kötelező résztvevő", "Optional participant" : "Opcionális résztvevő", "Non-participant" : "Nem résztvevő", - "Remove attendee" : "Résztvevő eltávolítása", - "Search for emails, users or contacts" : "E-mailek, felhasználók és névjegyek keresése", + "_%n member_::_%n members_" : ["%n tag","%n tag"], "No match found" : "Nem található egyezés", + "Note that members of circles get invited but are not synced yet." : "Vegye figyelembe, hogy a kör tagjai meg lettek hívva, de még nincsenek szinkronizálva.", "(organizer)" : "(szervező)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Meghívók elküldéséhez és a válaszok kezeléséhez [linkopen]adja meg e-mail-címét a személyes beállításokban[linkclose].", "Remove color" : "Szín eltávolítása", "Event title" : "Esemény címe", - "All day" : "Egész napos", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Az ismétlődő események egész napos beállítása nem módosítható.", - "from {startDate}" : "ettől: {startDate}", - "from {startDate} at {startTime}" : "ettől: {startDate} {startTime}", - "to {endDate}" : "eddig: {endDate}", - "to {endDate} at {endTime}" : "eddig: {endDate} {endTime}", + "From" : "Feladó", + "To" : "Címzett", "Repeat" : "Ismétlés", - "End repeat" : "Ismétlés vége", - "Select to end repeat" : "Válassza az ismétlés befejezéséhez", + "_time_::_times_" : ["alkalommal","alkalommal"], "never" : "soha", "on date" : "dátumon", "after" : "után", - "_time_::_times_" : ["alkalommal","alkalommal"], + "End repeat" : "Ismétlés vége", + "Select to end repeat" : "Válassza az ismétlés befejezéséhez", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Ez az esemény egy ismétlődő esemény nem ismétlődő kivétele. Nem adhat hozzá ismétlődési szabályt.", "first" : "első", - "third" : "harmadik", - "fourth" : "negyedik", - "fifth" : "ötödik", - "second to last" : "utolsó előtti", - "last" : "utolsó", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Az ismétlődési szabály változásai csak erre és minden jövőbeli eseményre vonatkoznak.", "Repeat every" : "Ismétlés minden", "By day of the month" : "A hónap ezen napján", "On the" : "Ekkor: ", + "_day_::_days_" : ["nap","nap"], + "_week_::_weeks_" : ["hét","hét"], "_month_::_months_" : ["hónap","hónapok"], "_year_::_years_" : ["év","évek"], "weekday" : "hétköznap", "weekend day" : "hétvége", - "No recurrence" : "Nincs ismétlődés", + "Does not repeat" : "Nem ismétlődik", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Az esemény ismétlődésének megadását a Nextcloud nem támogatja teljes mértékben. Az ismétlődési lehetőségek szerkesztésekor bizonyos ismétlődések elveszhetnek.", - "Suggestions" : "Javaslatok", "No rooms or resources yet" : "Még nincsenek szobák vagy erőforrások", + "Resources" : "Erőforrások", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} hely","{seatingCapacity} hely"], "Add resource" : "Erőforrás hozzáadása", "Has a projector" : "Van kivetítő", "Has a whiteboard" : "Van fehér tábla", "Wheelchair accessible" : "Kerekesszékkel megközelíthető", "Remove resource" : "Erőforrás eltávolítása", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} hely","{seatingCapacity} hely"], - "Projector" : "Kivetítő", - "Whiteboard" : "Tábla", "Search for resources or rooms" : "Szobák vagy erőforrások keresése", "available" : "elérhető", "unavailable" : "nem érhető el", + "Projector" : "Kivetítő", + "Whiteboard" : "Tábla", "Room type" : "Szoba típusa", "Any" : "Bármely", "Minimum seating capacity" : "Ülőhelyek legkisebb száma", - "More" : "Több", - "Update this occurrence" : "Ezen előfordulás frissítése", + "More details" : "További részletek", "Update this and all future" : "Ezen és az összes jövőbeli frissítése", + "Update this occurrence" : "Ezen előfordulás frissítése", "Public calendar does not exist" : "Nyilvános naptár nem létezik", "Maybe the share was deleted or has expired?" : "Lehet, hogy a megosztást törölték, vagy lejárt?", - "Please select a time zone:" : "Válasszon egy időzónát:", - "Pick a time" : "Válasszon egy időt", - "Pick a date" : "Válasszon egy dátumot", "from {formattedDate}" : "ettől: {formattedDate}", "to {formattedDate}" : "eddig: {formattedDate}", "on {formattedDate}" : "ekkor: {formattedDate}", @@ -342,9 +381,25 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "Adjon meg egy érvényes dátumot", "Please enter a valid date and time" : "Adjon meg egy érvényes dátumot és időt", + "Select a time zone" : "Időzóna kiválasztása", + "Please select a time zone:" : "Válasszon egy időzónát:", + "Pick a time" : "Válasszon egy időt", + "Pick a date" : "Válasszon egy dátumot", "Type to search time zone" : "Gépeljen az időzóna kereséséhez", "Global" : "Globális", - "Select date" : "Válasszon dátumot", + "Holidays in {region}" : "Ünnepnapok itt: {region}", + "An error occurred, unable to read public calendars." : "Hiba történt, a nyilvános naptárak nem olvashatók.", + "An error occurred, unable to subscribe to calendar." : "Hiba történt, nem lehet feliratkozni a naptárra.", + "Public holiday calendars" : "Ünnepnapok naptára", + "Public calendars" : "Nyilvános naptárak", + "No valid public calendars configured" : "Nincsenek érvényes naptárak beállítva", + "Speak to the server administrator to resolve this issue." : "A probléma megoldásához beszéljen a rendszergazdával.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Az ünnepnapok naptárát a Thunderbird biztosítja. A naptáradatok innen lesznek letöltve: {website}.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Ezeket a nyilvános naptárakat a kiszolgáló rendszergazdája javasolta. A naptáradatok a megfelelő weboldalról lesznek letöltve.", + "By {authors}" : "Szerzők: {authors}", + "Subscribed" : "Feliratkozva", + "Subscribe" : "Feliratkozás", + "Could not fetch slots" : "Nem sikerült lekérni a helyeket", "Select slot" : "Válasszon idősávot", "No slots available" : "Nincs elérhető idősáv", "The slot for your appointment has been confirmed" : "A találkozó idősávja megerősítésre került", @@ -361,22 +416,19 @@ OC.L10N.register( "Personal" : "Személyes", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Az automatikus időzóna-észlelés UTC-nek észlelte az időzónáját.\nEz valószínűleg a böngésző biztonsági beállításai miatt van.\nÁllítsa be az időzónáját kézzel a naptárbeállításokban.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "A beállított időzóna ({timezoneId}) nem található. Visszaállás UTC-re.\nMódosítsa az időzónát a beállításokban, és jelentse be ezt a hibát.", - "No more events today" : "Ma nincs több esemény", - "No upcoming events" : "Nincsenek közelgő események", - "Create a new event" : "Új esemény létrehozása", - "[Today]" : "[Ma]", - "[Tomorrow]" : "[Holnap]", - "[Yesterday]" : "[Tegnap]", - "[Last] dddd" : "[Múlt] dddd", + "Edit event" : "Esemény szerkesztése", "Event does not exist" : "Az esemény nem létezik", "Duplicate" : "Kettőzés", "Delete this occurrence" : "Ezen előfordulás törlése", "Delete this and all future" : "Ezen és az összes jövőbeli törlése", - "Details" : "Részletek", - "Attendees" : "Résztvevők", - "Resources" : "Erőforrások", + "All day" : "Egész napos", + "Managing shared access" : "Közös hozzáférés kezelése", + "Deny access" : "Hozzáférés megtagadása", + "Invite" : "Meghívás", + "_User requires access to your file_::_Users require access to your file_" : ["Egy felhasználónak szüksége van a fájlja elérésére","Több felhasználónak szüksége van a fájlja elérésére"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Közös hozzáférést igénylő melléklet","Közös hozzáférést igénylő mellékletek"], + "Untitled event" : "Névtelen esemény", "Close" : "Bezárás", - "Show more details" : "Részletek megjelenítése", "Subscribe to {name}" : "Feliratkozás erre: {name}", "Export {name}" : "{name} exportálása", "Anniversary" : "Évforduló", @@ -406,7 +458,6 @@ OC.L10N.register( "on {time}" : "{time}-kor", "on {time} ({timezoneId})" : "{time}-kor ({timezoneId})", "Week {number} of {year}" : "{year} {number}. hete", - "Does not repeat" : "Nem ismétlődik", "Daily" : "Naponta", "Weekly" : "Hetente", "Monthly" : "Havonta", @@ -418,18 +469,17 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["ezen a napon: {weekdays}","ezen a napon: {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["a hónap ezen napjain: {dayOfMonthList}","a hónap ezen napjain: {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "ekkor: {ordinalNumber}. {byDaySet}", - "in {monthNames}" : "{monthNames} hónapban", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames} hónapban ekkor: {ordinalNumber}. {byDaySet}", "until {untilDate}" : "eddig: {untilDate}", "_%n time_::_%n times_" : ["%n alkalommal","%n alkalommal"], - "Untitled event" : "Névtelen esemény", + "second" : "másodperc", + "third" : "harmadik", + "fourth" : "negyedik", + "fifth" : "ötödik", + "second to last" : "utolsó előtti", + "last" : "utolsó", "Untitled task" : "Névtelen feladat", "Please ask your administrator to enable the Tasks App." : "Kérje meg a rendszergazdát, hogy engedélyezze a Feladatok alkalmazást.", - "Prev" : "Előző", - "Next" : "Köv.", - "Prev year" : "Előző év", - "Next year" : "Köv. év", - "Year" : "Év", "W" : "H", "%n more" : "%n további", "No events to display" : "Nincs megjelenítendő esemény", @@ -448,7 +498,6 @@ OC.L10N.register( "When shared hide this event" : "Az esemény elrejtése megosztáskor", "The visibility of this event in shared calendars." : "Az esemény láthatósága a megosztott naptárakban.", "Add a location" : "Helyszín hozzáadása", - "Add a description" : "Leírás hozzáadása", "Status" : "Állapot", "Confirmed" : "Elfogadva", "Canceled" : "Lemondva", @@ -461,135 +510,18 @@ OC.L10N.register( "Add this as a new category" : "Hozzáadás új kategóriaként", "Custom color" : "Egyéni szín", "Special color of this event. Overrides the calendar-color." : "Megkülönböztető szín ehhez az eseményhez. Felülírja a naptár színét.", - "Chat room for event" : "Csevegőszoba az eseményhez", + "Error while sharing file" : "Hiba a fájl megosztása során", + "Error while sharing file with user" : "Hiba a fájl felhasználóval történő megosztása során", + "Attachment {fileName} already exists!" : "A(z) {fileName} melléklet már létezik.", + "An error occurred during getting file information" : "Hiba történt a fájlinformációk lekérése során", + "An error occurred, unable to delete the calendar." : "Hiba lépett fel, a naptárat nem lehet törölni.", "Imported {filename}" : "{filename} importálva", - "Meditation" : "Meditáció", - "Relaxing" : "Pihenés", - "Relax" : "Pihenő", - "Break" : "Szünet", - "Commute" : "Ingázás", - "Commuting" : "Ingázás", - "Shuttle" : "Ingajárat", - "Invoice" : "Díjbekérő", - "Finance" : "Pénzügyek", - "Bank" : "Bank", - "Money" : "Pénz", - "Wedding" : "Esküvő", - "Dog" : "Kutya", - "Concert" : "Koncert", - "Festival" : "Fesztivál", - "Theater" : "Színház", - "Theatre" : "Színház", - "Presentation" : "Bemutató", - "Talk" : "Előadás", - "Speech" : "Beszéd", - "Deadline" : "Határidő", - "Submission" : "Beküldés", - "Reporting" : "Jelentés", - "Camping" : "Kemping", - "Camp" : "Táborozás", - "Election" : "Választás", - "Voting" : "Szavazás", - "Vote" : "Szavazat", - "Barbecue" : "Grillezés", - "Barbeque" : "Sütögetés", - "Garden" : "Kert", - "Farm" : "Farm", - "Movie" : "Film", - "Cinema" : "Mozi", - "Graduation" : "Ballagás", - "Brainstorm" : "Ötletelés", - "Review" : "Visszajelzés", - "Audit" : "Audit", - "Inspection" : "Vizsgálat", - "Proofreading" : "Átolvasás", - "Baseball" : "Baseball", - "Meet" : "Találkozás", - "Planning" : "Tervezés", - "Pointing" : "Mutatás", - "Retrospective" : "Visszatekintő", - "Office" : "Munkahely", - "Contributor week" : "Közreműködői hét", - "Mail" : "Levél", - "Soccer" : "Foci", - "Football" : "Futball", - "Gaming" : "Játék", - "Drive" : "Vezetés", - "Driving" : "Vezetés", - "Bicycle" : "Kerékpár", - "Cycle" : "Bicaj", - "Cycling" : "Kerékpározás", - "Biking" : "Kerékpározás", - "Bike" : "Bicikli", - "Podcast" : "Podcast", - "Basketball" : "Kosárlabda", - "Fishing" : "Horgászás", - "Hiking" : "Túrázás", - "Hike" : "Túra", - "Art" : "Művészet", - "Exhibition" : "Kiállítás", - "Museum" : "Múzeum", - "Pilates" : "Pilates", - "Park" : "Park", - "Walk" : "Gyaloglás", - "Studying" : "Tanulás", - "Doctor" : "Orvos", - "Health" : "Egészség", - "Dentist" : "Fogorvos", - "Hospital" : "Kórház", - "Interview" : "Interjú", - "Training" : "Képzés", - "Practice" : "Gyakorlás", - "Sports" : "Sportok", - "Exercise" : "Feladat", - "Work out" : "Edzés", - "Working out" : "Edzeni", - "Gym" : "Tornaterem", - "Barber" : "Borbély", - "Haircut" : "Fodrász", - "Hairdresser" : "Fodrász", - "Exam" : "Vizsga", - "Written test" : "Írott teszt", - "Oral test" : "Szóbeli teszt", - "Working" : "Munka", - "New Years Eve" : "Szilveszter", - "NYE" : "Újév", - "Fireworks" : "Tüzijáték", - "Running" : "Futás", - "Go for a run" : "Futni menni", - "Marathon" : "Maraton", - "Video-conference" : "Videókonferencia", - "Conference-call" : "Konferenciahívás", - "Video-call" : "Videohívás", - "Video-chat" : "Videocsevegés", - "Video-meeting" : "Videotalálkozó", - "Call" : "Hívás", - "Calling" : "Hívni", - "Christmas" : "Karácsony", - "Conference" : "Konferencia", - "Pizza" : "Pizza", - "Travelling" : "Utazás", - "Trip" : "Kirándulás", - "Journey" : "Utazgatás", - "Collaborate" : "Együttműködés", - "Pair" : "Pár", - "Lecture" : "Előadás", - "Seminar" : "Szeminárium", - "Teaching" : "Tanítás", - "Photograph" : "Fénykép", - "Party" : "Parti", - "Celebration" : "Ünnep", - "Celebrate" : "Ünneplés", - "Birthday" : "Születésnap", - "Shopping" : "Bevásárlás", - "Groceries" : "Bevásárlás", - "Skate" : "Korcsolya", - "Skateboard" : "Gördeszka", - "Wine tasting" : "Borkóstolás", - "Golf" : "Golf", - "Dinner" : "Vacsora", - "Lunch" : "Ebéd", + "This is an event reminder." : "Ez egy eseményemlékeztető.", "Appointment not found" : "A találkozó nem található", - "User not found" : "A felhasználó nem található" + "User not found" : "A felhasználó nem található", + "Reminder" : "Emlékeztető", + "+ Add reminder" : "+ Emlékeztető hozzáadása", + "Suggestions" : "Javaslatok", + "Details" : "Részletek" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/hu.json b/l10n/hu.json index 9a3c8f386d2320d4997b5a38821c353eccfd710f..8414808db34b5ab4d22dfa6bdc5925ad9c353588 100644 --- a/l10n/hu.json +++ b/l10n/hu.json @@ -1,137 +1,165 @@ { "translations": { + "Provided email-address is too long" : "A megadott e-mail-cím túl hosszú", "User-Session unexpectedly expired" : "A felhasználói munkamenet váratlanul lejárt", "Provided email-address is not valid" : "A megadott e-mail-cím nem érvényes", "%s has published the calendar »%s«" : "%s közzétette ezt a naptárt: „%s”", "Unexpected error sending email. Please contact your administrator." : "Váratlan hiba üzenetküldéskor. Lépjen kapcsolatba a rendszergazdával.", "Successfully sent email to %1$s" : "E-mail sikeresen elküldve ide: %1$s", "Hello," : "Üdv,", - "We wanted to inform you that %s has published the calendar »%s«." : "Szeretnénk tájékoztatni, hogy %s közzétette ezt a naptárt: „%s”.", + "We wanted to inform you that %s has published the calendar »%s«." : "Tájékoztatjuk, hogy %s közzétette ezt a naptárat: „%s”.", "Open »%s«" : "„%s” megnyitása", "Cheers!" : "Üdv!", "Upcoming events" : "Közelgő események", + "No more events today" : "Ma nincs több esemény", + "No upcoming events" : "Nincsenek közelgő események", + "More events" : "További események", + "%1$s with %2$s" : "%1$s – %2$s", + "Calendar" : "Naptár", + "New booking {booking}" : "Új foglalás: {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) ekkorra foglalta le a(z) „{config_display_name}” találkozót: {date_time}.", "Appointments" : "Találkozók", "Schedule appointment \"%s\"" : "A(z) „%s” találkozó ütemezése", "Schedule an appointment" : "Találkozó ütemezése", + "%1$s - %2$s" : "%1$s – %2$s", "Prepare for %s" : "Előkészülés erre: %s", "Follow up for %s" : "Utókövetés ehhez: %s", - "Your appointment \"%s\" needs confirmation" : "A(z) „%s” találkozójához megerősítés szükséges", + "Your appointment \"%s\" with %s needs confirmation" : "A(z) „%s” találkozójához (a következővel: %s) megerősítés szükséges", "Dear %s, please confirm your booking" : "Kedves %s, erősítse meg a foglalását", "Confirm" : "Megerősítés", + "Appointment with:" : "Találkozó vele:", + "Description:" : "Leírás:", "This confirmation link expires in %s hours." : "Ez a megerősítő hivatkozás %s óra múlva lejár.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Ha mégis le kell mondania a találkozót, akkor vegye fel a kapcsolatot a szervezővel.", - "Appointment:" : "Találkozók:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Ha mégis le akarja mondani a találkozót, lépjen kapcsolatba a szervezővel úgy, hogy válaszol erre a levélre vagy felkeresi a profiloldalát.", + "Your appointment \"%s\" with %s has been accepted" : "A(z) „%s” találkozóját (a következővel: %s) elfogadta", + "Dear %s, your booking has been accepted." : "Kedves %s, a foglalását elfogadták.", + "Appointment for:" : "Találkozó ehhez:", "Date:" : "Dátum:", + "You will receive a link with the confirmation email" : "Egy hivatkozást fog kapni a megerősítő e-mailben", "Where:" : "Hely:", - "Description:" : "Leírás:", - "Calendar" : "Naptár", + "Comment:" : "Megjegyzés:", + "You have a new appointment booking \"%s\" from %s" : "Új találkozófoglalása van: „%s” a következőtől: %s", + "Dear %s, %s (%s) booked an appointment with you." : "Kedves %s, %s (%s) lefoglalt egy találkozót Önnel.", "A Calendar app for Nextcloud" : "Naptár alkalmazás a Nextcloudhoz", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "A Naptár alkalmazás egy felhasználói felület a Nextcloud CalDAV kiszolgálójához. Könnyen szinkronizálhatja a különböző eszközökről származó eseményeket a Nextcloud segítségével, és szerkesztheti azokat online.\n\n* 🚀 ** Integráció más nextcloudos alkalmazásokkal. ** Jelenleg a Névjegyekkel – de még több várható.\n* 🌐 ** WebCal támogatás. ** Szeretné megnézni kedvenc csapata mérkőzéseit a naptárában? Nem probléma.\n* 🙋 ** Résztvevők. ** Hívjon meg embereket az eseményeire\n* ⌚️ ** Szabad/elfoglalt. ** Nézze meg, mikor állnak rendelkezésre a résztvevők\n* ⏰ ** Emlékeztetők! ** Riasztásokat kaphat az eseményekről a böngészőben és e-mailben\n* 🔍 Keresés. Keresse meg eseményeit egyszerűen\n* ☑️ Feladatok. Az esedékes dátummal rendelkező feladatokat közvetlenül a naptárban láthatja\n* 🙈 ** Nem találjuk fel újra a kereket. ** A nagyszerű [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) és [fullcalendar](https://github.com/fullcalendar/fullcalendar) programkönyvtárak használatával.", "Previous day" : "Előző nap", "Previous week" : "Előző hét", + "Previous year" : "Előző év", "Previous month" : "Előző hónap", "Next day" : "Következő nap", "Next week" : "Következő hét", + "Next year" : "Köv. év", "Next month" : "Következő hónap", - "New event" : "Új esemény", + "Create new event" : "Új esemény létrehozása", + "Event" : "Esemény", "Today" : "Ma", "Day" : "Nap", "Week" : "Hét", "Month" : "Hónap", + "Year" : "Év", "List" : "Lista", + "Appointment link was copied to clipboard" : "Találkozóhivatkozás vágólapra másolva", + "Appointment link could not be copied to clipboard" : "A találkozóhivatkozást nem sikerült a vágólapra másolni", "Preview" : "Előnézet", "Copy link" : "Hivatkozás másolása", "Edit" : "Szerkesztés", "Delete" : "Törlés", - "Appointment link was copied to clipboard" : "Találkozóhivatkozás vágólapra másolva", - "Appointment link could not be copied to clipboard" : "A találkozóhivatkozást nem sikerült a vágólapra másolni", - "Add new" : "Új hozzáadása", - "Untitled calendar" : "Névtelen naptár", - "Edit name" : "Név szerkesztése", - "Saving name …" : "Név mentése…", - "Edit color" : "Színek szerkesztése", - "Saving color …" : "Szín mentése…", - "Copy private link" : "Személyes hivatkozás másolása", - "Export" : "Exportálás", - "Unshare from me" : "Megosztás visszavonása", + "Create new" : "Új létrehozása", "Disable calendar \"{calendar}\"" : "A(z) „{calendar}” naptár letiltása", "Disable untitled calendar" : "Névtelen naptár letiltása", "Enable calendar \"{calendar}\"" : "A(z) „{calendar}” naptár engedélyezése", "Enable untitled calendar" : "Névtelen naptár engedélyezése", "An error occurred, unable to change visibility of the calendar." : "Hiba lépett fel, a naptár kinézetét nem lehet megváltoztatni.", - "An error occurred, unable to delete the calendar." : "Hiba lépett fel, a naptárat nem lehet törölni.", - "Calendar link copied to clipboard." : "Naptári hivatkozás vágólapra másolva.", - "Calendar link could not be copied to clipboard." : "Naptári hivatkozást nem lehet vágólapra másolni.", - "An error occurred, unable to rename the calendar." : "Hiba lépett fel, a naptárat nem lehet átnevezni.", - "An error occurred, unable to change the calendar's color." : "Hiba lépett fel, a naptár színét nem lehet megváltoztatni.", + "Untitled calendar" : "Névtelen naptár", + "Shared with you by" : "Önnel megosztotta:", + "Edit and share calendar" : "Naptár szerkesztése és megosztása", + "Edit calendar" : "Naptár szerkesztése", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Megosztás leállítása {countdown} másodperc múlva","Megosztás leállítása {countdown} másodperc múlva"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Naptár törlése {countdown} másodperc múlva","Naptár törlése {countdown} másodperc múlva"], + "An error occurred, unable to create the calendar." : "Hiba történt, a naptárat nem lehet létrehozni.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Érvényes hivatkozást adjon meg (ezek egyikével kezdődjön: http://, https://, webcal://, vagy webcals://)", + "Calendars" : "Naptárak", + "Add new" : "Új hozzáadása", + "New calendar" : "Új naptár", + "Name for new calendar" : "Új naptár neve", + "Creating calendar …" : "Naptár létrehozása…", + "New calendar with task list" : "Új naptár feladatlistával", + "New subscription from link (read-only)" : "Új feliratkozás hivatkozásból (csak olvasható)", + "Creating subscription …" : "Feliratkozás létrehozása…", + "Add public holiday calendar" : "Ünnepnapok naptárának hozzáadása", + "Add custom public calendar" : "Egyéni nyilvános naptár hozzáadása", + "Calendar link copied to clipboard." : "Naptári hivatkozás vágólapra másolva.", + "Calendar link could not be copied to clipboard." : "Naptári hivatkozást nem lehet vágólapra másolni.", + "Copy subscription link" : "Feliratkozási hivatkozás másolása", + "Copying link …" : "Hivatkozás másolása…", + "Copied link" : "Hivatkozás másolva", + "Could not copy link" : "A hivatkozást nem lehet másolni", + "Export" : "Exportálás", + "Untitled item" : "Névtelen elem", + "Unknown calendar" : "Ismeretlen naptár", + "Could not load deleted calendars and objects" : "A törölt naptárak és objektumok nem tölthetők be", + "Could not delete calendar or event" : "A naptár vagy esemény nem törölhető", + "Could not restore calendar or event" : "A naptár vagy esemény nem állítható helyre", + "Do you really want to empty the trash bin?" : "Biztos, hogy üríti a kukát?", + "Empty trash bin" : "Kuka ürítése", + "Trash bin" : "Kuka", + "Loading deleted items." : "Törölt elemek betöltése.", + "You do not have any deleted items." : "Nincsenek törölt elemei.", + "Name" : "Név", + "Deleted" : "Törölt", + "Restore" : "Helyreállítás", + "Delete permanently" : "Végleges törlés", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["A kukában lévő elemek {numDays} nap után törölve lesznek","A kukában lévő elemek {numDays} nap után törölve lesznek"], + "Could not update calendar order." : "Nem sikerült frissíteni a naptárak sorrendjét.", + "Shared calendars" : "Megosztott naptárak", + "Deck" : "Kártyák", + "Hidden" : "Rejtett", + "Internal link" : "Belső hivatkozás", + "A private link that can be used with external clients" : "Privát hivatkozás, amely külső kliensekkel használhat", + "Copy internal link" : "Belső hivatkozás másolása", + "An error occurred, unable to publish calendar." : "Hiba lépett fel, nem lehet közzétenni a naptárat.", + "An error occurred, unable to send email." : "Hiba lépett fel, nem lehet e-mailt küldeni.", + "Embed code copied to clipboard." : "A beágyazó kód vágólapra másolva.", + "Embed code could not be copied to clipboard." : "A beágyazó kód vágólapra másolása sikertelen.", + "Unpublishing calendar failed" : "Naptár közzétételének visszavonása sikertelen", "Share link" : "Megosztás hivatkozással", - "Publish calendar" : "Naptár megosztása", - "Publishing calendar" : "Naptár megosztása", "Copy public link" : "Nyilvános hivatkozás másolása", "Send link to calendar via email" : "Naptárhivatkozás küldése e-mailben", "Enter one address" : "Adjon meg egy címet", "Sending email …" : "E-mail küldése…", - "Copy subscription link" : "Feliratkozási hivatkozás másolása", - "Copying link …" : "Hivatkozás másolása…", - "Copied link" : "Hivatkozás másolva", - "Could not copy link" : "A hivatkozást nem lehet másolni", "Copy embedding code" : "Beágyazó kód másolása", "Copying code …" : "Kód másolása…", "Copied code" : "Kód lemásolva", "Could not copy code" : "A kódot nem lehet másolni", "Delete share link" : "Megosztási hivatkozás törlése", "Deleting share link …" : "Megosztott hivatkozás törlése…", - "An error occurred, unable to publish calendar." : "Hiba lépett fel, nem lehet közzétenni a naptárat.", - "An error occurred, unable to send email." : "Hiba lépett fel, nem lehet e-mailt küldeni.", - "Embed code copied to clipboard." : "A beágyazó kód vágólapra másolva.", - "Embed code could not be copied to clipboard." : "A beágyazó kód vágólapra másolása sikertelen.", - "Unpublishing calendar failed" : "Naptár közzétételének visszavonása sikertelen", - "Share with users or groups" : "Megosztás felhasználókkal vagy csoportokkal", - "No users or groups" : "Nincsenek felhasználók vagy csoportok", + "An error occurred while unsharing the calendar." : "Hiba történt a naptár megosztásának megszüntetése során.", + "An error occurred, unable to change the permission of the share." : "Hiba történt, nem lehet megváltoztatni a megosztás jogosultságait.", "can edit" : "szerkesztheti", "Unshare with {displayName}" : "Megosztás megszüntetése a következővel: {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Hiba történt, nem lehet visszavonni a naptár megosztását.", - "An error occurred, unable to change the permission of the share." : "Hiba történt, nem lehet megváltoztatni a megosztás jogosultságait.", - "+ New calendar" : "+ Új naptár", - "New calendar" : "Új naptár", - "Name for new calendar" : "Új naptár neve", - "Creating calendar …" : "Naptár létrehozása…", - "New calendar with task list" : "Új naptár feladatlistával", - "New subscription from link (read-only)" : "Új feliratkozás hivatkozásból (csak olvasható)", - "Creating subscription …" : "Feliratkozás létrehozása…", - "An error occurred, unable to create the calendar." : "Hiba történt, a naptárat nem lehet létrehozni.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Érvényes hivatkozást adjon meg (ezek egyikével kezdődjön: http://, https://, webcal://, vagy webcals://)", - "Trash bin" : "Kuka", - "Loading deleted elements." : "Törölt elemek betöltése", - "You do not have any deleted elements." : "Nincsenek törölt elemei.", - "Name" : "Név", - "Deleted" : "Törölt", - "Restore" : "Helyreállítás", - "Delete permanently" : "Végleges törlés", - "Empty trash bin" : "Kuka ürítése", - "Untitled element" : "Névtelen elem", - "Unknown calendar" : "Ismeretlen naptár", - "Could not load deleted calendars and objects" : "A törölt naptárak és objektumok nem tölthetők be", - "Could not restore calendar or event" : "A naptár vagy esemény nem állítható helyre", - "Do you really want to empty the trash bin?" : "Biztos, hogy üríti a kukát?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["A kukában lévő elemek {numDays} nap után törölve lesznek","A kukában lévő elemek {numDays} nap után törölve lesznek"], - "Could not update calendar order." : "Nem sikerült frissíteni a naptárak sorrendjét.", + "Share with users or groups" : "Megosztás felhasználókkal vagy csoportokkal", + "No users or groups" : "Nincsenek felhasználók vagy csoportok", + "Failed to save calendar name and color" : "A naptár nevének és színének mentése sikertelen", + "Calendar name …" : "Naptár neve…", + "Share calendar" : "Naptár megosztása", + "Unshare from me" : "Megosztás visszavonása", + "Save" : "Mentés", "Import calendars" : "Naptárak importálása", "Please select a calendar to import into …" : "Válasszon naptárat, amelybe importál…", "Filename" : "Fájlnév", "Calendar to import into" : "Naptár importálva ide:", "Cancel" : "Mégse", "_Import calendar_::_Import calendars_" : ["Naptár importálása","Naptárak importálása"], + "Select the default location for attachments" : "Válassza ki a mellékletek alapértelmezett helyét", + "Invalid location selected" : "Érvénytelen hely választva", + "Attachments folder successfully saved." : "A mellékletek mappa sikeresen mentve.", + "Error on saving attachments folder." : "Hiba a mellékletek mappa mentése során.", + "Default attachments location" : "Mellékletek alapértelmezett helye", "{filename} could not be parsed" : "A {filename} nem dolgozható fel", "No valid files found, aborting import" : "Nem található érvényes fájl, importálás megszakítva", - "Import partially failed. Imported {accepted} out of {total}." : "Az importálás részlegesen sikertelen. {accepted} / {total} lett importálva.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n esemény sikeresen importálva","%n esemény sikeresen importálva"], + "Import partially failed. Imported {accepted} out of {total}." : "Az importálás részlegesen sikertelen. {accepted} / {total} lett importálva.", "Automatic" : "Automatikus", "Automatic ({detected})" : "Automatikus ({detected})", "New setting was not saved successfully." : "Az új beállítások nem lettek elmentve.", - "Shortcut overview" : "Gyorsbillentyűk áttekintése", - "or" : "vagy", "Navigation" : "Navigáció", "Previous period" : "Előző időszak", "Next period" : "Következő időszak", @@ -139,6 +167,7 @@ "Day view" : "Nap nézet", "Week view" : "Hét nézet", "Month view" : "Hónap nézet", + "Year view" : "Év nézet", "List view" : "Lista nézet", "Actions" : "Műveletek", "Create event" : "Esemény létrehozása", @@ -148,10 +177,16 @@ "Save edited event" : "Szerkesztett esemény mentése", "Delete edited event" : "Szerkesztett esemény törlése", "Duplicate event" : "Esemény megkettőzése", + "Shortcut overview" : "Gyorsbillentyűk áttekintése", + "or" : "vagy", + "Calendar settings" : "Naptár beállításai", + "No reminder" : "Nincs emlékeztető", + "CalDAV link copied to clipboard." : "CalDAV hivatkozás vágólapra másolva.", + "CalDAV link could not be copied to clipboard." : "A CalDAV hivatkozást nem lehet vágólapra másolni.", "Enable birthday calendar" : "Születésnapokat tartalamzó naptár engedélyezése", "Show tasks in calendar" : "Feladatok megjelenítése a naptárban", "Enable simplified editor" : "Egyszerűsített szerkesztő engedélyezése", - "Limit visible events per view" : "Látható események számának korlátozása nézetenként", + "Limit the number of events displayed in the monthly view" : "A havi nézetben megjelenített események számának korlátozása", "Show weekends" : "Hétvégék megjelenítése", "Show week numbers" : "Hetek számának megjelenítése", "Time increments" : "Idő lépésköze", @@ -160,12 +195,6 @@ "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV cím másolása", "Personal availability settings" : "Személyes elérhetőség beállításai", "Show keyboard shortcuts" : "Billentyűparancsok megjelenítése", - "Calendar settings" : "Naptár beállításai", - "No reminder" : "Nincs emlékeztető", - "CalDAV link copied to clipboard." : "CalDAV hivatkozás vágólapra másolva.", - "CalDAV link could not be copied to clipboard." : "A CalDAV hivatkozást nem lehet vágólapra másolni.", - "Appointment was created successfully" : "A találkozó sikeresen létrehozva.", - "Appointment was updated successfully" : "A találkozó sikeresen frissítve.", "_{duration} minute_::_{duration} minutes_" : ["{duration} perc","{duration} perc"], "0 minutes" : "0 perc", "_{duration} hour_::_{duration} hours_" : ["{duration} óra","{duration} óra"], @@ -176,7 +205,11 @@ "To configure appointments, add your email address in personal settings." : "A találkozók testreszabásához adja hozzá az e-mail-címét a személyes beállításokban.", "Public – shown on the profile page" : "Nyilvános – megjelenik a profiloldalán", "Private – only accessible via secret link" : "Privát – csak titkos hivatkozáson keresztül érhető el", + "Update" : "Frissítés", + "Appointment name" : "Találkozó neve", "Location" : "Hely", + "Create a Talk room" : "Beszélgetés szoba létrehozása", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Egy egyéni hivatkozás lesz előállítva minden egyes lefoglalt találkozóhoz, és el lesz küldve a megerősítő e-mailben", "Description" : "Leírás", "Visibility" : "Láthatóság", "Duration" : "Időtartam", @@ -194,6 +227,7 @@ "Friday" : "péntek", "Saturday" : "szombat", "Sunday" : "vasárnap", + "Weekdays" : "Hétköznapok", "Add time before and after the event" : "Idő hozzáadása az esemény előtt és után", "Before the event" : "Esemény előtt", "After the event" : "Esemény utá", @@ -201,18 +235,18 @@ "Minimum time before next available slot" : "A következő szabad idősáv előtti minimális idő", "Max slots per day" : "Napi idősávok legnagyobb száma", "Limit how far in the future appointments can be booked" : "Korlátozás, hogy mennyivel előre lehessen találkozót foglalni", - "Create appointment" : "Találkozó létrehozása", - "Edit appointment" : "Találkozó szerkesztése", - "Save" : "Mentés", - "Update" : "Frissítés", + "It seems a rate limit has been reached. Please try again later." : "Úgy néz ki, hogy elérte a forgalomkorlátot. Próbálja újra később", "Please confirm your reservation" : "Erősítse meg a foglalását", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Küldtünk egy e-mailt a részletekkel. Erősítse meg a találkozót a levélben található hivatkozással. Bezárhatja ezt az oldalt.", "Your name" : "Az Ön neve", "Your email address" : "Az Ön e-mail-címe", "Please share anything that will help prepare for our meeting" : "Osszon meg mindent, amely segít a találkozóra felkészüléshez", "Could not book the appointment. Please try again later or contact the organizer." : "A találkozót nem sikerült lefoglalni. Próbálja újra, vagy lépjen kapcsolatba a szervezővel.", - "Book the appointment" : "Találkozó lefoglalása", - "Reminder" : "Emlékeztető", + "Back" : "Vissza", + "Create a new conversation" : "Új beszélgetés létrehozása", + "Select conversation" : "Válasszon beszélgetést", + "on" : "be", + "at" : "ekkor: ", "before at" : "előtt", "Notification" : "Értesítés", "Email" : "E-mail", @@ -223,114 +257,119 @@ "Edit time" : "Idő szerkesztése", "Save time" : "Időpont mentése", "Remove reminder" : "Értesítés eltávolítása", - "on" : "be", - "at" : "ekkor: ", - "+ Add reminder" : "+ Emlékeztető hozzáadása", "Add reminder" : "Emlékeztető hozzáadása", - "_second_::_seconds_" : ["másodperc","másodperc"], - "_minute_::_minutes_" : ["perc","perce"], - "_hour_::_hours_" : ["óra","óra"], - "_day_::_days_" : ["nap","nap"], - "_week_::_weeks_" : ["hét","hét"], + "seconds" : "másodpercek", + "minutes" : "perc", + "hours" : "órák", + "days" : "napok", + "weeks" : "hét", + "Choose a file to add as attachment" : "Válasszon mellékletként hozzáadandó fájlt", + "Choose a file to share as a link" : "Válasszon fájlt a hivatkozással történő megosztáshoz", + "Attachment {name} already exist!" : "A(z) {name} melléklet már létezik.", + "Could not upload attachment(s)" : "Nem sikerült feltölteni a mellékleteket", + "No attachments" : "Nincsenek mellékletek", + "Add from Files" : "Hozzáadás a Fájlokból", + "Upload from device" : "Feltöltés az eszközről", + "Delete file" : "Fájl törlése", + "Confirmation" : "Megerősítés", + "_{count} attachment_::_{count} attachments_" : ["{count} melléklet","{count} melléklet"], "Suggested" : "Javasolt", "Available" : "Elérhető", - "Not available" : "Nem érhető el", - "Checking availability" : "Elérhetőség ellenőrzése", "Invitation accepted" : "Meghívás elfogadva", "Accepted {organizerName}'s invitation" : "Elfogadta {organizerName} meghívását", + "Participation marked as tentative" : "A részvétel feltételesként jelölve", + "Invitation is delegated" : "Meghívás átruházva", + "Not available" : "Nem érhető el", "Invitation declined" : "Meghívás elutasítva", "Declined {organizerName}'s invitation" : "Elutasította {organizerName} meghívását", - "Invitation is delegated" : "Meghívás átruházva", - "Participation marked as tentative" : "A részvétel feltételesként jelölve", - "Invitation sent" : "Meghívó elküldve", + "Awaiting response" : "Válaszra várakozik", + "Checking availability" : "Elérhetőség ellenőrzése", "Has not responded to {organizerName}'s invitation yet" : "Még nem válaszolt {organizerName} meghívására", - "Availability of attendees, resources and rooms" : "A résztvevők, az erőforrások és a szobák rendelkezésre állása", "{organizer} (organizer)" : "{organizer} (szervező)", + "Availability of attendees, resources and rooms" : "A résztvevők, az erőforrások és a szobák rendelkezésre állása", + "Suggestion accepted" : "Javaslat elfogadva", + "Legend" : "Jelmagyarázat", + "Out of office" : "Irodán kívül", + "Attendees:" : "Résztvevők:", + "Done" : "Kész", + "Room name" : "Szoba neve", "Free" : "Szabad", "Busy (tentative)" : "Foglalt (feltételes)", "Busy" : "Foglalt", - "Out of office" : "Irodán kívül", "Unknown" : "Ismeretlen", - "Accept" : "Elfogadás", - "Decline" : "Elutasítás", - "Tentative" : "Feltételes", + "Find a time" : "Idő keresése", "The invitation has been accepted successfully." : "A meghívása sikeresen elfogadva.", "Failed to accept the invitation." : "A meghívás elfogadása sikertelen.", "The invitation has been declined successfully." : "A meghívás sikeresen elutasítva.", "Failed to decline the invitation." : "A meghívás elutasítása sikertelen.", "Your participation has been marked as tentative." : "A részvétele feltételesnek lett jelölve.", "Failed to set the participation status to tentative." : "A részvétele feltételesként megadása sikertelen.", - "Create Talk room for this event" : "Beszélgetés szoba létrehozása ehhez az eseményhez", - "Show busy times" : "Elfoglalt idők megjelenítése", + "Accept" : "Elfogadás", + "Decline" : "Elutasítás", + "Tentative" : "Feltételes", "No attendees yet" : "Még nincs résztvevő", + "Successfully appended link to talk room to location." : "A hely hivatkozásának beszélgetési szobához történő hozzáfűzése sikeres.", "Successfully appended link to talk room to description." : "Beszélgetés szoba hivatkozásának a leíráshoz csatolása sikeres.", "Error creating Talk room" : "Hiba a Beszélgetés szoba létrehozásakor", - "Send email" : "E-mail küldése", + "Attendees" : "Résztvevők", + "Remove group" : "Csoport eltávolítása", + "Remove attendee" : "Résztvevő eltávolítása", "Chairperson" : "Elnök", "Required participant" : "Kötelező résztvevő", "Optional participant" : "Opcionális résztvevő", "Non-participant" : "Nem résztvevő", - "Remove attendee" : "Résztvevő eltávolítása", - "Search for emails, users or contacts" : "E-mailek, felhasználók és névjegyek keresése", + "_%n member_::_%n members_" : ["%n tag","%n tag"], "No match found" : "Nem található egyezés", + "Note that members of circles get invited but are not synced yet." : "Vegye figyelembe, hogy a kör tagjai meg lettek hívva, de még nincsenek szinkronizálva.", "(organizer)" : "(szervező)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Meghívók elküldéséhez és a válaszok kezeléséhez [linkopen]adja meg e-mail-címét a személyes beállításokban[linkclose].", "Remove color" : "Szín eltávolítása", "Event title" : "Esemény címe", - "All day" : "Egész napos", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Az ismétlődő események egész napos beállítása nem módosítható.", - "from {startDate}" : "ettől: {startDate}", - "from {startDate} at {startTime}" : "ettől: {startDate} {startTime}", - "to {endDate}" : "eddig: {endDate}", - "to {endDate} at {endTime}" : "eddig: {endDate} {endTime}", + "From" : "Feladó", + "To" : "Címzett", "Repeat" : "Ismétlés", - "End repeat" : "Ismétlés vége", - "Select to end repeat" : "Válassza az ismétlés befejezéséhez", + "_time_::_times_" : ["alkalommal","alkalommal"], "never" : "soha", "on date" : "dátumon", "after" : "után", - "_time_::_times_" : ["alkalommal","alkalommal"], + "End repeat" : "Ismétlés vége", + "Select to end repeat" : "Válassza az ismétlés befejezéséhez", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Ez az esemény egy ismétlődő esemény nem ismétlődő kivétele. Nem adhat hozzá ismétlődési szabályt.", "first" : "első", - "third" : "harmadik", - "fourth" : "negyedik", - "fifth" : "ötödik", - "second to last" : "utolsó előtti", - "last" : "utolsó", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Az ismétlődési szabály változásai csak erre és minden jövőbeli eseményre vonatkoznak.", "Repeat every" : "Ismétlés minden", "By day of the month" : "A hónap ezen napján", "On the" : "Ekkor: ", + "_day_::_days_" : ["nap","nap"], + "_week_::_weeks_" : ["hét","hét"], "_month_::_months_" : ["hónap","hónapok"], "_year_::_years_" : ["év","évek"], "weekday" : "hétköznap", "weekend day" : "hétvége", - "No recurrence" : "Nincs ismétlődés", + "Does not repeat" : "Nem ismétlődik", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Az esemény ismétlődésének megadását a Nextcloud nem támogatja teljes mértékben. Az ismétlődési lehetőségek szerkesztésekor bizonyos ismétlődések elveszhetnek.", - "Suggestions" : "Javaslatok", "No rooms or resources yet" : "Még nincsenek szobák vagy erőforrások", + "Resources" : "Erőforrások", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} hely","{seatingCapacity} hely"], "Add resource" : "Erőforrás hozzáadása", "Has a projector" : "Van kivetítő", "Has a whiteboard" : "Van fehér tábla", "Wheelchair accessible" : "Kerekesszékkel megközelíthető", "Remove resource" : "Erőforrás eltávolítása", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} hely","{seatingCapacity} hely"], - "Projector" : "Kivetítő", - "Whiteboard" : "Tábla", "Search for resources or rooms" : "Szobák vagy erőforrások keresése", "available" : "elérhető", "unavailable" : "nem érhető el", + "Projector" : "Kivetítő", + "Whiteboard" : "Tábla", "Room type" : "Szoba típusa", "Any" : "Bármely", "Minimum seating capacity" : "Ülőhelyek legkisebb száma", - "More" : "Több", - "Update this occurrence" : "Ezen előfordulás frissítése", + "More details" : "További részletek", "Update this and all future" : "Ezen és az összes jövőbeli frissítése", + "Update this occurrence" : "Ezen előfordulás frissítése", "Public calendar does not exist" : "Nyilvános naptár nem létezik", "Maybe the share was deleted or has expired?" : "Lehet, hogy a megosztást törölték, vagy lejárt?", - "Please select a time zone:" : "Válasszon egy időzónát:", - "Pick a time" : "Válasszon egy időt", - "Pick a date" : "Válasszon egy dátumot", "from {formattedDate}" : "ettől: {formattedDate}", "to {formattedDate}" : "eddig: {formattedDate}", "on {formattedDate}" : "ekkor: {formattedDate}", @@ -340,9 +379,25 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "Adjon meg egy érvényes dátumot", "Please enter a valid date and time" : "Adjon meg egy érvényes dátumot és időt", + "Select a time zone" : "Időzóna kiválasztása", + "Please select a time zone:" : "Válasszon egy időzónát:", + "Pick a time" : "Válasszon egy időt", + "Pick a date" : "Válasszon egy dátumot", "Type to search time zone" : "Gépeljen az időzóna kereséséhez", "Global" : "Globális", - "Select date" : "Válasszon dátumot", + "Holidays in {region}" : "Ünnepnapok itt: {region}", + "An error occurred, unable to read public calendars." : "Hiba történt, a nyilvános naptárak nem olvashatók.", + "An error occurred, unable to subscribe to calendar." : "Hiba történt, nem lehet feliratkozni a naptárra.", + "Public holiday calendars" : "Ünnepnapok naptára", + "Public calendars" : "Nyilvános naptárak", + "No valid public calendars configured" : "Nincsenek érvényes naptárak beállítva", + "Speak to the server administrator to resolve this issue." : "A probléma megoldásához beszéljen a rendszergazdával.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Az ünnepnapok naptárát a Thunderbird biztosítja. A naptáradatok innen lesznek letöltve: {website}.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Ezeket a nyilvános naptárakat a kiszolgáló rendszergazdája javasolta. A naptáradatok a megfelelő weboldalról lesznek letöltve.", + "By {authors}" : "Szerzők: {authors}", + "Subscribed" : "Feliratkozva", + "Subscribe" : "Feliratkozás", + "Could not fetch slots" : "Nem sikerült lekérni a helyeket", "Select slot" : "Válasszon idősávot", "No slots available" : "Nincs elérhető idősáv", "The slot for your appointment has been confirmed" : "A találkozó idősávja megerősítésre került", @@ -359,22 +414,19 @@ "Personal" : "Személyes", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Az automatikus időzóna-észlelés UTC-nek észlelte az időzónáját.\nEz valószínűleg a böngésző biztonsági beállításai miatt van.\nÁllítsa be az időzónáját kézzel a naptárbeállításokban.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "A beállított időzóna ({timezoneId}) nem található. Visszaállás UTC-re.\nMódosítsa az időzónát a beállításokban, és jelentse be ezt a hibát.", - "No more events today" : "Ma nincs több esemény", - "No upcoming events" : "Nincsenek közelgő események", - "Create a new event" : "Új esemény létrehozása", - "[Today]" : "[Ma]", - "[Tomorrow]" : "[Holnap]", - "[Yesterday]" : "[Tegnap]", - "[Last] dddd" : "[Múlt] dddd", + "Edit event" : "Esemény szerkesztése", "Event does not exist" : "Az esemény nem létezik", "Duplicate" : "Kettőzés", "Delete this occurrence" : "Ezen előfordulás törlése", "Delete this and all future" : "Ezen és az összes jövőbeli törlése", - "Details" : "Részletek", - "Attendees" : "Résztvevők", - "Resources" : "Erőforrások", + "All day" : "Egész napos", + "Managing shared access" : "Közös hozzáférés kezelése", + "Deny access" : "Hozzáférés megtagadása", + "Invite" : "Meghívás", + "_User requires access to your file_::_Users require access to your file_" : ["Egy felhasználónak szüksége van a fájlja elérésére","Több felhasználónak szüksége van a fájlja elérésére"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Közös hozzáférést igénylő melléklet","Közös hozzáférést igénylő mellékletek"], + "Untitled event" : "Névtelen esemény", "Close" : "Bezárás", - "Show more details" : "Részletek megjelenítése", "Subscribe to {name}" : "Feliratkozás erre: {name}", "Export {name}" : "{name} exportálása", "Anniversary" : "Évforduló", @@ -404,7 +456,6 @@ "on {time}" : "{time}-kor", "on {time} ({timezoneId})" : "{time}-kor ({timezoneId})", "Week {number} of {year}" : "{year} {number}. hete", - "Does not repeat" : "Nem ismétlődik", "Daily" : "Naponta", "Weekly" : "Hetente", "Monthly" : "Havonta", @@ -416,18 +467,17 @@ "_on {weekday}_::_on {weekdays}_" : ["ezen a napon: {weekdays}","ezen a napon: {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["a hónap ezen napjain: {dayOfMonthList}","a hónap ezen napjain: {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "ekkor: {ordinalNumber}. {byDaySet}", - "in {monthNames}" : "{monthNames} hónapban", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames} hónapban ekkor: {ordinalNumber}. {byDaySet}", "until {untilDate}" : "eddig: {untilDate}", "_%n time_::_%n times_" : ["%n alkalommal","%n alkalommal"], - "Untitled event" : "Névtelen esemény", + "second" : "másodperc", + "third" : "harmadik", + "fourth" : "negyedik", + "fifth" : "ötödik", + "second to last" : "utolsó előtti", + "last" : "utolsó", "Untitled task" : "Névtelen feladat", "Please ask your administrator to enable the Tasks App." : "Kérje meg a rendszergazdát, hogy engedélyezze a Feladatok alkalmazást.", - "Prev" : "Előző", - "Next" : "Köv.", - "Prev year" : "Előző év", - "Next year" : "Köv. év", - "Year" : "Év", "W" : "H", "%n more" : "%n további", "No events to display" : "Nincs megjelenítendő esemény", @@ -446,7 +496,6 @@ "When shared hide this event" : "Az esemény elrejtése megosztáskor", "The visibility of this event in shared calendars." : "Az esemény láthatósága a megosztott naptárakban.", "Add a location" : "Helyszín hozzáadása", - "Add a description" : "Leírás hozzáadása", "Status" : "Állapot", "Confirmed" : "Elfogadva", "Canceled" : "Lemondva", @@ -459,135 +508,18 @@ "Add this as a new category" : "Hozzáadás új kategóriaként", "Custom color" : "Egyéni szín", "Special color of this event. Overrides the calendar-color." : "Megkülönböztető szín ehhez az eseményhez. Felülírja a naptár színét.", - "Chat room for event" : "Csevegőszoba az eseményhez", + "Error while sharing file" : "Hiba a fájl megosztása során", + "Error while sharing file with user" : "Hiba a fájl felhasználóval történő megosztása során", + "Attachment {fileName} already exists!" : "A(z) {fileName} melléklet már létezik.", + "An error occurred during getting file information" : "Hiba történt a fájlinformációk lekérése során", + "An error occurred, unable to delete the calendar." : "Hiba lépett fel, a naptárat nem lehet törölni.", "Imported {filename}" : "{filename} importálva", - "Meditation" : "Meditáció", - "Relaxing" : "Pihenés", - "Relax" : "Pihenő", - "Break" : "Szünet", - "Commute" : "Ingázás", - "Commuting" : "Ingázás", - "Shuttle" : "Ingajárat", - "Invoice" : "Díjbekérő", - "Finance" : "Pénzügyek", - "Bank" : "Bank", - "Money" : "Pénz", - "Wedding" : "Esküvő", - "Dog" : "Kutya", - "Concert" : "Koncert", - "Festival" : "Fesztivál", - "Theater" : "Színház", - "Theatre" : "Színház", - "Presentation" : "Bemutató", - "Talk" : "Előadás", - "Speech" : "Beszéd", - "Deadline" : "Határidő", - "Submission" : "Beküldés", - "Reporting" : "Jelentés", - "Camping" : "Kemping", - "Camp" : "Táborozás", - "Election" : "Választás", - "Voting" : "Szavazás", - "Vote" : "Szavazat", - "Barbecue" : "Grillezés", - "Barbeque" : "Sütögetés", - "Garden" : "Kert", - "Farm" : "Farm", - "Movie" : "Film", - "Cinema" : "Mozi", - "Graduation" : "Ballagás", - "Brainstorm" : "Ötletelés", - "Review" : "Visszajelzés", - "Audit" : "Audit", - "Inspection" : "Vizsgálat", - "Proofreading" : "Átolvasás", - "Baseball" : "Baseball", - "Meet" : "Találkozás", - "Planning" : "Tervezés", - "Pointing" : "Mutatás", - "Retrospective" : "Visszatekintő", - "Office" : "Munkahely", - "Contributor week" : "Közreműködői hét", - "Mail" : "Levél", - "Soccer" : "Foci", - "Football" : "Futball", - "Gaming" : "Játék", - "Drive" : "Vezetés", - "Driving" : "Vezetés", - "Bicycle" : "Kerékpár", - "Cycle" : "Bicaj", - "Cycling" : "Kerékpározás", - "Biking" : "Kerékpározás", - "Bike" : "Bicikli", - "Podcast" : "Podcast", - "Basketball" : "Kosárlabda", - "Fishing" : "Horgászás", - "Hiking" : "Túrázás", - "Hike" : "Túra", - "Art" : "Művészet", - "Exhibition" : "Kiállítás", - "Museum" : "Múzeum", - "Pilates" : "Pilates", - "Park" : "Park", - "Walk" : "Gyaloglás", - "Studying" : "Tanulás", - "Doctor" : "Orvos", - "Health" : "Egészség", - "Dentist" : "Fogorvos", - "Hospital" : "Kórház", - "Interview" : "Interjú", - "Training" : "Képzés", - "Practice" : "Gyakorlás", - "Sports" : "Sportok", - "Exercise" : "Feladat", - "Work out" : "Edzés", - "Working out" : "Edzeni", - "Gym" : "Tornaterem", - "Barber" : "Borbély", - "Haircut" : "Fodrász", - "Hairdresser" : "Fodrász", - "Exam" : "Vizsga", - "Written test" : "Írott teszt", - "Oral test" : "Szóbeli teszt", - "Working" : "Munka", - "New Years Eve" : "Szilveszter", - "NYE" : "Újév", - "Fireworks" : "Tüzijáték", - "Running" : "Futás", - "Go for a run" : "Futni menni", - "Marathon" : "Maraton", - "Video-conference" : "Videókonferencia", - "Conference-call" : "Konferenciahívás", - "Video-call" : "Videohívás", - "Video-chat" : "Videocsevegés", - "Video-meeting" : "Videotalálkozó", - "Call" : "Hívás", - "Calling" : "Hívni", - "Christmas" : "Karácsony", - "Conference" : "Konferencia", - "Pizza" : "Pizza", - "Travelling" : "Utazás", - "Trip" : "Kirándulás", - "Journey" : "Utazgatás", - "Collaborate" : "Együttműködés", - "Pair" : "Pár", - "Lecture" : "Előadás", - "Seminar" : "Szeminárium", - "Teaching" : "Tanítás", - "Photograph" : "Fénykép", - "Party" : "Parti", - "Celebration" : "Ünnep", - "Celebrate" : "Ünneplés", - "Birthday" : "Születésnap", - "Shopping" : "Bevásárlás", - "Groceries" : "Bevásárlás", - "Skate" : "Korcsolya", - "Skateboard" : "Gördeszka", - "Wine tasting" : "Borkóstolás", - "Golf" : "Golf", - "Dinner" : "Vacsora", - "Lunch" : "Ebéd", + "This is an event reminder." : "Ez egy eseményemlékeztető.", "Appointment not found" : "A találkozó nem található", - "User not found" : "A felhasználó nem található" + "User not found" : "A felhasználó nem található", + "Reminder" : "Emlékeztető", + "+ Add reminder" : "+ Emlékeztető hozzáadása", + "Suggestions" : "Javaslatok", + "Details" : "Részletek" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/hy.js b/l10n/hy.js index a69744ed4a696f44370a64a31c3b01b89997c52c..3f13599accfca1fa517c09abc1e581d60ee9edf9 100644 --- a/l10n/hy.js +++ b/l10n/hy.js @@ -3,7 +3,6 @@ OC.L10N.register( { "Cheers!" : "Չը՛խկ", "Calendar" : "Օրացույց", - "New event" : "Նոր իրադարձություն", "Today" : "Այսօր", "Day" : "Օր", "Week" : "Շաբաթ", @@ -12,14 +11,16 @@ OC.L10N.register( "Edit" : "մշակել", "Delete" : "Ջնջել", "Export" : "Արտահանում", - "Share link" : "Կիսվել հղմամբ", - "Share with users or groups" : "Կիսվել օգտատերերի կամ խմբերի հետ", - "can edit" : "կարող է խմբագրել", "Name" : "Անուն", "Deleted" : "Ջնջված", "Restore" : "Վերականգնել", "Delete permanently" : "Ջնջել ընդմիշտ", + "Share link" : "Կիսվել հղմամբ", + "can edit" : "կարող է խմբագրել", + "Share with users or groups" : "Կիսվել օգտատերերի կամ խմբերի հետ", + "Save" : "Պահպանել", "Cancel" : "Չեղարկել", + "Update" : "Թարմացնել", "Location" : "Տեղակայություն", "Description" : "Նկարագրություն", "Add" : "Ավելացնել", @@ -30,23 +31,26 @@ OC.L10N.register( "Friday" : "Ուրբաթ", "Saturday" : "Շաբաթ", "Sunday" : "Կիրակի", - "Save" : "Պահպանել", - "Update" : "Թարմացնել", + "Notification" : "Ծանուցում", "Email" : "Էլ․փոստ", + "seconds" : "վայրկյան", + "minutes" : "րոպե", + "hours" : "ժամ", + "days" : "օր", "Unknown" : "Անհայտ", + "Attendees" : "Մասնակիցներ", "Repeat" : "Կրկնել", "never" : "երբեք", "after" : "հետո", - "More" : "Ավելի", "Global" : "Ընդհանուր", "Personal" : "Անձնական", - "Details" : "Մանրամասներ", - "Attendees" : "Մասնակիցներ", + "Edit event" : "Խմբագրել դեպքը", "Close" : "Փակել", - "Next" : "Հաջորդ", + "Daily" : "Օրական", + "Weekly" : "Շաբաթական", + "second" : "երկրորդ", "Other" : "Այլ", "Confirmed" : "Հաստատված", - "Mail" : "Փոստ", - "Birthday" : "Ծննդյան օր" + "Details" : "Մանրամասներ" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/hy.json b/l10n/hy.json index ea98991de9f8ee6f6ecab4ca25de99fb3d3b02b6..76989559c451d282b4a24724fa137a722e0f3325 100644 --- a/l10n/hy.json +++ b/l10n/hy.json @@ -1,7 +1,6 @@ { "translations": { "Cheers!" : "Չը՛խկ", "Calendar" : "Օրացույց", - "New event" : "Նոր իրադարձություն", "Today" : "Այսօր", "Day" : "Օր", "Week" : "Շաբաթ", @@ -10,14 +9,16 @@ "Edit" : "մշակել", "Delete" : "Ջնջել", "Export" : "Արտահանում", - "Share link" : "Կիսվել հղմամբ", - "Share with users or groups" : "Կիսվել օգտատերերի կամ խմբերի հետ", - "can edit" : "կարող է խմբագրել", "Name" : "Անուն", "Deleted" : "Ջնջված", "Restore" : "Վերականգնել", "Delete permanently" : "Ջնջել ընդմիշտ", + "Share link" : "Կիսվել հղմամբ", + "can edit" : "կարող է խմբագրել", + "Share with users or groups" : "Կիսվել օգտատերերի կամ խմբերի հետ", + "Save" : "Պահպանել", "Cancel" : "Չեղարկել", + "Update" : "Թարմացնել", "Location" : "Տեղակայություն", "Description" : "Նկարագրություն", "Add" : "Ավելացնել", @@ -28,23 +29,26 @@ "Friday" : "Ուրբաթ", "Saturday" : "Շաբաթ", "Sunday" : "Կիրակի", - "Save" : "Պահպանել", - "Update" : "Թարմացնել", + "Notification" : "Ծանուցում", "Email" : "Էլ․փոստ", + "seconds" : "վայրկյան", + "minutes" : "րոպե", + "hours" : "ժամ", + "days" : "օր", "Unknown" : "Անհայտ", + "Attendees" : "Մասնակիցներ", "Repeat" : "Կրկնել", "never" : "երբեք", "after" : "հետո", - "More" : "Ավելի", "Global" : "Ընդհանուր", "Personal" : "Անձնական", - "Details" : "Մանրամասներ", - "Attendees" : "Մասնակիցներ", + "Edit event" : "Խմբագրել դեպքը", "Close" : "Փակել", - "Next" : "Հաջորդ", + "Daily" : "Օրական", + "Weekly" : "Շաբաթական", + "second" : "երկրորդ", "Other" : "Այլ", "Confirmed" : "Հաստատված", - "Mail" : "Փոստ", - "Birthday" : "Ծննդյան օր" + "Details" : "Մանրամասներ" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/ia.js b/l10n/ia.js index 2ac7d67572463a688f1bf24fd24786f3bea0b02f..172a1a8af968fc1e39e5380288c42ee69215e7b0 100644 --- a/l10n/ia.js +++ b/l10n/ia.js @@ -3,9 +3,8 @@ OC.L10N.register( { "Hello," : "Salute %s,", "Cheers!" : "Congratulationes!", - "Confirm" : "Confirmar", "Calendar" : "Calendario", - "New event" : "Nove evento", + "Confirm" : "Confirmar", "Today" : "Hodie", "Day" : "Die", "Week" : "Septimana", @@ -14,19 +13,22 @@ OC.L10N.register( "Copy link" : "Copiar ligamine", "Edit" : "Modificar", "Delete" : "Deler", - "Export" : "Exportar", - "Share link" : "Compartir ligamine", - "Share with users or groups" : "Compartir con usatores o gruppos", - "can edit" : "pote modificar", "New calendar" : "Nove calendario", + "Export" : "Exportar", "Name" : "Nomine", "Deleted" : "Delite", "Restore" : "Restaurar", "Delete permanently" : "Deler permanentemente", + "Hidden" : "Occultate", + "Share link" : "Compartir ligamine", + "can edit" : "pote modificar", + "Share with users or groups" : "Compartir con usatores o gruppos", + "Save" : "Salveguardar", "Cancel" : "Cancellar", "Automatic" : "Automatic", "Actions" : "Actiones", "Show week numbers" : "Monstrar le numero del septimanas", + "Update" : "Actualisar", "Location" : "Loco", "Description" : "Description", "to" : "a", @@ -38,36 +40,38 @@ OC.L10N.register( "Friday" : "Venerdi", "Saturday" : "Sabbato", "Sunday" : "Dominica", - "Save" : "Salveguardar", - "Update" : "Actualisar", "Your email address" : "Tu adresse de e-posta", "Email" : "E-posta", + "seconds" : "secundas", + "minutes" : "minutas", + "hours" : "horas", + "days" : "dies", + "weeks" : "septimanas", + "Choose a file to add as attachment" : "Selectiona un file pro adder como attachamento", + "Done" : "Preste", "Unknown" : "Incognite", "Accept" : "Acceptar", "Decline" : "Refusar", "Tentative" : "Tentative", - "Send email" : "Inviar message de e-posta", + "Attendees" : "Participantes", "Repeat" : "Repeter", "never" : "nunquam", "after" : "post", - "More" : "Plus", "Global" : "Global", + "Subscribe" : "Subscribe", "Personal" : "Personal", - "Details" : "Detalios", - "Attendees" : "Participantes", + "Edit event" : "Modificar evento", "Close" : "Clauder", "Anniversary" : "Anniversario de evento", "Week {number} of {year}" : "Septimana {number} de {year}", "Daily" : "Cata die", "Weekly" : "Cata septimana", - "Next" : "Sequente", + "second" : "secunda", "Other" : "Altere", "When shared show full event" : "Quando compartite, monstrar evento integremente", "When shared show only busy" : "Quando compartite, monstrar solo si illo es occupate", "When shared hide this event" : "Quando compartite, celar iste evento", "Confirmed" : "Confirmate", - "Presentation" : "Presentation", - "Mail" : "Posta", - "Birthday" : "Anniversario de nativitate" + "Details" : "Detalios" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/ia.json b/l10n/ia.json index ef04b48483f50994ecdb0135f0bb02f2e3f7d2f8..ccbd881a34b2df387d1ff6792aa63f2fb48f3f98 100644 --- a/l10n/ia.json +++ b/l10n/ia.json @@ -1,9 +1,8 @@ { "translations": { "Hello," : "Salute %s,", "Cheers!" : "Congratulationes!", - "Confirm" : "Confirmar", "Calendar" : "Calendario", - "New event" : "Nove evento", + "Confirm" : "Confirmar", "Today" : "Hodie", "Day" : "Die", "Week" : "Septimana", @@ -12,19 +11,22 @@ "Copy link" : "Copiar ligamine", "Edit" : "Modificar", "Delete" : "Deler", - "Export" : "Exportar", - "Share link" : "Compartir ligamine", - "Share with users or groups" : "Compartir con usatores o gruppos", - "can edit" : "pote modificar", "New calendar" : "Nove calendario", + "Export" : "Exportar", "Name" : "Nomine", "Deleted" : "Delite", "Restore" : "Restaurar", "Delete permanently" : "Deler permanentemente", + "Hidden" : "Occultate", + "Share link" : "Compartir ligamine", + "can edit" : "pote modificar", + "Share with users or groups" : "Compartir con usatores o gruppos", + "Save" : "Salveguardar", "Cancel" : "Cancellar", "Automatic" : "Automatic", "Actions" : "Actiones", "Show week numbers" : "Monstrar le numero del septimanas", + "Update" : "Actualisar", "Location" : "Loco", "Description" : "Description", "to" : "a", @@ -36,36 +38,38 @@ "Friday" : "Venerdi", "Saturday" : "Sabbato", "Sunday" : "Dominica", - "Save" : "Salveguardar", - "Update" : "Actualisar", "Your email address" : "Tu adresse de e-posta", "Email" : "E-posta", + "seconds" : "secundas", + "minutes" : "minutas", + "hours" : "horas", + "days" : "dies", + "weeks" : "septimanas", + "Choose a file to add as attachment" : "Selectiona un file pro adder como attachamento", + "Done" : "Preste", "Unknown" : "Incognite", "Accept" : "Acceptar", "Decline" : "Refusar", "Tentative" : "Tentative", - "Send email" : "Inviar message de e-posta", + "Attendees" : "Participantes", "Repeat" : "Repeter", "never" : "nunquam", "after" : "post", - "More" : "Plus", "Global" : "Global", + "Subscribe" : "Subscribe", "Personal" : "Personal", - "Details" : "Detalios", - "Attendees" : "Participantes", + "Edit event" : "Modificar evento", "Close" : "Clauder", "Anniversary" : "Anniversario de evento", "Week {number} of {year}" : "Septimana {number} de {year}", "Daily" : "Cata die", "Weekly" : "Cata septimana", - "Next" : "Sequente", + "second" : "secunda", "Other" : "Altere", "When shared show full event" : "Quando compartite, monstrar evento integremente", "When shared show only busy" : "Quando compartite, monstrar solo si illo es occupate", "When shared hide this event" : "Quando compartite, celar iste evento", "Confirmed" : "Confirmate", - "Presentation" : "Presentation", - "Mail" : "Posta", - "Birthday" : "Anniversario de nativitate" + "Details" : "Detalios" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/id.js b/l10n/id.js index b4b86ae222121d1b5333d965a78749e26d04ebbd..2e7df44bca6a6ad488f671e46d6ce650481b8325 100644 --- a/l10n/id.js +++ b/l10n/id.js @@ -1,96 +1,147 @@ OC.L10N.register( "calendar", { - "Provided email-address is not valid" : "Alamat surel tidak valid", + "Provided email-address is too long" : "Alamat email yang diberikan terlalu panjang", + "User-Session unexpectedly expired" : "Sesi-Pengguna kedaluwarsa secara tidak terduga", + "Provided email-address is not valid" : "Alamat email tidak valid", "%s has published the calendar »%s«" : "%s telah mempublikasikan kalender »%s«", - "Unexpected error sending email. Please contact your administrator." : "Galat saat mengirim surel. Silakan hubungi administrator Anda.", + "Unexpected error sending email. Please contact your administrator." : "Galat saat mengirim email. Silakan hubungi administrator Anda.", + "Successfully sent email to %1$s" : "Berhasil mengirim email ke %1$s", "Hello," : "Halo,", - "We wanted to inform you that %s has published the calendar »%s«." : "Kami ingin menginformasikan anda bahwa %s telah mempublikasikan kalender »%s«.", + "We wanted to inform you that %s has published the calendar »%s«." : "Kami ingin menginformasikan Anda bahwa %s telah mempublikasikan kalender »%s«.", "Open »%s«" : "Buka »%s«", "Cheers!" : "Horee!", - "Confirm" : "Konfirmasi", + "Upcoming events" : "Acara mendatang", + "No more events today" : "Tidak ada acara lagi hari ini", + "No upcoming events" : "Tdak ada acara mendatang", + "More events" : "Lebih banyak acara", + "%1$s with %2$s" : "%1$sdengan %2$s", "Calendar" : "Kalender", + "New booking {booking}" : "Pemesanan baru (pemesanan)", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) memesan janji temu \"{config_display_name}\" pada {date_time}.", + "Appointments" : "Janji temu", + "Schedule appointment \"%s\"" : "Jadwalkan janji temu \"%s\"", + "Schedule an appointment" : "Jadwalkan janji temu", + "Prepare for %s" : "Bersiaplah untuk %s", + "Your appointment \"%s\" with %s needs confirmation" : "Janji temu Anda \"%s\" dengan %s membutuhkan konfirmasi ", + "Dear %s, please confirm your booking" : "Kepada %s, mohon konfirmasi pemesanan Anda", + "Confirm" : "Konfirmasi", + "This confirmation link expires in %s hours." : "Tautan konfirmasi ini akan kedaluwarsa dalam %s jam.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Jika Anda ingin membatalkan janji temu, mohon hubungi penyelenggara Anda dengan membalas email ini atau mengunjungi halaman profil mereka", + "Your appointment \"%s\" with %s has been accepted" : "Janji temu \"%s\" dengan %stelah diterima", + "Dear %s, your booking has been accepted." : "Kepada %s, pemesanan Anda telah diterima.", + "Appointment for:" : "Janji temu untuk:", + "Date:" : "Tanggal:", + "You will receive a link with the confirmation email" : "Anda akan menerima tautan dengan email konfirmasi", + "Where:" : "Tempat:", + "Comment:" : "Komentar:", + "You have a new appointment booking \"%s\" from %s" : "Anda memiliki pemesanan janji temu baru \"%s\" dari %s", + "Dear %s, %s (%s) booked an appointment with you." : "Kepada %s, %s (%s) memesan janji temu dengan Anda.", "A Calendar app for Nextcloud" : "Aplikasi Kalender untuk Nextcloud", "Previous day" : "Hari sebelum", "Previous week" : "Minggu sebelum", + "Previous year" : "Tahun lalu", "Previous month" : "Bulan sebelum", "Next day" : "Hari setelah", "Next week" : "Minggu setelah", + "Next year" : "Tahun depan", "Next month" : "Bulan setelah", + "Create new event" : "Buat acara baru", + "Event" : "Acara", "Today" : "Hari Ini", "Day" : "Hari", "Week" : "Minggu", "Month" : "Bulan", + "Year" : "Tahun", + "List" : "daftar", + "Appointment link was copied to clipboard" : "Tautan janji temu disalin ke papan klip", + "Appointment link could not be copied to clipboard" : "Tautan janji temu tidak dapat disalin ke papan klip", "Preview" : "Pratinjau", "Copy link" : "Salin tautan", "Edit" : "Sunting", "Delete" : "Hapus", - "Untitled calendar" : "Kalender tanpa judul", - "Edit name" : "Edit nama", - "Saving name …" : "Menyimpan nama …", - "Edit color" : "Edit warna", - "Saving color …" : "Menyimpan warna …", - "Copy private link" : "Salin tautan privat", - "Export" : "Ekspor", + "Create new" : "Buat", + "Disable calendar \"{calendar}\"" : "Nonaktifkan kalender \"{calendar}\"", + "Disable untitled calendar" : "Nonaktifkan kalender tanpa judul", + "Enable calendar \"{calendar}\"" : "Aktifkan kalender \"{calendar}\"", + "Enable untitled calendar" : "Aktifkan kalender tanpa judul", "An error occurred, unable to change visibility of the calendar." : "Terjadi galat, tidak dapat mengubah visibilitas kalender.", - "An error occurred, unable to delete the calendar." : "Terjadi galat, tidak dapat menghapus kalender.", - "Calendar link copied to clipboard." : "Tautan kalender disalin ke papan klip.", - "Calendar link could not be copied to clipboard." : "Tautan kalender tidak dapat disalin ke papan klip.", - "An error occurred, unable to rename the calendar." : "Terjadi galat, tidak dapat mengubah nama kalender.", - "An error occurred, unable to change the calendar's color." : "Terjadi galat, tidak dapat mengganti warna kalender.", + "Untitled calendar" : "Kalender tanpa judul", + "Shared with you by" : "Dibagikan dengan Anda oleh", + "Edit and share calendar" : "Edit dan bagikan kalender", + "Edit calendar" : "Edit kalender", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Batal berbagi kalender dalam {countdown} detik"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Menghapus kalender dalam {countdown} detik"], - "Share link" : "Bagikan tautan", - "Publish calendar" : "Menerbitkan kalender", - "Publishing calendar" : "Menerbitkan kalender", - "Copy public link" : "Salin tautan publik", - "Send link to calendar via email" : "Kirim tautan kalender via surel", - "Sending email …" : "Mengirim surel …", + "An error occurred, unable to create the calendar." : "Terjadi galat, tidak dapat membuat kalender.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Silakan isi tautan valid (dimulai dengan http://, https://, webcal://, or webcals://)", + "Calendars" : "Kalender", + "Add new" : "Tambahkan baru", + "New calendar" : "Kalender baru", + "Name for new calendar" : "Nama untuk kalender baru", + "Creating calendar …" : "Membuat kalender …", + "New calendar with task list" : "Kalender baru dengan daftar tugas", + "New subscription from link (read-only)" : "Langganan baru dengan tautan (baca-saja)", + "Creating subscription …" : "Membuat langganan …", + "Add public holiday calendar" : "Tambahkan kalender hari libur nasional", + "Add custom public calendar" : "Tambahkan kalender publik khusus", + "Calendar link copied to clipboard." : "Tautan kalender disalin ke papan klip.", + "Calendar link could not be copied to clipboard." : "Tautan kalender tidak dapat disalin ke papan klip.", "Copy subscription link" : "Salin tautan berlangganan", "Copying link …" : "Menyalin tautan …", "Copied link" : "Tautan tersalin", "Could not copy link" : "Tidak dapat menyalin tautan", + "Export" : "Ekspor", + "Untitled item" : "Item tanpa judul", + "Unknown calendar" : "Kalender tidak diketahui", + "Could not load deleted calendars and objects" : "Tidak dapat memuat kalender dan objek yang dihapus", + "Could not restore calendar or event" : "Tidak dapat memulihkan kalender atau acara", + "Do you really want to empty the trash bin?" : "Apakah Anda benar-benar ingin mengosongkan keranjang sampah?", + "Empty trash bin" : "Kosongkan tempat sampah", + "Trash bin" : "Keranjang sampah", + "Loading deleted items." : "Memuat item yang dihapus.", + "You do not have any deleted items." : "Anda tidak memiliki item yang dihapus.", + "Name" : "Nama", + "Deleted" : "Dihapus", + "Restore" : "Pulihkan", + "Delete permanently" : "Hapus secara permanen", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Item dalam keranjang sampah dihapus setelah {numDays} hari"], + "Could not update calendar order." : "Tidak dapat membarui urutan kalender.", + "Deck" : "Longgok", + "Hidden" : "Sembunyi", + "An error occurred, unable to publish calendar." : "Terjadi galat, tidak dapat menerbitkan kalender.", + "An error occurred, unable to send email." : "Terjadi galat, tidak dapat mengirim email.", + "Embed code copied to clipboard." : "Kode tersemat disalin ke papan klip", + "Embed code could not be copied to clipboard." : "Kode tersemat tidak dapat disalin ke papan klip.", + "Unpublishing calendar failed" : "Gagal membatalkan penerbitan kalender", + "Share link" : "Bagikan tautan", + "Copy public link" : "Salin tautan publik", + "Send link to calendar via email" : "Kirim tautan kalender via email", + "Sending email …" : "Mengirim email …", "Copy embedding code" : "Salin kode penyemat", "Copying code …" : "Menyalin kode …", "Copied code" : "Kode tersalin", "Could not copy code" : "Tidak dapat menyalin kode", "Delete share link" : "Hapus tautan berbagi", "Deleting share link …" : "Menghapus tautan berbagi …", - "An error occurred, unable to publish calendar." : "Terjadi galat, tidak dapat menerbitkan kalender.", - "An error occurred, unable to send email." : "Terjadi galat, tidak dapat mengirim surel.", - "Embed code copied to clipboard." : "Kode tersemat disalin ke papan klip", - "Embed code could not be copied to clipboard." : "Kode tersemat tidak dapat disalin ke papan klip.", - "Unpublishing calendar failed" : "Gagal membatalkan penerbitan kalender", - "Share with users or groups" : "Berbagi dengan pengguna atau grup", - "No users or groups" : "Tidak ada pengguna atau grup", + "An error occurred while unsharing the calendar." : "Terjadi kesalahan saat membatalkan pembagian kalender. ", + "An error occurred, unable to change the permission of the share." : "Terjadi galat, tidak dapat mengubah hak akses berbagi.", "can edit" : "dapat edit", "Unshare with {displayName}" : "Batal berbagi dengan {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Terjadi galat, tidak dapat mengubah pembatalan berbagi kalender.", - "An error occurred, unable to change the permission of the share." : "Terjadi galat, tidak dapat mengubah hak akses berbagi.", - "+ New calendar" : "+ Kalender baru", - "New calendar" : "Kalender baru", - "Creating calendar …" : "Membuat kalender …", - "New calendar with task list" : "Kalender baru dengan daftar tugas", - "New subscription from link (read-only)" : "Langganan baru dengan tautan (baca-saja)", - "Creating subscription …" : "Membuat langganan …", - "An error occurred, unable to create the calendar." : "Terjadi galat, tidak dapat membuat kalender.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Silakan isi tautan valid (dimulai dengan http://, https://, webcal://, or webcals://)", - "Name" : "Nama", - "Deleted" : "Dihapus", - "Restore" : "Pulihkan", - "Delete permanently" : "Hapus secara permanen", - "Empty trash bin" : "Kosongkan tempat sampah", + "Share with users or groups" : "Berbagi dengan pengguna atau grup", + "No users or groups" : "Tidak ada pengguna atau grup", + "Save" : "Simpan", "Import calendars" : "Impor kalender", "Filename" : "Nama berkas", "Cancel" : "Batal", "_Import calendar_::_Import calendars_" : ["Impor kalender"], + "Invalid location selected" : "Lokasi yang tidak valid dipilih", + "Attachments folder successfully saved." : "Folder lampiran berhasil disimpan.", + "Error on saving attachments folder." : "Kesalahan saat menyimpan folder lampiran.", "No valid files found, aborting import" : "Berkas valid tidak ditemukan, impor dibatalkan", "Import partially failed. Imported {accepted} out of {total}." : "Sebagian impor gagal. Dari {total} hanya {accepted} berhasil impor.", "Automatic" : "Otomatis", "Automatic ({detected})" : "Otomatis ({detected})", "New setting was not saved successfully." : "Setelan baru tidak berhasil tersimpan.", - "Shortcut overview" : "Ikhtisar pintasan", - "or" : "atau", "Navigation" : "Navigasi", "Previous period" : "Periode sebelum", "Next period" : "Periode sesudah", @@ -102,17 +153,22 @@ OC.L10N.register( "Actions" : "Tindakan", "Create event" : "Buat acara", "Show shortcuts" : "Tampilkan pintasan", + "Shortcut overview" : "Ikhtisar pintasan", + "or" : "atau", + "CalDAV link copied to clipboard." : "Tautan CalDAV disalin ke papan klip", + "CalDAV link could not be copied to clipboard." : "Tautan CalDAV tidak dapat disalin ke papan klip", "Enable birthday calendar" : "Aktifkan kalender ulang tahun", "Show tasks in calendar" : "Tampilkan tugas dalam kalender", "Enable simplified editor" : "Aktifkan editor serderhana", - "Limit visible events per view" : "Batasi acara terlihat per tampilan", "Show weekends" : "Tampilkan akhir pekan", "Show week numbers" : "Tampilkan nomor pekan", "Copy primary CalDAV address" : "Salin alamat utama CalDAV", "Copy iOS/macOS CalDAV address" : "Salin alamat CalDAV iOS/macOS", "Show keyboard shortcuts" : "Tampilkan pintasan papan kunci", - "CalDAV link copied to clipboard." : "Tautan CalDAV disalin ke papan klip", - "CalDAV link could not be copied to clipboard." : "Tautan CalDAV tidak dapat disalin ke papan klip", + "_{duration} minute_::_{duration} minutes_" : ["{duration} menit"], + "_{duration} hour_::_{duration} hours_" : ["{duration} jam"], + "To configure appointments, add your email address in personal settings." : "Untuk mengonfigurasi janji temu, tambahkan alamat email Anda di pengaturan pribadi.", + "Update" : "Perbarui", "Location" : "Lokasi", "Description" : "Deskrisi", "to" : "untuk", @@ -124,11 +180,13 @@ OC.L10N.register( "Friday" : "Jumat", "Saturday" : "Sabtu", "Sunday" : "Minggu", - "Save" : "Simpan", - "Update" : "Perbarui", - "Your email address" : "Alamat surel Anda", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Kami telah mengirim email dengan detailnya. Mohon konfirmasikan janji temu Anda menggunakan tautan dalam email tersebut. Anda dapat menutup halaman ini sekarang.", + "Your email address" : "Alamat email Anda", + "Could not book the appointment. Please try again later or contact the organizer." : "Tidak dapat memesan janji temu. Mohon coba lagi nanti atau hubungi penyelenggara.", + "on" : "pada", + "at" : "di", "Notification" : "Notifikasi", - "Email" : "Surel", + "Email" : "Email", "Audio notification" : "Notifikasi audio", "Other notification" : "Notifikasi lain", "Relative to event" : "Relatif terhadap acara", @@ -136,71 +194,89 @@ OC.L10N.register( "Edit time" : "Edit waktu", "Save time" : "Simpan waktu", "Remove reminder" : "Buang pengingat", - "on" : "pada", - "at" : "di", - "+ Add reminder" : "+ Tambah pengingat", - "_second_::_seconds_" : ["detik"], - "_minute_::_minutes_" : ["menit"], - "_hour_::_hours_" : ["jam"], - "_day_::_days_" : ["hari"], - "_week_::_weeks_" : ["minggu"], + "seconds" : "detik", + "minutes" : "menit", + "hours" : "jam", + "days" : "hari", + "weeks" : "minggu", + "Choose a file to add as attachment" : "Pilih berkas untuk ditambahkan sebagai lampiran", + "Delete file" : "Hapus berkas", + "Not available" : "Tidak tersedia", "Availability of attendees, resources and rooms" : "Ketersediaan peserta, sumber daya, dan ruangan", + "Out of office" : "Keluar kantor", + "Done" : "Selesai", + "Room name" : "Nama ruang", "Free" : "Luang", "Busy (tentative)" : "Sibuk (tentatif)", "Busy" : "Sibuk", - "Out of office" : "Keluar kantor", "Unknown" : "Tidak diketahui", + "The invitation has been accepted successfully." : "Undangan berhasil diterima.", + "Failed to accept the invitation." : "Gagal menerima undangan.", + "The invitation has been declined successfully." : "Undangan berhasil ditolak.", + "Failed to decline the invitation." : "Gagal menolak undangan.", + "Your participation has been marked as tentative." : "Partisipasi Anda telah ditandai sebagai belum pasti.", + "Failed to set the participation status to tentative." : "Gagal menyetel status partisipasi menjadi belum pasti.", "Accept" : "Terima", "Decline" : "Tolak", "Tentative" : "Tentatif", - "Create Talk room for this event" : "Buat ruangan Talk untuk acara ini", - "Show busy times" : "Tampilkan waktu sibuk", "No attendees yet" : "Belum ada peserta", "Successfully appended link to talk room to description." : "Berhasil menambahkan tautan ruang Talk pada deskripsi.", "Error creating Talk room" : "Galat membuat ruangan Talk", - "Send email" : "Kirim surel", + "Attendees" : "Peserta", + "Remove group" : "Hapus grup", + "Remove attendee" : "Hapus peserta", "Required participant" : "Partisipan wajib", "Optional participant" : "Partisipan opsional", "Non-participant" : "Bukan partisipan", - "Remove attendee" : "Hapus peserta", "No match found" : "Tidak ditemukan kecocokan", + "Note that members of circles get invited but are not synced yet." : "Perhatikan bahwa anggota kelompok diundang tapi belum tersinkronisasi.", "(organizer)" : "(penyelenggara)", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Untuk mengirim undangan dan mengurus respons, [linkopen]tambahkan alamat email Anda di pengaturan pribadi[linkclose].", "Remove color" : "Hapus warna", "Event title" : "Judul acara", - "All day" : "Sepanjang hari", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Tidak dapat mengubah pengaturan sehari penuh untuk acara yang merupakan bagian dari set pengulangan.", "Repeat" : "Ulang", - "End repeat" : "Akhiri perulangan", - "Select to end repeat" : "Pilih untuk mengakhiri perulangan", "never" : "tidak pernah", "on date" : "pada tanggal", "after" : "setelah", + "End repeat" : "Akhiri perulangan", + "Select to end repeat" : "Pilih untuk mengakhiri perulangan", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Acara ini merupakan pengecualian pengulangan dari set pengulangan. Anda tidak dapat menambahkan aturan pengulangan pada acara ini.", "first" : "pertama", - "third" : "ke-3", - "fourth" : "ke-4", - "fifth" : "ke-5", - "second to last" : "kedua terakhir", - "last" : "terakhir", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Perubahan pada aturan pengulangan hanya akan diterapkan untuk acara ini dan semua acara selanjutnya.", "Repeat every" : "Ulang setiap", "By day of the month" : "Berdasarkan hari pada bulan", "On the" : "Pada", + "_day_::_days_" : ["hari"], + "_week_::_weeks_" : ["minggu"], "_month_::_months_" : ["bulang"], "_year_::_years_" : ["tahun"], "weekday" : "akhir pekan", "weekend day" : "akhir pekan", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Penentuan perulangan acara ini tidak sepenuhnya didukung oleh Nextcloud. Jika Anda mengedit opsi pengulangan, pengulangan tertentu mungkin hilang.", - "More" : "Lainnya", + "Resources" : "Sumber daya", "Public calendar does not exist" : "Kalender publik tidak eksis", "Maybe the share was deleted or has expired?" : "Mungkin yang dibagikan terhapus atau kadaluwarsa?", - "Pick a time" : "Pilih waktu", - "Pick a date" : "Pilih tanggal", + "on {formattedDate}" : "dalam {formattedDate}", "Please enter a valid date" : "Silakan isi tanggal valid", "Please enter a valid date and time" : "Silakan isi tanggal dan waktu valid", + "Pick a time" : "Pilih waktu", + "Pick a date" : "Pilih tanggal", + "An error occurred, unable to read public calendars." : "Terjadi kesalahan, tidak dapat membaca kalender umum.", + "An error occurred, unable to subscribe to calendar." : "Terjadi kesalahan, tidak dapat berlangganan kalender.", + "Speak to the server administrator to resolve this issue." : "Hubungi administrator server untuk menyelesaikan masalah ini.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Kalender hari libur nasional disediakan oleh Thunderbird. Data kalender akan diunduh dari {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Kalender-kalender umum ini disarankan oleh administrator server. data Kalender akan diunduh dari situs web masing-masing.", + "Subscribe" : "Berlangganan", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Terima kasih. Pemesanan Anda dari {startDate} hingga {endDate} telah dikonfirmasi.", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Slot untuk janji temu Anda dari {startDate} hingga {endDate} tidak lagi tersedia.", "Personal" : "Pribadi", - "[Today]" : "[Hari ini]", - "Details" : "Detail", - "Attendees" : "Peserta", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Deteksi zona waktu otomatis menetapkan UTC sebagai zona waktu Anda. Hal ini kemungkinan besar disebabkan oleh langkah keamanan peramban web Anda. Harap setel zona waktu Anda secara manual di pengaturan kalender.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Zona waktu Anda yang terkonfigurasi ({timezoneId}) tidak ditemukan. Kembali ke UTC.\nHarap ubah zona waktu Anda di pengaturan dan laporkan masalah ini.", + "Edit event" : "Sunting agenda", + "All day" : "Sepanjang hari", + "Untitled event" : "Acara tanpa judul", "Close" : "Tutup", - "Show more details" : "Tampilkan detail lain", "Subscribe to {name}" : "Berlangganan ke {name}", "Anniversary" : "Hari jadi", "Appointment" : "Janji", @@ -241,14 +317,18 @@ OC.L10N.register( "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["pada hari {dayOfMonthList}"], "until {untilDate}" : "sampai {untilDate}", "_%n time_::_%n times_" : ["%n kali"], - "Untitled event" : "Acara tanpa judul", + "second" : "detik", + "third" : "ke-3", + "fourth" : "ke-4", + "fifth" : "ke-5", + "second to last" : "kedua terakhir", + "last" : "terakhir", "Untitled task" : "Tugas tanpa judul", "Please ask your administrator to enable the Tasks App." : "Silakan tanya administrator Anda untuk mengaktifkan aplikasi Tugas.", - "Next" : "Berikutnya", "_+%n more_::_+%n more_" : ["+%n lagi"], "Other" : "Lainnya", + "The visibility of this event in shared calendars." : "Visibilitas acara ini di kalender yang dibagikan.", "Add a location" : "Tambah lokasi", - "Add a description" : "Tambah deskripsi", "Status" : "Status", "Confirmed" : "Terkonfirmasi", "Confirmation about the overall status of the event." : "Konfirmasi tentang status keseluruhan acara.", @@ -260,10 +340,9 @@ OC.L10N.register( "Add this as a new category" : "Tambah sebagai kategori baru", "Custom color" : "Warna khusus", "Special color of this event. Overrides the calendar-color." : "Warna spesial dari acara ini. Mengganti warna kalender.", - "Chat room for event" : "Ruang obrolan untuk acara", - "Talk" : "Talk", - "Review" : "Tinjauan", - "Mail" : "Email", - "Birthday" : "Tanggal lahir" + "An error occurred, unable to delete the calendar." : "Terjadi galat, tidak dapat menghapus kalender.", + "This is an event reminder." : "Ini adalah pengingat acara.", + "+ Add reminder" : "+ Tambah pengingat", + "Details" : "Detail" }, "nplurals=1; plural=0;"); diff --git a/l10n/id.json b/l10n/id.json index eaec7e1df5d779f0db8ce2feb49c56b2de43e6ec..f8515dd8c494dc26ebd3ae4717542a3e885c4445 100644 --- a/l10n/id.json +++ b/l10n/id.json @@ -1,94 +1,145 @@ { "translations": { - "Provided email-address is not valid" : "Alamat surel tidak valid", + "Provided email-address is too long" : "Alamat email yang diberikan terlalu panjang", + "User-Session unexpectedly expired" : "Sesi-Pengguna kedaluwarsa secara tidak terduga", + "Provided email-address is not valid" : "Alamat email tidak valid", "%s has published the calendar »%s«" : "%s telah mempublikasikan kalender »%s«", - "Unexpected error sending email. Please contact your administrator." : "Galat saat mengirim surel. Silakan hubungi administrator Anda.", + "Unexpected error sending email. Please contact your administrator." : "Galat saat mengirim email. Silakan hubungi administrator Anda.", + "Successfully sent email to %1$s" : "Berhasil mengirim email ke %1$s", "Hello," : "Halo,", - "We wanted to inform you that %s has published the calendar »%s«." : "Kami ingin menginformasikan anda bahwa %s telah mempublikasikan kalender »%s«.", + "We wanted to inform you that %s has published the calendar »%s«." : "Kami ingin menginformasikan Anda bahwa %s telah mempublikasikan kalender »%s«.", "Open »%s«" : "Buka »%s«", "Cheers!" : "Horee!", - "Confirm" : "Konfirmasi", + "Upcoming events" : "Acara mendatang", + "No more events today" : "Tidak ada acara lagi hari ini", + "No upcoming events" : "Tdak ada acara mendatang", + "More events" : "Lebih banyak acara", + "%1$s with %2$s" : "%1$sdengan %2$s", "Calendar" : "Kalender", + "New booking {booking}" : "Pemesanan baru (pemesanan)", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) memesan janji temu \"{config_display_name}\" pada {date_time}.", + "Appointments" : "Janji temu", + "Schedule appointment \"%s\"" : "Jadwalkan janji temu \"%s\"", + "Schedule an appointment" : "Jadwalkan janji temu", + "Prepare for %s" : "Bersiaplah untuk %s", + "Your appointment \"%s\" with %s needs confirmation" : "Janji temu Anda \"%s\" dengan %s membutuhkan konfirmasi ", + "Dear %s, please confirm your booking" : "Kepada %s, mohon konfirmasi pemesanan Anda", + "Confirm" : "Konfirmasi", + "This confirmation link expires in %s hours." : "Tautan konfirmasi ini akan kedaluwarsa dalam %s jam.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Jika Anda ingin membatalkan janji temu, mohon hubungi penyelenggara Anda dengan membalas email ini atau mengunjungi halaman profil mereka", + "Your appointment \"%s\" with %s has been accepted" : "Janji temu \"%s\" dengan %stelah diterima", + "Dear %s, your booking has been accepted." : "Kepada %s, pemesanan Anda telah diterima.", + "Appointment for:" : "Janji temu untuk:", + "Date:" : "Tanggal:", + "You will receive a link with the confirmation email" : "Anda akan menerima tautan dengan email konfirmasi", + "Where:" : "Tempat:", + "Comment:" : "Komentar:", + "You have a new appointment booking \"%s\" from %s" : "Anda memiliki pemesanan janji temu baru \"%s\" dari %s", + "Dear %s, %s (%s) booked an appointment with you." : "Kepada %s, %s (%s) memesan janji temu dengan Anda.", "A Calendar app for Nextcloud" : "Aplikasi Kalender untuk Nextcloud", "Previous day" : "Hari sebelum", "Previous week" : "Minggu sebelum", + "Previous year" : "Tahun lalu", "Previous month" : "Bulan sebelum", "Next day" : "Hari setelah", "Next week" : "Minggu setelah", + "Next year" : "Tahun depan", "Next month" : "Bulan setelah", + "Create new event" : "Buat acara baru", + "Event" : "Acara", "Today" : "Hari Ini", "Day" : "Hari", "Week" : "Minggu", "Month" : "Bulan", + "Year" : "Tahun", + "List" : "daftar", + "Appointment link was copied to clipboard" : "Tautan janji temu disalin ke papan klip", + "Appointment link could not be copied to clipboard" : "Tautan janji temu tidak dapat disalin ke papan klip", "Preview" : "Pratinjau", "Copy link" : "Salin tautan", "Edit" : "Sunting", "Delete" : "Hapus", - "Untitled calendar" : "Kalender tanpa judul", - "Edit name" : "Edit nama", - "Saving name …" : "Menyimpan nama …", - "Edit color" : "Edit warna", - "Saving color …" : "Menyimpan warna …", - "Copy private link" : "Salin tautan privat", - "Export" : "Ekspor", + "Create new" : "Buat", + "Disable calendar \"{calendar}\"" : "Nonaktifkan kalender \"{calendar}\"", + "Disable untitled calendar" : "Nonaktifkan kalender tanpa judul", + "Enable calendar \"{calendar}\"" : "Aktifkan kalender \"{calendar}\"", + "Enable untitled calendar" : "Aktifkan kalender tanpa judul", "An error occurred, unable to change visibility of the calendar." : "Terjadi galat, tidak dapat mengubah visibilitas kalender.", - "An error occurred, unable to delete the calendar." : "Terjadi galat, tidak dapat menghapus kalender.", - "Calendar link copied to clipboard." : "Tautan kalender disalin ke papan klip.", - "Calendar link could not be copied to clipboard." : "Tautan kalender tidak dapat disalin ke papan klip.", - "An error occurred, unable to rename the calendar." : "Terjadi galat, tidak dapat mengubah nama kalender.", - "An error occurred, unable to change the calendar's color." : "Terjadi galat, tidak dapat mengganti warna kalender.", + "Untitled calendar" : "Kalender tanpa judul", + "Shared with you by" : "Dibagikan dengan Anda oleh", + "Edit and share calendar" : "Edit dan bagikan kalender", + "Edit calendar" : "Edit kalender", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Batal berbagi kalender dalam {countdown} detik"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Menghapus kalender dalam {countdown} detik"], - "Share link" : "Bagikan tautan", - "Publish calendar" : "Menerbitkan kalender", - "Publishing calendar" : "Menerbitkan kalender", - "Copy public link" : "Salin tautan publik", - "Send link to calendar via email" : "Kirim tautan kalender via surel", - "Sending email …" : "Mengirim surel …", + "An error occurred, unable to create the calendar." : "Terjadi galat, tidak dapat membuat kalender.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Silakan isi tautan valid (dimulai dengan http://, https://, webcal://, or webcals://)", + "Calendars" : "Kalender", + "Add new" : "Tambahkan baru", + "New calendar" : "Kalender baru", + "Name for new calendar" : "Nama untuk kalender baru", + "Creating calendar …" : "Membuat kalender …", + "New calendar with task list" : "Kalender baru dengan daftar tugas", + "New subscription from link (read-only)" : "Langganan baru dengan tautan (baca-saja)", + "Creating subscription …" : "Membuat langganan …", + "Add public holiday calendar" : "Tambahkan kalender hari libur nasional", + "Add custom public calendar" : "Tambahkan kalender publik khusus", + "Calendar link copied to clipboard." : "Tautan kalender disalin ke papan klip.", + "Calendar link could not be copied to clipboard." : "Tautan kalender tidak dapat disalin ke papan klip.", "Copy subscription link" : "Salin tautan berlangganan", "Copying link …" : "Menyalin tautan …", "Copied link" : "Tautan tersalin", "Could not copy link" : "Tidak dapat menyalin tautan", + "Export" : "Ekspor", + "Untitled item" : "Item tanpa judul", + "Unknown calendar" : "Kalender tidak diketahui", + "Could not load deleted calendars and objects" : "Tidak dapat memuat kalender dan objek yang dihapus", + "Could not restore calendar or event" : "Tidak dapat memulihkan kalender atau acara", + "Do you really want to empty the trash bin?" : "Apakah Anda benar-benar ingin mengosongkan keranjang sampah?", + "Empty trash bin" : "Kosongkan tempat sampah", + "Trash bin" : "Keranjang sampah", + "Loading deleted items." : "Memuat item yang dihapus.", + "You do not have any deleted items." : "Anda tidak memiliki item yang dihapus.", + "Name" : "Nama", + "Deleted" : "Dihapus", + "Restore" : "Pulihkan", + "Delete permanently" : "Hapus secara permanen", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Item dalam keranjang sampah dihapus setelah {numDays} hari"], + "Could not update calendar order." : "Tidak dapat membarui urutan kalender.", + "Deck" : "Longgok", + "Hidden" : "Sembunyi", + "An error occurred, unable to publish calendar." : "Terjadi galat, tidak dapat menerbitkan kalender.", + "An error occurred, unable to send email." : "Terjadi galat, tidak dapat mengirim email.", + "Embed code copied to clipboard." : "Kode tersemat disalin ke papan klip", + "Embed code could not be copied to clipboard." : "Kode tersemat tidak dapat disalin ke papan klip.", + "Unpublishing calendar failed" : "Gagal membatalkan penerbitan kalender", + "Share link" : "Bagikan tautan", + "Copy public link" : "Salin tautan publik", + "Send link to calendar via email" : "Kirim tautan kalender via email", + "Sending email …" : "Mengirim email …", "Copy embedding code" : "Salin kode penyemat", "Copying code …" : "Menyalin kode …", "Copied code" : "Kode tersalin", "Could not copy code" : "Tidak dapat menyalin kode", "Delete share link" : "Hapus tautan berbagi", "Deleting share link …" : "Menghapus tautan berbagi …", - "An error occurred, unable to publish calendar." : "Terjadi galat, tidak dapat menerbitkan kalender.", - "An error occurred, unable to send email." : "Terjadi galat, tidak dapat mengirim surel.", - "Embed code copied to clipboard." : "Kode tersemat disalin ke papan klip", - "Embed code could not be copied to clipboard." : "Kode tersemat tidak dapat disalin ke papan klip.", - "Unpublishing calendar failed" : "Gagal membatalkan penerbitan kalender", - "Share with users or groups" : "Berbagi dengan pengguna atau grup", - "No users or groups" : "Tidak ada pengguna atau grup", + "An error occurred while unsharing the calendar." : "Terjadi kesalahan saat membatalkan pembagian kalender. ", + "An error occurred, unable to change the permission of the share." : "Terjadi galat, tidak dapat mengubah hak akses berbagi.", "can edit" : "dapat edit", "Unshare with {displayName}" : "Batal berbagi dengan {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Terjadi galat, tidak dapat mengubah pembatalan berbagi kalender.", - "An error occurred, unable to change the permission of the share." : "Terjadi galat, tidak dapat mengubah hak akses berbagi.", - "+ New calendar" : "+ Kalender baru", - "New calendar" : "Kalender baru", - "Creating calendar …" : "Membuat kalender …", - "New calendar with task list" : "Kalender baru dengan daftar tugas", - "New subscription from link (read-only)" : "Langganan baru dengan tautan (baca-saja)", - "Creating subscription …" : "Membuat langganan …", - "An error occurred, unable to create the calendar." : "Terjadi galat, tidak dapat membuat kalender.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Silakan isi tautan valid (dimulai dengan http://, https://, webcal://, or webcals://)", - "Name" : "Nama", - "Deleted" : "Dihapus", - "Restore" : "Pulihkan", - "Delete permanently" : "Hapus secara permanen", - "Empty trash bin" : "Kosongkan tempat sampah", + "Share with users or groups" : "Berbagi dengan pengguna atau grup", + "No users or groups" : "Tidak ada pengguna atau grup", + "Save" : "Simpan", "Import calendars" : "Impor kalender", "Filename" : "Nama berkas", "Cancel" : "Batal", "_Import calendar_::_Import calendars_" : ["Impor kalender"], + "Invalid location selected" : "Lokasi yang tidak valid dipilih", + "Attachments folder successfully saved." : "Folder lampiran berhasil disimpan.", + "Error on saving attachments folder." : "Kesalahan saat menyimpan folder lampiran.", "No valid files found, aborting import" : "Berkas valid tidak ditemukan, impor dibatalkan", "Import partially failed. Imported {accepted} out of {total}." : "Sebagian impor gagal. Dari {total} hanya {accepted} berhasil impor.", "Automatic" : "Otomatis", "Automatic ({detected})" : "Otomatis ({detected})", "New setting was not saved successfully." : "Setelan baru tidak berhasil tersimpan.", - "Shortcut overview" : "Ikhtisar pintasan", - "or" : "atau", "Navigation" : "Navigasi", "Previous period" : "Periode sebelum", "Next period" : "Periode sesudah", @@ -100,17 +151,22 @@ "Actions" : "Tindakan", "Create event" : "Buat acara", "Show shortcuts" : "Tampilkan pintasan", + "Shortcut overview" : "Ikhtisar pintasan", + "or" : "atau", + "CalDAV link copied to clipboard." : "Tautan CalDAV disalin ke papan klip", + "CalDAV link could not be copied to clipboard." : "Tautan CalDAV tidak dapat disalin ke papan klip", "Enable birthday calendar" : "Aktifkan kalender ulang tahun", "Show tasks in calendar" : "Tampilkan tugas dalam kalender", "Enable simplified editor" : "Aktifkan editor serderhana", - "Limit visible events per view" : "Batasi acara terlihat per tampilan", "Show weekends" : "Tampilkan akhir pekan", "Show week numbers" : "Tampilkan nomor pekan", "Copy primary CalDAV address" : "Salin alamat utama CalDAV", "Copy iOS/macOS CalDAV address" : "Salin alamat CalDAV iOS/macOS", "Show keyboard shortcuts" : "Tampilkan pintasan papan kunci", - "CalDAV link copied to clipboard." : "Tautan CalDAV disalin ke papan klip", - "CalDAV link could not be copied to clipboard." : "Tautan CalDAV tidak dapat disalin ke papan klip", + "_{duration} minute_::_{duration} minutes_" : ["{duration} menit"], + "_{duration} hour_::_{duration} hours_" : ["{duration} jam"], + "To configure appointments, add your email address in personal settings." : "Untuk mengonfigurasi janji temu, tambahkan alamat email Anda di pengaturan pribadi.", + "Update" : "Perbarui", "Location" : "Lokasi", "Description" : "Deskrisi", "to" : "untuk", @@ -122,11 +178,13 @@ "Friday" : "Jumat", "Saturday" : "Sabtu", "Sunday" : "Minggu", - "Save" : "Simpan", - "Update" : "Perbarui", - "Your email address" : "Alamat surel Anda", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Kami telah mengirim email dengan detailnya. Mohon konfirmasikan janji temu Anda menggunakan tautan dalam email tersebut. Anda dapat menutup halaman ini sekarang.", + "Your email address" : "Alamat email Anda", + "Could not book the appointment. Please try again later or contact the organizer." : "Tidak dapat memesan janji temu. Mohon coba lagi nanti atau hubungi penyelenggara.", + "on" : "pada", + "at" : "di", "Notification" : "Notifikasi", - "Email" : "Surel", + "Email" : "Email", "Audio notification" : "Notifikasi audio", "Other notification" : "Notifikasi lain", "Relative to event" : "Relatif terhadap acara", @@ -134,71 +192,89 @@ "Edit time" : "Edit waktu", "Save time" : "Simpan waktu", "Remove reminder" : "Buang pengingat", - "on" : "pada", - "at" : "di", - "+ Add reminder" : "+ Tambah pengingat", - "_second_::_seconds_" : ["detik"], - "_minute_::_minutes_" : ["menit"], - "_hour_::_hours_" : ["jam"], - "_day_::_days_" : ["hari"], - "_week_::_weeks_" : ["minggu"], + "seconds" : "detik", + "minutes" : "menit", + "hours" : "jam", + "days" : "hari", + "weeks" : "minggu", + "Choose a file to add as attachment" : "Pilih berkas untuk ditambahkan sebagai lampiran", + "Delete file" : "Hapus berkas", + "Not available" : "Tidak tersedia", "Availability of attendees, resources and rooms" : "Ketersediaan peserta, sumber daya, dan ruangan", + "Out of office" : "Keluar kantor", + "Done" : "Selesai", + "Room name" : "Nama ruang", "Free" : "Luang", "Busy (tentative)" : "Sibuk (tentatif)", "Busy" : "Sibuk", - "Out of office" : "Keluar kantor", "Unknown" : "Tidak diketahui", + "The invitation has been accepted successfully." : "Undangan berhasil diterima.", + "Failed to accept the invitation." : "Gagal menerima undangan.", + "The invitation has been declined successfully." : "Undangan berhasil ditolak.", + "Failed to decline the invitation." : "Gagal menolak undangan.", + "Your participation has been marked as tentative." : "Partisipasi Anda telah ditandai sebagai belum pasti.", + "Failed to set the participation status to tentative." : "Gagal menyetel status partisipasi menjadi belum pasti.", "Accept" : "Terima", "Decline" : "Tolak", "Tentative" : "Tentatif", - "Create Talk room for this event" : "Buat ruangan Talk untuk acara ini", - "Show busy times" : "Tampilkan waktu sibuk", "No attendees yet" : "Belum ada peserta", "Successfully appended link to talk room to description." : "Berhasil menambahkan tautan ruang Talk pada deskripsi.", "Error creating Talk room" : "Galat membuat ruangan Talk", - "Send email" : "Kirim surel", + "Attendees" : "Peserta", + "Remove group" : "Hapus grup", + "Remove attendee" : "Hapus peserta", "Required participant" : "Partisipan wajib", "Optional participant" : "Partisipan opsional", "Non-participant" : "Bukan partisipan", - "Remove attendee" : "Hapus peserta", "No match found" : "Tidak ditemukan kecocokan", + "Note that members of circles get invited but are not synced yet." : "Perhatikan bahwa anggota kelompok diundang tapi belum tersinkronisasi.", "(organizer)" : "(penyelenggara)", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Untuk mengirim undangan dan mengurus respons, [linkopen]tambahkan alamat email Anda di pengaturan pribadi[linkclose].", "Remove color" : "Hapus warna", "Event title" : "Judul acara", - "All day" : "Sepanjang hari", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Tidak dapat mengubah pengaturan sehari penuh untuk acara yang merupakan bagian dari set pengulangan.", "Repeat" : "Ulang", - "End repeat" : "Akhiri perulangan", - "Select to end repeat" : "Pilih untuk mengakhiri perulangan", "never" : "tidak pernah", "on date" : "pada tanggal", "after" : "setelah", + "End repeat" : "Akhiri perulangan", + "Select to end repeat" : "Pilih untuk mengakhiri perulangan", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Acara ini merupakan pengecualian pengulangan dari set pengulangan. Anda tidak dapat menambahkan aturan pengulangan pada acara ini.", "first" : "pertama", - "third" : "ke-3", - "fourth" : "ke-4", - "fifth" : "ke-5", - "second to last" : "kedua terakhir", - "last" : "terakhir", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Perubahan pada aturan pengulangan hanya akan diterapkan untuk acara ini dan semua acara selanjutnya.", "Repeat every" : "Ulang setiap", "By day of the month" : "Berdasarkan hari pada bulan", "On the" : "Pada", + "_day_::_days_" : ["hari"], + "_week_::_weeks_" : ["minggu"], "_month_::_months_" : ["bulang"], "_year_::_years_" : ["tahun"], "weekday" : "akhir pekan", "weekend day" : "akhir pekan", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Penentuan perulangan acara ini tidak sepenuhnya didukung oleh Nextcloud. Jika Anda mengedit opsi pengulangan, pengulangan tertentu mungkin hilang.", - "More" : "Lainnya", + "Resources" : "Sumber daya", "Public calendar does not exist" : "Kalender publik tidak eksis", "Maybe the share was deleted or has expired?" : "Mungkin yang dibagikan terhapus atau kadaluwarsa?", - "Pick a time" : "Pilih waktu", - "Pick a date" : "Pilih tanggal", + "on {formattedDate}" : "dalam {formattedDate}", "Please enter a valid date" : "Silakan isi tanggal valid", "Please enter a valid date and time" : "Silakan isi tanggal dan waktu valid", + "Pick a time" : "Pilih waktu", + "Pick a date" : "Pilih tanggal", + "An error occurred, unable to read public calendars." : "Terjadi kesalahan, tidak dapat membaca kalender umum.", + "An error occurred, unable to subscribe to calendar." : "Terjadi kesalahan, tidak dapat berlangganan kalender.", + "Speak to the server administrator to resolve this issue." : "Hubungi administrator server untuk menyelesaikan masalah ini.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Kalender hari libur nasional disediakan oleh Thunderbird. Data kalender akan diunduh dari {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Kalender-kalender umum ini disarankan oleh administrator server. data Kalender akan diunduh dari situs web masing-masing.", + "Subscribe" : "Berlangganan", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Terima kasih. Pemesanan Anda dari {startDate} hingga {endDate} telah dikonfirmasi.", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Slot untuk janji temu Anda dari {startDate} hingga {endDate} tidak lagi tersedia.", "Personal" : "Pribadi", - "[Today]" : "[Hari ini]", - "Details" : "Detail", - "Attendees" : "Peserta", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Deteksi zona waktu otomatis menetapkan UTC sebagai zona waktu Anda. Hal ini kemungkinan besar disebabkan oleh langkah keamanan peramban web Anda. Harap setel zona waktu Anda secara manual di pengaturan kalender.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Zona waktu Anda yang terkonfigurasi ({timezoneId}) tidak ditemukan. Kembali ke UTC.\nHarap ubah zona waktu Anda di pengaturan dan laporkan masalah ini.", + "Edit event" : "Sunting agenda", + "All day" : "Sepanjang hari", + "Untitled event" : "Acara tanpa judul", "Close" : "Tutup", - "Show more details" : "Tampilkan detail lain", "Subscribe to {name}" : "Berlangganan ke {name}", "Anniversary" : "Hari jadi", "Appointment" : "Janji", @@ -239,14 +315,18 @@ "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["pada hari {dayOfMonthList}"], "until {untilDate}" : "sampai {untilDate}", "_%n time_::_%n times_" : ["%n kali"], - "Untitled event" : "Acara tanpa judul", + "second" : "detik", + "third" : "ke-3", + "fourth" : "ke-4", + "fifth" : "ke-5", + "second to last" : "kedua terakhir", + "last" : "terakhir", "Untitled task" : "Tugas tanpa judul", "Please ask your administrator to enable the Tasks App." : "Silakan tanya administrator Anda untuk mengaktifkan aplikasi Tugas.", - "Next" : "Berikutnya", "_+%n more_::_+%n more_" : ["+%n lagi"], "Other" : "Lainnya", + "The visibility of this event in shared calendars." : "Visibilitas acara ini di kalender yang dibagikan.", "Add a location" : "Tambah lokasi", - "Add a description" : "Tambah deskripsi", "Status" : "Status", "Confirmed" : "Terkonfirmasi", "Confirmation about the overall status of the event." : "Konfirmasi tentang status keseluruhan acara.", @@ -258,10 +338,9 @@ "Add this as a new category" : "Tambah sebagai kategori baru", "Custom color" : "Warna khusus", "Special color of this event. Overrides the calendar-color." : "Warna spesial dari acara ini. Mengganti warna kalender.", - "Chat room for event" : "Ruang obrolan untuk acara", - "Talk" : "Talk", - "Review" : "Tinjauan", - "Mail" : "Email", - "Birthday" : "Tanggal lahir" + "An error occurred, unable to delete the calendar." : "Terjadi galat, tidak dapat menghapus kalender.", + "This is an event reminder." : "Ini adalah pengingat acara.", + "+ Add reminder" : "+ Tambah pengingat", + "Details" : "Detail" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/is.js b/l10n/is.js index 2afa490f40580869f41172158dd0a034b42d5ebc..a1d655c08550b3cd7abb7f7743709583041ff4f6 100644 --- a/l10n/is.js +++ b/l10n/is.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Uppgefið tölvupóstfang er of langt", "User-Session unexpectedly expired" : "Setu notanda lauk óvænt", "Provided email-address is not valid" : "Uppgefið tölvupóstfang er ekki gilt", "%s has published the calendar »%s«" : "%s gaf út dagatalið »%s«", @@ -11,129 +12,160 @@ OC.L10N.register( "Open »%s«" : "Opna »%s«", "Cheers!" : "Til hamingju!", "Upcoming events" : "Atburðir á næstunni", + "No more events today" : "Ekki fleiri atburðir í dag", + "No upcoming events" : "Engir atburðir á næstunni", + "More events" : "Fleiri atburðir", + "%1$s with %2$s" : "%1$s með %2$s", + "Calendar" : "Dagatal", + "New booking {booking}" : "Ný bókun {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) bókaði stefnumótið \"{config_display_name}\" þann {date_time}.", "Appointments" : "Stefnumót", - "Schedule appointment \"%s\"" : "Setja stefnumótið \"%s\" á áætlun", - "Schedule an appointment" : "Setja stefnumót á áætlun", + "Schedule appointment \"%s\"" : "Setja stefnumótið \"%s\" á dagskrá", + "Schedule an appointment" : "Setja stefnumót á dagskrá", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Undirbúa fyrir %s", "Follow up for %s" : "Fylgja eftir %s", - "Your appointment \"%s\" needs confirmation" : "\"%s\" stefnumótið þitt þarfnast staðfestingar", + "Your appointment \"%s\" with %s needs confirmation" : "\"%s\" stefnumótið þitt við %s krefst staðfestingar", "Dear %s, please confirm your booking" : "Kæri/Kæra %s, staðfestu bókunina þína", "Confirm" : "Staðfesta", + "Appointment with:" : "Stefnumót með:", + "Description:" : "Lýsing:", "This confirmation link expires in %s hours." : "Þessi tengill til staðfestingar rennur út eftir %s klukkustundir.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Ef þú vilt aflýsa stefnumótinu eftir allt saman, skaltu hafa samband við skipuleggjendurna.", - "Appointment:" : "Stefnumót:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Ef þú vilt aflýsa stefnumótinu eftir allt saman, skaltu hafa samband við skipuleggjendurna með því að svara þessum tölvupósti eða fara á síðuna með persónusniðinu þeirra.", + "Your appointment \"%s\" with %s has been accepted" : "\"%s\" stefnumótið þitt við %s hefur verið samþykkt", + "Dear %s, your booking has been accepted." : "Kæri/Kæra %s, bókunin þín hefur verið samþykkt.", + "Appointment for:" : "Stefnumót vegna:", "Date:" : "Dagsetning:", + "You will receive a link with the confirmation email" : "Þú munt fá tengil í staðfestingarpósti", "Where:" : "Hvar:", - "Description:" : "Lýsing:", - "Calendar" : "Dagatal", + "Comment:" : "Athugasemd:", + "You have a new appointment booking \"%s\" from %s" : "Þú ert með nýja bókun um \"%s\" stefnumót frá %s", + "Dear %s, %s (%s) booked an appointment with you." : "Kæri/Kæra %s, %s (%s) bókaði fund með þér.", "A Calendar app for Nextcloud" : "Dagatalsforrit fyrir Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Dagatalsforritið (Calendar) er notandaviðmót fyrir CalDAV-þjón Nextcloud. Samstilltu á einfaldan máta atburði af ýmsum tækjum við Nextcloud tölvuskýið og breyttu þeim á netinu.\n\n* 🚀 **Samþætting við önnur Nextcloud forrit!** Nú þegar við Tengiliði (Contacts) - fleira er í bígerð.\n* 🌐 **Stuðningur við WebCal!** Viltu sjá leikdegi í boltanum í dagatalinu þínu? Ekki vandamál!\n* 🙋 **Þátttakendur!** Bjóddu fólki á kynningar og fundi.\n* ⌚️ **Laus/Upptekinn!** Sjáðu hvenær þátttakendurnir geta mætt.\n* ⏰ **Áminningar!** Fáðu áminningar fyrir atburði inni í vafra og í tölvupósti.\n* 🔍 Leita! Finndu atburðina þina á einfaldan hátt.\n* ☑️ Verkefni! Sjáðu verkefni og skiladag þeirra beint í dagatalinu.\n* 🙈 **Við erum ekki að finna upp hjólið!** Byggist á hinum frábæru [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) og [fullcalendar](https://github.com/fullcalendar/fullcalendar) aðgerðasöfnum.", "Previous day" : "Fyrri dagur", "Previous week" : "Fyrri vika", + "Previous year" : "Fyrra ár", "Previous month" : "Fyrri mánuður", "Next day" : "Næsta dag", "Next week" : "Næsta viku", + "Next year" : "Næsta ár", "Next month" : "Næsti mánuður", - "New event" : "Nýr atburður", + "Create new event" : "Búa til nýjan atburð", + "Event" : "Atburður", "Today" : "Í dag", "Day" : "Dagur", "Week" : "Vika", "Month" : "Mánuður", + "Year" : "Ár", "List" : "Listi", + "Appointment link was copied to clipboard" : "Stefnumótstengill var afritaður á klippispjald", + "Appointment link could not be copied to clipboard" : "Ekki var hægt að afrita stefnumótstengil á klippispjald", "Preview" : "Forskoðun", "Copy link" : "Afrita tengil", "Edit" : "Breyta", "Delete" : "Eyða", - "Appointment link was copied to clipboard" : "Stefnumótstengill var afritaður á klippispjald", - "Appointment link could not be copied to clipboard" : "Ekki var hægt að afrita stefnumótstengil á klippispjald", - "Add new" : "Bæta við nýju", - "Untitled calendar" : "Ónefnt dagatal", - "Edit name" : "Breyta heiti", - "Saving name …" : "Vista heiti …", - "Edit color" : "Breyta lit", - "Saving color …" : "Vista lit …", - "Copy private link" : "Afrita einkatengil", - "Export" : "Flytja út", - "Unshare from me" : "Hætta deilingu frá mér", + "Appointment schedules" : "Dagskrá stefnumóta", + "Create new" : "Búa til nýjan", "Disable calendar \"{calendar}\"" : "Gera dagatalið \"{calendar}\" óvirkt", "Disable untitled calendar" : "Gera ónefnt dagatal óvirkt", "Enable calendar \"{calendar}\"" : "Gera dagatalið \"{calendar}\" virkt", "Enable untitled calendar" : "Gera ónefnt dagatal virkt", "An error occurred, unable to change visibility of the calendar." : "Villa kom upp, gat ekki breytt sýnileika dagatalsins.", - "An error occurred, unable to delete the calendar." : "Villa kom upp, gat ekki eytt dagatalinu.", - "Calendar link copied to clipboard." : "Dagatalstengill afritaður á klippispjald.", - "Calendar link could not be copied to clipboard." : "Ekki var hægt að afrita dagatalstengil á klippispjald.", - "An error occurred, unable to rename the calendar." : "Villa kom upp, gat ekki endurnefnt dagatalið.", - "An error occurred, unable to change the calendar's color." : "Villa kom upp, gat ekki breytt lit dagatalsins.", + "Untitled calendar" : "Ónefnt dagatal", + "Shared with you by" : "Deilt með þér af", + "Edit and share calendar" : "Breyta og deila dagatali", + "Edit calendar" : "Breyta dagatali", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Hætti að deila dagatalinu eftir {countdown} sekúndu","Hætti að deila dagatalinu eftir {countdown} sekúndur"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Eyði dagatalinu eftir {countdown} sekúndu","Eyði dagatalinu eftir {countdown} sekúndur"], + "An error occurred, unable to create the calendar." : "Villa kom upp, gat ekki búið til dagatalið.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Skráðu inn gilda slóð (starting with http://, https://, webcal://, or webcals://)", + "Calendars" : "Dagatöl", + "Add new" : "Bæta við nýju", + "New calendar" : "Nýtt dagatal", + "Name for new calendar" : "Nafn á nýju dagatali", + "Creating calendar …" : "Útbý dagatal …", + "New calendar with task list" : "Nýtt dagatal með verkefnalista", + "New subscription from link (read-only)" : "Ný áskrift úr tengli (skrifvarið)", + "Creating subscription …" : "Útbý áskrift …", + "Add public holiday calendar" : "Bæta við opinberu frídagatali", + "Add custom public calendar" : "Bæta við sérsniðnu opinberu dagatali", + "Calendar link copied to clipboard." : "Dagatalstengill afritaður á klippispjald.", + "Calendar link could not be copied to clipboard." : "Ekki var hægt að afrita dagatalstengil á klippispjald.", + "Copy subscription link" : "Afrita áskriftartengil", + "Copying link …" : "Afrita tengil …", + "Copied link" : "Afritaði tengil", + "Could not copy link" : "Gat ekki afritað tengil", + "Export" : "Flytja út", + "Untitled item" : "Ónefnt atriði", + "Unknown calendar" : "Óþekkt dagatal", + "Could not load deleted calendars and objects" : "Gat ekki hlaðið inn eyddum dagatölum og hlutum", + "Could not delete calendar or event" : "Gat ekki eytt dagatali eða atburði", + "Could not restore calendar or event" : "Gat ekki endurheimt dagatal eða atburð", + "Do you really want to empty the trash bin?" : "Viltu örugglega tæma ruslið?", + "Empty trash bin" : "Tæma ruslið", + "Trash bin" : "Rusl", + "Loading deleted items." : "Hleð inn eyddum atriðum.", + "You do not have any deleted items." : "Þú ert ekki með nein eydd atriði.", + "Name" : "Heiti", + "Deleted" : "Eytt", + "Restore" : "Endurheimta", + "Delete permanently" : "Eyða varanlega", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Atriðum í ruslinu er eytt eftir {numDays} dag","Atriðum í ruslinu er eytt eftir {numDays} daga"], + "Could not update calendar order." : "Gat ekki uppfært röð dagatalanna.", + "Shared calendars" : "Sameiginleg dagatöl", + "Deck" : "Deck-spjaldaforrit", + "Hidden" : "Falinn", + "Internal link" : "Innri tengill", + "A private link that can be used with external clients" : "Einkatengill sem hægt er að nota með öðrum forritum", + "Copy internal link" : "Afrita innri tengil", + "An error occurred, unable to publish calendar." : "Villa kom upp, gat ekki gefið út dagatalið.", + "An error occurred, unable to send email." : "Villa kom upp, gat ekki sent tölvupóst.", + "Embed code copied to clipboard." : "Ívafningarkóði afritaður á klippispjald.", + "Embed code could not be copied to clipboard." : "Ekki var hægt að afrita ívafningarkóða á klippispjald.", + "Unpublishing calendar failed" : "Mistókst að hætta birtingu dagatals", "Share link" : "Deila tengli", - "Publish calendar" : "Gefa út dagatal", - "Publishing calendar" : "Gef út dagatal", "Copy public link" : "Afrita opinberan tengil", "Send link to calendar via email" : "Senda tengil á dgatal með tölvupósti", "Enter one address" : "Settu inn eitt netfang", "Sending email …" : "Sendi tölvupóst ...", - "Copy subscription link" : "Afrita áskriftartengil", - "Copying link …" : "Afrita tengil …", - "Copied link" : "Afritaði tengil", - "Could not copy link" : "Gat ekki afritað tengil", "Copy embedding code" : "Afrita ívafningarkóða", "Copying code …" : "Afrita kóða …", "Copied code" : "Afritaði kóða", "Could not copy code" : "Gat ekki afritað kóða", "Delete share link" : "Eyða tengli á sameign", "Deleting share link …" : "Eyði tengli á sameign …", - "An error occurred, unable to publish calendar." : "Villa kom upp, gat ekki gefið út dagatalið.", - "An error occurred, unable to send email." : "Villa kom upp, gat ekki sent tölvupóst.", - "Embed code copied to clipboard." : "Ívafningarkóði afritaður á klippispjald.", - "Embed code could not be copied to clipboard." : "Ekki var hægt að afrita ívafningarkóða á klippispjald.", - "Unpublishing calendar failed" : "Mistókst að hætta birtingu dagatals", - "Share with users or groups" : "Deila með notendum eða hópum", - "No users or groups" : "Engir notendur eða hópar", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Teymi)", + "An error occurred while unsharing the calendar." : "Villa kom upp við að taka dagatalið úr samnýtingu.", + "An error occurred, unable to change the permission of the share." : "Villa kom upp, gat ekki breytt heimildum á sameigninni.", "can edit" : "getur breytt", "Unshare with {displayName}" : "Hætta deilingu með {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Villa kom upp, gat ekki tekið dagatalið úr deilingu.", - "An error occurred, unable to change the permission of the share." : "Villa kom upp, gat ekki breytt heimildum á sameigninni.", - "+ New calendar" : "+ Nýtt dagatal", - "New calendar" : "Nýtt dagatal", - "Name for new calendar" : "Nafn á nýju dagatali", - "Creating calendar …" : "Útbý dagatal …", - "New calendar with task list" : "Nýtt dagatal með verkefnalista", - "New subscription from link (read-only)" : "Ný áskrift úr tengli (skrifvarið)", - "Creating subscription …" : "Útbý áskrift …", - "An error occurred, unable to create the calendar." : "Villa kom upp, gat ekki búið til dagatalið.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Skráðu inn gilda slóð (starting with http://, https://, webcal://, or webcals://)", - "Trash bin" : "Ruslafata", - "Loading deleted elements." : "Hleð inn eyddum einindum.", - "You do not have any deleted elements." : "Þú ert ekki með nein eydd einindi.", - "Name" : "Heiti", - "Deleted" : "Eytt", - "Restore" : "Endurheimta", - "Delete permanently" : "Eyða varanlega", - "Empty trash bin" : "Tæma ruslið", - "Untitled element" : "Ónefnt einindi", - "Unknown calendar" : "Óþekkt dagatal", - "Could not load deleted calendars and objects" : "Gat ekki hlaðið inn eyddum dagatölum og hlutum", - "Could not restore calendar or event" : "Gat ekki endurheimt dagatal eða atburð", - "Do you really want to empty the trash bin?" : "Viltu örugglega tæma ruslið?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Atriðum í ruslinu er eytt eftir {numDays} dag","Atriðum í ruslinu er eytt eftir {numDays} daga"], - "Could not update calendar order." : "Gat ekki uppfært röð dagatalanna.", + "Share with users or groups" : "Deila með notendum eða hópum", + "No users or groups" : "Engir notendur eða hópar", + "Failed to save calendar name and color" : "Mistókst að vista heiti og lit dagatals", + "Calendar name …" : "Heiti dagatals …", + "Never show me as busy (set this calendar to transparent)" : "Aldrei sýna mig sem upptekinn/upptekna (stilla þetta dagatal á að vera gegnsætt)", + "Share calendar" : "Deila dagatali", + "Unshare from me" : "Hætta deilingu frá mér", + "Save" : "Vista", "Import calendars" : "Flytja inn dagatöl", "Please select a calendar to import into …" : "Veldu dagatal til að flytja inn í …", "Filename" : "Skráarheiti", "Calendar to import into" : "Dagatal til að flytja inn í", "Cancel" : "Hætta við", "_Import calendar_::_Import calendars_" : ["Flytja inn dagatal","Flytja inn dagatöl"], + "Select the default location for attachments" : "Veldu sjálfgefna geymslustaðsetningu viðhengja", + "Pick" : "Veldu", + "Invalid location selected" : "Ógild staðsetning valin", + "Attachments folder successfully saved." : "Tókst að vista viðhengjamöppu.", + "Error on saving attachments folder." : "Villa við að vista viðhengjamöppu.", + "Default attachments location" : "Sjálfgefin staðsetning viðhengja", "{filename} could not be parsed" : "Ekki var hægt að þátta {filename}", "No valid files found, aborting import" : "Engar gildar skrár fundust, hætti innflutningi", - "Import partially failed. Imported {accepted} out of {total}." : "Innflutningur mistókst að hluta. Flutti inn {accepted} af {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Það tókst að flytja inn %n atburð","Það tókst að flytja inn %n atburði"], + "Import partially failed. Imported {accepted} out of {total}." : "Innflutningur mistókst að hluta. Flutti inn {accepted} af {total}.", "Automatic" : "Sjálfvirkt", "Automatic ({detected})" : "Sjálfvirkt ({detected})", "New setting was not saved successfully." : "Ekki tókst að vista nýju stillinguna.", - "Shortcut overview" : "Yfirlit flýtilykla", - "or" : "eða", "Navigation" : "Yfirsýn", "Previous period" : "Fyrra tímabil", "Next period" : "Næsta tímabil", @@ -141,7 +173,8 @@ OC.L10N.register( "Day view" : "Dagsyfirlit", "Week view" : "Vikuyfirlit", "Month view" : "Mánaðaryfirlit", - "List view" : "Listasýn", + "Year view" : "Ársyfirlit", + "List view" : "Listayfirlit", "Actions" : "Aðgerðir", "Create event" : "Búa til atburð", "Show shortcuts" : "Birta flýtileiðir", @@ -150,24 +183,29 @@ OC.L10N.register( "Save edited event" : "Vista breyttan atburð", "Delete edited event" : "Eyða breyttum atburði", "Duplicate event" : "Tvítaka atburð", + "Shortcut overview" : "Yfirlit flýtilykla", + "or" : "eða", + "Calendar settings" : "Stillingar dagatals", + "At event start" : "Við upphaf atburðar", + "No reminder" : "Engin áminning", + "Failed to save default calendar" : "Mistókst að vista sjálfgefið dagatal", + "CalDAV link copied to clipboard." : "CalDAV-tengill afritaður á klippispjald.", + "CalDAV link could not be copied to clipboard." : "Ekki var hægt að afrita CalDAV-tengil á klippispjald.", "Enable birthday calendar" : "Virkja fæðingardagatal", "Show tasks in calendar" : "Sýna verkefni í dagatali", "Enable simplified editor" : "Virkja einfaldaðan ritil", - "Limit visible events per view" : "Takmarka sýnilega atburði í hverri sýn", + "Limit the number of events displayed in the monthly view" : "Takmarka fjölda atburða sem birtast í mánaðaryfirlitinu", "Show weekends" : "Sýna helgar", "Show week numbers" : "Sýna vikunúmer", "Time increments" : "Tímaþrep", + "Default calendar for incoming invitations" : "Sjálfgefið dagatal fyrir boð sem berast", "Default reminder" : "Sjálfgefin áminning", "Copy primary CalDAV address" : "Afrita aðal-CalDAV-vistfang", "Copy iOS/macOS CalDAV address" : "Afrita iOS/macOS CalDAV-vistfang ", "Personal availability settings" : "Persónulegar stillingar varðandi hvenær til taks", "Show keyboard shortcuts" : "Birta flýtivísanir á lyklaborði", - "Calendar settings" : "Stillingar dagatals", - "No reminder" : "Engin áminning", - "CalDAV link copied to clipboard." : "CalDAV-tengill afritaður á klippispjald.", - "CalDAV link could not be copied to clipboard." : "Ekki var hægt að afrita CalDAV-tengil á klippispjald.", - "Appointment was created successfully" : "Tókst að búa til stefnumót", - "Appointment was updated successfully" : "Tókst að uppfæra stefnumót", + "Appointment schedule successfully created" : "Tókst að útbúa dagskrá stefnumóta", + "Appointment schedule successfully updated" : "Tókst að uppfæra dagskrá stefnumóta", "_{duration} minute_::_{duration} minutes_" : ["{duration} mínúta","{duration} mínútur"], "0 minutes" : "0 mínútur", "_{duration} hour_::_{duration} hours_" : ["{duration} klukkustund","{duration} klukkustundir"], @@ -178,7 +216,14 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Til að setja upp stefnumót, skaltu setja inn tölvupóstfangið þitt í einkastillingum þínum.", "Public – shown on the profile page" : "Opinbert - birt á notandasíðunni", "Private – only accessible via secret link" : "Einka - eingöngu aðgengilegt í gegnum einkatengil", + "Appointment schedule saved" : "Dagskrá stefnumóta vistuð", + "Create appointment schedule" : "Útbúa dagskrá stefnumóta", + "Edit appointment schedule" : "Breyta dagskrá stefnumóta", + "Update" : "Uppfæra", + "Appointment name" : "Heiti stefnumóts", "Location" : "Staðsetning", + "Create a Talk room" : "Búa til spjallrás", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Einstakur tengill verður útbúinn fyrir hvert stefnumót og sendur í staðfestingarpóstinum", "Description" : "Lýsing", "Visibility" : "Sýnileiki", "Duration" : "Duration", @@ -196,23 +241,37 @@ OC.L10N.register( "Friday" : "Föstudagur", "Saturday" : "Laugardagur", "Sunday" : "Sunnudagur", + "Weekdays" : "Virkir dagar", "Add time before and after the event" : "Bættu við tíma fyrir og eftir atburðinn", "Before the event" : "Fyrir atburðinn", "After the event" : "Eftir atburðinn", "Planning restrictions" : "Takmarkanir við áætlunargerð", "Minimum time before next available slot" : "Lágmarkstími á undan næsta tímahólfi", "Max slots per day" : "Hámarksfjöldi tímahólfa á dag", - "Limit how far in the future appointments can be booked" : "Takmarka hve lant fram í tíma hægt er að bóka stefnumót", - "Create appointment" : "Búa til stefnumót", - "Edit appointment" : "Breyta stefnumóti", - "Save" : "Vista", - "Update" : "Uppfæra", + "Limit how far in the future appointments can be booked" : "Takmarka hve langt fram í tíma hægt er að bóka stefnumót", + "It seems a rate limit has been reached. Please try again later." : "Það lítur út fyrir að takmörkum á bókunum hafi verið náð. Reyndu aftur síðar.", "Please confirm your reservation" : "Staðfestu pöntunina þína", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Við höfum sent þér tölvupóst með nánari upplýsingum. Staðfestu stefnumótið þitt með því að fylgja tenglinum í póstinum. Þú mátt núna loka þessari síðu.", "Your name" : "Nafnið þitt", "Your email address" : "Netfangið þitt", + "Please share anything that will help prepare for our meeting" : "Deildu með okkur hverju því sem getur hjálpað við að undirbúa fundinn", "Could not book the appointment. Please try again later or contact the organizer." : "Gat ekki bókað stefnumótið. Reyndu aftur seinna eða hafðu samband við skipuleggjendurna.", - "Book the appointment" : "Bóka stefnumótið", - "Reminder" : "Áminning", + "Back" : "Til baka", + "Book appointment" : "Bóka stefnumót", + "Error fetching Talk conversations." : "Villa við að sækja samtöl af spjallsvæði.", + "Conversation does not have a valid URL." : "Samtalið er ekki með gilda vefslóð.", + "Successfully added Talk conversation link to location." : "Tókst að bæta tengli á samtal á staðsetningu.", + "Successfully added Talk conversation link to description." : "Tókst að bæta tengli á samtal á lýsingu.", + "Failed to apply Talk room." : "Mistókst að virkja spjallrás.", + "Error creating Talk conversation" : "Mistókst að útbúa samtal", + "Select a Talk Room" : "Veldu spjallrás", + "Add Talk conversation" : "Bæta við samtali á spjallrás", + "Fetching Talk rooms…" : "Sæki spjallrásir…", + "No Talk room available" : "Engin spjallrás tiltæk", + "Create a new conversation" : "Hefja nýtt samtal", + "Select conversation" : "Veldu samtal", + "on" : "þann", + "at" : "klukkan", "before at" : "á undan klukkan", "Notification" : "Tilkynning", "Email" : "Tölvupóstur", @@ -223,110 +282,138 @@ OC.L10N.register( "Edit time" : "Breyta tíma", "Save time" : "Vista tíma", "Remove reminder" : "Fjarlægja áminningu", - "on" : "þann", - "at" : "klukkan", - "+ Add reminder" : "+ Bæta við áminningu", "Add reminder" : "Bæta við áminningu", - "_second_::_seconds_" : ["sekúnda","sekúndur"], - "_minute_::_minutes_" : ["mínúta","mínútur"], - "_hour_::_hours_" : ["klukkustund","klukkustundir"], - "_day_::_days_" : ["dagur","dagar"], - "_week_::_weeks_" : ["vika","vikur"], + "seconds" : "sekúndum", + "minutes" : "mínútur", + "hours" : "klukkustundir", + "days" : "daga", + "weeks" : "vikur", + "Choose a file to add as attachment" : "Veldu skrá til að setja sem viðhengi", + "Choose a file to share as a link" : "Veldu skrá til að deila sem tengli", + "Attachment {name} already exist!" : "Viðhengið {name} er þegar til staðar!", + "Could not upload attachment(s)" : "Gat ekki sent inn viðhengi", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Þú ert í þann mund að fara yfir á {host}. Ertu viss um að þú viljir halda áfram? Tengill: {link}", + "Proceed" : "Halda áfram", + "No attachments" : "Engin viðhengi", + "Add from Files" : "Bæta við úr skrám", + "Upload from device" : "Senda inn frá tæki", + "Delete file" : "Eyða skrá", + "Confirmation" : "Staðfesting", + "_{count} attachment_::_{count} attachments_" : ["{count} viðhengi","{count} viðhengi"], "Suggested" : "Stungið upp á", "Available" : "Tiltækt", - "Not available" : "Not available", - "Checking availability" : "Athuga hvað sé á lausu", "Invitation accepted" : "Boð samþykkt", "Accepted {organizerName}'s invitation" : "Samþykkti boð frá {organizerName}", + "Participation marked as tentative" : "Þátttaka merkt með fyrirvara", + "Invitation is delegated" : "Boðinu er framvísað", + "Not available" : "Not available", "Invitation declined" : "Boði hafnað", "Declined {organizerName}'s invitation" : "Hafnaði boði frá {organizerName}", - "Invitation is delegated" : "Boðinu er framvísað", - "Participation marked as tentative" : "Þátttaka merkt með fyrirvara", - "Invitation sent" : "Boð sent", + "Availability will be checked" : "Framboð verður athugað", + "Invitation will be sent" : "Boð verður sent", + "Failed to check availability" : "Mistókst að skoða lausa tíma", + "Failed to deliver invitation" : "Mistókst að afhenda boð", + "Awaiting response" : "Bíður eftir svari", + "Checking availability" : "Athuga hvað sé á lausu", "Has not responded to {organizerName}'s invitation yet" : "Hefur ekki svarað boðinu frá {organizerName} ennþá", - "Availability of attendees, resources and rooms" : "Framboð á þátttakendum, tilföngum og herbergjum", + "chairperson" : "fundarstjóri", + "required participant" : "nauðsynlegur þátttakandi", + "non-participant" : "ekki þátttakandi", + "optional participant" : "aukaþátttakandi", "{organizer} (organizer)" : "{organizer} (organizer)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Framboð á þátttakendum, tilföngum og herbergjum", + "Suggestion accepted" : "Tillaga samþykkt", + "Out of office" : "Ekki á staðnum", + "Attendees:" : "Þáttakendur:", + "Done" : "Lokið", + "Search room" : "Leita að aðstöðu", + "Room name" : "Heiti fundarsalar", + "Check room availability" : "Athuga framboð", "Free" : "Laus", "Busy (tentative)" : "Upptekinn (með fyrirvara)", "Busy" : "Upptekinn", - "Out of office" : "Ekki á staðnum", "Unknown" : "Óþekkt", - "Accept" : "Samþykkja", - "Decline" : "Hafna", - "Tentative" : "Með fyrirvara", + "Find a time" : "Finna tíma", "The invitation has been accepted successfully." : "Boðið hefur verið samþykkt.", "Failed to accept the invitation." : "Mistókst að samþykkja boðið.", "The invitation has been declined successfully." : "Boðinu hefur verið hafnað.", "Failed to decline the invitation." : "Mistókst að hafna boðinu.", "Your participation has been marked as tentative." : "Þátttaka þín hefur verið merkt með fyrirvara.", "Failed to set the participation status to tentative." : "Mistókst að merkja stöðu þátttakanda með fyrirvara.", - "Create Talk room for this event" : "Búa til spjallsvæði fyrir þennan atburð", - "Show busy times" : "Sýna upptekinn tíma", + "Accept" : "Samþykkja", + "Decline" : "Hafna", + "Tentative" : "Með fyrirvara", "No attendees yet" : "Engir þátttakendur ennþá", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} boðið, {confirmedCount} staðfestir", + "Successfully appended link to talk room to location." : "Tókst að bæta tengli á spjallsvæði við staðsetningu.", "Successfully appended link to talk room to description." : "Tókst að bæta tengli á spjallsvæði við lýsingu.", "Error creating Talk room" : "Villa við að búa til spjallsvæði.", - "Send email" : "Senda tölvupóst", + "Attendees" : "Þátttakendur", + "_%n more guest_::_%n more guests_" : ["%n gestur til viðbótar","%n gestir til viðbótar"], + "Remove group" : "Fjarlægja hóp", + "Remove attendee" : "Fjarlægja þátttakanda", + "Request reply" : "Biðja um svar", "Chairperson" : "Fundarstjóri", "Required participant" : "Nauðsynlegur þátttakandi", "Optional participant" : "Aukaþátttakandi", "Non-participant" : "Ekki þátttakandi", - "Remove attendee" : "Fjarlægja þátttakanda", - "Search for emails, users or contacts" : "Leita að tölvupóstföngum, notendum eða tengiliðum", + "_%n member_::_%n members_" : ["%n þátttakandi","%n þátttakendur"], "No match found" : "Fann engar samsvaranir", + "Note that members of circles get invited but are not synced yet." : "Athugaðu að meðlimum hringja verður boðið en er enn ekki búnir að samstillast.", + "Note that members of contact groups get invited but are not synced yet." : "Athugaðu að meðlimum tengiliðahópa verður boðið en er enn ekki búnir að samstillast.", "(organizer)" : "(skipuleggjandi)", + "Make {label} the organizer" : "Gera {label} að skipuleggjanda", + "Make {label} the organizer and attend" : "Gera {label} að skipuleggjanda og taka þátt", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Til að senda út boð og meðhöndla svör, [linkopen]skaltu setja inn tölvupóstfangið þitt í einkastillingum þínum[linkclose].", "Remove color" : "Fjarlægja lit", "Event title" : "Titill atburðar", - "All day" : "Heilsdagsviðburður", - "from {startDate}" : "frá {startDate}", - "from {startDate} at {startTime}" : "frá {startDate} klukkan {startTime}", - "to {endDate}" : "til {endDate}", - "to {endDate} at {endTime}" : "til {endDate} klukkan {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Get ekki breytt heils-dags-stillingu viðburða sem eru hluti af endurtekningasetti.", + "From" : "Frá", + "To" : "Til", "Repeat" : "Endurtaka", - "End repeat" : "Hætta endurtekningu", - "Select to end repeat" : "Veldu til að hætta endurtekningu", + "_time_::_times_" : ["sinni","sinnum"], "never" : "aldrei", "on date" : "þann", "after" : "eftir", - "_time_::_times_" : ["sinni","sinnum"], + "End repeat" : "Hætta endurtekningu", + "Select to end repeat" : "Veldu til að hætta endurtekningu", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Þessi viðburður er endurtekninga-frávik í endurtekningasetti. Þú getur ekki bætt endurtekninga-reglu við hann.", "first" : "fyrsta", - "third" : "þriðja", - "fourth" : "fjórða", - "fifth" : "fimmta", - "second to last" : "næstsíðasta", - "last" : "síðasta", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Breytingar á endurtekninga-reglunni mun aðeins eiga við þetta tilvik og framtíðartilvik.", "Repeat every" : "Endurtaka", "By day of the month" : "Eftir degi mánaðarins", "On the" : "Þann", + "_day_::_days_" : ["dagur","dagar"], + "_week_::_weeks_" : ["vika","vikur"], "_month_::_months_" : ["mánuður","mánuðir"], "_year_::_years_" : ["ár","ár"], "weekday" : "vinnudagur", "weekend day" : "helgardagur", - "No recurrence" : "Engin endurtekning", - "Suggestions" : "Tillögur", - "No rooms or resources yet" : "Ennþá kki neinir salir eða tilföng", + "Does not repeat" : "Endurtekst ekki", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Endurtekninga-skilgreining þessa viðburðar er ekki að fullu studd í Nextcloud. Ef þú breytir endurtekninga-valkostunum, gætu sumar endurtekningar tapast.", + "No rooms or resources yet" : "Ennþá ekki neinir salir eða tilföng", + "Resources" : "Tilföng", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sæti","{seatingCapacity} sæti"], "Add resource" : "Bæta við tilfangi", "Has a projector" : "Er með skjávarpa", "Has a whiteboard" : "Er með töflu", "Wheelchair accessible" : "Aðgengilegt í hjólastól", "Remove resource" : "Fjarlægja tilfang", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sæti","{seatingCapacity} sæti"], - "Projector" : "Skjávarpi", - "Whiteboard" : "Teiknitafla", "Search for resources or rooms" : "Leita að tilföngum eða fundarsölum", "available" : "tiltækt", "unavailable" : "ekki tiltækt", + "Show all rooms" : "Sýna alla fundarsali", + "Projector" : "Skjávarpi", + "Whiteboard" : "Teiknitafla", "Room type" : "Tegund salar", "Any" : "Hvað sem er", "Minimum seating capacity" : "Lágmarks-sætafjöldi", - "More" : "Meira", - "Update this occurrence" : "Uppfæra þetta tilviki", + "More details" : "Nánari upplýsingar", "Update this and all future" : "Uppfæra þetta og öll síðari", + "Update this occurrence" : "Uppfæra þetta tilviki", "Public calendar does not exist" : "Opinbert dagatal er ekki til", "Maybe the share was deleted or has expired?" : "Hugsanlega hefur sameigninni verið eytt eða hún sé útrunnin?", - "Please select a time zone:" : "Veldu tímabelti:", - "Pick a time" : "Veldu tíma", - "Pick a date" : "Veldu dagsetningu", "from {formattedDate}" : "frá {formattedDate}", "to {formattedDate}" : "til {formattedDate}", "on {formattedDate}" : "þann {formattedDate}", @@ -336,9 +423,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} kl. {formattedTime}", "Please enter a valid date" : "Settu inn gilda dagsetningu", "Please enter a valid date and time" : "Settu inn gilda dags- og tímasetningu", + "Select a time zone" : "Veldu tímabelti", + "Please select a time zone:" : "Veldu tímabelti:", + "Pick a time" : "Veldu tíma", + "Pick a date" : "Veldu dagsetningu", "Type to search time zone" : "Skrifaðu til að leita að tímabelti...", "Global" : "Víðvært", - "Select date" : "Veldu dagsetningu", + "Holidays in {region}" : "Frídagar á {region}", + "An error occurred, unable to read public calendars." : "Villa kom upp, gat ekki lesið opinber dagatöl.", + "An error occurred, unable to subscribe to calendar." : "Villa kom upp, gat ekki gerst áskrifandi að dagatali.", + "Public holiday calendars" : "Dagatöl með opinberum frídögum", + "Public calendars" : "Opinber dagatöl", + "No valid public calendars configured" : "Engin gild opinber dagatöl stillt", + "Speak to the server administrator to resolve this issue." : "Hafðu samband við kerfisstjóra netþjónsins til að leysa þetta.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Dagatöl með opinberum frídögum koma frá Thunderbird. Dagatalsgögnin eru sótt frá {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Þessar tillögur að opinberum dagatölum koma frá stjórnanda netþjónsins. Gögn dagatalanna verða sótt inn á viðkomandi vefsvæði.", + "By {authors}" : "Frá {authors}", + "Subscribed" : "Í áskrift", + "Subscribe" : "Gerast áskrifandi", + "Could not fetch slots" : "Gat ekki sótt tímahólf", + "Select a date" : "Veldu dagsetningu", "Select slot" : "Veldu tímahólf", "No slots available" : "Engin tímahólf tiltæk", "The slot for your appointment has been confirmed" : "Tímahólfið fyrir stefnumótið þtt er staðfestur", @@ -353,24 +457,25 @@ OC.L10N.register( "Book an appointment with {name}" : "Bóka stefnumót með {name}", "No public appointments found for {name}" : "Engin opinber stefnumót fundust fyrir {name}", "Personal" : "Persónulegt", - "No more events today" : "Ekki fleiri atburðir í dag", - "No upcoming events" : "Engir atburðir á næstunni", - "Create a new event" : "Búa til nýjan atburð", - "[Today]" : "[Í dag]", - "[Tomorrow]" : "[Á morgun]", - "[Yesterday]" : "[Í gær]", - "[Last] dddd" : "[Síðasta] dddd", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Sjálfvirka tímabeltisgreiningin ákvarðaði tímabeltið þitt sem UTC.\nLíklega er það vegna öryggisstillinga í vafranum þínum.\nStilltu tímabeltið þitt í stillingum dagatalsins.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Stillta tímabeltið þitt ({timezoneId}) fannst ekki. Nota UTC til vara.\nStilltu tímabeltið þitt í stillingum dagatalsins og tilkynntu þetta vandamál.", + "Availability of {displayName}" : "Lausir tímar hjá {displayName}", + "Edit event" : "Breyta atburði", "Event does not exist" : "Atburður er ekki til", "Duplicate" : "Tvítaka", "Delete this occurrence" : "Eyða þessu tilviki", "Delete this and all future" : "Eyða þessu og framtíðar tilvikum", - "Details" : "Nánar", - "Attendees" : "Þátttakendur", - "Resources" : "Tilföng", + "All day" : "Heilsdagsviðburður", + "Managing shared access" : "Sýsla með sameiginlegan aðgang", + "Deny access" : "Hafna aðgangi", + "Invite" : "Bjóða", + "_User requires access to your file_::_Users require access to your file_" : ["Notandi þarf aðgang að skránni þinni","Notendur þurfa aðgang að skránni þinni"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Viðhengi krefst sameiginlegs aðgangs","Viðhengi krefjast sameiginlegs aðgangs"], + "Untitled event" : "Ónefndur atburður", "Close" : "Loka", - "Show more details" : "Sýna frekari upplýsingar", "Subscribe to {name}" : "Panta áskrift að {name}", "Export {name}" : "Flytja út {name}", + "Show availability" : "Sýna lausa tíma", "Anniversary" : "Afmæli", "Appointment" : "Stefnumót", "Business" : "Viðskipti", @@ -386,6 +491,9 @@ OC.L10N.register( "Travel" : "Ferðalög", "Vacation" : "Í fríi", "Midnight on the day the event starts" : "Miðnætti dagsins sem atburður hefst", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n degi fyrir atburðinn kl. {formattedHourMinute}","%n dögum fyrir atburðinn kl. {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n viku fyrir atburðinn kl. {formattedHourMinute}","%n vikum fyrir atburðinn kl. {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "dagsins sem atburður hefst kl. {formattedHourMinute}", "at the event's start" : "{type} við upphaf atburðar", "at the event's end" : "{type} við lok atburðar", "{time} before the event starts" : "{time} áður en atburður hefst", @@ -395,7 +503,6 @@ OC.L10N.register( "on {time}" : "á slaginu {time}", "on {time} ({timezoneId})" : "klukkan {time} ({timezoneId})", "Week {number} of {year}" : "Vika {number}, ársins {year}", - "Does not repeat" : "Endurtekst ekki", "Daily" : "Daglega", "Weekly" : "Vikulega", "Monthly" : "Mánaðarlega", @@ -405,24 +512,26 @@ OC.L10N.register( "_Every %n month_::_Every %n months_" : ["Á %n mánaðar fresti","Á %n mánaða fresti"], "_Every %n year_::_Every %n years_" : ["Á %n árs fresti","Á %n ára fresti"], "_on {weekday}_::_on {weekdays}_" : ["á {weekday}","á {weekdays}"], - "in {monthNames}" : "í {monthNames}", + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["daginn {dayOfMonthList}","dagana {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "þann {ordinalNumber} {byDaySet}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "í {monthNames} þann {ordinalNumber} {byDaySet}", "until {untilDate}" : "þangað til {untilDate}", "_%n time_::_%n times_" : ["%n sinni","%n sinnum"], - "Untitled event" : "Ónefndur atburður", + "second" : "sekúnda", + "third" : "þriðja", + "fourth" : "fjórða", + "fifth" : "fimmta", + "second to last" : "næstsíðasta", + "last" : "síðasta", "Untitled task" : "Ónefnt verkefni", "Please ask your administrator to enable the Tasks App." : "Biddu kerfisstjórann þinn um að virkja verkefnasorritið (Tasks).", - "Prev" : "Fyrra", - "Next" : "Næsta", - "Prev year" : "Fyrra ár", - "Next year" : "Næsta ár", - "Year" : "Ár", "W" : "V", "%n more" : "%n til viðbótar", "No events to display" : "Engir atburðir til að birta", "_+%n more_::_+%n more_" : ["+%n til viðbótar","+%n til viðbótar"], "No events" : "Engir atburðir", "Create a new event or change the visible time-range" : "Búa til nýjan atburð eða breyta sýnilegu tímabili", + "Failed to save event" : "Mistókst að vista atburð", "It might have been deleted, or there was a typo in a link" : "Því gæti hafa verið eytt, eða að stafsetningarvilla hafi verið í tengli", "It might have been deleted, or there was a typo in the link" : "Því gæti hafa verið eytt, eða að stafsetningarvilla hafi verið í tenglinum", "Meeting room" : "Fundarherbergi", @@ -435,7 +544,7 @@ OC.L10N.register( "When shared hide this event" : "Þegar er deilt, fela þennan atburð", "The visibility of this event in shared calendars." : "Sýnileiki þessa atburðar í sameiginlegum dagatölum", "Add a location" : "Bæta við staðsetningu", - "Add a description" : "Settu inn lýsingu", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Bættu við lýsingu\n\n- Um hvað snýst þessi fundur\n- Atriði á dagskrá\n- Hvaðeina sem þátttakendur þurfa að undirbúa", "Status" : "Staða", "Confirmed" : "Staðfest", "Canceled" : "Hætt við", @@ -448,135 +557,23 @@ OC.L10N.register( "Add this as a new category" : "Bæta þessu við sem nýjum flokki", "Custom color" : "Sérsniðinn litur", "Special color of this event. Overrides the calendar-color." : "Sértækur litur þessa atburðar. Er rétthærri en litur dagatalsins.", - "Chat room for event" : "Spjallsvæði vegna atburðar", + "Error while sharing file" : "Villa við deilingu skráar", + "Error while sharing file with user" : "Villa við deilingu skráar með notanda", + "Attachment {fileName} already exists!" : "Viðhengið {fileName} er þegar til staðar!", + "An error occurred during getting file information" : "Villa kom upp við að sækja upplýsingar um skrá", + "Talk conversation for event" : "Samtal fyrir atburð", + "An error occurred, unable to delete the calendar." : "Villa kom upp, gat ekki eytt dagatalinu.", "Imported {filename}" : "Flutti inn {filename}", - "Meditation" : "Hugleiðsla", - "Relaxing" : "Afslöppun", - "Relax" : "Afslöppun", - "Break" : "Hlé", - "Commute" : "Samgöngur", - "Commuting" : "Á ferðinni", - "Shuttle" : "Skutl", - "Invoice" : "Reikningur", - "Finance" : "Fjármál", - "Bank" : "Banki", - "Money" : "Peningar", - "Wedding" : "Brúðkaup", - "Dog" : "Hundur", - "Concert" : "Tónleikar", - "Festival" : "Hátíð", - "Theater" : "Leikhús", - "Theatre" : "Leikhús", - "Presentation" : "Kynning", - "Talk" : "Spjalla", - "Speech" : "Tal", - "Deadline" : "Tímamörk", - "Submission" : "Innsending", - "Reporting" : "Skýrslugerð", - "Camping" : "Tjaldútilega", - "Camp" : "Tjaldstæði", - "Election" : "Kosningar", - "Voting" : "Kosið", - "Vote" : "Greiðsla atkvæða", - "Barbecue" : "Grill", - "Barbeque" : "Grill", - "Garden" : "Garður", - "Farm" : "Býli", - "Movie" : "Kvikmynd", - "Cinema" : "Kvikmyndahús", - "Graduation" : "Útskrift", - "Brainstorm" : "Hugarflug", - "Review" : "Yfirfara", - "Audit" : "Endurskoðun", - "Inspection" : "Eftirlit", - "Proofreading" : "Prófarkalestur", - "Baseball" : "Hornabolti", - "Meet" : "Hittast", - "Planning" : "Skipulagning", - "Pointing" : "Bending", - "Retrospective" : "Endurskoðun", - "Office" : "Skrifstofa", - "Contributor week" : "Vika með þátttakendum", - "Mail" : "Póstur", - "Soccer" : "Fótbolti", - "Football" : "Ruðningsbolti", - "Gaming" : "Spilun", - "Drive" : "Keyra", - "Driving" : "Akstur", - "Bicycle" : "Reiðhjól", - "Cycle" : "Hjóla", - "Cycling" : "Hjólreiðar", - "Biking" : "Hjólreiðar", - "Bike" : "Hjólandi", - "Podcast" : "Hlaðvarp", - "Basketball" : "Körfubolti", - "Fishing" : "Fiskveiði", - "Hiking" : "Gönguferð", - "Hike" : "Ganga", - "Art" : "Listir", - "Exhibition" : "Listasýning", - "Museum" : "Safn", - "Pilates" : "Pílates", - "Park" : "Almenningsgarður", - "Walk" : "Ganga", - "Studying" : "Lærdómur", - "Doctor" : "Læknir", - "Health" : "Heilsa", - "Dentist" : "Tannlæknir", - "Hospital" : "Sjúkrahús", - "Interview" : "Viðtal", - "Training" : "Þjálfun", - "Practice" : "Æfingar", - "Sports" : "Íþróttir", - "Exercise" : "Æfing", - "Work out" : "Líkamsrækt", - "Working out" : "Púla", - "Gym" : "Líkamsrækt", - "Barber" : "Rakari", - "Haircut" : "Hárskurður", - "Hairdresser" : "Hársnyrting", - "Exam" : "Próf", - "Written test" : "Skriflegt próf", - "Oral test" : "Munnlegt próf", - "Working" : "Vinna", - "New Years Eve" : "Gamlárskvöld", - "NYE" : "Gamlárs", - "Fireworks" : "Flugeldar", - "Running" : "Hlaup", - "Go for a run" : "Farðu út að hlaupa", - "Marathon" : "Maraþon", - "Video-conference" : "Myndfjarfundur", - "Conference-call" : "Símafundur", - "Video-call" : "Myndsamtal", - "Video-chat" : "Myndspjall", - "Video-meeting" : "Myndfundur", - "Call" : "Símtal", - "Calling" : "Hringi", - "Christmas" : "Jól", - "Conference" : "Fjarfundur", - "Pizza" : "Flatbaka", - "Travelling" : "Flakk", - "Trip" : "Ferð", - "Journey" : "Ferðalag", - "Collaborate" : "Samstarf", - "Pair" : "Para", - "Lecture" : "Fyrirlestur", - "Seminar" : "Námskeið", - "Teaching" : "Kennsla", - "Photograph" : "Ljósmynd", - "Party" : "Partý", - "Celebration" : "Hátíðahöld", - "Celebrate" : "Fagna", - "Birthday" : "Afmælisdagur", - "Shopping" : "Versla", - "Groceries" : "Matvörur", - "Skate" : "Skautar", - "Skateboard" : "Hjólabretti", - "Wine tasting" : "Vínsmökkun", - "Golf" : "Golf", - "Dinner" : "Kvöldverður", - "Lunch" : "Hádegisverður", + "This is an event reminder." : "Þetta er áminning vegna atburðar.", + "Error while parsing a PROPFIND error" : "Villa við þáttun á PROPFIND-villu", "Appointment not found" : "Stefnumót fannst ekki", - "User not found" : "Notandi fannst ekki" + "User not found" : "Notandi fannst ekki", + "Reminder" : "Áminning", + "+ Add reminder" : "+ Bæta við áminningu", + "Select automatic slot" : "Velja sjálfvirkt tímahólf", + "with" : "með", + "Available times:" : "Lausir tímar:", + "Suggestions" : "Tillögur", + "Details" : "Nánar" }, "nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"); diff --git a/l10n/is.json b/l10n/is.json index 1f2a32c65d441054cb32f8d6585c91eeab2df127..523eb7beb26c7cdc8fe753684e38e13b9062a519 100644 --- a/l10n/is.json +++ b/l10n/is.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "Uppgefið tölvupóstfang er of langt", "User-Session unexpectedly expired" : "Setu notanda lauk óvænt", "Provided email-address is not valid" : "Uppgefið tölvupóstfang er ekki gilt", "%s has published the calendar »%s«" : "%s gaf út dagatalið »%s«", @@ -9,129 +10,160 @@ "Open »%s«" : "Opna »%s«", "Cheers!" : "Til hamingju!", "Upcoming events" : "Atburðir á næstunni", + "No more events today" : "Ekki fleiri atburðir í dag", + "No upcoming events" : "Engir atburðir á næstunni", + "More events" : "Fleiri atburðir", + "%1$s with %2$s" : "%1$s með %2$s", + "Calendar" : "Dagatal", + "New booking {booking}" : "Ný bókun {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) bókaði stefnumótið \"{config_display_name}\" þann {date_time}.", "Appointments" : "Stefnumót", - "Schedule appointment \"%s\"" : "Setja stefnumótið \"%s\" á áætlun", - "Schedule an appointment" : "Setja stefnumót á áætlun", + "Schedule appointment \"%s\"" : "Setja stefnumótið \"%s\" á dagskrá", + "Schedule an appointment" : "Setja stefnumót á dagskrá", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Undirbúa fyrir %s", "Follow up for %s" : "Fylgja eftir %s", - "Your appointment \"%s\" needs confirmation" : "\"%s\" stefnumótið þitt þarfnast staðfestingar", + "Your appointment \"%s\" with %s needs confirmation" : "\"%s\" stefnumótið þitt við %s krefst staðfestingar", "Dear %s, please confirm your booking" : "Kæri/Kæra %s, staðfestu bókunina þína", "Confirm" : "Staðfesta", + "Appointment with:" : "Stefnumót með:", + "Description:" : "Lýsing:", "This confirmation link expires in %s hours." : "Þessi tengill til staðfestingar rennur út eftir %s klukkustundir.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Ef þú vilt aflýsa stefnumótinu eftir allt saman, skaltu hafa samband við skipuleggjendurna.", - "Appointment:" : "Stefnumót:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Ef þú vilt aflýsa stefnumótinu eftir allt saman, skaltu hafa samband við skipuleggjendurna með því að svara þessum tölvupósti eða fara á síðuna með persónusniðinu þeirra.", + "Your appointment \"%s\" with %s has been accepted" : "\"%s\" stefnumótið þitt við %s hefur verið samþykkt", + "Dear %s, your booking has been accepted." : "Kæri/Kæra %s, bókunin þín hefur verið samþykkt.", + "Appointment for:" : "Stefnumót vegna:", "Date:" : "Dagsetning:", + "You will receive a link with the confirmation email" : "Þú munt fá tengil í staðfestingarpósti", "Where:" : "Hvar:", - "Description:" : "Lýsing:", - "Calendar" : "Dagatal", + "Comment:" : "Athugasemd:", + "You have a new appointment booking \"%s\" from %s" : "Þú ert með nýja bókun um \"%s\" stefnumót frá %s", + "Dear %s, %s (%s) booked an appointment with you." : "Kæri/Kæra %s, %s (%s) bókaði fund með þér.", "A Calendar app for Nextcloud" : "Dagatalsforrit fyrir Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Dagatalsforritið (Calendar) er notandaviðmót fyrir CalDAV-þjón Nextcloud. Samstilltu á einfaldan máta atburði af ýmsum tækjum við Nextcloud tölvuskýið og breyttu þeim á netinu.\n\n* 🚀 **Samþætting við önnur Nextcloud forrit!** Nú þegar við Tengiliði (Contacts) - fleira er í bígerð.\n* 🌐 **Stuðningur við WebCal!** Viltu sjá leikdegi í boltanum í dagatalinu þínu? Ekki vandamál!\n* 🙋 **Þátttakendur!** Bjóddu fólki á kynningar og fundi.\n* ⌚️ **Laus/Upptekinn!** Sjáðu hvenær þátttakendurnir geta mætt.\n* ⏰ **Áminningar!** Fáðu áminningar fyrir atburði inni í vafra og í tölvupósti.\n* 🔍 Leita! Finndu atburðina þina á einfaldan hátt.\n* ☑️ Verkefni! Sjáðu verkefni og skiladag þeirra beint í dagatalinu.\n* 🙈 **Við erum ekki að finna upp hjólið!** Byggist á hinum frábæru [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) og [fullcalendar](https://github.com/fullcalendar/fullcalendar) aðgerðasöfnum.", "Previous day" : "Fyrri dagur", "Previous week" : "Fyrri vika", + "Previous year" : "Fyrra ár", "Previous month" : "Fyrri mánuður", "Next day" : "Næsta dag", "Next week" : "Næsta viku", + "Next year" : "Næsta ár", "Next month" : "Næsti mánuður", - "New event" : "Nýr atburður", + "Create new event" : "Búa til nýjan atburð", + "Event" : "Atburður", "Today" : "Í dag", "Day" : "Dagur", "Week" : "Vika", "Month" : "Mánuður", + "Year" : "Ár", "List" : "Listi", + "Appointment link was copied to clipboard" : "Stefnumótstengill var afritaður á klippispjald", + "Appointment link could not be copied to clipboard" : "Ekki var hægt að afrita stefnumótstengil á klippispjald", "Preview" : "Forskoðun", "Copy link" : "Afrita tengil", "Edit" : "Breyta", "Delete" : "Eyða", - "Appointment link was copied to clipboard" : "Stefnumótstengill var afritaður á klippispjald", - "Appointment link could not be copied to clipboard" : "Ekki var hægt að afrita stefnumótstengil á klippispjald", - "Add new" : "Bæta við nýju", - "Untitled calendar" : "Ónefnt dagatal", - "Edit name" : "Breyta heiti", - "Saving name …" : "Vista heiti …", - "Edit color" : "Breyta lit", - "Saving color …" : "Vista lit …", - "Copy private link" : "Afrita einkatengil", - "Export" : "Flytja út", - "Unshare from me" : "Hætta deilingu frá mér", + "Appointment schedules" : "Dagskrá stefnumóta", + "Create new" : "Búa til nýjan", "Disable calendar \"{calendar}\"" : "Gera dagatalið \"{calendar}\" óvirkt", "Disable untitled calendar" : "Gera ónefnt dagatal óvirkt", "Enable calendar \"{calendar}\"" : "Gera dagatalið \"{calendar}\" virkt", "Enable untitled calendar" : "Gera ónefnt dagatal virkt", "An error occurred, unable to change visibility of the calendar." : "Villa kom upp, gat ekki breytt sýnileika dagatalsins.", - "An error occurred, unable to delete the calendar." : "Villa kom upp, gat ekki eytt dagatalinu.", - "Calendar link copied to clipboard." : "Dagatalstengill afritaður á klippispjald.", - "Calendar link could not be copied to clipboard." : "Ekki var hægt að afrita dagatalstengil á klippispjald.", - "An error occurred, unable to rename the calendar." : "Villa kom upp, gat ekki endurnefnt dagatalið.", - "An error occurred, unable to change the calendar's color." : "Villa kom upp, gat ekki breytt lit dagatalsins.", + "Untitled calendar" : "Ónefnt dagatal", + "Shared with you by" : "Deilt með þér af", + "Edit and share calendar" : "Breyta og deila dagatali", + "Edit calendar" : "Breyta dagatali", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Hætti að deila dagatalinu eftir {countdown} sekúndu","Hætti að deila dagatalinu eftir {countdown} sekúndur"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Eyði dagatalinu eftir {countdown} sekúndu","Eyði dagatalinu eftir {countdown} sekúndur"], + "An error occurred, unable to create the calendar." : "Villa kom upp, gat ekki búið til dagatalið.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Skráðu inn gilda slóð (starting with http://, https://, webcal://, or webcals://)", + "Calendars" : "Dagatöl", + "Add new" : "Bæta við nýju", + "New calendar" : "Nýtt dagatal", + "Name for new calendar" : "Nafn á nýju dagatali", + "Creating calendar …" : "Útbý dagatal …", + "New calendar with task list" : "Nýtt dagatal með verkefnalista", + "New subscription from link (read-only)" : "Ný áskrift úr tengli (skrifvarið)", + "Creating subscription …" : "Útbý áskrift …", + "Add public holiday calendar" : "Bæta við opinberu frídagatali", + "Add custom public calendar" : "Bæta við sérsniðnu opinberu dagatali", + "Calendar link copied to clipboard." : "Dagatalstengill afritaður á klippispjald.", + "Calendar link could not be copied to clipboard." : "Ekki var hægt að afrita dagatalstengil á klippispjald.", + "Copy subscription link" : "Afrita áskriftartengil", + "Copying link …" : "Afrita tengil …", + "Copied link" : "Afritaði tengil", + "Could not copy link" : "Gat ekki afritað tengil", + "Export" : "Flytja út", + "Untitled item" : "Ónefnt atriði", + "Unknown calendar" : "Óþekkt dagatal", + "Could not load deleted calendars and objects" : "Gat ekki hlaðið inn eyddum dagatölum og hlutum", + "Could not delete calendar or event" : "Gat ekki eytt dagatali eða atburði", + "Could not restore calendar or event" : "Gat ekki endurheimt dagatal eða atburð", + "Do you really want to empty the trash bin?" : "Viltu örugglega tæma ruslið?", + "Empty trash bin" : "Tæma ruslið", + "Trash bin" : "Rusl", + "Loading deleted items." : "Hleð inn eyddum atriðum.", + "You do not have any deleted items." : "Þú ert ekki með nein eydd atriði.", + "Name" : "Heiti", + "Deleted" : "Eytt", + "Restore" : "Endurheimta", + "Delete permanently" : "Eyða varanlega", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Atriðum í ruslinu er eytt eftir {numDays} dag","Atriðum í ruslinu er eytt eftir {numDays} daga"], + "Could not update calendar order." : "Gat ekki uppfært röð dagatalanna.", + "Shared calendars" : "Sameiginleg dagatöl", + "Deck" : "Deck-spjaldaforrit", + "Hidden" : "Falinn", + "Internal link" : "Innri tengill", + "A private link that can be used with external clients" : "Einkatengill sem hægt er að nota með öðrum forritum", + "Copy internal link" : "Afrita innri tengil", + "An error occurred, unable to publish calendar." : "Villa kom upp, gat ekki gefið út dagatalið.", + "An error occurred, unable to send email." : "Villa kom upp, gat ekki sent tölvupóst.", + "Embed code copied to clipboard." : "Ívafningarkóði afritaður á klippispjald.", + "Embed code could not be copied to clipboard." : "Ekki var hægt að afrita ívafningarkóða á klippispjald.", + "Unpublishing calendar failed" : "Mistókst að hætta birtingu dagatals", "Share link" : "Deila tengli", - "Publish calendar" : "Gefa út dagatal", - "Publishing calendar" : "Gef út dagatal", "Copy public link" : "Afrita opinberan tengil", "Send link to calendar via email" : "Senda tengil á dgatal með tölvupósti", "Enter one address" : "Settu inn eitt netfang", "Sending email …" : "Sendi tölvupóst ...", - "Copy subscription link" : "Afrita áskriftartengil", - "Copying link …" : "Afrita tengil …", - "Copied link" : "Afritaði tengil", - "Could not copy link" : "Gat ekki afritað tengil", "Copy embedding code" : "Afrita ívafningarkóða", "Copying code …" : "Afrita kóða …", "Copied code" : "Afritaði kóða", "Could not copy code" : "Gat ekki afritað kóða", "Delete share link" : "Eyða tengli á sameign", "Deleting share link …" : "Eyði tengli á sameign …", - "An error occurred, unable to publish calendar." : "Villa kom upp, gat ekki gefið út dagatalið.", - "An error occurred, unable to send email." : "Villa kom upp, gat ekki sent tölvupóst.", - "Embed code copied to clipboard." : "Ívafningarkóði afritaður á klippispjald.", - "Embed code could not be copied to clipboard." : "Ekki var hægt að afrita ívafningarkóða á klippispjald.", - "Unpublishing calendar failed" : "Mistókst að hætta birtingu dagatals", - "Share with users or groups" : "Deila með notendum eða hópum", - "No users or groups" : "Engir notendur eða hópar", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Teymi)", + "An error occurred while unsharing the calendar." : "Villa kom upp við að taka dagatalið úr samnýtingu.", + "An error occurred, unable to change the permission of the share." : "Villa kom upp, gat ekki breytt heimildum á sameigninni.", "can edit" : "getur breytt", "Unshare with {displayName}" : "Hætta deilingu með {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Villa kom upp, gat ekki tekið dagatalið úr deilingu.", - "An error occurred, unable to change the permission of the share." : "Villa kom upp, gat ekki breytt heimildum á sameigninni.", - "+ New calendar" : "+ Nýtt dagatal", - "New calendar" : "Nýtt dagatal", - "Name for new calendar" : "Nafn á nýju dagatali", - "Creating calendar …" : "Útbý dagatal …", - "New calendar with task list" : "Nýtt dagatal með verkefnalista", - "New subscription from link (read-only)" : "Ný áskrift úr tengli (skrifvarið)", - "Creating subscription …" : "Útbý áskrift …", - "An error occurred, unable to create the calendar." : "Villa kom upp, gat ekki búið til dagatalið.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Skráðu inn gilda slóð (starting with http://, https://, webcal://, or webcals://)", - "Trash bin" : "Ruslafata", - "Loading deleted elements." : "Hleð inn eyddum einindum.", - "You do not have any deleted elements." : "Þú ert ekki með nein eydd einindi.", - "Name" : "Heiti", - "Deleted" : "Eytt", - "Restore" : "Endurheimta", - "Delete permanently" : "Eyða varanlega", - "Empty trash bin" : "Tæma ruslið", - "Untitled element" : "Ónefnt einindi", - "Unknown calendar" : "Óþekkt dagatal", - "Could not load deleted calendars and objects" : "Gat ekki hlaðið inn eyddum dagatölum og hlutum", - "Could not restore calendar or event" : "Gat ekki endurheimt dagatal eða atburð", - "Do you really want to empty the trash bin?" : "Viltu örugglega tæma ruslið?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Atriðum í ruslinu er eytt eftir {numDays} dag","Atriðum í ruslinu er eytt eftir {numDays} daga"], - "Could not update calendar order." : "Gat ekki uppfært röð dagatalanna.", + "Share with users or groups" : "Deila með notendum eða hópum", + "No users or groups" : "Engir notendur eða hópar", + "Failed to save calendar name and color" : "Mistókst að vista heiti og lit dagatals", + "Calendar name …" : "Heiti dagatals …", + "Never show me as busy (set this calendar to transparent)" : "Aldrei sýna mig sem upptekinn/upptekna (stilla þetta dagatal á að vera gegnsætt)", + "Share calendar" : "Deila dagatali", + "Unshare from me" : "Hætta deilingu frá mér", + "Save" : "Vista", "Import calendars" : "Flytja inn dagatöl", "Please select a calendar to import into …" : "Veldu dagatal til að flytja inn í …", "Filename" : "Skráarheiti", "Calendar to import into" : "Dagatal til að flytja inn í", "Cancel" : "Hætta við", "_Import calendar_::_Import calendars_" : ["Flytja inn dagatal","Flytja inn dagatöl"], + "Select the default location for attachments" : "Veldu sjálfgefna geymslustaðsetningu viðhengja", + "Pick" : "Veldu", + "Invalid location selected" : "Ógild staðsetning valin", + "Attachments folder successfully saved." : "Tókst að vista viðhengjamöppu.", + "Error on saving attachments folder." : "Villa við að vista viðhengjamöppu.", + "Default attachments location" : "Sjálfgefin staðsetning viðhengja", "{filename} could not be parsed" : "Ekki var hægt að þátta {filename}", "No valid files found, aborting import" : "Engar gildar skrár fundust, hætti innflutningi", - "Import partially failed. Imported {accepted} out of {total}." : "Innflutningur mistókst að hluta. Flutti inn {accepted} af {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Það tókst að flytja inn %n atburð","Það tókst að flytja inn %n atburði"], + "Import partially failed. Imported {accepted} out of {total}." : "Innflutningur mistókst að hluta. Flutti inn {accepted} af {total}.", "Automatic" : "Sjálfvirkt", "Automatic ({detected})" : "Sjálfvirkt ({detected})", "New setting was not saved successfully." : "Ekki tókst að vista nýju stillinguna.", - "Shortcut overview" : "Yfirlit flýtilykla", - "or" : "eða", "Navigation" : "Yfirsýn", "Previous period" : "Fyrra tímabil", "Next period" : "Næsta tímabil", @@ -139,7 +171,8 @@ "Day view" : "Dagsyfirlit", "Week view" : "Vikuyfirlit", "Month view" : "Mánaðaryfirlit", - "List view" : "Listasýn", + "Year view" : "Ársyfirlit", + "List view" : "Listayfirlit", "Actions" : "Aðgerðir", "Create event" : "Búa til atburð", "Show shortcuts" : "Birta flýtileiðir", @@ -148,24 +181,29 @@ "Save edited event" : "Vista breyttan atburð", "Delete edited event" : "Eyða breyttum atburði", "Duplicate event" : "Tvítaka atburð", + "Shortcut overview" : "Yfirlit flýtilykla", + "or" : "eða", + "Calendar settings" : "Stillingar dagatals", + "At event start" : "Við upphaf atburðar", + "No reminder" : "Engin áminning", + "Failed to save default calendar" : "Mistókst að vista sjálfgefið dagatal", + "CalDAV link copied to clipboard." : "CalDAV-tengill afritaður á klippispjald.", + "CalDAV link could not be copied to clipboard." : "Ekki var hægt að afrita CalDAV-tengil á klippispjald.", "Enable birthday calendar" : "Virkja fæðingardagatal", "Show tasks in calendar" : "Sýna verkefni í dagatali", "Enable simplified editor" : "Virkja einfaldaðan ritil", - "Limit visible events per view" : "Takmarka sýnilega atburði í hverri sýn", + "Limit the number of events displayed in the monthly view" : "Takmarka fjölda atburða sem birtast í mánaðaryfirlitinu", "Show weekends" : "Sýna helgar", "Show week numbers" : "Sýna vikunúmer", "Time increments" : "Tímaþrep", + "Default calendar for incoming invitations" : "Sjálfgefið dagatal fyrir boð sem berast", "Default reminder" : "Sjálfgefin áminning", "Copy primary CalDAV address" : "Afrita aðal-CalDAV-vistfang", "Copy iOS/macOS CalDAV address" : "Afrita iOS/macOS CalDAV-vistfang ", "Personal availability settings" : "Persónulegar stillingar varðandi hvenær til taks", "Show keyboard shortcuts" : "Birta flýtivísanir á lyklaborði", - "Calendar settings" : "Stillingar dagatals", - "No reminder" : "Engin áminning", - "CalDAV link copied to clipboard." : "CalDAV-tengill afritaður á klippispjald.", - "CalDAV link could not be copied to clipboard." : "Ekki var hægt að afrita CalDAV-tengil á klippispjald.", - "Appointment was created successfully" : "Tókst að búa til stefnumót", - "Appointment was updated successfully" : "Tókst að uppfæra stefnumót", + "Appointment schedule successfully created" : "Tókst að útbúa dagskrá stefnumóta", + "Appointment schedule successfully updated" : "Tókst að uppfæra dagskrá stefnumóta", "_{duration} minute_::_{duration} minutes_" : ["{duration} mínúta","{duration} mínútur"], "0 minutes" : "0 mínútur", "_{duration} hour_::_{duration} hours_" : ["{duration} klukkustund","{duration} klukkustundir"], @@ -176,7 +214,14 @@ "To configure appointments, add your email address in personal settings." : "Til að setja upp stefnumót, skaltu setja inn tölvupóstfangið þitt í einkastillingum þínum.", "Public – shown on the profile page" : "Opinbert - birt á notandasíðunni", "Private – only accessible via secret link" : "Einka - eingöngu aðgengilegt í gegnum einkatengil", + "Appointment schedule saved" : "Dagskrá stefnumóta vistuð", + "Create appointment schedule" : "Útbúa dagskrá stefnumóta", + "Edit appointment schedule" : "Breyta dagskrá stefnumóta", + "Update" : "Uppfæra", + "Appointment name" : "Heiti stefnumóts", "Location" : "Staðsetning", + "Create a Talk room" : "Búa til spjallrás", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Einstakur tengill verður útbúinn fyrir hvert stefnumót og sendur í staðfestingarpóstinum", "Description" : "Lýsing", "Visibility" : "Sýnileiki", "Duration" : "Duration", @@ -194,23 +239,37 @@ "Friday" : "Föstudagur", "Saturday" : "Laugardagur", "Sunday" : "Sunnudagur", + "Weekdays" : "Virkir dagar", "Add time before and after the event" : "Bættu við tíma fyrir og eftir atburðinn", "Before the event" : "Fyrir atburðinn", "After the event" : "Eftir atburðinn", "Planning restrictions" : "Takmarkanir við áætlunargerð", "Minimum time before next available slot" : "Lágmarkstími á undan næsta tímahólfi", "Max slots per day" : "Hámarksfjöldi tímahólfa á dag", - "Limit how far in the future appointments can be booked" : "Takmarka hve lant fram í tíma hægt er að bóka stefnumót", - "Create appointment" : "Búa til stefnumót", - "Edit appointment" : "Breyta stefnumóti", - "Save" : "Vista", - "Update" : "Uppfæra", + "Limit how far in the future appointments can be booked" : "Takmarka hve langt fram í tíma hægt er að bóka stefnumót", + "It seems a rate limit has been reached. Please try again later." : "Það lítur út fyrir að takmörkum á bókunum hafi verið náð. Reyndu aftur síðar.", "Please confirm your reservation" : "Staðfestu pöntunina þína", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Við höfum sent þér tölvupóst með nánari upplýsingum. Staðfestu stefnumótið þitt með því að fylgja tenglinum í póstinum. Þú mátt núna loka þessari síðu.", "Your name" : "Nafnið þitt", "Your email address" : "Netfangið þitt", + "Please share anything that will help prepare for our meeting" : "Deildu með okkur hverju því sem getur hjálpað við að undirbúa fundinn", "Could not book the appointment. Please try again later or contact the organizer." : "Gat ekki bókað stefnumótið. Reyndu aftur seinna eða hafðu samband við skipuleggjendurna.", - "Book the appointment" : "Bóka stefnumótið", - "Reminder" : "Áminning", + "Back" : "Til baka", + "Book appointment" : "Bóka stefnumót", + "Error fetching Talk conversations." : "Villa við að sækja samtöl af spjallsvæði.", + "Conversation does not have a valid URL." : "Samtalið er ekki með gilda vefslóð.", + "Successfully added Talk conversation link to location." : "Tókst að bæta tengli á samtal á staðsetningu.", + "Successfully added Talk conversation link to description." : "Tókst að bæta tengli á samtal á lýsingu.", + "Failed to apply Talk room." : "Mistókst að virkja spjallrás.", + "Error creating Talk conversation" : "Mistókst að útbúa samtal", + "Select a Talk Room" : "Veldu spjallrás", + "Add Talk conversation" : "Bæta við samtali á spjallrás", + "Fetching Talk rooms…" : "Sæki spjallrásir…", + "No Talk room available" : "Engin spjallrás tiltæk", + "Create a new conversation" : "Hefja nýtt samtal", + "Select conversation" : "Veldu samtal", + "on" : "þann", + "at" : "klukkan", "before at" : "á undan klukkan", "Notification" : "Tilkynning", "Email" : "Tölvupóstur", @@ -221,110 +280,138 @@ "Edit time" : "Breyta tíma", "Save time" : "Vista tíma", "Remove reminder" : "Fjarlægja áminningu", - "on" : "þann", - "at" : "klukkan", - "+ Add reminder" : "+ Bæta við áminningu", "Add reminder" : "Bæta við áminningu", - "_second_::_seconds_" : ["sekúnda","sekúndur"], - "_minute_::_minutes_" : ["mínúta","mínútur"], - "_hour_::_hours_" : ["klukkustund","klukkustundir"], - "_day_::_days_" : ["dagur","dagar"], - "_week_::_weeks_" : ["vika","vikur"], + "seconds" : "sekúndum", + "minutes" : "mínútur", + "hours" : "klukkustundir", + "days" : "daga", + "weeks" : "vikur", + "Choose a file to add as attachment" : "Veldu skrá til að setja sem viðhengi", + "Choose a file to share as a link" : "Veldu skrá til að deila sem tengli", + "Attachment {name} already exist!" : "Viðhengið {name} er þegar til staðar!", + "Could not upload attachment(s)" : "Gat ekki sent inn viðhengi", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Þú ert í þann mund að fara yfir á {host}. Ertu viss um að þú viljir halda áfram? Tengill: {link}", + "Proceed" : "Halda áfram", + "No attachments" : "Engin viðhengi", + "Add from Files" : "Bæta við úr skrám", + "Upload from device" : "Senda inn frá tæki", + "Delete file" : "Eyða skrá", + "Confirmation" : "Staðfesting", + "_{count} attachment_::_{count} attachments_" : ["{count} viðhengi","{count} viðhengi"], "Suggested" : "Stungið upp á", "Available" : "Tiltækt", - "Not available" : "Not available", - "Checking availability" : "Athuga hvað sé á lausu", "Invitation accepted" : "Boð samþykkt", "Accepted {organizerName}'s invitation" : "Samþykkti boð frá {organizerName}", + "Participation marked as tentative" : "Þátttaka merkt með fyrirvara", + "Invitation is delegated" : "Boðinu er framvísað", + "Not available" : "Not available", "Invitation declined" : "Boði hafnað", "Declined {organizerName}'s invitation" : "Hafnaði boði frá {organizerName}", - "Invitation is delegated" : "Boðinu er framvísað", - "Participation marked as tentative" : "Þátttaka merkt með fyrirvara", - "Invitation sent" : "Boð sent", + "Availability will be checked" : "Framboð verður athugað", + "Invitation will be sent" : "Boð verður sent", + "Failed to check availability" : "Mistókst að skoða lausa tíma", + "Failed to deliver invitation" : "Mistókst að afhenda boð", + "Awaiting response" : "Bíður eftir svari", + "Checking availability" : "Athuga hvað sé á lausu", "Has not responded to {organizerName}'s invitation yet" : "Hefur ekki svarað boðinu frá {organizerName} ennþá", - "Availability of attendees, resources and rooms" : "Framboð á þátttakendum, tilföngum og herbergjum", + "chairperson" : "fundarstjóri", + "required participant" : "nauðsynlegur þátttakandi", + "non-participant" : "ekki þátttakandi", + "optional participant" : "aukaþátttakandi", "{organizer} (organizer)" : "{organizer} (organizer)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Framboð á þátttakendum, tilföngum og herbergjum", + "Suggestion accepted" : "Tillaga samþykkt", + "Out of office" : "Ekki á staðnum", + "Attendees:" : "Þáttakendur:", + "Done" : "Lokið", + "Search room" : "Leita að aðstöðu", + "Room name" : "Heiti fundarsalar", + "Check room availability" : "Athuga framboð", "Free" : "Laus", "Busy (tentative)" : "Upptekinn (með fyrirvara)", "Busy" : "Upptekinn", - "Out of office" : "Ekki á staðnum", "Unknown" : "Óþekkt", - "Accept" : "Samþykkja", - "Decline" : "Hafna", - "Tentative" : "Með fyrirvara", + "Find a time" : "Finna tíma", "The invitation has been accepted successfully." : "Boðið hefur verið samþykkt.", "Failed to accept the invitation." : "Mistókst að samþykkja boðið.", "The invitation has been declined successfully." : "Boðinu hefur verið hafnað.", "Failed to decline the invitation." : "Mistókst að hafna boðinu.", "Your participation has been marked as tentative." : "Þátttaka þín hefur verið merkt með fyrirvara.", "Failed to set the participation status to tentative." : "Mistókst að merkja stöðu þátttakanda með fyrirvara.", - "Create Talk room for this event" : "Búa til spjallsvæði fyrir þennan atburð", - "Show busy times" : "Sýna upptekinn tíma", + "Accept" : "Samþykkja", + "Decline" : "Hafna", + "Tentative" : "Með fyrirvara", "No attendees yet" : "Engir þátttakendur ennþá", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} boðið, {confirmedCount} staðfestir", + "Successfully appended link to talk room to location." : "Tókst að bæta tengli á spjallsvæði við staðsetningu.", "Successfully appended link to talk room to description." : "Tókst að bæta tengli á spjallsvæði við lýsingu.", "Error creating Talk room" : "Villa við að búa til spjallsvæði.", - "Send email" : "Senda tölvupóst", + "Attendees" : "Þátttakendur", + "_%n more guest_::_%n more guests_" : ["%n gestur til viðbótar","%n gestir til viðbótar"], + "Remove group" : "Fjarlægja hóp", + "Remove attendee" : "Fjarlægja þátttakanda", + "Request reply" : "Biðja um svar", "Chairperson" : "Fundarstjóri", "Required participant" : "Nauðsynlegur þátttakandi", "Optional participant" : "Aukaþátttakandi", "Non-participant" : "Ekki þátttakandi", - "Remove attendee" : "Fjarlægja þátttakanda", - "Search for emails, users or contacts" : "Leita að tölvupóstföngum, notendum eða tengiliðum", + "_%n member_::_%n members_" : ["%n þátttakandi","%n þátttakendur"], "No match found" : "Fann engar samsvaranir", + "Note that members of circles get invited but are not synced yet." : "Athugaðu að meðlimum hringja verður boðið en er enn ekki búnir að samstillast.", + "Note that members of contact groups get invited but are not synced yet." : "Athugaðu að meðlimum tengiliðahópa verður boðið en er enn ekki búnir að samstillast.", "(organizer)" : "(skipuleggjandi)", + "Make {label} the organizer" : "Gera {label} að skipuleggjanda", + "Make {label} the organizer and attend" : "Gera {label} að skipuleggjanda og taka þátt", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Til að senda út boð og meðhöndla svör, [linkopen]skaltu setja inn tölvupóstfangið þitt í einkastillingum þínum[linkclose].", "Remove color" : "Fjarlægja lit", "Event title" : "Titill atburðar", - "All day" : "Heilsdagsviðburður", - "from {startDate}" : "frá {startDate}", - "from {startDate} at {startTime}" : "frá {startDate} klukkan {startTime}", - "to {endDate}" : "til {endDate}", - "to {endDate} at {endTime}" : "til {endDate} klukkan {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Get ekki breytt heils-dags-stillingu viðburða sem eru hluti af endurtekningasetti.", + "From" : "Frá", + "To" : "Til", "Repeat" : "Endurtaka", - "End repeat" : "Hætta endurtekningu", - "Select to end repeat" : "Veldu til að hætta endurtekningu", + "_time_::_times_" : ["sinni","sinnum"], "never" : "aldrei", "on date" : "þann", "after" : "eftir", - "_time_::_times_" : ["sinni","sinnum"], + "End repeat" : "Hætta endurtekningu", + "Select to end repeat" : "Veldu til að hætta endurtekningu", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Þessi viðburður er endurtekninga-frávik í endurtekningasetti. Þú getur ekki bætt endurtekninga-reglu við hann.", "first" : "fyrsta", - "third" : "þriðja", - "fourth" : "fjórða", - "fifth" : "fimmta", - "second to last" : "næstsíðasta", - "last" : "síðasta", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Breytingar á endurtekninga-reglunni mun aðeins eiga við þetta tilvik og framtíðartilvik.", "Repeat every" : "Endurtaka", "By day of the month" : "Eftir degi mánaðarins", "On the" : "Þann", + "_day_::_days_" : ["dagur","dagar"], + "_week_::_weeks_" : ["vika","vikur"], "_month_::_months_" : ["mánuður","mánuðir"], "_year_::_years_" : ["ár","ár"], "weekday" : "vinnudagur", "weekend day" : "helgardagur", - "No recurrence" : "Engin endurtekning", - "Suggestions" : "Tillögur", - "No rooms or resources yet" : "Ennþá kki neinir salir eða tilföng", + "Does not repeat" : "Endurtekst ekki", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Endurtekninga-skilgreining þessa viðburðar er ekki að fullu studd í Nextcloud. Ef þú breytir endurtekninga-valkostunum, gætu sumar endurtekningar tapast.", + "No rooms or resources yet" : "Ennþá ekki neinir salir eða tilföng", + "Resources" : "Tilföng", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sæti","{seatingCapacity} sæti"], "Add resource" : "Bæta við tilfangi", "Has a projector" : "Er með skjávarpa", "Has a whiteboard" : "Er með töflu", "Wheelchair accessible" : "Aðgengilegt í hjólastól", "Remove resource" : "Fjarlægja tilfang", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sæti","{seatingCapacity} sæti"], - "Projector" : "Skjávarpi", - "Whiteboard" : "Teiknitafla", "Search for resources or rooms" : "Leita að tilföngum eða fundarsölum", "available" : "tiltækt", "unavailable" : "ekki tiltækt", + "Show all rooms" : "Sýna alla fundarsali", + "Projector" : "Skjávarpi", + "Whiteboard" : "Teiknitafla", "Room type" : "Tegund salar", "Any" : "Hvað sem er", "Minimum seating capacity" : "Lágmarks-sætafjöldi", - "More" : "Meira", - "Update this occurrence" : "Uppfæra þetta tilviki", + "More details" : "Nánari upplýsingar", "Update this and all future" : "Uppfæra þetta og öll síðari", + "Update this occurrence" : "Uppfæra þetta tilviki", "Public calendar does not exist" : "Opinbert dagatal er ekki til", "Maybe the share was deleted or has expired?" : "Hugsanlega hefur sameigninni verið eytt eða hún sé útrunnin?", - "Please select a time zone:" : "Veldu tímabelti:", - "Pick a time" : "Veldu tíma", - "Pick a date" : "Veldu dagsetningu", "from {formattedDate}" : "frá {formattedDate}", "to {formattedDate}" : "til {formattedDate}", "on {formattedDate}" : "þann {formattedDate}", @@ -334,9 +421,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} kl. {formattedTime}", "Please enter a valid date" : "Settu inn gilda dagsetningu", "Please enter a valid date and time" : "Settu inn gilda dags- og tímasetningu", + "Select a time zone" : "Veldu tímabelti", + "Please select a time zone:" : "Veldu tímabelti:", + "Pick a time" : "Veldu tíma", + "Pick a date" : "Veldu dagsetningu", "Type to search time zone" : "Skrifaðu til að leita að tímabelti...", "Global" : "Víðvært", - "Select date" : "Veldu dagsetningu", + "Holidays in {region}" : "Frídagar á {region}", + "An error occurred, unable to read public calendars." : "Villa kom upp, gat ekki lesið opinber dagatöl.", + "An error occurred, unable to subscribe to calendar." : "Villa kom upp, gat ekki gerst áskrifandi að dagatali.", + "Public holiday calendars" : "Dagatöl með opinberum frídögum", + "Public calendars" : "Opinber dagatöl", + "No valid public calendars configured" : "Engin gild opinber dagatöl stillt", + "Speak to the server administrator to resolve this issue." : "Hafðu samband við kerfisstjóra netþjónsins til að leysa þetta.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Dagatöl með opinberum frídögum koma frá Thunderbird. Dagatalsgögnin eru sótt frá {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Þessar tillögur að opinberum dagatölum koma frá stjórnanda netþjónsins. Gögn dagatalanna verða sótt inn á viðkomandi vefsvæði.", + "By {authors}" : "Frá {authors}", + "Subscribed" : "Í áskrift", + "Subscribe" : "Gerast áskrifandi", + "Could not fetch slots" : "Gat ekki sótt tímahólf", + "Select a date" : "Veldu dagsetningu", "Select slot" : "Veldu tímahólf", "No slots available" : "Engin tímahólf tiltæk", "The slot for your appointment has been confirmed" : "Tímahólfið fyrir stefnumótið þtt er staðfestur", @@ -351,24 +455,25 @@ "Book an appointment with {name}" : "Bóka stefnumót með {name}", "No public appointments found for {name}" : "Engin opinber stefnumót fundust fyrir {name}", "Personal" : "Persónulegt", - "No more events today" : "Ekki fleiri atburðir í dag", - "No upcoming events" : "Engir atburðir á næstunni", - "Create a new event" : "Búa til nýjan atburð", - "[Today]" : "[Í dag]", - "[Tomorrow]" : "[Á morgun]", - "[Yesterday]" : "[Í gær]", - "[Last] dddd" : "[Síðasta] dddd", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Sjálfvirka tímabeltisgreiningin ákvarðaði tímabeltið þitt sem UTC.\nLíklega er það vegna öryggisstillinga í vafranum þínum.\nStilltu tímabeltið þitt í stillingum dagatalsins.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Stillta tímabeltið þitt ({timezoneId}) fannst ekki. Nota UTC til vara.\nStilltu tímabeltið þitt í stillingum dagatalsins og tilkynntu þetta vandamál.", + "Availability of {displayName}" : "Lausir tímar hjá {displayName}", + "Edit event" : "Breyta atburði", "Event does not exist" : "Atburður er ekki til", "Duplicate" : "Tvítaka", "Delete this occurrence" : "Eyða þessu tilviki", "Delete this and all future" : "Eyða þessu og framtíðar tilvikum", - "Details" : "Nánar", - "Attendees" : "Þátttakendur", - "Resources" : "Tilföng", + "All day" : "Heilsdagsviðburður", + "Managing shared access" : "Sýsla með sameiginlegan aðgang", + "Deny access" : "Hafna aðgangi", + "Invite" : "Bjóða", + "_User requires access to your file_::_Users require access to your file_" : ["Notandi þarf aðgang að skránni þinni","Notendur þurfa aðgang að skránni þinni"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Viðhengi krefst sameiginlegs aðgangs","Viðhengi krefjast sameiginlegs aðgangs"], + "Untitled event" : "Ónefndur atburður", "Close" : "Loka", - "Show more details" : "Sýna frekari upplýsingar", "Subscribe to {name}" : "Panta áskrift að {name}", "Export {name}" : "Flytja út {name}", + "Show availability" : "Sýna lausa tíma", "Anniversary" : "Afmæli", "Appointment" : "Stefnumót", "Business" : "Viðskipti", @@ -384,6 +489,9 @@ "Travel" : "Ferðalög", "Vacation" : "Í fríi", "Midnight on the day the event starts" : "Miðnætti dagsins sem atburður hefst", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n degi fyrir atburðinn kl. {formattedHourMinute}","%n dögum fyrir atburðinn kl. {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n viku fyrir atburðinn kl. {formattedHourMinute}","%n vikum fyrir atburðinn kl. {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "dagsins sem atburður hefst kl. {formattedHourMinute}", "at the event's start" : "{type} við upphaf atburðar", "at the event's end" : "{type} við lok atburðar", "{time} before the event starts" : "{time} áður en atburður hefst", @@ -393,7 +501,6 @@ "on {time}" : "á slaginu {time}", "on {time} ({timezoneId})" : "klukkan {time} ({timezoneId})", "Week {number} of {year}" : "Vika {number}, ársins {year}", - "Does not repeat" : "Endurtekst ekki", "Daily" : "Daglega", "Weekly" : "Vikulega", "Monthly" : "Mánaðarlega", @@ -403,24 +510,26 @@ "_Every %n month_::_Every %n months_" : ["Á %n mánaðar fresti","Á %n mánaða fresti"], "_Every %n year_::_Every %n years_" : ["Á %n árs fresti","Á %n ára fresti"], "_on {weekday}_::_on {weekdays}_" : ["á {weekday}","á {weekdays}"], - "in {monthNames}" : "í {monthNames}", + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["daginn {dayOfMonthList}","dagana {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "þann {ordinalNumber} {byDaySet}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "í {monthNames} þann {ordinalNumber} {byDaySet}", "until {untilDate}" : "þangað til {untilDate}", "_%n time_::_%n times_" : ["%n sinni","%n sinnum"], - "Untitled event" : "Ónefndur atburður", + "second" : "sekúnda", + "third" : "þriðja", + "fourth" : "fjórða", + "fifth" : "fimmta", + "second to last" : "næstsíðasta", + "last" : "síðasta", "Untitled task" : "Ónefnt verkefni", "Please ask your administrator to enable the Tasks App." : "Biddu kerfisstjórann þinn um að virkja verkefnasorritið (Tasks).", - "Prev" : "Fyrra", - "Next" : "Næsta", - "Prev year" : "Fyrra ár", - "Next year" : "Næsta ár", - "Year" : "Ár", "W" : "V", "%n more" : "%n til viðbótar", "No events to display" : "Engir atburðir til að birta", "_+%n more_::_+%n more_" : ["+%n til viðbótar","+%n til viðbótar"], "No events" : "Engir atburðir", "Create a new event or change the visible time-range" : "Búa til nýjan atburð eða breyta sýnilegu tímabili", + "Failed to save event" : "Mistókst að vista atburð", "It might have been deleted, or there was a typo in a link" : "Því gæti hafa verið eytt, eða að stafsetningarvilla hafi verið í tengli", "It might have been deleted, or there was a typo in the link" : "Því gæti hafa verið eytt, eða að stafsetningarvilla hafi verið í tenglinum", "Meeting room" : "Fundarherbergi", @@ -433,7 +542,7 @@ "When shared hide this event" : "Þegar er deilt, fela þennan atburð", "The visibility of this event in shared calendars." : "Sýnileiki þessa atburðar í sameiginlegum dagatölum", "Add a location" : "Bæta við staðsetningu", - "Add a description" : "Settu inn lýsingu", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Bættu við lýsingu\n\n- Um hvað snýst þessi fundur\n- Atriði á dagskrá\n- Hvaðeina sem þátttakendur þurfa að undirbúa", "Status" : "Staða", "Confirmed" : "Staðfest", "Canceled" : "Hætt við", @@ -446,135 +555,23 @@ "Add this as a new category" : "Bæta þessu við sem nýjum flokki", "Custom color" : "Sérsniðinn litur", "Special color of this event. Overrides the calendar-color." : "Sértækur litur þessa atburðar. Er rétthærri en litur dagatalsins.", - "Chat room for event" : "Spjallsvæði vegna atburðar", + "Error while sharing file" : "Villa við deilingu skráar", + "Error while sharing file with user" : "Villa við deilingu skráar með notanda", + "Attachment {fileName} already exists!" : "Viðhengið {fileName} er þegar til staðar!", + "An error occurred during getting file information" : "Villa kom upp við að sækja upplýsingar um skrá", + "Talk conversation for event" : "Samtal fyrir atburð", + "An error occurred, unable to delete the calendar." : "Villa kom upp, gat ekki eytt dagatalinu.", "Imported {filename}" : "Flutti inn {filename}", - "Meditation" : "Hugleiðsla", - "Relaxing" : "Afslöppun", - "Relax" : "Afslöppun", - "Break" : "Hlé", - "Commute" : "Samgöngur", - "Commuting" : "Á ferðinni", - "Shuttle" : "Skutl", - "Invoice" : "Reikningur", - "Finance" : "Fjármál", - "Bank" : "Banki", - "Money" : "Peningar", - "Wedding" : "Brúðkaup", - "Dog" : "Hundur", - "Concert" : "Tónleikar", - "Festival" : "Hátíð", - "Theater" : "Leikhús", - "Theatre" : "Leikhús", - "Presentation" : "Kynning", - "Talk" : "Spjalla", - "Speech" : "Tal", - "Deadline" : "Tímamörk", - "Submission" : "Innsending", - "Reporting" : "Skýrslugerð", - "Camping" : "Tjaldútilega", - "Camp" : "Tjaldstæði", - "Election" : "Kosningar", - "Voting" : "Kosið", - "Vote" : "Greiðsla atkvæða", - "Barbecue" : "Grill", - "Barbeque" : "Grill", - "Garden" : "Garður", - "Farm" : "Býli", - "Movie" : "Kvikmynd", - "Cinema" : "Kvikmyndahús", - "Graduation" : "Útskrift", - "Brainstorm" : "Hugarflug", - "Review" : "Yfirfara", - "Audit" : "Endurskoðun", - "Inspection" : "Eftirlit", - "Proofreading" : "Prófarkalestur", - "Baseball" : "Hornabolti", - "Meet" : "Hittast", - "Planning" : "Skipulagning", - "Pointing" : "Bending", - "Retrospective" : "Endurskoðun", - "Office" : "Skrifstofa", - "Contributor week" : "Vika með þátttakendum", - "Mail" : "Póstur", - "Soccer" : "Fótbolti", - "Football" : "Ruðningsbolti", - "Gaming" : "Spilun", - "Drive" : "Keyra", - "Driving" : "Akstur", - "Bicycle" : "Reiðhjól", - "Cycle" : "Hjóla", - "Cycling" : "Hjólreiðar", - "Biking" : "Hjólreiðar", - "Bike" : "Hjólandi", - "Podcast" : "Hlaðvarp", - "Basketball" : "Körfubolti", - "Fishing" : "Fiskveiði", - "Hiking" : "Gönguferð", - "Hike" : "Ganga", - "Art" : "Listir", - "Exhibition" : "Listasýning", - "Museum" : "Safn", - "Pilates" : "Pílates", - "Park" : "Almenningsgarður", - "Walk" : "Ganga", - "Studying" : "Lærdómur", - "Doctor" : "Læknir", - "Health" : "Heilsa", - "Dentist" : "Tannlæknir", - "Hospital" : "Sjúkrahús", - "Interview" : "Viðtal", - "Training" : "Þjálfun", - "Practice" : "Æfingar", - "Sports" : "Íþróttir", - "Exercise" : "Æfing", - "Work out" : "Líkamsrækt", - "Working out" : "Púla", - "Gym" : "Líkamsrækt", - "Barber" : "Rakari", - "Haircut" : "Hárskurður", - "Hairdresser" : "Hársnyrting", - "Exam" : "Próf", - "Written test" : "Skriflegt próf", - "Oral test" : "Munnlegt próf", - "Working" : "Vinna", - "New Years Eve" : "Gamlárskvöld", - "NYE" : "Gamlárs", - "Fireworks" : "Flugeldar", - "Running" : "Hlaup", - "Go for a run" : "Farðu út að hlaupa", - "Marathon" : "Maraþon", - "Video-conference" : "Myndfjarfundur", - "Conference-call" : "Símafundur", - "Video-call" : "Myndsamtal", - "Video-chat" : "Myndspjall", - "Video-meeting" : "Myndfundur", - "Call" : "Símtal", - "Calling" : "Hringi", - "Christmas" : "Jól", - "Conference" : "Fjarfundur", - "Pizza" : "Flatbaka", - "Travelling" : "Flakk", - "Trip" : "Ferð", - "Journey" : "Ferðalag", - "Collaborate" : "Samstarf", - "Pair" : "Para", - "Lecture" : "Fyrirlestur", - "Seminar" : "Námskeið", - "Teaching" : "Kennsla", - "Photograph" : "Ljósmynd", - "Party" : "Partý", - "Celebration" : "Hátíðahöld", - "Celebrate" : "Fagna", - "Birthday" : "Afmælisdagur", - "Shopping" : "Versla", - "Groceries" : "Matvörur", - "Skate" : "Skautar", - "Skateboard" : "Hjólabretti", - "Wine tasting" : "Vínsmökkun", - "Golf" : "Golf", - "Dinner" : "Kvöldverður", - "Lunch" : "Hádegisverður", + "This is an event reminder." : "Þetta er áminning vegna atburðar.", + "Error while parsing a PROPFIND error" : "Villa við þáttun á PROPFIND-villu", "Appointment not found" : "Stefnumót fannst ekki", - "User not found" : "Notandi fannst ekki" + "User not found" : "Notandi fannst ekki", + "Reminder" : "Áminning", + "+ Add reminder" : "+ Bæta við áminningu", + "Select automatic slot" : "Velja sjálfvirkt tímahólf", + "with" : "með", + "Available times:" : "Lausir tímar:", + "Suggestions" : "Tillögur", + "Details" : "Nánar" },"pluralForm" :"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);" } \ No newline at end of file diff --git a/l10n/it.js b/l10n/it.js index 35cb47a3c1436998307946998cf82ea6a5345efa..38c35d47eb0230f5d9c3e197123a1d4667b7076e 100644 --- a/l10n/it.js +++ b/l10n/it.js @@ -1,135 +1,172 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "L'indirizzo email è troppo lungo", "User-Session unexpectedly expired" : "Sessione utente scaduta in modo inatteso", "Provided email-address is not valid" : "L'indirizzo email fornito non è valido", "%s has published the calendar »%s«" : "%s ha pubblicato il calendario «%s»", "Unexpected error sending email. Please contact your administrator." : "Errore inatteso nell'invio dell'email. Contatta l'amministratore.", "Successfully sent email to %1$s" : "Email inviata a %1$s correttamente", "Hello," : "Ciao,", - "We wanted to inform you that %s has published the calendar »%s«." : "Ti vogliamo informare che %s ha pubblicato il calendario «%s». ", + "We wanted to inform you that %s has published the calendar »%s«." : "Ti informiamo del fatto che %s ha pubblicato il calendario «%s».", "Open »%s«" : "Apri «%s»", "Cheers!" : "Evviva!", "Upcoming events" : "Prossimi eventi", + "No more events today" : "Non ci sono altri eventi oggi", + "No upcoming events" : "Nessun prossimo evento", + "More events" : "Altri eventi", + "%1$s with %2$s" : "%1$s con %2$s", + "Calendar" : "Calendario", + "New booking {booking}" : "Nuova prenotazione {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) ha prenotato l'appuntamento \"{config_display_name}\" il {date_time}.", "Appointments" : "Appuntamenti", "Schedule appointment \"%s\"" : "Fissa appuntamento \"%s\"", "Schedule an appointment" : "Fissa un appuntamento", + "%1$s - %2$s" : "* %1$s - %2$s", "Prepare for %s" : "Prepara per %s", "Follow up for %s" : "Azione supplementare per %s", - "Your appointment \"%s\" needs confirmation" : "Il tuo appuntamento \"%s\" richiede una conferma", + "Your appointment \"%s\" with %s needs confirmation" : "L'appuntamento \"%s\" con %s richiede una conferma", "Dear %s, please confirm your booking" : "Gentile %s, conferma la tua prenotazione", "Confirm" : "Conferma", + "Appointment with:" : "Appuntamento con:", + "Description:" : "Descrizione:", "This confirmation link expires in %s hours." : "Il collegamento di conferma scade in %s ore.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Se tuttavia desideri disdire l'appuntamento, contatta l'organizzatore.", - "Appointment:" : "Appuntamento:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Se desideri annullare l'appuntamento, contatta il tuo organizzatore rispondendo a questa email o visitando la pagina del suo profilo.", + "Your appointment \"%s\" with %s has been accepted" : "L'appuntamento \"%s\" con %s è stato accettato", + "Dear %s, your booking has been accepted." : "Caro/a %s, la tua prenotazione è stata accettata.", + "Appointment for:" : "Appuntamento per:", "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Riceverai un collegamento con l'email di conferma", "Where:" : "Luogo:", - "Description:" : "Descrizione:", - "Calendar" : "Calendario", + "Comment:" : "Commento:", + "You have a new appointment booking \"%s\" from %s" : "Hai una nuova prenotazione per un appuntamento \"%s\" da %s", + "Dear %s, %s (%s) booked an appointment with you." : "Caro %s, %s (%s) ha prenotato un appuntamento con te.", "A Calendar app for Nextcloud" : "Un'applicazione di calendario per Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "L'applicazione Calendario è un'interfaccia grafica per il server CalDAV di Nextcloud. Sincronizza facilmente gli eventi tra vari dispositivi con il tuo Nextcloud e modificali in linea.\n\n* 🚀 **Integrazione con le altre applicazioni di Nextcloud!** Attualmente Contatti - altre in arrivo.\n* 🌐 **Supporto WebCal!** Vuoi vedere le date delle partite della tua squadra preferita sul tuo calendario? Nessun problema!\n* 🙋 **Partecipanti!** Invita le persone ai tuoi eventi\n* ⌚️ **Libero/occupato:** Guarda quando i partecipanti sono disponibili per incontrarti\n* ⏰ **Promemoria!** Imposta avvisi per gli eventi nel tuo browser e via email.\n* 🔍 Ricerca! Trova facilmente i tuoi eventi\n* ☑️ Attività! Vedi le attività con una data di scadenza direttamente nel tuo calendario\n* 🙈 **Non stiamo reinventando la ruota!** Basato sulle ottime librerie [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) e [fullcalendar](https://github.com/fullcalendar/fullcalendar).", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Un'app Calendario per Nextcloud. Sincronizza facilmente gli eventi da diversi dispositivi con Nextcloud e modificali online.\n\n* 🚀 **Integrazione con altre app Nextcloud!** Come Contatti, Talk, Attività, Deck e Circles\n* 🌐 **Supporto WebCal!** Vuoi vedere le partite della tua squadra del cuore sul tuo calendario? Nessun problema! * 🙋 **Partecipanti!** Invita persone ai tuoi eventi\n* ⌚ **Libero/Occupato!** Controlla quando i tuoi partecipanti sono disponibili per l'incontro\n* ⏰ **Promemoria!** Ricevi avvisi per gli eventi nel tuo browser e via email\n* 🔍 **Cerca!** Trova i tuoi eventi in tutta semplicità\n* ☑️ **Attività!** Visualizza attività o schede Deck con una data di scadenza direttamente nel calendario\n* 🔈 **Sale di discussione!** Crea una sala di discussione associata quando prenoti una riunione con un solo clic\n* 📆 **Prenotazione appuntamenti** Invia un link alle persone in modo che possano prenotare un appuntamento con te [utilizzando questa app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Allegati!** Aggiungi, carica e visualizza gli allegati dell'evento\n* 🙈 **Non stiamo reinventando la ruota!** Basato sul fantastico [librerie c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) e [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Giorno precedente", "Previous week" : "Settimana precedente", + "Previous year" : "Anno precedente", "Previous month" : "Mese precedente", "Next day" : "Giorno successivo", "Next week" : "Settimana successiva", + "Next year" : "Anno succ.", "Next month" : "Mese successivo", - "New event" : "Nuovo evento", + "Create new event" : "Crea un nuovo evento", + "Event" : "Evento", "Today" : "Oggi", "Day" : "Giorno", "Week" : "Settimana", "Month" : "Mese", + "Year" : "Anno", "List" : "Elenco", + "Appointment link was copied to clipboard" : "Il collegamento dell'appuntamento è stato copiato negli appunti", + "Appointment link could not be copied to clipboard" : "Impossibile copiare il collegamento dell'appuntamento negli appunti", "Preview" : "Anteprima", "Copy link" : "Copia link", "Edit" : "Modifica", "Delete" : "Elimina", - "Appointment link was copied to clipboard" : "Il collegamento dell'appuntamento è stato copiato negli appunti", - "Appointment link could not be copied to clipboard" : "Impossibile copiare il collegamento dell'appuntamento negli appunti", - "Add new" : "Aggiungi nuovo", - "Untitled calendar" : "Calendario senza titolo", - "Edit name" : "Modifica nome", - "Saving name …" : "Salvataggio nome...", - "Edit color" : "Modifica colore", - "Saving color …" : "Salvataggio colore...", - "Copy private link" : "Copia collegamento privato", - "Export" : "Esporta", - "Unshare from me" : "Rimuovi condivisione da me", + "Appointment schedules" : "Orari degli appuntamenti", + "Create new" : "Crea nuovo", + "Disable calendar \"{calendar}\"" : "Disabilita il calendario \"{calendar}\"", + "Disable untitled calendar" : "Disabilita il calendario senza titolo", + "Enable calendar \"{calendar}\"" : "Abilita il calendario \"{calendar}\"", + "Enable untitled calendar" : "Abilita il calendario senza titolo", "An error occurred, unable to change visibility of the calendar." : "Si è verificato un errore, impossibile cambiare la visibilità del calendario.", - "An error occurred, unable to delete the calendar." : "Si è verificato un errore, impossibile eliminare il calendario.", - "Calendar link copied to clipboard." : "Collegamento del calendario copiato negli appunti.", - "Calendar link could not be copied to clipboard." : "Il collegamento del calendario non può essere copiato negli appunti.", - "An error occurred, unable to rename the calendar." : "Si è verificato un errore, impossibile rinominare il calendario.", - "An error occurred, unable to change the calendar's color." : "Si è verificato un errore, impossibile cambiare il colore del calendario.", + "Untitled calendar" : "Calendario senza titolo", + "Shared with you by" : "Condiviso con te da", + "Edit and share calendar" : "Modifica e condividi il calendario", + "Edit calendar" : "Modifica il calendario", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Rimozione condivisione del calendario in {countdown} secondo","Rimozione condivisione del calendario in {countdown} secondi","Rimozione condivisione del calendario in {countdown} secondi"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Eliminazione del calendario in {countdown} secondo","Eliminazione del calendario in {countdown} secondi","Eliminazione del calendario in {countdown} secondi"], + "An error occurred, unable to create the calendar." : "Si è verificato un errore, impossibile creare il calendario.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Inserisci un collegamento valido (inizia con http://, https://, webcal://, o webcals://)", + "Calendars" : "Calendari", + "Add new" : "Aggiungi nuovo", + "New calendar" : "Nuovo calendario", + "Name for new calendar" : "Nome per il nuovo calendario", + "Creating calendar …" : "Creo il calendario …", + "New calendar with task list" : "Nuovo calendario con elenco delle attività", + "New subscription from link (read-only)" : "Nuova sottoscrizione da collegamento (sola lettura)", + "Creating subscription …" : "Crea sottoscrizione...", + "Add public holiday calendar" : "Aggiungi il calendario delle festività pubbliche", + "Add custom public calendar" : "Aggiungi calendario pubblico personalizzato", + "Calendar link copied to clipboard." : "Collegamento del calendario copiato negli appunti.", + "Calendar link could not be copied to clipboard." : "Il collegamento del calendario non può essere copiato negli appunti.", + "Copy subscription link" : "Copia collegamento di sottoscrizione", + "Copying link …" : "Copia collegamento...", + "Copied link" : "Collegamento copiato", + "Could not copy link" : "Impossibile copiare il collegamento", + "Export" : "Esporta", + "Untitled item" : "Elemento senza titolo", + "Unknown calendar" : "Calendario sconosciuto", + "Could not load deleted calendars and objects" : "Impossibile caricare i calendari e gli oggetti eliminati", + "Could not delete calendar or event" : "Impossibile eliminare il calendario o l'evento", + "Could not restore calendar or event" : "Impossibile ripristinare il calendario o l'evento", + "Do you really want to empty the trash bin?" : "Vuoi davvero svuotare il cestino?", + "Empty trash bin" : "Svuota cestino", + "Trash bin" : "Cestino", + "Loading deleted items." : "Caricamento elementi eliminati.", + "You do not have any deleted items." : "Non sono presenti elementi eliminati.", + "Name" : "Nome", + "Deleted" : "Eliminati", + "Restore" : "Ripristina", + "Delete permanently" : "Elimina definitivamente", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Gli elementi nel cestino verranno eliminati dopo {numDays} giorno","Gli elementi nel cestino verranno eliminati dopo {numDays} giorni","Gli elementi nel cestino verranno eliminati dopo {numDays} giorni"], + "Could not update calendar order." : "Impossibile aggiornare l'ordine del calendario.", + "Shared calendars" : "Calendari condivisi", + "Deck" : "Deck", + "Hidden" : "Nascosta", + "Internal link" : "Collegamento interno", + "A private link that can be used with external clients" : "Un collegamento privato che può essere utilizzato con client esterni", + "Copy internal link" : "Copia collegamento interno", + "An error occurred, unable to publish calendar." : "Si è verificato un errore, impossibile pubblicare il calendario.", + "An error occurred, unable to send email." : "Si è verificato un errore, impossibile inviare il messaggio.", + "Embed code copied to clipboard." : "Codice di incorporazione copiato negli appunti.", + "Embed code could not be copied to clipboard." : "Impossibile copiare codice di incorporazione negli appunti.", + "Unpublishing calendar failed" : "Rimozione calendario non riuscita", "Share link" : "Condividi il collegamento", - "Publish calendar" : "Pubblica calendario", - "Publishing calendar" : "Pubblicazione calendario", "Copy public link" : "Copia collegamento pubblico", "Send link to calendar via email" : "Invia collegamento al calendario tramite email", "Enter one address" : "Digita un indirizzo", "Sending email …" : "Invio email...", - "Copy subscription link" : "Copia collegamento di sottoscrizione", - "Copying link …" : "Copia collegamento...", - "Copied link" : "Collegamento copiato", - "Could not copy link" : "Impossibile copiare il collegamento", "Copy embedding code" : "Copia codice di incorporazione", "Copying code …" : "Copia codice...", "Copied code" : "Codice copiato", "Could not copy code" : "Impossibile copiare il codice", "Delete share link" : "Elimina collegamento di condivisione", "Deleting share link …" : "Eliminazione collegamento di condivisione...", - "An error occurred, unable to publish calendar." : "Si è verificato un errore, impossibile pubblicare il calendario.", - "An error occurred, unable to send email." : "Si è verificato un errore, impossibile inviare il messaggio.", - "Embed code copied to clipboard." : "Codice di incorporazione copiato negli appunti.", - "Embed code could not be copied to clipboard." : "Impossibile copiare codice di incorporazione negli appunti.", - "Unpublishing calendar failed" : "Rimozione calendario non riuscita", - "Share with users or groups" : "Condividi con utenti o gruppi", - "No users or groups" : "Nessun utente o gruppo", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "Si è verificato un errore durante la rimozione della condivisione del calendario.", + "An error occurred, unable to change the permission of the share." : "Si è verificato un errore, impossibile cambiare i permessi della condivisione.", "can edit" : "può modificare", "Unshare with {displayName}" : "Rimuovi condivisione con {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Si è verificato un errore, impossibile cambiare la condivisione del calendario.", - "An error occurred, unable to change the permission of the share." : "Si è verificato un errore, impossibile cambiare i permessi della condivisione.", - "+ New calendar" : "+ Nuovo calendario", - "New calendar" : "Nuovo calendario", - "Name for new calendar" : "Nome del nuovo calendario", - "Creating calendar …" : "Creazione calendario...", - "New calendar with task list" : "Nuovo calendario con elenco delle attività", - "New subscription from link (read-only)" : "Nuova sottoscrizione da collegamento (sola lettura)", - "Creating subscription …" : "Crea sottoscrizione...", - "An error occurred, unable to create the calendar." : "Si è verificato un errore, impossibile creare il calendario.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Inserisci un collegamento valido (inizia con http://, https://, webcal://, o webcals://)", - "Trash bin" : "Cestino", - "Loading deleted elements." : "Caricamento elementi eliminati.", - "You do not have any deleted elements." : "Non hai alcun elemento eliminato.", - "Name" : "Nome", - "Deleted" : "Eliminati", - "Restore" : "Ripristina", - "Delete permanently" : "Elimina definitivamente", - "Empty trash bin" : "Svuota cestino", - "Untitled element" : "Elemento senza titolo", - "Unknown calendar" : "Calendario sconosciuto", - "Could not load deleted calendars and objects" : "Impossibile caricare i calendari e gli oggetti eliminati", - "Could not restore calendar or event" : "Impossibile ripristinare il calendario o l'evento", - "Do you really want to empty the trash bin?" : "Vuoi davvero svuotare il cestino?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Gli elementi nel cestino sono eliminati dopo {numDays} giorno","Gli elementi nel cestino sono eliminati dopo {numDays} giorni","Gli elementi nel cestino sono eliminati dopo {numDays} giorni"], - "Could not update calendar order." : "Impossibile aggiornare l'ordine del calendario.", + "Share with users or groups" : "Condividi con utenti o gruppi", + "No users or groups" : "Nessun utente o gruppo", + "Failed to save calendar name and color" : "Errore nel salvataggio del nome e del colore del calendario", + "Calendar name …" : "Nome del calendario...", + "Never show me as busy (set this calendar to transparent)" : "Non mostrarmi mai come occupato (imposta questo calendario come trasparente)", + "Share calendar" : "Condividi calendario", + "Unshare from me" : "Rimuovi condivisione da me", + "Save" : "Salva", "Import calendars" : "Importa calendari", - "Please select a calendar to import into …" : "Seleziona un calendario in cui importare...", + "Please select a calendar to import into …" : "Scegli il calendario su cui importare …", "Filename" : "Nome file", "Calendar to import into" : "Calendario in cui importare", "Cancel" : "Annulla", "_Import calendar_::_Import calendars_" : ["Importa calendario","Importa calendari","Importa calendari"], + "Select the default location for attachments" : "Seleziona la posizione predefinita per gli allegati", + "Pick" : "Seleziona", + "Invalid location selected" : "Percorso selezionato non valido", + "Attachments folder successfully saved." : "Cartella degli allegati salvata correttamente.", + "Error on saving attachments folder." : "Errore durante il salvataggio della cartella degli allegati.", + "Default attachments location" : "Posizione predefinita degli allegati", "{filename} could not be parsed" : "{filename} non può essere analizzato", "No valid files found, aborting import" : "Nessun file valido trovato, importazione interrotta", - "Import partially failed. Imported {accepted} out of {total}." : "Importazione parzialmente non riuscita. Importati {accepted} di {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n evento importato con successo","%n evento importato con successo","%n evento importato con successo"], + "Import partially failed. Imported {accepted} out of {total}." : "Importazione parzialmente non riuscita. Importati {accepted} di {total}.", "Automatic" : "Automatico", "Automatic ({detected})" : "Automatico ({detected})", "New setting was not saved successfully." : "La nuova impostazione non è stata salvata correttamente.", - "Shortcut overview" : "Riepilogo delle scorciatoie", - "or" : "o", "Navigation" : "Navigazione", "Previous period" : "Periodo precedente", "Next period" : "Periodo successivo", @@ -137,39 +174,57 @@ OC.L10N.register( "Day view" : "Vista del giorno", "Week view" : "Vista della settimana", "Month view" : "Vista del mese", + "Year view" : "Vista annuale", "List view" : "Vista Elenco", "Actions" : "Azioni", "Create event" : "Crea evento", "Show shortcuts" : "Mostra scorciatoie", "Editor" : "Editor", + "Close editor" : "Chiudi editor", + "Save edited event" : "Salva l'evento modificato", + "Delete edited event" : "Elimina l'evento modificato", + "Duplicate event" : "Evento duplicato", + "Shortcut overview" : "Riepilogo delle scorciatoie", + "or" : "o", + "Calendar settings" : "Impostazioni Calendario", + "At event start" : "Ad inizio evento", + "No reminder" : "Nessun promemoria", + "Failed to save default calendar" : "Fallimento nel salvare il calendario di default", + "CalDAV link copied to clipboard." : "Collegamento CalDAV copiato negli appunti.", + "CalDAV link could not be copied to clipboard." : "Impossibile copiare collegamento CalDAV negli appunti.", "Enable birthday calendar" : "Attiva calendario dei compleanni", - "Show tasks in calendar" : "Mostra le attività in calendario", + "Show tasks in calendar" : "Mostra le attività nel calendario", "Enable simplified editor" : "Attiva editor semplificato", - "Limit visible events per view" : "Limita gli eventi visibili per vista", + "Limit the number of events displayed in the monthly view" : "Limita il numero di eventi visualizzati nella vista mensile", "Show weekends" : "Mostra i fine settimana", "Show week numbers" : "Mostra i numeri delle settimane", "Time increments" : "Incrementi di tempo", + "Default calendar for incoming invitations" : "Calendario predefinito per gli inviti in arrivo", "Default reminder" : "Promemoria predefinito", "Copy primary CalDAV address" : "Copia indirizzo CalDAV principale", "Copy iOS/macOS CalDAV address" : "Copia indirizzo CalDAV iOS/macOS", "Personal availability settings" : "Impostazioni di disponibilità personale", "Show keyboard shortcuts" : "Mostra scorciatoie da tastiera", - "No reminder" : "Nessun promemoria", - "CalDAV link copied to clipboard." : "Collegamento CalDAV copiato negli appunti.", - "CalDAV link could not be copied to clipboard." : "Impossibile copiare collegamento CalDAV negli appunti.", - "Appointment was created successfully" : "L'appuntamento è stato creato correttamente", - "Appointment was updated successfully" : "L'appuntamento è stato aggiornato correttamente", + "Appointment schedule successfully created" : "Il programma degli appuntamenti è stato creato con successo", + "Appointment schedule successfully updated" : "Il programma degli appuntamenti è stato aggiornato con successo", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuto","{duration} minuti","{duration} minuti"], "0 minutes" : "0 minuti", - "_{duration} hour_::_{duration} hours_" : ["{duration} ora","{duration} ore","{duration} ore"], - "_{duration} day_::_{duration} days_" : ["{duration} giorno","{duration} giorni","{duration} giorni"], - "_{duration} week_::_{duration} weeks_" : ["{duration} settimana","{duration} settimane","{duration} settimane"], - "_{duration} month_::_{duration} months_" : ["{duration} mese","{duration} mesi","{duration} mesi"], - "_{duration} year_::_{duration} years_" : ["{duration} anno","{duration} anni","{duration} anni"], + "_{duration} hour_::_{duration} hours_" : ["{duration} ora","{duration} ore"], + "_{duration} day_::_{duration} days_" : ["{duration} giorno","{duration} giorni"], + "_{duration} week_::_{duration} weeks_" : ["{duration} settimana","{duration} settimane"], + "_{duration} month_::_{duration} months_" : ["{duration} mese","{duration} mesi"], + "_{duration} year_::_{duration} years_" : ["{duration} anno","{duration} anni"], "To configure appointments, add your email address in personal settings." : "Per configurare gli appuntamenti, aggiungi il tuo indirizzo email nelle impostazioni personali.", "Public – shown on the profile page" : "Pubblica – mostrata nella pagina del profilo", "Private – only accessible via secret link" : "Privata – accessibile solo da collegamento segreto", + "Appointment schedule saved" : "Programma degli appuntamenti salvato", + "Create appointment schedule" : "Crea un programma di appuntamenti", + "Edit appointment schedule" : "Modifica il programma degli appuntamenti", + "Update" : "Aggiorna", + "Appointment name" : "Nome appuntamento", "Location" : "Luogo", + "Create a Talk room" : "Crea una stanza di Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Per ogni appuntamento prenotato verrà generato un link univoco che verrà inviato tramite l'e-mail di conferma", "Description" : "Descrizione", "Visibility" : "Visibilità", "Duration" : "Durata", @@ -178,7 +233,7 @@ OC.L10N.register( "Pick time ranges where appointments are allowed" : "Scegli gli intervalli di ore in cui sono permessi appuntamenti", "to" : "a", "Delete slot" : "Elimina slot", - "No times set" : "Nessuna ora impostata", + "No times set" : "Nessun'ora impostata", "Add" : "Aggiungi", "Monday" : "Lunedì", "Tuesday" : "Martedì", @@ -187,6 +242,7 @@ OC.L10N.register( "Friday" : "Venerdì", "Saturday" : "Sabato", "Sunday" : "Domenica", + "Weekdays" : "Giorni feriali", "Add time before and after the event" : "Aggiungi tempo prima e dopo l'evento", "Before the event" : "Prima dell'evento", "After the event" : "Dopo l'evento", @@ -194,17 +250,22 @@ OC.L10N.register( "Minimum time before next available slot" : "Tempo minimo prima del successivo slot disponibile", "Max slots per day" : "Slot massimi al giorno", "Limit how far in the future appointments can be booked" : "Limita fino a quando è possibile prenotare appuntamenti futuri", - "Create appointment" : "Crea appuntamento", - "Edit appointment" : "Modifica appuntamento", - "Save" : "Salva", - "Update" : "Aggiorna", + "It seems a rate limit has been reached. Please try again later." : "Sembra che sia stato raggiunto un limite di frequenza. Riprova più tardi.", + "Please confirm your reservation" : "Conferma la tua prenotazione", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Ti abbiamo inviato un'email con i dettagli. Conferma il tuo appuntamento usando il collegamento nell'email. Ora puoi chiudere questa pagina.", "Your name" : "Il tuo nome", "Your email address" : "Il tuo indirizzo email", "Please share anything that will help prepare for our meeting" : "Condividi tutto ciò che possa aiutarci a preparare il nostro incontro", "Could not book the appointment. Please try again later or contact the organizer." : "Impossibile prenotare l'appuntamento. Riprova più tardi o contatta l'organizzatore.", - "Book the appointment" : "Prenota l'appuntamento", - "Reminder" : "Promemoria", + "Back" : "Indietro", + "Book appointment" : "Prenota un appuntamento", + "Conversation does not have a valid URL." : "La conversazione non ha un URL valido", + "Error creating Talk conversation" : "Errore durante la crezione della conversazione Talk", + "Add Talk conversation" : "Aggiungi conversazione Talk", + "Create a new conversation" : "Crea una nuova conversazione", + "Select conversation" : "Seleziona conversazione", + "on" : "il", + "at" : "alle", "before at" : "prima di", "Notification" : "Notifica", "Email" : "Email", @@ -215,114 +276,142 @@ OC.L10N.register( "Edit time" : "Ora di modifica", "Save time" : "Ora di salvataggio", "Remove reminder" : "Rimuovi promemoria", - "on" : "il", - "at" : "alle", - "+ Add reminder" : "+ Aggiungi promemoria", "Add reminder" : "Aggiungi promemoria", - "_second_::_seconds_" : ["secondo","secondi","secondi"], - "_minute_::_minutes_" : ["minuto","minuti","minuti"], - "_hour_::_hours_" : ["ora","ore","ore"], - "_day_::_days_" : ["giorno","giorni","giorni"], - "_week_::_weeks_" : ["settimana","settimane","settimane"], + "seconds" : "secondi", + "minutes" : "minuti", + "hours" : "ore", + "days" : "giorni", + "weeks" : "settimane", + "Choose a file to add as attachment" : "Scegli un file da aggiungere come allegato", + "Choose a file to share as a link" : "Scegli un file da condividere come un collegamento", + "Attachment {name} already exist!" : "L'allegato {name} esiste già!", + "Could not upload attachment(s)" : "Impossibile caricare gli allegati", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Stai per scaricare un file. Controlla il nome del file prima di aprirlo. Vuoi procedere?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Stai per navigare verso {host}. Sei sicuro di procedere? Link: {link}", + "Proceed" : "Procedi", + "No attachments" : "Nessun allegato", + "Add from Files" : "Aggiungi da File", + "Upload from device" : "Carica dal dispositivo", + "Delete file" : "Elimina file", + "Confirmation" : "Conferma", + "_{count} attachment_::_{count} attachments_" : ["{count} allegato","{count} allegati","{count} allegati"], "Suggested" : "Suggerito", "Available" : "Disponibile", - "Not available" : "Non disponibile", - "Checking availability" : "Verifica disponibilità", "Invitation accepted" : "Invito accettato", "Accepted {organizerName}'s invitation" : "Invito di {organizerName} accettato", + "Participation marked as tentative" : "Partecipazione contrassegnata come provvisoria", + "Invitation is delegated" : "Invito delegato", + "Not available" : "Non disponibile", "Invitation declined" : "Invito rifiutato", "Declined {organizerName}'s invitation" : "Invito di {organizerName} rifiutato", - "Invitation is delegated" : "Invito delegato", - "Participation marked as tentative" : "Partecipazione contrassegnata come provvisoria", - "Invitation sent" : "Invito spedito", + "Availability will be checked" : "La disponibilità verrà verificata", + "Invitation will be sent" : "L'invito verrà inviato", + "Failed to check availability" : "Impossibile verificare la disponibilità", + "Failed to deliver invitation" : "Impossibile consegnare l'invito", + "Awaiting response" : "In attesa della risposta", + "Checking availability" : "Verifica disponibilità", "Has not responded to {organizerName}'s invitation yet" : "Non ha ancora risposto all'invito di {organizerName}", - "Availability of attendees, resources and rooms" : "Disponibilità di partecipanti, risorse e stanze", + "chairperson" : "presidente", + "required participant" : "partecipante richiesto", + "non-participant" : "non partecipante", + "optional participant" : "partecipante facoltativo", "{organizer} (organizer)" : "{organizer} (organizzatore)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Disponibilità di partecipanti, risorse e stanze", + "Suggestion accepted" : "Suggerimento accettato", + "Legend" : "Legenda", + "Out of office" : "Fuori sede", + "Attendees:" : "Partecipanti:", + "Done" : "Completato", + "Search room" : "Cerca stanza", + "Room name" : "Nome stanza", + "Check room availability" : "Controlla la disponibilità della stanza", "Free" : "Libero", "Busy (tentative)" : "Occupato (provvisorio)", "Busy" : "Occupato", - "Out of office" : "Fuori sede", "Unknown" : "Sconosciuto", - "Accept" : "Accetta", - "Decline" : "Rifiuta", - "Tentative" : "Provvisorio", + "Find a time" : "Trova un orario", "The invitation has been accepted successfully." : "L'invito è stato accettato con successo.", "Failed to accept the invitation." : "Impossibile accettare l'invito.", "The invitation has been declined successfully." : "L'invito è stato rifiutato con successo.", "Failed to decline the invitation." : "Impossibile rifiutare l'invito.", "Your participation has been marked as tentative." : "La tua partecipazione è stata contrassegnata come \"provvisoria\".", "Failed to set the participation status to tentative." : "Impossibile impostare lo stato di partecipazione su \"provvisorio\".", - "Create Talk room for this event" : "Crea stanza di Talk per questo evento", - "Show busy times" : "Mostra orari in cui si è occupati", + "Accept" : "Accetta", + "Decline" : "Rifiuta", + "Tentative" : "Provvisorio", "No attendees yet" : "Ancora nessun partecipante", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} invitato, {confirmedCount} confermato", + "Successfully appended link to talk room to location." : "Aggiunto correttamente il collegamento alla stanza di Talk alla posizione.", "Successfully appended link to talk room to description." : "Collegamento aggiunto correttamente alla stanza di Talk come descrizione.", "Error creating Talk room" : "Errore durante la creazione della stanza di Talk", - "Send email" : "Invia email", + "Attendees" : "Partecipanti", + "_%n more guest_::_%n more guests_" : ["%n più ospite","%n più ospiti","%n più ospiti"], + "Remove group" : "Rimuovi gruppo", + "Remove attendee" : "Rimuovi partecipante", + "Request reply" : "Richiedi risposta", "Chairperson" : "Presidente", "Required participant" : "Partecipante necessario", "Optional participant" : "Partecipante facoltativo", "Non-participant" : "Non partecipante", - "Remove attendee" : "Rimuovi partecipante", - "Search for emails, users or contacts" : "Cerca email, utenti o contatti", + "_%n member_::_%n members_" : ["%n membro","%n membri","%n membri"], + "Search for emails, users, contacts, contact groups or teams" : "Cerca email, utenti, contatti, gruppi di contatti o team", "No match found" : "Nessuna corrispondenza trovata", + "Note that members of circles get invited but are not synced yet." : "Nota che i membri delle cerchie vengono invitati, ma non sono ancora sincronizzati.", + "Note that members of contact groups get invited but are not synced yet." : "Tieni presente che i membri dei gruppi di contatti vengono invitati ma non vengono ancora sincronizzati.", "(organizer)" : "(organizzatore)", + "Make {label} the organizer" : "Crea {label} organizzatore", + "Make {label} the organizer and attend" : "Crea{label} l'organizzatore e partecipa", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Per inviare inviti e gestire risposte, [linkopen]aggiungi il tuo indirizzo email nelle impostazioni personali[linkclose].", "Remove color" : "Rimuovi colore", "Event title" : "Titolo dell'evento", - "All day" : "Tutto il giorno", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Impossibile modificare le impostazioni di un giorno intero per gli eventi che sono parte di un insieme di ricorrenze.", - "from {startDate}" : "da {startDate}", - "from {startDate} at {startTime}" : "dal {startDate} alle {startTime}", - "to {endDate}" : "a {endDate}", - "to {endDate} at {endTime}" : "a {endDate} alle {endTime}", + "From" : "Da", + "To" : "A", "Repeat" : "Ripeti", - "End repeat" : "Termina ripetizione", - "Select to end repeat" : "Seleziona per terminare la ripetizione", + "_time_::_times_" : ["volta","volte","volte"], "never" : "mai", "on date" : "in data", "after" : "dopo", - "_time_::_times_" : ["volta","volte","volte"], + "End repeat" : "Termina ripetizione", + "Select to end repeat" : "Seleziona per terminare la ripetizione", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Questo evento è l'eccezione di un insieme di ricorrenze. Non puoi aggiungergli una regola di ricorrenza.", "first" : "primo", - "third" : "terzo", - "fourth" : "quarto", - "fifth" : "quinto", - "second to last" : "penultimo", - "last" : "ultimo", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Le modifiche alla regola di ricorrenza saranno applicate a questa e a tutte le future occorrenze.", "Repeat every" : "Ripeti ogni", "By day of the month" : "Per giorno del mese", "On the" : "Il", + "_day_::_days_" : ["giorno","giorni","giorni"], + "_week_::_weeks_" : ["settimana","settimane","settimane"], "_month_::_months_" : ["mese","mesi","mesi"], "_year_::_years_" : ["anno","anni","anni"], + "On specific day" : "In un giorno specifico", "weekday" : "giorno feriale", "weekend day" : "giorno del fine settimana", - "No recurrence" : "Nessuna ricorrenza", + "Does not repeat" : "Non ripete", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "La definizione di ricorrenza di questo evento non è supportata completamente da Nextcloud. Se modifichi le opzioni di ricorrenza, alcune ricorrenze potrebbero essere perse.", - "Suggestions" : "Consigli", "No rooms or resources yet" : "Ancora nessuna stanza o risorsa", + "Resources" : "Risorse", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sedia","{seatingCapacity} sedie","{seatingCapacity} sedie"], "Add resource" : "Aggiungi risorsa", "Has a projector" : "Ha un proiettore", "Has a whiteboard" : "Ha una lavagna", "Wheelchair accessible" : "Accessibile alle carrozzine", "Remove resource" : "Rimuovi risorsa", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sedia","{seatingCapacity} sedie","{seatingCapacity} sedie"], - "Projector" : "Proiettore", - "Whiteboard" : "Lavagna", "Search for resources or rooms" : "Cerca risorse o stanze", "available" : "disponibile", "unavailable" : "non disponibile", + "Show all rooms" : "Mostra tutte le stanze", + "Projector" : "Proiettore", + "Whiteboard" : "Lavagna", "Room type" : "Tipo stanza", "Any" : "Qualsiasi", "Minimum seating capacity" : "Numero minimo di sedie", - "More" : "Altro", - "Update this occurrence" : "Aggiorna questa occorrenza", + "More details" : "Maggiori dettagli", "Update this and all future" : "Aggiorna questa e tutte le future", + "Update this occurrence" : "Aggiorna questa occorrenza", "Public calendar does not exist" : "Il calendario pubblico non esiste", "Maybe the share was deleted or has expired?" : "Forse la condivisione è stata eliminata o è scaduta?", - "Please select a time zone:" : "Seleziona un fuso orario:", - "Pick a time" : "Scegli un orario", - "Pick a date" : "Scegli una data", "from {formattedDate}" : "dal {formattedDate}", "to {formattedDate}" : "al {formattedDate}", "on {formattedDate}" : "il {formattedDate}", @@ -332,9 +421,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} alle {formattedTime}", "Please enter a valid date" : "Digita una data valida", "Please enter a valid date and time" : "Digita una data e un orario validi", + "Select a time zone" : "Seleziona un fuso orario", + "Please select a time zone:" : "Seleziona un fuso orario:", + "Pick a time" : "Scegli un orario", + "Pick a date" : "Scegli una data", "Type to search time zone" : "Digita per cercare il fuso orario", "Global" : "Globale", - "Select date" : "Seleziona data", + "Holidays in {region}" : "Festività in {region}", + "An error occurred, unable to read public calendars." : "Si è verificato un errore, impossibile leggere i calendari pubblici.", + "An error occurred, unable to subscribe to calendar." : "Si è verificato un errore, impossibile sottoscrivere il calendario.", + "Public holiday calendars" : "Calendari delle festività pubbliche", + "Public calendars" : "Calendari pubblici", + "No valid public calendars configured" : "Nessun calendario pubblico valido configurato", + "Speak to the server administrator to resolve this issue." : "Parla con l'amministratore del server per risolvere questo problema.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "I calendari delle festività pubbliche sono forniti da Thunderbird. I dati del calendario saranno scaricati da {website}.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Questi calendari pubblici sono suggeriti dall'amministratore del server. I dati del calendario saranno scaricati dal rispettivo sito web.", + "By {authors}" : "Di {authors}", + "Subscribed" : "Sottoscritta", + "Subscribe" : "Iscrizione", + "Could not fetch slots" : "Impossibile recuperare gli slot", + "Select a date" : "Seleziona una data", "Select slot" : "Seleziona slot", "No slots available" : "Nessuno slot disponibile", "The slot for your appointment has been confirmed" : "Lo slot per il tuo appuntamento è stato confermato", @@ -351,23 +457,25 @@ OC.L10N.register( "Personal" : "Personale", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Il rilevamento automatico del fuso orario ha determinato che il tuo è UTC.\nProbabilmente è il risultato di alcune misure di sicurezza del tuo browser web.\nImposta il tuo fuso orario a mano nelle impostazioni del calendario.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Il fuso orario configurato ({timezoneId}) non è stato trovato. Ripiego su UTC.\nCambia il tuo fuso orario nelle impostazioni e segnala questo problema.", - "No more events today" : "Non ci sono altri eventi oggi", - "No upcoming events" : "Nessun prossimo evento", - "Create a new event" : "Crea un nuovo evento", - "[Today]" : "[Oggi]", - "[Tomorrow]" : "[Domani]", - "[Yesterday]" : "[Ieri]", - "[Last] dddd" : "[Ultimo] dddd", + "Availability of {displayName}" : "Disponibilità di {displayName}", + "Edit event" : "Modifica evento", "Event does not exist" : "L'evento non esiste", + "Duplicate" : "Duplicato", "Delete this occurrence" : "Elimina questa occorrenza", "Delete this and all future" : "Elimina questa e tutte le future", - "Details" : "Dettagli", - "Attendees" : "Partecipanti", - "Resources" : "Risorse", + "All day" : "Tutto il giorno", + "Modifications wont get propagated to the organizer and other attendees" : "Le modifiche non verranno propagate all'organizzatore e agli altri partecipanti", + "Managing shared access" : "Gestire accesso condiviso", + "Deny access" : "Nega l'accesso", + "Invite" : "Invita", + "_User requires access to your file_::_Users require access to your file_" : ["Gli utenti hanno bisogno di accedere al tuo file","Gli utenti hanno bisogno di accedere ai tuoi file","Gli utenti hanno bisogno di accedere ai tuoi file"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Allegato che richiede un accesso condiviso","Allegati che richiedono un accesso condiviso","Allegato che richiede un accesso condiviso"], + "Untitled event" : "Evento senza titolo", "Close" : "Chiudi", - "Show more details" : "Mostra altri dettagli", + "Modifications will not get propagated to the organizer and other attendees" : "Le modifiche non verranno propagate all'organizzatore e agli altri partecipanti", "Subscribe to {name}" : "Sottoscrivi {name}", "Export {name}" : "Esporta {name}", + "Show availability" : "Mostra disponibilità", "Anniversary" : "Anniversario", "Appointment" : "Appuntamento", "Business" : "Lavoro", @@ -383,8 +491,8 @@ OC.L10N.register( "Travel" : "Viaggio", "Vacation" : "Assenza", "Midnight on the day the event starts" : "Mezzanotte del giorno in cui inizia l'evento", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n giorno prima dell'evento alle {formattedHourMinute}","%n giorni prima dell'evento alle {formattedHourMinute}","%n giorni prima dell'evento alle {formattedHourMinute}"], - "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n settimana prima dell'evento alle {formattedHourMinute}","%n settimane prima dell'evento alle {formattedHourMinute}","%n settimane prima dell'evento alle {formattedHourMinute}"], + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n giorno prima dell'evento alle {formattedHourMinute}","%n giorni prima dell'evento alle {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n settimana prima dell'evento alle {formattedHourMinute}","%n settimane prima dell'evento alle {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "il giorno dell'evento alle {formattedHourMinute}", "at the event's start" : "all'inizio dell'evento", "at the event's end" : "alla fine dell'evento", @@ -395,36 +503,40 @@ OC.L10N.register( "on {time}" : "il {time}", "on {time} ({timezoneId})" : "il {time} {timezoneId}", "Week {number} of {year}" : "Settimana {number} del {year}", - "Does not repeat" : "Non ripete", "Daily" : "Quotidianamente", "Weekly" : "Settimanalmente", "Monthly" : "Mensilmente", "Yearly" : "Annualmente", - "_Every %n day_::_Every %n days_" : ["Ogni %n giorno","Ogni %n giorni","Ogni %n giorni"], - "_Every %n week_::_Every %n weeks_" : ["Ogni %n settimana","Ogni %n settimane","Ogni %n settimane"], - "_Every %n month_::_Every %n months_" : ["Ogni %n mese","Ogni %n mesi","Ogni %n mesi"], - "_Every %n year_::_Every %n years_" : ["Ogni %n anno","Ogni %n anni","Ogni %n anni"], - "_on {weekday}_::_on {weekdays}_" : ["il {weekday}","i {weekdays}","i {weekdays}"], - "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["il giorno {dayOfMonthList}","nei giorni {dayOfMonthList}","nei giorni {dayOfMonthList}"], + "_Every %n day_::_Every %n days_" : ["Ogni %n giorno","Ogni %n giorni"], + "_Every %n week_::_Every %n weeks_" : ["Ogni %n settimana","Ogni %n settimane"], + "_Every %n month_::_Every %n months_" : ["Ogni %n mese","Ogni %n mesi"], + "_Every %n year_::_Every %n years_" : ["Ogni %n anno","Ogni %n anni"], + "_on {weekday}_::_on {weekdays}_" : ["il {weekday}","i {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["il giorno {dayOfMonthList}","nei giorni {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "il {ordinalNumber} {byDaySet}", - "in {monthNames}" : "in {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} il {ordinalNumber} {byDaySet}", "until {untilDate}" : "fino al {untilDate}", "_%n time_::_%n times_" : ["%n volta","%n volte","%n volte"], - "Untitled event" : "Evento senza titolo", + "second" : "secondo", + "third" : "terzo", + "fourth" : "quarto", + "fifth" : "quinto", + "second to last" : "penultimo", + "last" : "ultimo", "Untitled task" : "Attività senza titolo", "Please ask your administrator to enable the Tasks App." : "Chiedi al tuo amministratore di abilitare l'applicazione Attività.", - "Prev" : "Prec.", - "Next" : "Succ.", - "Prev year" : "Anno prec.", - "Next year" : "Anno succ.", - "Year" : "Anno", + "You are not allowed to edit this event as an attendee." : "Non ti è consentito modificare questo evento in quanto partecipante.", "W" : "S", "%n more" : "%n altri", "No events to display" : "Nessun evento da visualizzare", + "All participants declined" : "Tutti i partecipanti hanno rifiutato", + "Please confirm your participation" : "Si prega di confermare la tua partecipazione", + "You declined this event" : "Hai rifiutato questo evento", + "Your participation is tentative" : "La tua partecipazione è provvisoria", "_+%n more_::_+%n more_" : ["+%n altro","+%n altri","+%n altri"], "No events" : "Nessun evento", "Create a new event or change the visible time-range" : "Crea un nuovo evento o cambia l'intervallo di tempo visibile", + "Failed to save event" : "Impossibile salvare l'evento", "It might have been deleted, or there was a typo in a link" : "Potrebbe essere stato eliminato o c'era un errore di digitazione in un collegamento", "It might have been deleted, or there was a typo in the link" : "Potrebbe essere stato eliminato o c'era un errore di digitazione nel collegamento", "Meeting room" : "Sala riunioni", @@ -437,6 +549,8 @@ OC.L10N.register( "When shared hide this event" : "Se condiviso, nascondi questo evento", "The visibility of this event in shared calendars." : "La visibilità di questo evento nei calendari condivisi.", "Add a location" : "Aggiungi un luogo", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Aggiungi una descrizione\n\n- Di cosa tratta questa riunione\n- Punti all'ordine del giorno\n- Tutto ciò che i partecipanti devono preparare", + "Open Link" : "Apri il link", "Add a description" : "Aggiungi una descrizione", "Status" : "Stato", "Confirmed" : "Confermato", @@ -450,135 +564,22 @@ OC.L10N.register( "Add this as a new category" : "Aggiungi come una nuova categoria", "Custom color" : "Colore personalizzato", "Special color of this event. Overrides the calendar-color." : "Colore speciale di questo evento. Ignora il colore del calendario.", - "Chat room for event" : "Stanza di chat per evento", + "Error while sharing file" : "Errore durante la condivisione del file", + "Error while sharing file with user" : "Errore durante la condivisione del file con l'utente", + "Attachment {fileName} already exists!" : "L'allegato {fileName} esiste già!", + "An error occurred during getting file information" : "Si è verificato un errore durante l'ottenimento delle informazioni sul file.", + "An error occurred, unable to delete the calendar." : "Si è verificato un errore, impossibile eliminare il calendario.", "Imported {filename}" : "Importato {filename}", - "Meditation" : "Meditazione", - "Relaxing" : "Rilassamento", - "Relax" : "Riposo", - "Break" : "Pausa", - "Commute" : "Fare il pendolare", - "Commuting" : "Pendolare", - "Shuttle" : "Navetta", - "Invoice" : "Fattura", - "Finance" : "Finanza", - "Bank" : "Banca", - "Money" : "Soldi", - "Wedding" : "Matrimonio", - "Dog" : "Cane", - "Concert" : "Concerto", - "Festival" : "Festival", - "Theater" : "Teatro", - "Theatre" : "Teatro", - "Presentation" : "Presentazione", - "Talk" : "Parlare", - "Speech" : "Discorso", - "Deadline" : "Scadenza", - "Submission" : "Sottomissione", - "Reporting" : "Segnalazione", - "Camping" : "Campeggio", - "Camp" : "Accamparsi", - "Election" : "Elezione", - "Voting" : "Votazione", - "Vote" : "Votare", - "Barbecue" : "Grigliata", - "Barbeque" : "Grigliata", - "Garden" : "Giardino", - "Farm" : "Fattoria", - "Movie" : "Film", - "Cinema" : "Cinema", - "Graduation" : "Laurea", - "Brainstorm" : "Brainstorm", - "Review" : "Recensione", - "Audit" : "Controllo", - "Inspection" : "Ispezione", - "Proofreading" : "Correzione", - "Baseball" : "Baseball", - "Meet" : "Incontrare", - "Planning" : "Pianificazione", - "Pointing" : "Indicazione", - "Retrospective" : "Retrospettiva", - "Office" : "Ufficio", - "Contributor week" : "Settimana del collaboratore", - "Mail" : "Posta", - "Soccer" : "Calcio", - "Football" : "Football", - "Gaming" : "Gioco", - "Drive" : "Guidare", - "Driving" : "Guidare", - "Bicycle" : "Bicicletta", - "Cycle" : "Pedalare", - "Cycling" : "Andare in bicicletta", - "Biking" : "Pedalata", - "Bike" : "Bicicletta", - "Podcast" : "Podcast", - "Basketball" : "Pallacanestro", - "Fishing" : "Pesca", - "Hiking" : "Escursionismo", - "Hike" : "Escursione", - "Art" : "Arte", - "Exhibition" : "Mostra", - "Museum" : "Museo", - "Pilates" : "Pilates", - "Park" : "Parco", - "Walk" : "Camminare", - "Studying" : "Studiare", - "Doctor" : "Medico", - "Health" : "Salute", - "Dentist" : "Dentista", - "Hospital" : "Ospedale", - "Interview" : "Intervista", - "Training" : "Allenamento", - "Practice" : "Esercitazione", - "Sports" : "Sport", - "Exercise" : "Esercizio", - "Work out" : "Allenarsi", - "Working out" : "Allenamento", - "Gym" : "Palestra", - "Barber" : "Barbiere", - "Haircut" : "Taglio di capelli", - "Hairdresser" : "Parrucchiere", - "Exam" : "Esame", - "Written test" : "Prova scritta", - "Oral test" : "Prova orale", - "Working" : "Lavorare", - "New Years Eve" : "Capodanno", - "NYE" : "Capodanno", - "Fireworks" : "Fuochi d'artificio", - "Running" : "Correre", - "Go for a run" : "Andare a correre", - "Marathon" : "Maratona", - "Video-conference" : "Videoconferenza", - "Conference-call" : "Conferenza", - "Video-call" : "Chiamata video", - "Video-chat" : "Chat video", - "Video-meeting" : "Riunione video", - "Call" : "Chiamare", - "Calling" : "Chiamata", - "Christmas" : "Natale", - "Conference" : "Conferenza", - "Pizza" : "Pizza", - "Travelling" : "Viaggiare", - "Trip" : "Viaggio", - "Journey" : "Viaggio", - "Collaborate" : "Collaborare", - "Pair" : "Coppia", - "Lecture" : "Lezione", - "Seminar" : "Seminario", - "Teaching" : "Insegnare", - "Photograph" : "Fotografia", - "Party" : "Festa", - "Celebration" : "Celebrazione", - "Celebrate" : "Celebrare", - "Birthday" : "Compleanno", - "Shopping" : "Acquisti", - "Groceries" : "Drogheria", - "Skate" : "Pattinare", - "Skateboard" : "Skateboard", - "Wine tasting" : "Degustazione di vini", - "Golf" : "Golf", - "Dinner" : "Cena", - "Lunch" : "Pranzo", + "This is an event reminder." : "Questo è un promemoria dell'evento.", + "Error while parsing a PROPFIND error" : "Errore durante l'elaborazione di un errore PROPFIND", "Appointment not found" : "Appuntamento non trovato", - "User not found" : "Utente non trovato" + "User not found" : "Utente non trovato", + "Reminder" : "Promemoria", + "+ Add reminder" : "+ Aggiungi promemoria", + "Select automatic slot" : "Selezione automatica degli slot", + "with" : "con", + "Available times:" : "Orari disponibili:", + "Suggestions" : "Consigli", + "Details" : "Dettagli" }, -"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); +"nplurals=2; plural=n != 1;"); diff --git a/l10n/it.json b/l10n/it.json index 3e8c0b1c3ccef2ac1db23391876095fe05ca3631..e2d9298e3b65503100df42e538a4e8248584d7bf 100644 --- a/l10n/it.json +++ b/l10n/it.json @@ -1,133 +1,170 @@ { "translations": { + "Provided email-address is too long" : "L'indirizzo email è troppo lungo", "User-Session unexpectedly expired" : "Sessione utente scaduta in modo inatteso", "Provided email-address is not valid" : "L'indirizzo email fornito non è valido", "%s has published the calendar »%s«" : "%s ha pubblicato il calendario «%s»", "Unexpected error sending email. Please contact your administrator." : "Errore inatteso nell'invio dell'email. Contatta l'amministratore.", "Successfully sent email to %1$s" : "Email inviata a %1$s correttamente", "Hello," : "Ciao,", - "We wanted to inform you that %s has published the calendar »%s«." : "Ti vogliamo informare che %s ha pubblicato il calendario «%s». ", + "We wanted to inform you that %s has published the calendar »%s«." : "Ti informiamo del fatto che %s ha pubblicato il calendario «%s».", "Open »%s«" : "Apri «%s»", "Cheers!" : "Evviva!", "Upcoming events" : "Prossimi eventi", + "No more events today" : "Non ci sono altri eventi oggi", + "No upcoming events" : "Nessun prossimo evento", + "More events" : "Altri eventi", + "%1$s with %2$s" : "%1$s con %2$s", + "Calendar" : "Calendario", + "New booking {booking}" : "Nuova prenotazione {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) ha prenotato l'appuntamento \"{config_display_name}\" il {date_time}.", "Appointments" : "Appuntamenti", "Schedule appointment \"%s\"" : "Fissa appuntamento \"%s\"", "Schedule an appointment" : "Fissa un appuntamento", + "%1$s - %2$s" : "* %1$s - %2$s", "Prepare for %s" : "Prepara per %s", "Follow up for %s" : "Azione supplementare per %s", - "Your appointment \"%s\" needs confirmation" : "Il tuo appuntamento \"%s\" richiede una conferma", + "Your appointment \"%s\" with %s needs confirmation" : "L'appuntamento \"%s\" con %s richiede una conferma", "Dear %s, please confirm your booking" : "Gentile %s, conferma la tua prenotazione", "Confirm" : "Conferma", + "Appointment with:" : "Appuntamento con:", + "Description:" : "Descrizione:", "This confirmation link expires in %s hours." : "Il collegamento di conferma scade in %s ore.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Se tuttavia desideri disdire l'appuntamento, contatta l'organizzatore.", - "Appointment:" : "Appuntamento:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Se desideri annullare l'appuntamento, contatta il tuo organizzatore rispondendo a questa email o visitando la pagina del suo profilo.", + "Your appointment \"%s\" with %s has been accepted" : "L'appuntamento \"%s\" con %s è stato accettato", + "Dear %s, your booking has been accepted." : "Caro/a %s, la tua prenotazione è stata accettata.", + "Appointment for:" : "Appuntamento per:", "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Riceverai un collegamento con l'email di conferma", "Where:" : "Luogo:", - "Description:" : "Descrizione:", - "Calendar" : "Calendario", + "Comment:" : "Commento:", + "You have a new appointment booking \"%s\" from %s" : "Hai una nuova prenotazione per un appuntamento \"%s\" da %s", + "Dear %s, %s (%s) booked an appointment with you." : "Caro %s, %s (%s) ha prenotato un appuntamento con te.", "A Calendar app for Nextcloud" : "Un'applicazione di calendario per Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "L'applicazione Calendario è un'interfaccia grafica per il server CalDAV di Nextcloud. Sincronizza facilmente gli eventi tra vari dispositivi con il tuo Nextcloud e modificali in linea.\n\n* 🚀 **Integrazione con le altre applicazioni di Nextcloud!** Attualmente Contatti - altre in arrivo.\n* 🌐 **Supporto WebCal!** Vuoi vedere le date delle partite della tua squadra preferita sul tuo calendario? Nessun problema!\n* 🙋 **Partecipanti!** Invita le persone ai tuoi eventi\n* ⌚️ **Libero/occupato:** Guarda quando i partecipanti sono disponibili per incontrarti\n* ⏰ **Promemoria!** Imposta avvisi per gli eventi nel tuo browser e via email.\n* 🔍 Ricerca! Trova facilmente i tuoi eventi\n* ☑️ Attività! Vedi le attività con una data di scadenza direttamente nel tuo calendario\n* 🙈 **Non stiamo reinventando la ruota!** Basato sulle ottime librerie [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) e [fullcalendar](https://github.com/fullcalendar/fullcalendar).", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Un'app Calendario per Nextcloud. Sincronizza facilmente gli eventi da diversi dispositivi con Nextcloud e modificali online.\n\n* 🚀 **Integrazione con altre app Nextcloud!** Come Contatti, Talk, Attività, Deck e Circles\n* 🌐 **Supporto WebCal!** Vuoi vedere le partite della tua squadra del cuore sul tuo calendario? Nessun problema! * 🙋 **Partecipanti!** Invita persone ai tuoi eventi\n* ⌚ **Libero/Occupato!** Controlla quando i tuoi partecipanti sono disponibili per l'incontro\n* ⏰ **Promemoria!** Ricevi avvisi per gli eventi nel tuo browser e via email\n* 🔍 **Cerca!** Trova i tuoi eventi in tutta semplicità\n* ☑️ **Attività!** Visualizza attività o schede Deck con una data di scadenza direttamente nel calendario\n* 🔈 **Sale di discussione!** Crea una sala di discussione associata quando prenoti una riunione con un solo clic\n* 📆 **Prenotazione appuntamenti** Invia un link alle persone in modo che possano prenotare un appuntamento con te [utilizzando questa app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Allegati!** Aggiungi, carica e visualizza gli allegati dell'evento\n* 🙈 **Non stiamo reinventando la ruota!** Basato sul fantastico [librerie c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) e [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Giorno precedente", "Previous week" : "Settimana precedente", + "Previous year" : "Anno precedente", "Previous month" : "Mese precedente", "Next day" : "Giorno successivo", "Next week" : "Settimana successiva", + "Next year" : "Anno succ.", "Next month" : "Mese successivo", - "New event" : "Nuovo evento", + "Create new event" : "Crea un nuovo evento", + "Event" : "Evento", "Today" : "Oggi", "Day" : "Giorno", "Week" : "Settimana", "Month" : "Mese", + "Year" : "Anno", "List" : "Elenco", + "Appointment link was copied to clipboard" : "Il collegamento dell'appuntamento è stato copiato negli appunti", + "Appointment link could not be copied to clipboard" : "Impossibile copiare il collegamento dell'appuntamento negli appunti", "Preview" : "Anteprima", "Copy link" : "Copia link", "Edit" : "Modifica", "Delete" : "Elimina", - "Appointment link was copied to clipboard" : "Il collegamento dell'appuntamento è stato copiato negli appunti", - "Appointment link could not be copied to clipboard" : "Impossibile copiare il collegamento dell'appuntamento negli appunti", - "Add new" : "Aggiungi nuovo", - "Untitled calendar" : "Calendario senza titolo", - "Edit name" : "Modifica nome", - "Saving name …" : "Salvataggio nome...", - "Edit color" : "Modifica colore", - "Saving color …" : "Salvataggio colore...", - "Copy private link" : "Copia collegamento privato", - "Export" : "Esporta", - "Unshare from me" : "Rimuovi condivisione da me", + "Appointment schedules" : "Orari degli appuntamenti", + "Create new" : "Crea nuovo", + "Disable calendar \"{calendar}\"" : "Disabilita il calendario \"{calendar}\"", + "Disable untitled calendar" : "Disabilita il calendario senza titolo", + "Enable calendar \"{calendar}\"" : "Abilita il calendario \"{calendar}\"", + "Enable untitled calendar" : "Abilita il calendario senza titolo", "An error occurred, unable to change visibility of the calendar." : "Si è verificato un errore, impossibile cambiare la visibilità del calendario.", - "An error occurred, unable to delete the calendar." : "Si è verificato un errore, impossibile eliminare il calendario.", - "Calendar link copied to clipboard." : "Collegamento del calendario copiato negli appunti.", - "Calendar link could not be copied to clipboard." : "Il collegamento del calendario non può essere copiato negli appunti.", - "An error occurred, unable to rename the calendar." : "Si è verificato un errore, impossibile rinominare il calendario.", - "An error occurred, unable to change the calendar's color." : "Si è verificato un errore, impossibile cambiare il colore del calendario.", + "Untitled calendar" : "Calendario senza titolo", + "Shared with you by" : "Condiviso con te da", + "Edit and share calendar" : "Modifica e condividi il calendario", + "Edit calendar" : "Modifica il calendario", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Rimozione condivisione del calendario in {countdown} secondo","Rimozione condivisione del calendario in {countdown} secondi","Rimozione condivisione del calendario in {countdown} secondi"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Eliminazione del calendario in {countdown} secondo","Eliminazione del calendario in {countdown} secondi","Eliminazione del calendario in {countdown} secondi"], + "An error occurred, unable to create the calendar." : "Si è verificato un errore, impossibile creare il calendario.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Inserisci un collegamento valido (inizia con http://, https://, webcal://, o webcals://)", + "Calendars" : "Calendari", + "Add new" : "Aggiungi nuovo", + "New calendar" : "Nuovo calendario", + "Name for new calendar" : "Nome per il nuovo calendario", + "Creating calendar …" : "Creo il calendario …", + "New calendar with task list" : "Nuovo calendario con elenco delle attività", + "New subscription from link (read-only)" : "Nuova sottoscrizione da collegamento (sola lettura)", + "Creating subscription …" : "Crea sottoscrizione...", + "Add public holiday calendar" : "Aggiungi il calendario delle festività pubbliche", + "Add custom public calendar" : "Aggiungi calendario pubblico personalizzato", + "Calendar link copied to clipboard." : "Collegamento del calendario copiato negli appunti.", + "Calendar link could not be copied to clipboard." : "Il collegamento del calendario non può essere copiato negli appunti.", + "Copy subscription link" : "Copia collegamento di sottoscrizione", + "Copying link …" : "Copia collegamento...", + "Copied link" : "Collegamento copiato", + "Could not copy link" : "Impossibile copiare il collegamento", + "Export" : "Esporta", + "Untitled item" : "Elemento senza titolo", + "Unknown calendar" : "Calendario sconosciuto", + "Could not load deleted calendars and objects" : "Impossibile caricare i calendari e gli oggetti eliminati", + "Could not delete calendar or event" : "Impossibile eliminare il calendario o l'evento", + "Could not restore calendar or event" : "Impossibile ripristinare il calendario o l'evento", + "Do you really want to empty the trash bin?" : "Vuoi davvero svuotare il cestino?", + "Empty trash bin" : "Svuota cestino", + "Trash bin" : "Cestino", + "Loading deleted items." : "Caricamento elementi eliminati.", + "You do not have any deleted items." : "Non sono presenti elementi eliminati.", + "Name" : "Nome", + "Deleted" : "Eliminati", + "Restore" : "Ripristina", + "Delete permanently" : "Elimina definitivamente", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Gli elementi nel cestino verranno eliminati dopo {numDays} giorno","Gli elementi nel cestino verranno eliminati dopo {numDays} giorni","Gli elementi nel cestino verranno eliminati dopo {numDays} giorni"], + "Could not update calendar order." : "Impossibile aggiornare l'ordine del calendario.", + "Shared calendars" : "Calendari condivisi", + "Deck" : "Deck", + "Hidden" : "Nascosta", + "Internal link" : "Collegamento interno", + "A private link that can be used with external clients" : "Un collegamento privato che può essere utilizzato con client esterni", + "Copy internal link" : "Copia collegamento interno", + "An error occurred, unable to publish calendar." : "Si è verificato un errore, impossibile pubblicare il calendario.", + "An error occurred, unable to send email." : "Si è verificato un errore, impossibile inviare il messaggio.", + "Embed code copied to clipboard." : "Codice di incorporazione copiato negli appunti.", + "Embed code could not be copied to clipboard." : "Impossibile copiare codice di incorporazione negli appunti.", + "Unpublishing calendar failed" : "Rimozione calendario non riuscita", "Share link" : "Condividi il collegamento", - "Publish calendar" : "Pubblica calendario", - "Publishing calendar" : "Pubblicazione calendario", "Copy public link" : "Copia collegamento pubblico", "Send link to calendar via email" : "Invia collegamento al calendario tramite email", "Enter one address" : "Digita un indirizzo", "Sending email …" : "Invio email...", - "Copy subscription link" : "Copia collegamento di sottoscrizione", - "Copying link …" : "Copia collegamento...", - "Copied link" : "Collegamento copiato", - "Could not copy link" : "Impossibile copiare il collegamento", "Copy embedding code" : "Copia codice di incorporazione", "Copying code …" : "Copia codice...", "Copied code" : "Codice copiato", "Could not copy code" : "Impossibile copiare il codice", "Delete share link" : "Elimina collegamento di condivisione", "Deleting share link …" : "Eliminazione collegamento di condivisione...", - "An error occurred, unable to publish calendar." : "Si è verificato un errore, impossibile pubblicare il calendario.", - "An error occurred, unable to send email." : "Si è verificato un errore, impossibile inviare il messaggio.", - "Embed code copied to clipboard." : "Codice di incorporazione copiato negli appunti.", - "Embed code could not be copied to clipboard." : "Impossibile copiare codice di incorporazione negli appunti.", - "Unpublishing calendar failed" : "Rimozione calendario non riuscita", - "Share with users or groups" : "Condividi con utenti o gruppi", - "No users or groups" : "Nessun utente o gruppo", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "Si è verificato un errore durante la rimozione della condivisione del calendario.", + "An error occurred, unable to change the permission of the share." : "Si è verificato un errore, impossibile cambiare i permessi della condivisione.", "can edit" : "può modificare", "Unshare with {displayName}" : "Rimuovi condivisione con {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Si è verificato un errore, impossibile cambiare la condivisione del calendario.", - "An error occurred, unable to change the permission of the share." : "Si è verificato un errore, impossibile cambiare i permessi della condivisione.", - "+ New calendar" : "+ Nuovo calendario", - "New calendar" : "Nuovo calendario", - "Name for new calendar" : "Nome del nuovo calendario", - "Creating calendar …" : "Creazione calendario...", - "New calendar with task list" : "Nuovo calendario con elenco delle attività", - "New subscription from link (read-only)" : "Nuova sottoscrizione da collegamento (sola lettura)", - "Creating subscription …" : "Crea sottoscrizione...", - "An error occurred, unable to create the calendar." : "Si è verificato un errore, impossibile creare il calendario.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Inserisci un collegamento valido (inizia con http://, https://, webcal://, o webcals://)", - "Trash bin" : "Cestino", - "Loading deleted elements." : "Caricamento elementi eliminati.", - "You do not have any deleted elements." : "Non hai alcun elemento eliminato.", - "Name" : "Nome", - "Deleted" : "Eliminati", - "Restore" : "Ripristina", - "Delete permanently" : "Elimina definitivamente", - "Empty trash bin" : "Svuota cestino", - "Untitled element" : "Elemento senza titolo", - "Unknown calendar" : "Calendario sconosciuto", - "Could not load deleted calendars and objects" : "Impossibile caricare i calendari e gli oggetti eliminati", - "Could not restore calendar or event" : "Impossibile ripristinare il calendario o l'evento", - "Do you really want to empty the trash bin?" : "Vuoi davvero svuotare il cestino?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Gli elementi nel cestino sono eliminati dopo {numDays} giorno","Gli elementi nel cestino sono eliminati dopo {numDays} giorni","Gli elementi nel cestino sono eliminati dopo {numDays} giorni"], - "Could not update calendar order." : "Impossibile aggiornare l'ordine del calendario.", + "Share with users or groups" : "Condividi con utenti o gruppi", + "No users or groups" : "Nessun utente o gruppo", + "Failed to save calendar name and color" : "Errore nel salvataggio del nome e del colore del calendario", + "Calendar name …" : "Nome del calendario...", + "Never show me as busy (set this calendar to transparent)" : "Non mostrarmi mai come occupato (imposta questo calendario come trasparente)", + "Share calendar" : "Condividi calendario", + "Unshare from me" : "Rimuovi condivisione da me", + "Save" : "Salva", "Import calendars" : "Importa calendari", - "Please select a calendar to import into …" : "Seleziona un calendario in cui importare...", + "Please select a calendar to import into …" : "Scegli il calendario su cui importare …", "Filename" : "Nome file", "Calendar to import into" : "Calendario in cui importare", "Cancel" : "Annulla", "_Import calendar_::_Import calendars_" : ["Importa calendario","Importa calendari","Importa calendari"], + "Select the default location for attachments" : "Seleziona la posizione predefinita per gli allegati", + "Pick" : "Seleziona", + "Invalid location selected" : "Percorso selezionato non valido", + "Attachments folder successfully saved." : "Cartella degli allegati salvata correttamente.", + "Error on saving attachments folder." : "Errore durante il salvataggio della cartella degli allegati.", + "Default attachments location" : "Posizione predefinita degli allegati", "{filename} could not be parsed" : "{filename} non può essere analizzato", "No valid files found, aborting import" : "Nessun file valido trovato, importazione interrotta", - "Import partially failed. Imported {accepted} out of {total}." : "Importazione parzialmente non riuscita. Importati {accepted} di {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n evento importato con successo","%n evento importato con successo","%n evento importato con successo"], + "Import partially failed. Imported {accepted} out of {total}." : "Importazione parzialmente non riuscita. Importati {accepted} di {total}.", "Automatic" : "Automatico", "Automatic ({detected})" : "Automatico ({detected})", "New setting was not saved successfully." : "La nuova impostazione non è stata salvata correttamente.", - "Shortcut overview" : "Riepilogo delle scorciatoie", - "or" : "o", "Navigation" : "Navigazione", "Previous period" : "Periodo precedente", "Next period" : "Periodo successivo", @@ -135,39 +172,57 @@ "Day view" : "Vista del giorno", "Week view" : "Vista della settimana", "Month view" : "Vista del mese", + "Year view" : "Vista annuale", "List view" : "Vista Elenco", "Actions" : "Azioni", "Create event" : "Crea evento", "Show shortcuts" : "Mostra scorciatoie", "Editor" : "Editor", + "Close editor" : "Chiudi editor", + "Save edited event" : "Salva l'evento modificato", + "Delete edited event" : "Elimina l'evento modificato", + "Duplicate event" : "Evento duplicato", + "Shortcut overview" : "Riepilogo delle scorciatoie", + "or" : "o", + "Calendar settings" : "Impostazioni Calendario", + "At event start" : "Ad inizio evento", + "No reminder" : "Nessun promemoria", + "Failed to save default calendar" : "Fallimento nel salvare il calendario di default", + "CalDAV link copied to clipboard." : "Collegamento CalDAV copiato negli appunti.", + "CalDAV link could not be copied to clipboard." : "Impossibile copiare collegamento CalDAV negli appunti.", "Enable birthday calendar" : "Attiva calendario dei compleanni", - "Show tasks in calendar" : "Mostra le attività in calendario", + "Show tasks in calendar" : "Mostra le attività nel calendario", "Enable simplified editor" : "Attiva editor semplificato", - "Limit visible events per view" : "Limita gli eventi visibili per vista", + "Limit the number of events displayed in the monthly view" : "Limita il numero di eventi visualizzati nella vista mensile", "Show weekends" : "Mostra i fine settimana", "Show week numbers" : "Mostra i numeri delle settimane", "Time increments" : "Incrementi di tempo", + "Default calendar for incoming invitations" : "Calendario predefinito per gli inviti in arrivo", "Default reminder" : "Promemoria predefinito", "Copy primary CalDAV address" : "Copia indirizzo CalDAV principale", "Copy iOS/macOS CalDAV address" : "Copia indirizzo CalDAV iOS/macOS", "Personal availability settings" : "Impostazioni di disponibilità personale", "Show keyboard shortcuts" : "Mostra scorciatoie da tastiera", - "No reminder" : "Nessun promemoria", - "CalDAV link copied to clipboard." : "Collegamento CalDAV copiato negli appunti.", - "CalDAV link could not be copied to clipboard." : "Impossibile copiare collegamento CalDAV negli appunti.", - "Appointment was created successfully" : "L'appuntamento è stato creato correttamente", - "Appointment was updated successfully" : "L'appuntamento è stato aggiornato correttamente", + "Appointment schedule successfully created" : "Il programma degli appuntamenti è stato creato con successo", + "Appointment schedule successfully updated" : "Il programma degli appuntamenti è stato aggiornato con successo", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuto","{duration} minuti","{duration} minuti"], "0 minutes" : "0 minuti", - "_{duration} hour_::_{duration} hours_" : ["{duration} ora","{duration} ore","{duration} ore"], - "_{duration} day_::_{duration} days_" : ["{duration} giorno","{duration} giorni","{duration} giorni"], - "_{duration} week_::_{duration} weeks_" : ["{duration} settimana","{duration} settimane","{duration} settimane"], - "_{duration} month_::_{duration} months_" : ["{duration} mese","{duration} mesi","{duration} mesi"], - "_{duration} year_::_{duration} years_" : ["{duration} anno","{duration} anni","{duration} anni"], + "_{duration} hour_::_{duration} hours_" : ["{duration} ora","{duration} ore"], + "_{duration} day_::_{duration} days_" : ["{duration} giorno","{duration} giorni"], + "_{duration} week_::_{duration} weeks_" : ["{duration} settimana","{duration} settimane"], + "_{duration} month_::_{duration} months_" : ["{duration} mese","{duration} mesi"], + "_{duration} year_::_{duration} years_" : ["{duration} anno","{duration} anni"], "To configure appointments, add your email address in personal settings." : "Per configurare gli appuntamenti, aggiungi il tuo indirizzo email nelle impostazioni personali.", "Public – shown on the profile page" : "Pubblica – mostrata nella pagina del profilo", "Private – only accessible via secret link" : "Privata – accessibile solo da collegamento segreto", + "Appointment schedule saved" : "Programma degli appuntamenti salvato", + "Create appointment schedule" : "Crea un programma di appuntamenti", + "Edit appointment schedule" : "Modifica il programma degli appuntamenti", + "Update" : "Aggiorna", + "Appointment name" : "Nome appuntamento", "Location" : "Luogo", + "Create a Talk room" : "Crea una stanza di Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Per ogni appuntamento prenotato verrà generato un link univoco che verrà inviato tramite l'e-mail di conferma", "Description" : "Descrizione", "Visibility" : "Visibilità", "Duration" : "Durata", @@ -176,7 +231,7 @@ "Pick time ranges where appointments are allowed" : "Scegli gli intervalli di ore in cui sono permessi appuntamenti", "to" : "a", "Delete slot" : "Elimina slot", - "No times set" : "Nessuna ora impostata", + "No times set" : "Nessun'ora impostata", "Add" : "Aggiungi", "Monday" : "Lunedì", "Tuesday" : "Martedì", @@ -185,6 +240,7 @@ "Friday" : "Venerdì", "Saturday" : "Sabato", "Sunday" : "Domenica", + "Weekdays" : "Giorni feriali", "Add time before and after the event" : "Aggiungi tempo prima e dopo l'evento", "Before the event" : "Prima dell'evento", "After the event" : "Dopo l'evento", @@ -192,17 +248,22 @@ "Minimum time before next available slot" : "Tempo minimo prima del successivo slot disponibile", "Max slots per day" : "Slot massimi al giorno", "Limit how far in the future appointments can be booked" : "Limita fino a quando è possibile prenotare appuntamenti futuri", - "Create appointment" : "Crea appuntamento", - "Edit appointment" : "Modifica appuntamento", - "Save" : "Salva", - "Update" : "Aggiorna", + "It seems a rate limit has been reached. Please try again later." : "Sembra che sia stato raggiunto un limite di frequenza. Riprova più tardi.", + "Please confirm your reservation" : "Conferma la tua prenotazione", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Ti abbiamo inviato un'email con i dettagli. Conferma il tuo appuntamento usando il collegamento nell'email. Ora puoi chiudere questa pagina.", "Your name" : "Il tuo nome", "Your email address" : "Il tuo indirizzo email", "Please share anything that will help prepare for our meeting" : "Condividi tutto ciò che possa aiutarci a preparare il nostro incontro", "Could not book the appointment. Please try again later or contact the organizer." : "Impossibile prenotare l'appuntamento. Riprova più tardi o contatta l'organizzatore.", - "Book the appointment" : "Prenota l'appuntamento", - "Reminder" : "Promemoria", + "Back" : "Indietro", + "Book appointment" : "Prenota un appuntamento", + "Conversation does not have a valid URL." : "La conversazione non ha un URL valido", + "Error creating Talk conversation" : "Errore durante la crezione della conversazione Talk", + "Add Talk conversation" : "Aggiungi conversazione Talk", + "Create a new conversation" : "Crea una nuova conversazione", + "Select conversation" : "Seleziona conversazione", + "on" : "il", + "at" : "alle", "before at" : "prima di", "Notification" : "Notifica", "Email" : "Email", @@ -213,114 +274,142 @@ "Edit time" : "Ora di modifica", "Save time" : "Ora di salvataggio", "Remove reminder" : "Rimuovi promemoria", - "on" : "il", - "at" : "alle", - "+ Add reminder" : "+ Aggiungi promemoria", "Add reminder" : "Aggiungi promemoria", - "_second_::_seconds_" : ["secondo","secondi","secondi"], - "_minute_::_minutes_" : ["minuto","minuti","minuti"], - "_hour_::_hours_" : ["ora","ore","ore"], - "_day_::_days_" : ["giorno","giorni","giorni"], - "_week_::_weeks_" : ["settimana","settimane","settimane"], + "seconds" : "secondi", + "minutes" : "minuti", + "hours" : "ore", + "days" : "giorni", + "weeks" : "settimane", + "Choose a file to add as attachment" : "Scegli un file da aggiungere come allegato", + "Choose a file to share as a link" : "Scegli un file da condividere come un collegamento", + "Attachment {name} already exist!" : "L'allegato {name} esiste già!", + "Could not upload attachment(s)" : "Impossibile caricare gli allegati", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Stai per scaricare un file. Controlla il nome del file prima di aprirlo. Vuoi procedere?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Stai per navigare verso {host}. Sei sicuro di procedere? Link: {link}", + "Proceed" : "Procedi", + "No attachments" : "Nessun allegato", + "Add from Files" : "Aggiungi da File", + "Upload from device" : "Carica dal dispositivo", + "Delete file" : "Elimina file", + "Confirmation" : "Conferma", + "_{count} attachment_::_{count} attachments_" : ["{count} allegato","{count} allegati","{count} allegati"], "Suggested" : "Suggerito", "Available" : "Disponibile", - "Not available" : "Non disponibile", - "Checking availability" : "Verifica disponibilità", "Invitation accepted" : "Invito accettato", "Accepted {organizerName}'s invitation" : "Invito di {organizerName} accettato", + "Participation marked as tentative" : "Partecipazione contrassegnata come provvisoria", + "Invitation is delegated" : "Invito delegato", + "Not available" : "Non disponibile", "Invitation declined" : "Invito rifiutato", "Declined {organizerName}'s invitation" : "Invito di {organizerName} rifiutato", - "Invitation is delegated" : "Invito delegato", - "Participation marked as tentative" : "Partecipazione contrassegnata come provvisoria", - "Invitation sent" : "Invito spedito", + "Availability will be checked" : "La disponibilità verrà verificata", + "Invitation will be sent" : "L'invito verrà inviato", + "Failed to check availability" : "Impossibile verificare la disponibilità", + "Failed to deliver invitation" : "Impossibile consegnare l'invito", + "Awaiting response" : "In attesa della risposta", + "Checking availability" : "Verifica disponibilità", "Has not responded to {organizerName}'s invitation yet" : "Non ha ancora risposto all'invito di {organizerName}", - "Availability of attendees, resources and rooms" : "Disponibilità di partecipanti, risorse e stanze", + "chairperson" : "presidente", + "required participant" : "partecipante richiesto", + "non-participant" : "non partecipante", + "optional participant" : "partecipante facoltativo", "{organizer} (organizer)" : "{organizer} (organizzatore)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Disponibilità di partecipanti, risorse e stanze", + "Suggestion accepted" : "Suggerimento accettato", + "Legend" : "Legenda", + "Out of office" : "Fuori sede", + "Attendees:" : "Partecipanti:", + "Done" : "Completato", + "Search room" : "Cerca stanza", + "Room name" : "Nome stanza", + "Check room availability" : "Controlla la disponibilità della stanza", "Free" : "Libero", "Busy (tentative)" : "Occupato (provvisorio)", "Busy" : "Occupato", - "Out of office" : "Fuori sede", "Unknown" : "Sconosciuto", - "Accept" : "Accetta", - "Decline" : "Rifiuta", - "Tentative" : "Provvisorio", + "Find a time" : "Trova un orario", "The invitation has been accepted successfully." : "L'invito è stato accettato con successo.", "Failed to accept the invitation." : "Impossibile accettare l'invito.", "The invitation has been declined successfully." : "L'invito è stato rifiutato con successo.", "Failed to decline the invitation." : "Impossibile rifiutare l'invito.", "Your participation has been marked as tentative." : "La tua partecipazione è stata contrassegnata come \"provvisoria\".", "Failed to set the participation status to tentative." : "Impossibile impostare lo stato di partecipazione su \"provvisorio\".", - "Create Talk room for this event" : "Crea stanza di Talk per questo evento", - "Show busy times" : "Mostra orari in cui si è occupati", + "Accept" : "Accetta", + "Decline" : "Rifiuta", + "Tentative" : "Provvisorio", "No attendees yet" : "Ancora nessun partecipante", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} invitato, {confirmedCount} confermato", + "Successfully appended link to talk room to location." : "Aggiunto correttamente il collegamento alla stanza di Talk alla posizione.", "Successfully appended link to talk room to description." : "Collegamento aggiunto correttamente alla stanza di Talk come descrizione.", "Error creating Talk room" : "Errore durante la creazione della stanza di Talk", - "Send email" : "Invia email", + "Attendees" : "Partecipanti", + "_%n more guest_::_%n more guests_" : ["%n più ospite","%n più ospiti","%n più ospiti"], + "Remove group" : "Rimuovi gruppo", + "Remove attendee" : "Rimuovi partecipante", + "Request reply" : "Richiedi risposta", "Chairperson" : "Presidente", "Required participant" : "Partecipante necessario", "Optional participant" : "Partecipante facoltativo", "Non-participant" : "Non partecipante", - "Remove attendee" : "Rimuovi partecipante", - "Search for emails, users or contacts" : "Cerca email, utenti o contatti", + "_%n member_::_%n members_" : ["%n membro","%n membri","%n membri"], + "Search for emails, users, contacts, contact groups or teams" : "Cerca email, utenti, contatti, gruppi di contatti o team", "No match found" : "Nessuna corrispondenza trovata", + "Note that members of circles get invited but are not synced yet." : "Nota che i membri delle cerchie vengono invitati, ma non sono ancora sincronizzati.", + "Note that members of contact groups get invited but are not synced yet." : "Tieni presente che i membri dei gruppi di contatti vengono invitati ma non vengono ancora sincronizzati.", "(organizer)" : "(organizzatore)", + "Make {label} the organizer" : "Crea {label} organizzatore", + "Make {label} the organizer and attend" : "Crea{label} l'organizzatore e partecipa", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Per inviare inviti e gestire risposte, [linkopen]aggiungi il tuo indirizzo email nelle impostazioni personali[linkclose].", "Remove color" : "Rimuovi colore", "Event title" : "Titolo dell'evento", - "All day" : "Tutto il giorno", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Impossibile modificare le impostazioni di un giorno intero per gli eventi che sono parte di un insieme di ricorrenze.", - "from {startDate}" : "da {startDate}", - "from {startDate} at {startTime}" : "dal {startDate} alle {startTime}", - "to {endDate}" : "a {endDate}", - "to {endDate} at {endTime}" : "a {endDate} alle {endTime}", + "From" : "Da", + "To" : "A", "Repeat" : "Ripeti", - "End repeat" : "Termina ripetizione", - "Select to end repeat" : "Seleziona per terminare la ripetizione", + "_time_::_times_" : ["volta","volte","volte"], "never" : "mai", "on date" : "in data", "after" : "dopo", - "_time_::_times_" : ["volta","volte","volte"], + "End repeat" : "Termina ripetizione", + "Select to end repeat" : "Seleziona per terminare la ripetizione", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Questo evento è l'eccezione di un insieme di ricorrenze. Non puoi aggiungergli una regola di ricorrenza.", "first" : "primo", - "third" : "terzo", - "fourth" : "quarto", - "fifth" : "quinto", - "second to last" : "penultimo", - "last" : "ultimo", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Le modifiche alla regola di ricorrenza saranno applicate a questa e a tutte le future occorrenze.", "Repeat every" : "Ripeti ogni", "By day of the month" : "Per giorno del mese", "On the" : "Il", + "_day_::_days_" : ["giorno","giorni","giorni"], + "_week_::_weeks_" : ["settimana","settimane","settimane"], "_month_::_months_" : ["mese","mesi","mesi"], "_year_::_years_" : ["anno","anni","anni"], + "On specific day" : "In un giorno specifico", "weekday" : "giorno feriale", "weekend day" : "giorno del fine settimana", - "No recurrence" : "Nessuna ricorrenza", + "Does not repeat" : "Non ripete", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "La definizione di ricorrenza di questo evento non è supportata completamente da Nextcloud. Se modifichi le opzioni di ricorrenza, alcune ricorrenze potrebbero essere perse.", - "Suggestions" : "Consigli", "No rooms or resources yet" : "Ancora nessuna stanza o risorsa", + "Resources" : "Risorse", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sedia","{seatingCapacity} sedie","{seatingCapacity} sedie"], "Add resource" : "Aggiungi risorsa", "Has a projector" : "Ha un proiettore", "Has a whiteboard" : "Ha una lavagna", "Wheelchair accessible" : "Accessibile alle carrozzine", "Remove resource" : "Rimuovi risorsa", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sedia","{seatingCapacity} sedie","{seatingCapacity} sedie"], - "Projector" : "Proiettore", - "Whiteboard" : "Lavagna", "Search for resources or rooms" : "Cerca risorse o stanze", "available" : "disponibile", "unavailable" : "non disponibile", + "Show all rooms" : "Mostra tutte le stanze", + "Projector" : "Proiettore", + "Whiteboard" : "Lavagna", "Room type" : "Tipo stanza", "Any" : "Qualsiasi", "Minimum seating capacity" : "Numero minimo di sedie", - "More" : "Altro", - "Update this occurrence" : "Aggiorna questa occorrenza", + "More details" : "Maggiori dettagli", "Update this and all future" : "Aggiorna questa e tutte le future", + "Update this occurrence" : "Aggiorna questa occorrenza", "Public calendar does not exist" : "Il calendario pubblico non esiste", "Maybe the share was deleted or has expired?" : "Forse la condivisione è stata eliminata o è scaduta?", - "Please select a time zone:" : "Seleziona un fuso orario:", - "Pick a time" : "Scegli un orario", - "Pick a date" : "Scegli una data", "from {formattedDate}" : "dal {formattedDate}", "to {formattedDate}" : "al {formattedDate}", "on {formattedDate}" : "il {formattedDate}", @@ -330,9 +419,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} alle {formattedTime}", "Please enter a valid date" : "Digita una data valida", "Please enter a valid date and time" : "Digita una data e un orario validi", + "Select a time zone" : "Seleziona un fuso orario", + "Please select a time zone:" : "Seleziona un fuso orario:", + "Pick a time" : "Scegli un orario", + "Pick a date" : "Scegli una data", "Type to search time zone" : "Digita per cercare il fuso orario", "Global" : "Globale", - "Select date" : "Seleziona data", + "Holidays in {region}" : "Festività in {region}", + "An error occurred, unable to read public calendars." : "Si è verificato un errore, impossibile leggere i calendari pubblici.", + "An error occurred, unable to subscribe to calendar." : "Si è verificato un errore, impossibile sottoscrivere il calendario.", + "Public holiday calendars" : "Calendari delle festività pubbliche", + "Public calendars" : "Calendari pubblici", + "No valid public calendars configured" : "Nessun calendario pubblico valido configurato", + "Speak to the server administrator to resolve this issue." : "Parla con l'amministratore del server per risolvere questo problema.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "I calendari delle festività pubbliche sono forniti da Thunderbird. I dati del calendario saranno scaricati da {website}.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Questi calendari pubblici sono suggeriti dall'amministratore del server. I dati del calendario saranno scaricati dal rispettivo sito web.", + "By {authors}" : "Di {authors}", + "Subscribed" : "Sottoscritta", + "Subscribe" : "Iscrizione", + "Could not fetch slots" : "Impossibile recuperare gli slot", + "Select a date" : "Seleziona una data", "Select slot" : "Seleziona slot", "No slots available" : "Nessuno slot disponibile", "The slot for your appointment has been confirmed" : "Lo slot per il tuo appuntamento è stato confermato", @@ -349,23 +455,25 @@ "Personal" : "Personale", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Il rilevamento automatico del fuso orario ha determinato che il tuo è UTC.\nProbabilmente è il risultato di alcune misure di sicurezza del tuo browser web.\nImposta il tuo fuso orario a mano nelle impostazioni del calendario.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Il fuso orario configurato ({timezoneId}) non è stato trovato. Ripiego su UTC.\nCambia il tuo fuso orario nelle impostazioni e segnala questo problema.", - "No more events today" : "Non ci sono altri eventi oggi", - "No upcoming events" : "Nessun prossimo evento", - "Create a new event" : "Crea un nuovo evento", - "[Today]" : "[Oggi]", - "[Tomorrow]" : "[Domani]", - "[Yesterday]" : "[Ieri]", - "[Last] dddd" : "[Ultimo] dddd", + "Availability of {displayName}" : "Disponibilità di {displayName}", + "Edit event" : "Modifica evento", "Event does not exist" : "L'evento non esiste", + "Duplicate" : "Duplicato", "Delete this occurrence" : "Elimina questa occorrenza", "Delete this and all future" : "Elimina questa e tutte le future", - "Details" : "Dettagli", - "Attendees" : "Partecipanti", - "Resources" : "Risorse", + "All day" : "Tutto il giorno", + "Modifications wont get propagated to the organizer and other attendees" : "Le modifiche non verranno propagate all'organizzatore e agli altri partecipanti", + "Managing shared access" : "Gestire accesso condiviso", + "Deny access" : "Nega l'accesso", + "Invite" : "Invita", + "_User requires access to your file_::_Users require access to your file_" : ["Gli utenti hanno bisogno di accedere al tuo file","Gli utenti hanno bisogno di accedere ai tuoi file","Gli utenti hanno bisogno di accedere ai tuoi file"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Allegato che richiede un accesso condiviso","Allegati che richiedono un accesso condiviso","Allegato che richiede un accesso condiviso"], + "Untitled event" : "Evento senza titolo", "Close" : "Chiudi", - "Show more details" : "Mostra altri dettagli", + "Modifications will not get propagated to the organizer and other attendees" : "Le modifiche non verranno propagate all'organizzatore e agli altri partecipanti", "Subscribe to {name}" : "Sottoscrivi {name}", "Export {name}" : "Esporta {name}", + "Show availability" : "Mostra disponibilità", "Anniversary" : "Anniversario", "Appointment" : "Appuntamento", "Business" : "Lavoro", @@ -381,8 +489,8 @@ "Travel" : "Viaggio", "Vacation" : "Assenza", "Midnight on the day the event starts" : "Mezzanotte del giorno in cui inizia l'evento", - "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n giorno prima dell'evento alle {formattedHourMinute}","%n giorni prima dell'evento alle {formattedHourMinute}","%n giorni prima dell'evento alle {formattedHourMinute}"], - "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n settimana prima dell'evento alle {formattedHourMinute}","%n settimane prima dell'evento alle {formattedHourMinute}","%n settimane prima dell'evento alle {formattedHourMinute}"], + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n giorno prima dell'evento alle {formattedHourMinute}","%n giorni prima dell'evento alle {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n settimana prima dell'evento alle {formattedHourMinute}","%n settimane prima dell'evento alle {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "il giorno dell'evento alle {formattedHourMinute}", "at the event's start" : "all'inizio dell'evento", "at the event's end" : "alla fine dell'evento", @@ -393,36 +501,40 @@ "on {time}" : "il {time}", "on {time} ({timezoneId})" : "il {time} {timezoneId}", "Week {number} of {year}" : "Settimana {number} del {year}", - "Does not repeat" : "Non ripete", "Daily" : "Quotidianamente", "Weekly" : "Settimanalmente", "Monthly" : "Mensilmente", "Yearly" : "Annualmente", - "_Every %n day_::_Every %n days_" : ["Ogni %n giorno","Ogni %n giorni","Ogni %n giorni"], - "_Every %n week_::_Every %n weeks_" : ["Ogni %n settimana","Ogni %n settimane","Ogni %n settimane"], - "_Every %n month_::_Every %n months_" : ["Ogni %n mese","Ogni %n mesi","Ogni %n mesi"], - "_Every %n year_::_Every %n years_" : ["Ogni %n anno","Ogni %n anni","Ogni %n anni"], - "_on {weekday}_::_on {weekdays}_" : ["il {weekday}","i {weekdays}","i {weekdays}"], - "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["il giorno {dayOfMonthList}","nei giorni {dayOfMonthList}","nei giorni {dayOfMonthList}"], + "_Every %n day_::_Every %n days_" : ["Ogni %n giorno","Ogni %n giorni"], + "_Every %n week_::_Every %n weeks_" : ["Ogni %n settimana","Ogni %n settimane"], + "_Every %n month_::_Every %n months_" : ["Ogni %n mese","Ogni %n mesi"], + "_Every %n year_::_Every %n years_" : ["Ogni %n anno","Ogni %n anni"], + "_on {weekday}_::_on {weekdays}_" : ["il {weekday}","i {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["il giorno {dayOfMonthList}","nei giorni {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "il {ordinalNumber} {byDaySet}", - "in {monthNames}" : "in {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} il {ordinalNumber} {byDaySet}", "until {untilDate}" : "fino al {untilDate}", "_%n time_::_%n times_" : ["%n volta","%n volte","%n volte"], - "Untitled event" : "Evento senza titolo", + "second" : "secondo", + "third" : "terzo", + "fourth" : "quarto", + "fifth" : "quinto", + "second to last" : "penultimo", + "last" : "ultimo", "Untitled task" : "Attività senza titolo", "Please ask your administrator to enable the Tasks App." : "Chiedi al tuo amministratore di abilitare l'applicazione Attività.", - "Prev" : "Prec.", - "Next" : "Succ.", - "Prev year" : "Anno prec.", - "Next year" : "Anno succ.", - "Year" : "Anno", + "You are not allowed to edit this event as an attendee." : "Non ti è consentito modificare questo evento in quanto partecipante.", "W" : "S", "%n more" : "%n altri", "No events to display" : "Nessun evento da visualizzare", + "All participants declined" : "Tutti i partecipanti hanno rifiutato", + "Please confirm your participation" : "Si prega di confermare la tua partecipazione", + "You declined this event" : "Hai rifiutato questo evento", + "Your participation is tentative" : "La tua partecipazione è provvisoria", "_+%n more_::_+%n more_" : ["+%n altro","+%n altri","+%n altri"], "No events" : "Nessun evento", "Create a new event or change the visible time-range" : "Crea un nuovo evento o cambia l'intervallo di tempo visibile", + "Failed to save event" : "Impossibile salvare l'evento", "It might have been deleted, or there was a typo in a link" : "Potrebbe essere stato eliminato o c'era un errore di digitazione in un collegamento", "It might have been deleted, or there was a typo in the link" : "Potrebbe essere stato eliminato o c'era un errore di digitazione nel collegamento", "Meeting room" : "Sala riunioni", @@ -435,6 +547,8 @@ "When shared hide this event" : "Se condiviso, nascondi questo evento", "The visibility of this event in shared calendars." : "La visibilità di questo evento nei calendari condivisi.", "Add a location" : "Aggiungi un luogo", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Aggiungi una descrizione\n\n- Di cosa tratta questa riunione\n- Punti all'ordine del giorno\n- Tutto ciò che i partecipanti devono preparare", + "Open Link" : "Apri il link", "Add a description" : "Aggiungi una descrizione", "Status" : "Stato", "Confirmed" : "Confermato", @@ -448,135 +562,22 @@ "Add this as a new category" : "Aggiungi come una nuova categoria", "Custom color" : "Colore personalizzato", "Special color of this event. Overrides the calendar-color." : "Colore speciale di questo evento. Ignora il colore del calendario.", - "Chat room for event" : "Stanza di chat per evento", + "Error while sharing file" : "Errore durante la condivisione del file", + "Error while sharing file with user" : "Errore durante la condivisione del file con l'utente", + "Attachment {fileName} already exists!" : "L'allegato {fileName} esiste già!", + "An error occurred during getting file information" : "Si è verificato un errore durante l'ottenimento delle informazioni sul file.", + "An error occurred, unable to delete the calendar." : "Si è verificato un errore, impossibile eliminare il calendario.", "Imported {filename}" : "Importato {filename}", - "Meditation" : "Meditazione", - "Relaxing" : "Rilassamento", - "Relax" : "Riposo", - "Break" : "Pausa", - "Commute" : "Fare il pendolare", - "Commuting" : "Pendolare", - "Shuttle" : "Navetta", - "Invoice" : "Fattura", - "Finance" : "Finanza", - "Bank" : "Banca", - "Money" : "Soldi", - "Wedding" : "Matrimonio", - "Dog" : "Cane", - "Concert" : "Concerto", - "Festival" : "Festival", - "Theater" : "Teatro", - "Theatre" : "Teatro", - "Presentation" : "Presentazione", - "Talk" : "Parlare", - "Speech" : "Discorso", - "Deadline" : "Scadenza", - "Submission" : "Sottomissione", - "Reporting" : "Segnalazione", - "Camping" : "Campeggio", - "Camp" : "Accamparsi", - "Election" : "Elezione", - "Voting" : "Votazione", - "Vote" : "Votare", - "Barbecue" : "Grigliata", - "Barbeque" : "Grigliata", - "Garden" : "Giardino", - "Farm" : "Fattoria", - "Movie" : "Film", - "Cinema" : "Cinema", - "Graduation" : "Laurea", - "Brainstorm" : "Brainstorm", - "Review" : "Recensione", - "Audit" : "Controllo", - "Inspection" : "Ispezione", - "Proofreading" : "Correzione", - "Baseball" : "Baseball", - "Meet" : "Incontrare", - "Planning" : "Pianificazione", - "Pointing" : "Indicazione", - "Retrospective" : "Retrospettiva", - "Office" : "Ufficio", - "Contributor week" : "Settimana del collaboratore", - "Mail" : "Posta", - "Soccer" : "Calcio", - "Football" : "Football", - "Gaming" : "Gioco", - "Drive" : "Guidare", - "Driving" : "Guidare", - "Bicycle" : "Bicicletta", - "Cycle" : "Pedalare", - "Cycling" : "Andare in bicicletta", - "Biking" : "Pedalata", - "Bike" : "Bicicletta", - "Podcast" : "Podcast", - "Basketball" : "Pallacanestro", - "Fishing" : "Pesca", - "Hiking" : "Escursionismo", - "Hike" : "Escursione", - "Art" : "Arte", - "Exhibition" : "Mostra", - "Museum" : "Museo", - "Pilates" : "Pilates", - "Park" : "Parco", - "Walk" : "Camminare", - "Studying" : "Studiare", - "Doctor" : "Medico", - "Health" : "Salute", - "Dentist" : "Dentista", - "Hospital" : "Ospedale", - "Interview" : "Intervista", - "Training" : "Allenamento", - "Practice" : "Esercitazione", - "Sports" : "Sport", - "Exercise" : "Esercizio", - "Work out" : "Allenarsi", - "Working out" : "Allenamento", - "Gym" : "Palestra", - "Barber" : "Barbiere", - "Haircut" : "Taglio di capelli", - "Hairdresser" : "Parrucchiere", - "Exam" : "Esame", - "Written test" : "Prova scritta", - "Oral test" : "Prova orale", - "Working" : "Lavorare", - "New Years Eve" : "Capodanno", - "NYE" : "Capodanno", - "Fireworks" : "Fuochi d'artificio", - "Running" : "Correre", - "Go for a run" : "Andare a correre", - "Marathon" : "Maratona", - "Video-conference" : "Videoconferenza", - "Conference-call" : "Conferenza", - "Video-call" : "Chiamata video", - "Video-chat" : "Chat video", - "Video-meeting" : "Riunione video", - "Call" : "Chiamare", - "Calling" : "Chiamata", - "Christmas" : "Natale", - "Conference" : "Conferenza", - "Pizza" : "Pizza", - "Travelling" : "Viaggiare", - "Trip" : "Viaggio", - "Journey" : "Viaggio", - "Collaborate" : "Collaborare", - "Pair" : "Coppia", - "Lecture" : "Lezione", - "Seminar" : "Seminario", - "Teaching" : "Insegnare", - "Photograph" : "Fotografia", - "Party" : "Festa", - "Celebration" : "Celebrazione", - "Celebrate" : "Celebrare", - "Birthday" : "Compleanno", - "Shopping" : "Acquisti", - "Groceries" : "Drogheria", - "Skate" : "Pattinare", - "Skateboard" : "Skateboard", - "Wine tasting" : "Degustazione di vini", - "Golf" : "Golf", - "Dinner" : "Cena", - "Lunch" : "Pranzo", + "This is an event reminder." : "Questo è un promemoria dell'evento.", + "Error while parsing a PROPFIND error" : "Errore durante l'elaborazione di un errore PROPFIND", "Appointment not found" : "Appuntamento non trovato", - "User not found" : "Utente non trovato" + "User not found" : "Utente non trovato", + "Reminder" : "Promemoria", + "+ Add reminder" : "+ Aggiungi promemoria", + "Select automatic slot" : "Selezione automatica degli slot", + "with" : "con", + "Available times:" : "Orari disponibili:", + "Suggestions" : "Consigli", + "Details" : "Dettagli" },"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/ja.js b/l10n/ja.js index 02e568075afe545bfa101a754251c36029f78cb0..ea138430b26215f5a31d41cfd7488981c63f4a4c 100644 --- a/l10n/ja.js +++ b/l10n/ja.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "メールアドレスが長すぎます", "User-Session unexpectedly expired" : "ユーザーセッションが予期せず期限切れになりました", "Provided email-address is not valid" : "メールアドレスが有効ではありません", "%s has published the calendar »%s«" : "%sをカレンダー »%s«に登録しました", @@ -11,120 +12,159 @@ OC.L10N.register( "Open »%s«" : "»%s«を開く", "Cheers!" : "それでは!", "Upcoming events" : "今後のイベント", + "No more events today" : "今日はこれ以上イベントがありません", + "No upcoming events" : "今後のイベントはありません", + "More events" : "その他イベント", + "%1$s with %2$s" : "%2$sと%1$sで", + "Calendar" : "カレンダー", + "New booking {booking}" : "新しい予約 {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) は {date_time} に \"{config_display_name}\" の予定を予約をしました。", "Appointments" : "予定", + "Schedule appointment \"%s\"" : "予定を入れる \"%s\"", "Schedule an appointment" : "予定を入れる", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : " %s の準備", + "Follow up for %s" : "%s に対するフォローアップ", + "Your appointment \"%s\" with %s needs confirmation" : "あなたの \"%s\" との予定 %s には確認が必要", "Dear %s, please confirm your booking" : "%s様、予定を承認してください。", "Confirm" : "承認", + "Appointment with:" : "予約:", + "Description:" : "説明:", "This confirmation link expires in %s hours." : "承認用リンクの有効期限は1%s時間です。", - "Appointment:" : "予定:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "予定のキャンセルを希望される場合は、このメールに返信するか、主催者のプロフィールページを訪れ、主催者に連絡してください。", + "Your appointment \"%s\" with %s has been accepted" : "あなたのアポイントメント \"%s\" が %s に受理されました。", + "Dear %s, your booking has been accepted." : "親愛なる%s、あなたの予約は受け入れられました。", + "Appointment for:" : "予定:", "Date:" : "日時:", + "You will receive a link with the confirmation email" : "確認メールにリンクが添付されます。", "Where:" : "場所:", - "Description:" : "説明:", - "Calendar" : "カレンダー", + "Comment:" : "コメント:", + "You have a new appointment booking \"%s\" from %s" : "新しい予定の予約 \"%s\" が %s からあります。", + "Dear %s, %s (%s) booked an appointment with you." : "親愛なる %s、%s (%s) はあなたのアポイントメントを予約しました。", "A Calendar app for Nextcloud" : "NextCloudのカレンダーアプリ", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "カレンダーアプリは、NextcloudのCalDAVサーバーのユーザーインターフェイスです。様々なデバイスからNextcloudにイベントを簡単に同期し、オンラインで編集することができます。\n\n* 🚀 **他のNextcloudアプリとの統合! ** 現在、連絡先 - 今後も追加予定です。\n* 🌐 **WebCal サポート! ** お気に入りのチームの試合日をカレンダーで見たいですか?問題ありません!\n* 🙋 **出席者! **イベントに人を招待する\n* ⌚️ **空き時間/忙しい時間! ** 出席者がいつ会うことができるかを確認します。\n* ⏰ **リマインダー! ** ブラウザ内や電子メールでイベントのアラームを取得します。\n* 🔍 検索! 簡単にイベントを見つける\n* ☑️ タスク! 期限付きのタスクをカレンダーで直接確認できる\n* 🙈 **我々は「車輪の再発明」をしない!**偉大な[c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js)と [fullcalendar](https://github.com/fullcalendar/fullcalendar) ライブラリをベースにしたものです。", "Previous day" : "前日", "Previous week" : "前週", + "Previous year" : "前年", "Previous month" : "前月", "Next day" : "翌日", "Next week" : "翌週", + "Next year" : "来年", "Next month" : "翌月", - "New event" : "新しいイベント", + "Create new event" : "新しいイベントを作成する", + "Event" : "イベント", "Today" : "今日", "Day" : "日", "Week" : "週", "Month" : "月", + "Year" : "年", "List" : "リスト", + "Appointment link was copied to clipboard" : "予定リンクがクリップボードにコピーされました", + "Appointment link could not be copied to clipboard" : "予定リンクをクリップボードにコピーできませんでした", "Preview" : "プレビュー", "Copy link" : "リンクをコピー", "Edit" : "編集", "Delete" : "削除", - "Appointment link was copied to clipboard" : "予定リンクがクリップボードにコピーされました", - "Appointment link could not be copied to clipboard" : "予定リンクをクリップボードにコピーできませんでした", - "Add new" : "新規作成", - "Untitled calendar" : "無題のカレンダー", - "Edit name" : "名前を編集", - "Saving name …" : "名前を保存しています …", - "Edit color" : "色を編集", - "Saving color …" : "色を保存しています …", - "Copy private link" : "プライベートリンクをコピー", - "Export" : "エクスポート", - "Unshare from me" : "共有を自分から解除", + "Appointment schedules" : "予約スケジュール", + "Create new" : "新規作成", + "Disable calendar \"{calendar}\"" : "カレンダー \"{calendar}\" を無効化する", + "Disable untitled calendar" : "無題のカレンダーを無効化する", + "Enable calendar \"{calendar}\"" : "\"{calendar}\" カレンダーを有効化する", + "Enable untitled calendar" : "無題のカレンダーを有効にする", "An error occurred, unable to change visibility of the calendar." : "エラーが発生したため、カレンダーの表示状態を変更できません。", - "An error occurred, unable to delete the calendar." : "エラーが発生したため、カレンダーを削除できません。", - "Calendar link copied to clipboard." : "カレンダーリンクをクリップボードにコピー", - "Calendar link could not be copied to clipboard." : "カレンダーリンクをクリップボードにコピーできませんでした。", - "An error occurred, unable to rename the calendar." : "エラーが発生したため、カレンダーの名前を変更できません。", - "An error occurred, unable to change the calendar's color." : "エラーが発生したため、カレンダーの色を変更できません。", + "Untitled calendar" : "無題のカレンダー", + "Shared with you by" : "と共有中", + "Edit and share calendar" : "カレンダー編集、共有", + "Edit calendar" : "カレンダー編集", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["{countdown}秒後にカレンダーの共有を解除します"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["{countdown}秒後にカレンダーを削除します"], + "An error occurred, unable to create the calendar." : "エラーが発生したため、カレンダーを作成できません。", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "有効なリンクを入力してください(http:// や https:// 、webcal:// または webcals:// のいずれかで始まる必要があります)", + "Calendars" : "カレンダー", + "Add new" : "新規作成", + "New calendar" : "新しいカレンダー", + "Name for new calendar" : "新しいカレンダーの名前", + "Creating calendar …" : "カレンダーを作成中 …", + "New calendar with task list" : "タスクリスト付きの新しいカレンダー", + "New subscription from link (read-only)" : "リンクから新規購読 (読み取り専用)", + "Creating subscription …" : "購読を作成中 …", + "Add public holiday calendar" : "祝日カレンダーを追加", + "Add custom public calendar" : "カスタム公開カレンダーを追加する", + "Calendar link copied to clipboard." : "カレンダーリンクをクリップボードにコピー", + "Calendar link could not be copied to clipboard." : "カレンダーリンクをクリップボードにコピーできませんでした。", + "Copy subscription link" : "購読リンクをコピー", + "Copying link …" : "リンクをコピーしています …", + "Copied link" : "リンクをコピーしました", + "Could not copy link" : "リンクをコピーできませんでした", + "Export" : "エクスポート", + "Untitled item" : "無題の項目", + "Unknown calendar" : "不明なカレンダー", + "Could not load deleted calendars and objects" : "削除されたカレンダーとオブジェクトを読み込めませんでした。", + "Could not restore calendar or event" : "カレンダーまたはイベントを復元できませんでした。", + "Do you really want to empty the trash bin?" : "本当にゴミ箱を空にしますか?", + "Empty trash bin" : "ゴミ箱を空にする", + "Trash bin" : "ごみ箱", + "Loading deleted items." : "削除された項目をロードします。", + "You do not have any deleted items." : "削除された項目はありません。", + "Name" : "名前", + "Deleted" : "削除済み", + "Restore" : "復元", + "Delete permanently" : "完全に削除する", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["ゴミ箱の中のアイテムは {numDays} 日後に削除されます"], + "Could not update calendar order." : "カレンダーの順番を更新できません。", + "Shared calendars" : "共有カレンダー", + "Deck" : "デッキ", + "Hidden" : "非公開", + "Internal link" : "内部リンク", + "A private link that can be used with external clients" : "外部クライアントと使用できるプライベートリンク", + "Copy internal link" : "内部リンクをコピー", + "An error occurred, unable to publish calendar." : "エラーが発生したため、カレンダーを公開できません。", + "An error occurred, unable to send email." : "エラーが発生したため、メールを送信できません。", + "Embed code copied to clipboard." : "埋め込みコードをクリップボードにコピーしました。", + "Embed code could not be copied to clipboard." : "埋め込みコードをクリップボードにコピーできませんでした。", + "Unpublishing calendar failed" : "カレンダーの公開解除に失敗しました", "Share link" : "URLで共有", - "Publish calendar" : "カレンダーを公開", - "Publishing calendar" : "カレンダーを公開しています", "Copy public link" : "公開リンクをコピー", "Send link to calendar via email" : "メールでカレンダーへのリンクを送信", "Enter one address" : "アドレスを1つ入力してください", "Sending email …" : "メールを送信中 …", - "Copy subscription link" : "購読リンクをコピー", - "Copying link …" : "リンクをコピーしています …", - "Copied link" : "リンクをコピーしました", - "Could not copy link" : "リンクをコピーできませんでした", "Copy embedding code" : "埋め込みコードをコピー", "Copying code …" : "コードをコピーしています …", "Copied code" : "コードをコピーしました", "Could not copy code" : "コードをコピーできませんでした", "Delete share link" : "共有リンクを削除", "Deleting share link …" : "共有リンクを削除しています …", - "An error occurred, unable to publish calendar." : "エラーが発生したため、カレンダーを公開できません。", - "An error occurred, unable to send email." : "エラーが発生したため、メールを送信できません。", - "Embed code copied to clipboard." : "埋め込みコードをクリップボードにコピーしました。", - "Embed code could not be copied to clipboard." : "埋め込みコードをクリップボードにコピーできませんでした。", - "Unpublishing calendar failed" : "カレンダーの公開解除に失敗しました", - "Share with users or groups" : "ユーザーまたはグループと共有する", - "No users or groups" : "ユーザーまたはグループはありません", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "カレンダーの共有解除中にエラーが発生しました", + "An error occurred, unable to change the permission of the share." : "エラーが発生したため、共有の権限を変更できませんでした。", "can edit" : "編集を許可", "Unshare with {displayName}" : "{displayName}との共有を解除", - "An error occurred, unable to change the unshare the calendar." : "エラーが発生したため、カレンダーの共有を解除できませんでした。", - "An error occurred, unable to change the permission of the share." : "エラーが発生したため、共有の権限を変更できませんでした。", - "+ New calendar" : "+ 新しいカレンダー", - "New calendar" : "新しいカレンダー", - "Name for new calendar" : "新しいカレンダーの名前", - "Creating calendar …" : "カレンダーを作成中 …", - "New calendar with task list" : "タスクリスト付きの新しいカレンダー", - "New subscription from link (read-only)" : "リンクからの新規加入 (読み取り専用)", - "Creating subscription …" : "購読を作成中 …", - "An error occurred, unable to create the calendar." : "エラーが発生したため、カレンダーを作成できません。", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "有効なリンクを入力してください(http:// や https:// 、webcal:// または webcals:// のいずれかで始まる必要があります)", - "Trash bin" : "ごみ箱", - "Loading deleted elements." : "削除された要素を読み込む。", - "You do not have any deleted elements." : "削除された資格情報はありません", - "Name" : "名前", - "Deleted" : "削除済み", - "Restore" : "復元", - "Delete permanently" : "完全に削除する", - "Empty trash bin" : "ゴミ箱を空にする", - "Untitled element" : "無題要素", - "Unknown calendar" : "不明なカレンダー", - "Could not load deleted calendars and objects" : "削除されたカレンダーとオブジェクトを読み込めませんでした。", - "Could not restore calendar or event" : "カレンダーまたはイベントを復元できませんでした。", - "Do you really want to empty the trash bin?" : "本当にゴミ箱を空にしますか?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["ゴミ箱にある項目は {numDays} 日後に削除されます"], - "Could not update calendar order." : "カレンダーの順番を更新できません。", + "Share with users or groups" : "ユーザーまたはグループと共有する", + "No users or groups" : "ユーザーまたはグループはありません", + "Failed to save calendar name and color" : "カレンダー名と色の保存に失敗しました", + "Calendar name …" : "カレンダー名 …", + "Never show me as busy (set this calendar to transparent)" : "予定ありとして表示しない (このカレンダーを透明に設定)", + "Share calendar" : "カレンダー共有", + "Unshare from me" : "共有を自分から解除", + "Save" : "保存", "Import calendars" : "カレンダーのインポート", "Please select a calendar to import into …" : "インポートするカレンダーを選択してください …", "Filename" : "ファイル名", "Calendar to import into" : "インポートするカレンダー", "Cancel" : "キャンセル", "_Import calendar_::_Import calendars_" : ["カレンダーのインポート"], + "Select the default location for attachments" : "添付ファイルのデフォルト位置を選択", + "Pick" : "選定", + "Invalid location selected" : "選択した場所が無効", + "Attachments folder successfully saved." : "添付ファイルフォルダーを保存しました", + "Error on saving attachments folder." : "添付ファイルフォルダーの保存でエラーが発生しました", + "Default attachments location" : "添付ファイルのデフォルト位置", "{filename} could not be parsed" : "{filename} が解析できませんでした", "No valid files found, aborting import" : "有効なファイルが見つかりませんでした。インポートを中止します。", - "Import partially failed. Imported {accepted} out of {total}." : "インポートが部分的に失敗しました。 {total}のうち{accepted}をインポートしました。", "_Successfully imported %n event_::_Successfully imported %n events_" : ["%nイベントのインポートに成功しました"], + "Import partially failed. Imported {accepted} out of {total}." : "インポートが部分的に失敗しました。 {total}のうち{accepted}をインポートしました。", "Automatic" : "自動", "Automatic ({detected})" : "自動 ({detected})", "New setting was not saved successfully." : "新しい設定は正常に保存されませんでした。", - "Shortcut overview" : "概要", - "or" : "或いは", "Navigation" : "ナビゲーション", "Previous period" : "前の期間", "Next period" : "次の期間", @@ -132,29 +172,39 @@ OC.L10N.register( "Day view" : "日表示", "Week view" : "週表示", "Month view" : "月表示", + "Year view" : "年表示", "List view" : "リスト表示", "Actions" : "アクション", "Create event" : "イベントを作成", "Show shortcuts" : "概要の表示", "Editor" : "エディタ", "Close editor" : "エディタを閉じる", + "Save edited event" : "編集したイベントを保存", + "Delete edited event" : "編集したイベントを削除", + "Duplicate event" : "イベントを複製", + "Shortcut overview" : "概要", + "or" : "或いは", + "Calendar settings" : "カレンダー設定", + "At event start" : "イベント開始時", + "No reminder" : "リマインダーなし", + "Failed to save default calendar" : "デフォルトカレンダーの保存に失敗しました", + "CalDAV link copied to clipboard." : "CalDAVリンクがクリップボードにコピーされました", + "CalDAV link could not be copied to clipboard." : "CalDAVリンクをクリップボードにコピーできませんでした", "Enable birthday calendar" : "誕生日カレンダーを有効にする", "Show tasks in calendar" : "カレンダーにタスクを表示", "Enable simplified editor" : "簡易エディターを有効にする", - "Limit visible events per view" : "表示するイベントを制限する", + "Limit the number of events displayed in the monthly view" : "月間ビューに表示されるイベント数を制限する", "Show weekends" : "週末を表示する", "Show week numbers" : "週番号を表示する", "Time increments" : "時間の増加", + "Default calendar for incoming invitations" : "受信した招待状のデフォルトカレンダー", "Default reminder" : "既定のリマインダー", "Copy primary CalDAV address" : "通常のCalDAVアドレスをコピー", "Copy iOS/macOS CalDAV address" : "iOS/macOS用のCalDAVアドレスをコピー", "Personal availability settings" : "個人の稼働率設定", "Show keyboard shortcuts" : "キーボード ショートカット", - "No reminder" : "リマインダーなし", - "CalDAV link copied to clipboard." : "CalDAVリンクがクリップボードにコピーされました", - "CalDAV link could not be copied to clipboard." : "CalDAVリンクをクリップボードにコピーできませんでした", - "Appointment was created successfully" : "予定の作成に成功しました。", - "Appointment was updated successfully" : "予定は正常に更新されました。", + "Appointment schedule successfully created" : "予約スケジュールの作成に成功しました", + "Appointment schedule successfully updated" : "予約スケジュールの更新に成功しました", "_{duration} minute_::_{duration} minutes_" : ["{duration}分"], "0 minutes" : "0分", "_{duration} hour_::_{duration} hours_" : ["{duration}時間"], @@ -165,15 +215,19 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "予定を設定するには、個人設定であなたのメールアドレスを追加してください。", "Public – shown on the profile page" : "公開 - プロフィールページに表示されます。", "Private – only accessible via secret link" : "非公開 - 秘密のリンクからしかアクセスできません。", + "Update" : "更新", + "Appointment name" : "予定名", "Location" : "場所", + "Create a Talk room" : "通話ルームを作成", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "予約ごとにユニークなリンクが作成され、確認メールで送信されます", "Description" : "説明", "Visibility" : "公開レベル", "Duration" : "期間", "Increments" : "インクリメント", "Additional calendars to check for conflicts" : "コンフリクトを確認するための追加カレンダー", "Pick time ranges where appointments are allowed" : "予約可能な時間帯を選ぶ", - "to" : "宛先", - "Delete slot" : "スロットを削除", + "to" : "終了", + "Delete slot" : "時間枠を削除", "No times set" : "時間設定なし", "Add" : "追加", "Monday" : "月曜日", @@ -183,6 +237,7 @@ OC.L10N.register( "Friday" : "金曜日", "Saturday" : "土曜日", "Sunday" : "日曜日", + "Weekdays" : "平日", "Add time before and after the event" : "イベント前後の時間を追加", "Before the event" : "開催前", "After the event" : "イベント終了後", @@ -190,16 +245,18 @@ OC.L10N.register( "Minimum time before next available slot" : "次の空きスロットまでの最短時間", "Max slots per day" : "1日あたりの最大スロット数", "Limit how far in the future appointments can be booked" : "予約可能な時間帯の制限", - "Create appointment" : "予定を作成", - "Edit appointment" : "予定を編集", - "Save" : "保存", - "Update" : "アップデート", + "It seems a rate limit has been reached. Please try again later." : "レート制限に達したようです。後でもう一度お試しください。", + "Please confirm your reservation" : "あなたの予約の確認をしてください", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "詳細をメールでお送りしました。メールに記載されているリンクから予約の確認をお願いします。これでこのページを閉じることができます。", "Your name" : "あなたの名前", "Your email address" : "あなたのメールアドレス", "Please share anything that will help prepare for our meeting" : "会議の準備に役立つことがあれば教えてください。", "Could not book the appointment. Please try again later or contact the organizer." : "予約できませんでした。後でもう一度試してみるか、主催者に連絡してください。", - "Reminder" : "リマインダー", + "Back" : "戻る", + "Create a new conversation" : "新しい会話を作成する", + "Select conversation" : "会話を選択", + "on" : "曜日", + "at" : "で", "before at" : "次の時間分早めに通知", "Notification" : "通知", "Email" : "メール", @@ -210,99 +267,192 @@ OC.L10N.register( "Edit time" : "時刻を変更", "Save time" : "時刻を保存", "Remove reminder" : "リマインダーを削除", - "on" : "曜日", - "at" : "で", - "+ Add reminder" : "+ リマインダーを追加", "Add reminder" : "リマインダーを追加", - "_second_::_seconds_" : ["秒"], - "_minute_::_minutes_" : ["分"], - "_hour_::_hours_" : ["時間"], - "_day_::_days_" : ["日"], - "_week_::_weeks_" : ["週"], + "seconds" : "秒", + "minutes" : "分", + "hours" : "時間", + "days" : "日", + "weeks" : "週", + "Choose a file to add as attachment" : "添付として追加するファイルを選択", + "Choose a file to share as a link" : "共有リンクにして送信するファイルを選択", + "Attachment {name} already exist!" : "添付ファイル {name} は既に存在します!", + "Could not upload attachment(s)" : "添付ファイルをアップロードできませんでした", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "外部の信頼できない {host} に移動しようとしています。本当に続行しますか?リンク: {link}", + "Proceed" : "続行する", + "No attachments" : "添付ファイル無し", + "Add from Files" : "ファイルから追加", + "Upload from device" : "デバイスからアップロード", + "Delete file" : "ファイルを削除", + "Confirmation" : "確認", + "_{count} attachment_::_{count} attachments_" : ["{count} 個の添付ファイル"], + "Suggested" : "提案された", "Available" : "利用可能", + "Invitation accepted" : "招待を受け付けました", + "Accepted {organizerName}'s invitation" : "{organizerName} の招待を受け入れました", + "Participation marked as tentative" : "参加は暫定的なもの", + "Invitation is delegated" : "招待は委任されました", "Not available" : "利用できません", + "Invitation declined" : "招待は辞退しました", + "Declined {organizerName}'s invitation" : "{organizerName} の招待を辞退しました", + "Awaiting response" : "返答待ち", + "Checking availability" : "空き状況の確認", + "Has not responded to {organizerName}'s invitation yet" : "{organizerName} の招待にまだ応答していません", + "chairperson" : "主宰者", + "required participant" : "参加必須", + "non-participant" : "非参加", + "optional participant" : "任意参加", + "{organizer} (organizer)" : "{organizer} (organizer)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "出席者、リソース、ルームの空き状況", + "Suggestion accepted" : "提案を受け入れた", + "Out of office" : "オフィス外", + "Attendees:" : "参加者:", + "Done" : "完了", + "Search room" : "ルームを検索する", + "Room name" : "会議室名", + "Check room availability" : "ルームの空き状況を確認する", "Free" : "空き", "Busy (tentative)" : "ビジー (暫定)", "Busy" : "ビジー", - "Out of office" : "オフィス外", "Unknown" : "不明", + "Find a time" : "時間を見つける", + "The invitation has been accepted successfully." : "招待状は正常に受理されました。", + "Failed to accept the invitation." : "招待を受け入れることに失敗しました。", + "The invitation has been declined successfully." : "招待は正常に辞退されました。", + "Failed to decline the invitation." : "招待の辞退に失敗しました。", + "Your participation has been marked as tentative." : "あなたの参加は暫定的なものとマークされました。", + "Failed to set the participation status to tentative." : "参加ステータスを暫定に設定することに失敗した。", "Accept" : "承諾", "Decline" : "拒否", "Tentative" : "暫定的", - "Create Talk room for this event" : "このイベントに通話ルームを作成する", - "Show busy times" : "忙しい時間を表示", "No attendees yet" : "出席者はまだいません", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} 招待済み, {confirmedCount} 確定", + "Successfully appended link to talk room to location." : "トークルームへのリンクをロケーションに追加しました。", + "Successfully appended link to talk room to description." : "通話ルームへのリンクを説明文に追加しました", "Error creating Talk room" : "通話ルームの作成に失敗しました", - "Send email" : "メールを送信", + "Attendees" : "参加者", + "_%n more guest_::_%n more guests_" : ["ゲスト %n 名追加"], + "Remove group" : "グループを削除", + "Remove attendee" : "出席者を削除", + "Request reply" : "返信をリクエストする", "Chairperson" : "主宰者", "Required participant" : "参加必須", "Optional participant" : "任意参加", "Non-participant" : "非参加", - "Remove attendee" : "出席者を削除", + "_%n member_::_%n members_" : ["%n メンバー"], + "Search for emails, users, contacts, contact groups or teams" : "メール、ユーザー、連絡先、連絡先グループまたはチームを検索", "No match found" : "一致するものが見つかりません", + "Note that members of circles get invited but are not synced yet." : "サークルのメンバーは招待さ れますが、まだ同期されていないことに注意してください。", "(organizer)" : "(主催者)", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "招待を送信して返信を受け取るには、[linkopen]個人設定にメールアドレスを追加[linkclose]してください。", "Remove color" : "色を削除", "Event title" : "イベントタイトル", - "All day" : "終日", - "from {startDate}" : "{startDate}から", - "from {startDate} at {startTime}" : "{startDate}の{startTime}から", - "to {endDate}" : "{endDate}まで", - "to {endDate} at {endTime}" : "{endDate}の{endTime}まで", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "繰り返しの一部であるイベントの終日設定は変更できません。", + "From" : "開始", + "To" : "宛先", "Repeat" : "繰り返し", - "End repeat" : "繰り返し終了", - "Select to end repeat" : "繰り返しの終了を選択", + "_time_::_times_" : ["回数"], "never" : "なし", "on date" : "日時指定", "after" : "後", - "_time_::_times_" : ["回数"], + "End repeat" : "繰り返し終了", + "Select to end repeat" : "繰り返しの終了を選択", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "このイベントは繰り返しセットの反復例外です。それに繰り返しルールを追加することはできません。", "first" : "初日", - "third" : "3日目", - "fourth" : "4日目", - "fifth" : "5日目", - "second to last" : "2日目から最終日", - "last" : "最後", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "繰り返しルールの変更は、今回および今後のすべての開催にのみ適用されます。", "Repeat every" : "毎日繰り返す", + "By day of the month" : "日付", + "On the" : "On the", + "_day_::_days_" : ["日"], + "_week_::_weeks_" : ["週"], "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], "weekday" : "平日", "weekend day" : "週末", - "Whiteboard" : "ホワイトボード", + "Does not repeat" : "繰り返さない", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "このイベントの繰り返し定義は、Nextcloudでは完全にサポートされていません。繰り返しオプションを編集すると、特定の繰り返しが失われる場合があります。", + "No rooms or resources yet" : "ルームやリソースがありません", + "Resources" : "リソース", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} 席"], + "Add resource" : "リソースを追加する", + "Has a projector" : "プロジェクタ設置", + "Has a whiteboard" : "ホワイトボードがあります", + "Wheelchair accessible" : "車イス対応", + "Remove resource" : "リソースを削除する", + "Search for resources or rooms" : "リソース、ルームを検索", "available" : "利用可能", "unavailable" : "利用不可", - "More" : "もっと見る", + "Show all rooms" : "すべてのルームを表示", + "Projector" : "プロジェクター", + "Whiteboard" : "ホワイトボード", + "Room type" : "ルーム種別", + "Any" : "Any", + "Minimum seating capacity" : "最低座席数", + "More details" : "詳細情報", "Update this and all future" : "これ以降を更新", + "Update this occurrence" : "この出来事を更新する", "Public calendar does not exist" : "公開カレンダーは存在しません", "Maybe the share was deleted or has expired?" : "共有が削除されたか、期限切れの可能性があります", - "Please select a time zone:" : "タイムゾーンを選択してください:", - "Pick a time" : "時間を指定", - "Pick a date" : "日付を指定", "from {formattedDate}" : "{formattedDate}から", "to {formattedDate}" : "{formattedDate}まで", + "on {formattedDate}" : "{formattedDate} にて", "from {formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}から", "to {formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}まで", + "on {formattedDate} at {formattedTime}" : "{formattedDate} の {formattedTime} に", "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "有効な日付を入力してください", "Please enter a valid date and time" : "有効な日付と時刻を入力してください", - "Type to search time zone" : "入力して時間帯を検索", + "Select a time zone" : "タイムゾーンの選択", + "Please select a time zone:" : "タイムゾーンを選択してください:", + "Pick a time" : "時間を指定", + "Pick a date" : "日付を指定", + "Type to search time zone" : "入力してタイムゾーンを検索", "Global" : "グローバル", - "Select date" : "日付を選択", + "Holidays in {region}" : "{region} の休日", + "An error occurred, unable to read public calendars." : "エラーが発生しました、公開カレンダーを読み込むことができません。", + "An error occurred, unable to subscribe to calendar." : "エラーが発生したため、カレンダーを登録できません。", + "Public holiday calendars" : "祝祭日カレンダー", + "Public calendars" : "公開カレンダー", + "No valid public calendars configured" : "有効な公開カレンダーが設定されていない", + "Speak to the server administrator to resolve this issue." : "この問題を解決するには、サーバー管理者にご相談ください。", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "公開祝祭日カレンダーは Thunderbird によって提供されています。カレンダーデータは {website} からダウンロードされます", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "これらの公開カレンダーは、サーバー管理者によって提供されます。カレンダーのデータはそれぞれのウェブサイトからダウンロードされます。", + "By {authors}" : "{author} 記載", + "Subscribed" : "購読", + "Subscribe" : "購読", + "Could not fetch slots" : "スロットを取得できませんでした", + "Select a date" : "日付を選択", + "Select slot" : "時間枠を選択", + "No slots available" : "利用可能な時間枠がありません", + "The slot for your appointment has been confirmed" : "時間枠を予約しました", "Appointment Details:" : "予定の詳細:", "Time:" : "時刻:", + "Booked for:" : "予約済み:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "ありがとうございます。{startDate} から {endDate} までの予約が確定しました。", + "Book another appointment:" : "別の予約をする:", + "See all available slots" : "利用可能なすべての時間枠", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : " {startDate} から{endDate}までの時間枠は、利用できません。", + "Please book a different slot:" : "別の時間枠を予約してください\\:", + "Book an appointment with {name}" : "{name} の予約をする", + "No public appointments found for {name}" : "{name} の公開アポイントメントは見つかりませんでした", "Personal" : "個人", - "No more events today" : "今日はこれ以上イベントがありません", - "No upcoming events" : "今後のイベントはありません", - "Create a new event" : "新しいイベントを作成", - "[Today]" : "[今日]", - "[Tomorrow]" : "[明日]", - "[Yesterday]" : "[昨日]", - "[Last] dddd" : "[Last]dddd", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "自動的なタイムゾーンの検出により、あなたのタイムゾーンはUTCと判断されました。\nこれはおそらく、あなたのウェブブラウザのセキュリティ対策の結果です。\nカレンダーの設定でタイムゾーンを手動で設定してください。", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "設定されたタイムゾーン ({timezoneId}) が見つかりませんでした。UTCにフォールバックします。\n設定でタイムゾーンを変更して、この問題を報告してください。", + "Edit event" : "イベントを編集", "Event does not exist" : "イベントは存在しません", + "Duplicate" : "複製", "Delete this occurrence" : "この出来事を削除", - "Details" : "詳細", - "Attendees" : "参加者", - "Resources" : "リソース", + "Delete this and all future" : "これ以降を削除する", + "All day" : "終日", + "Managing shared access" : "共有アクセスの管理", + "Deny access" : "アクセスを拒否する", + "Invite" : "招待状", + "_User requires access to your file_::_Users require access to your file_" : ["ファイルへのアクセスが必要なユーザ"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["添付ファイルには共有アクセスが必要です"], + "Untitled event" : "無題のイベント", "Close" : "閉じる", - "Show more details" : "詳細を見る", + "Subscribe to {name}" : "{name} を購読する", + "Export {name}" : "エクスポート {name}", "Anniversary" : "記念日", "Appointment" : "アポイントメント", "Business" : "ビジネス", @@ -317,14 +467,19 @@ OC.L10N.register( "Special occasion" : "特別な用事", "Travel" : "旅行", "Vacation" : "休暇", + "Midnight on the day the event starts" : "イベント開始日の午前0時", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n イベントまでの日数 {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n イベントまでの週数 {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "イベント当日 {formattedHourMinute} で開催されます", "at the event's start" : "イベント開始時", "at the event's end" : "イベント終了時", "{time} before the event starts" : "イベント開始 {time} 前", "{time} before the event ends" : "イベント終了 {time} 前", "{time} after the event starts" : "イベント開始 {time} 後", "{time} after the event ends" : "イベント終了 {time} 後", + "on {time}" : "on {time}", + "on {time} ({timezoneId})" : "on {time} ({timezoneId})", "Week {number} of {year}" : "{year}の{number} 週", - "Does not repeat" : "繰り返さない", "Daily" : "毎日", "Weekly" : "毎週", "Monthly" : "毎月", @@ -333,137 +488,67 @@ OC.L10N.register( "_Every %n week_::_Every %n weeks_" : ["%n週ごと"], "_Every %n month_::_Every %n months_" : ["%n月ごと"], "_Every %n year_::_Every %n years_" : ["%n年ごと"], + "_on {weekday}_::_on {weekdays}_" : ["on {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["on days {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "on the {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} on the {ordinalNumber} {byDaySet}", + "until {untilDate}" : "{untilDate} まで", "_%n time_::_%n times_" : ["%n回"], - "Untitled event" : "無題のイベント", + "second" : "2週目", + "third" : "3日目", + "fourth" : "4日目", + "fifth" : "5日目", + "second to last" : "2日目から最終日", + "last" : "最後", "Untitled task" : "タイトルなしタスク", "Please ask your administrator to enable the Tasks App." : "「タスク」アプリを有効化のために、管理者さんにお問い合わせください", - "Prev" : "前へ", - "Next" : "次へ", - "Prev year" : "去年", - "Next year" : "来年", - "Year" : "年", "W" : "W", + "%n more" : "%n more", "No events to display" : "表示するイベントはありません", + "_+%n more_::_+%n more_" : ["+%n more"], "No events" : "イベントはありません", + "Create a new event or change the visible time-range" : "新規イベントの作成、または表示時間帯の変更", + "Failed to save event" : "イベントの保存に失敗しました", + "It might have been deleted, or there was a typo in a link" : "削除されたか、リンクに誤りがある可能性があります", + "It might have been deleted, or there was a typo in the link" : "削除されたか、リンクに誤りがある可能性があります", + "Meeting room" : "会議室", + "Lecture hall" : "講堂", + "Seminar room" : "セミナー", "Other" : "その他", + "When shared show" : "共有した場合", "When shared show full event" : "共有時にすべてのイベントを表示", "When shared show only busy" : "共有時に実行中のみを表示", "When shared hide this event" : "共有時にこのイベントを隠す", + "The visibility of this event in shared calendars." : "共有カレンダーでのこのイベントの表示。", "Add a location" : "住所を追加", - "Add a description" : "説明を追加", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "説明を追加\n\n- この会議の目的\n- 議題\n- 参加者が準備する必要があるもの", "Status" : "ステータス", "Confirmed" : "確認済み", "Canceled" : "キャンセル済み", + "Confirmation about the overall status of the event." : "イベント全体の状況について確認。", "Show as" : "として表示", + "Take this event into account when calculating free-busy information." : "フリー・ビジー情報を計算する際には、このイベントを考慮に入れてください。", "Categories" : "カテゴリ", + "Categories help you to structure and organize your events." : "カテゴリはイベントを構造化し整理するのに役立ちます。", "Search or add categories" : "カテゴリを検索または追加", "Add this as a new category" : "これを新しいカテゴリーとして追加", "Custom color" : "カスタム色", - "Chat room for event" : "イベントのチャットルーム", - "Meditation" : "座禅", - "Relaxing" : "休暇", - "Relax" : "休み", - "Commuting" : "通勤中", - "Finance" : "金融", - "Bank" : "銀行", - "Money" : "お金", - "Wedding" : "結婚式", - "Dog" : "犬", - "Concert" : "演奏会", - "Festival" : "祭", - "Presentation" : "プレゼンテーション", - "Talk" : "トーク", - "Deadline" : "期限", - "Camping" : "キャンプ場", - "Camp" : "キャンプ", - "Election" : "選挙", - "Voting" : "投票", - "Vote" : "投票", - "Garden" : "花園", - "Movie" : "ムービー", - "Cinema" : "映画館", - "Graduation" : "卒業式", - "Brainstorm" : "会議", - "Review" : "レビュー", - "Baseball" : "野球", - "Meet" : "打ち合わせ", - "Planning" : "計画", - "Office" : "オフィス", - "Mail" : "メール", - "Soccer" : "サッカー", - "Football" : "フットボール", - "Gaming" : "ゲーム", - "Drive" : "ドライブ", - "Driving" : "運転", - "Bicycle" : "自転車", - "Cycle" : "自転車", - "Cycling" : "サイクリング", - "Biking" : "サイクリング", - "Bike" : "バイク", - "Podcast" : "生放送", - "Basketball" : "バスケットボール", - "Fishing" : "釣り", - "Hiking" : "ハイキング", - "Hike" : "ハイキング", - "Art" : "芸術", - "Exhibition" : "展覧会", - "Museum" : "美術館", - "Pilates" : "ピラティス", - "Park" : "公園", - "Walk" : "散歩", - "Studying" : "勉強", - "Doctor" : "病院", - "Health" : "診断", - "Dentist" : "歯医者", - "Hospital" : "病院", - "Interview" : "インタビュー", - "Training" : "トレーニング", - "Sports" : "スポーツ", - "Exercise" : "エクササイズ", - "Work out" : "運動", - "Working out" : "筋トレ", - "Gym" : "ジム", - "Barber" : "散髪", - "Haircut" : "美容院", - "Exam" : "試験", - "Working" : "仕事", - "New Years Eve" : "大晦日", - "NYE" : "年越し", - "Fireworks" : "花火", - "Running" : "ランニング", - "Go for a run" : "ジョギング", - "Marathon" : "マラソン", - "Video-conference" : "ビデオコンファレンス", - "Conference-call" : "コンファレンスコール", - "Video-call" : "ビデオコール", - "Video-chat" : "ビデオチャット", - "Video-meeting" : "ビデオミーティング", - "Call" : "電話", - "Calling" : "連絡", - "Christmas" : "クリスマス", - "Conference" : "カンファレンス", - "Pizza" : "ピザ", - "Travelling" : "旅行", - "Trip" : "旅行", - "Journey" : "旅", - "Collaborate" : "一緒", - "Pair" : "ペア", - "Lecture" : "講義", - "Seminar" : "ゼミ", - "Teaching" : "授業", - "Photograph" : "写真", - "Party" : "パーティー", - "Celebration" : "祝", - "Celebrate" : "お祝い", - "Birthday" : "誕生日", - "Shopping" : "買い物", - "Skate" : "スケート", - "Skateboard" : "スケートボード", - "Wine tasting" : "ワイン", - "Golf" : "ゴルフ", - "Dinner" : "ディナー", - "Lunch" : "ランチ", + "Special color of this event. Overrides the calendar-color." : "特別なイベントの色。カレンダーの色を上書きします。", + "Error while sharing file" : "ファイルの共有中にエラーが発生しました", + "Error while sharing file with user" : "ユーザーとのファイルの共有中にエラーが発生しました", + "Attachment {fileName} already exists!" : "添付ファイル {fileName} は既に存在します!", + "An error occurred during getting file information" : "ファイル情報の取得中にエラーが発生しました", + "An error occurred, unable to delete the calendar." : "エラーが発生したため、カレンダーを削除できません。", + "Imported {filename}" : "インポートされた {filename}", + "This is an event reminder." : "これはイベントのリマインダーです。", "Appointment not found" : "予定が見つかりません", - "User not found" : "ユーザーが見つかりません" + "User not found" : "ユーザーが見つかりません", + "Reminder" : "リマインダー", + "+ Add reminder" : "+ リマインダーを追加", + "Select automatic slot" : "自動スロット選択", + "with" : "とともに", + "Available times:" : "利用可能な時間帯:", + "Suggestions" : "提案", + "Details" : "詳細" }, "nplurals=1; plural=0;"); diff --git a/l10n/ja.json b/l10n/ja.json index ad4a8849a193f62674b4b906477a059472de4f58..36785420d2306aa375cbb5a841f514b1736ffb08 100644 --- a/l10n/ja.json +++ b/l10n/ja.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "メールアドレスが長すぎます", "User-Session unexpectedly expired" : "ユーザーセッションが予期せず期限切れになりました", "Provided email-address is not valid" : "メールアドレスが有効ではありません", "%s has published the calendar »%s«" : "%sをカレンダー »%s«に登録しました", @@ -9,120 +10,159 @@ "Open »%s«" : "»%s«を開く", "Cheers!" : "それでは!", "Upcoming events" : "今後のイベント", + "No more events today" : "今日はこれ以上イベントがありません", + "No upcoming events" : "今後のイベントはありません", + "More events" : "その他イベント", + "%1$s with %2$s" : "%2$sと%1$sで", + "Calendar" : "カレンダー", + "New booking {booking}" : "新しい予約 {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) は {date_time} に \"{config_display_name}\" の予定を予約をしました。", "Appointments" : "予定", + "Schedule appointment \"%s\"" : "予定を入れる \"%s\"", "Schedule an appointment" : "予定を入れる", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : " %s の準備", + "Follow up for %s" : "%s に対するフォローアップ", + "Your appointment \"%s\" with %s needs confirmation" : "あなたの \"%s\" との予定 %s には確認が必要", "Dear %s, please confirm your booking" : "%s様、予定を承認してください。", "Confirm" : "承認", + "Appointment with:" : "予約:", + "Description:" : "説明:", "This confirmation link expires in %s hours." : "承認用リンクの有効期限は1%s時間です。", - "Appointment:" : "予定:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "予定のキャンセルを希望される場合は、このメールに返信するか、主催者のプロフィールページを訪れ、主催者に連絡してください。", + "Your appointment \"%s\" with %s has been accepted" : "あなたのアポイントメント \"%s\" が %s に受理されました。", + "Dear %s, your booking has been accepted." : "親愛なる%s、あなたの予約は受け入れられました。", + "Appointment for:" : "予定:", "Date:" : "日時:", + "You will receive a link with the confirmation email" : "確認メールにリンクが添付されます。", "Where:" : "場所:", - "Description:" : "説明:", - "Calendar" : "カレンダー", + "Comment:" : "コメント:", + "You have a new appointment booking \"%s\" from %s" : "新しい予定の予約 \"%s\" が %s からあります。", + "Dear %s, %s (%s) booked an appointment with you." : "親愛なる %s、%s (%s) はあなたのアポイントメントを予約しました。", "A Calendar app for Nextcloud" : "NextCloudのカレンダーアプリ", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "カレンダーアプリは、NextcloudのCalDAVサーバーのユーザーインターフェイスです。様々なデバイスからNextcloudにイベントを簡単に同期し、オンラインで編集することができます。\n\n* 🚀 **他のNextcloudアプリとの統合! ** 現在、連絡先 - 今後も追加予定です。\n* 🌐 **WebCal サポート! ** お気に入りのチームの試合日をカレンダーで見たいですか?問題ありません!\n* 🙋 **出席者! **イベントに人を招待する\n* ⌚️ **空き時間/忙しい時間! ** 出席者がいつ会うことができるかを確認します。\n* ⏰ **リマインダー! ** ブラウザ内や電子メールでイベントのアラームを取得します。\n* 🔍 検索! 簡単にイベントを見つける\n* ☑️ タスク! 期限付きのタスクをカレンダーで直接確認できる\n* 🙈 **我々は「車輪の再発明」をしない!**偉大な[c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js)と [fullcalendar](https://github.com/fullcalendar/fullcalendar) ライブラリをベースにしたものです。", "Previous day" : "前日", "Previous week" : "前週", + "Previous year" : "前年", "Previous month" : "前月", "Next day" : "翌日", "Next week" : "翌週", + "Next year" : "来年", "Next month" : "翌月", - "New event" : "新しいイベント", + "Create new event" : "新しいイベントを作成する", + "Event" : "イベント", "Today" : "今日", "Day" : "日", "Week" : "週", "Month" : "月", + "Year" : "年", "List" : "リスト", + "Appointment link was copied to clipboard" : "予定リンクがクリップボードにコピーされました", + "Appointment link could not be copied to clipboard" : "予定リンクをクリップボードにコピーできませんでした", "Preview" : "プレビュー", "Copy link" : "リンクをコピー", "Edit" : "編集", "Delete" : "削除", - "Appointment link was copied to clipboard" : "予定リンクがクリップボードにコピーされました", - "Appointment link could not be copied to clipboard" : "予定リンクをクリップボードにコピーできませんでした", - "Add new" : "新規作成", - "Untitled calendar" : "無題のカレンダー", - "Edit name" : "名前を編集", - "Saving name …" : "名前を保存しています …", - "Edit color" : "色を編集", - "Saving color …" : "色を保存しています …", - "Copy private link" : "プライベートリンクをコピー", - "Export" : "エクスポート", - "Unshare from me" : "共有を自分から解除", + "Appointment schedules" : "予約スケジュール", + "Create new" : "新規作成", + "Disable calendar \"{calendar}\"" : "カレンダー \"{calendar}\" を無効化する", + "Disable untitled calendar" : "無題のカレンダーを無効化する", + "Enable calendar \"{calendar}\"" : "\"{calendar}\" カレンダーを有効化する", + "Enable untitled calendar" : "無題のカレンダーを有効にする", "An error occurred, unable to change visibility of the calendar." : "エラーが発生したため、カレンダーの表示状態を変更できません。", - "An error occurred, unable to delete the calendar." : "エラーが発生したため、カレンダーを削除できません。", - "Calendar link copied to clipboard." : "カレンダーリンクをクリップボードにコピー", - "Calendar link could not be copied to clipboard." : "カレンダーリンクをクリップボードにコピーできませんでした。", - "An error occurred, unable to rename the calendar." : "エラーが発生したため、カレンダーの名前を変更できません。", - "An error occurred, unable to change the calendar's color." : "エラーが発生したため、カレンダーの色を変更できません。", + "Untitled calendar" : "無題のカレンダー", + "Shared with you by" : "と共有中", + "Edit and share calendar" : "カレンダー編集、共有", + "Edit calendar" : "カレンダー編集", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["{countdown}秒後にカレンダーの共有を解除します"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["{countdown}秒後にカレンダーを削除します"], + "An error occurred, unable to create the calendar." : "エラーが発生したため、カレンダーを作成できません。", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "有効なリンクを入力してください(http:// や https:// 、webcal:// または webcals:// のいずれかで始まる必要があります)", + "Calendars" : "カレンダー", + "Add new" : "新規作成", + "New calendar" : "新しいカレンダー", + "Name for new calendar" : "新しいカレンダーの名前", + "Creating calendar …" : "カレンダーを作成中 …", + "New calendar with task list" : "タスクリスト付きの新しいカレンダー", + "New subscription from link (read-only)" : "リンクから新規購読 (読み取り専用)", + "Creating subscription …" : "購読を作成中 …", + "Add public holiday calendar" : "祝日カレンダーを追加", + "Add custom public calendar" : "カスタム公開カレンダーを追加する", + "Calendar link copied to clipboard." : "カレンダーリンクをクリップボードにコピー", + "Calendar link could not be copied to clipboard." : "カレンダーリンクをクリップボードにコピーできませんでした。", + "Copy subscription link" : "購読リンクをコピー", + "Copying link …" : "リンクをコピーしています …", + "Copied link" : "リンクをコピーしました", + "Could not copy link" : "リンクをコピーできませんでした", + "Export" : "エクスポート", + "Untitled item" : "無題の項目", + "Unknown calendar" : "不明なカレンダー", + "Could not load deleted calendars and objects" : "削除されたカレンダーとオブジェクトを読み込めませんでした。", + "Could not restore calendar or event" : "カレンダーまたはイベントを復元できませんでした。", + "Do you really want to empty the trash bin?" : "本当にゴミ箱を空にしますか?", + "Empty trash bin" : "ゴミ箱を空にする", + "Trash bin" : "ごみ箱", + "Loading deleted items." : "削除された項目をロードします。", + "You do not have any deleted items." : "削除された項目はありません。", + "Name" : "名前", + "Deleted" : "削除済み", + "Restore" : "復元", + "Delete permanently" : "完全に削除する", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["ゴミ箱の中のアイテムは {numDays} 日後に削除されます"], + "Could not update calendar order." : "カレンダーの順番を更新できません。", + "Shared calendars" : "共有カレンダー", + "Deck" : "デッキ", + "Hidden" : "非公開", + "Internal link" : "内部リンク", + "A private link that can be used with external clients" : "外部クライアントと使用できるプライベートリンク", + "Copy internal link" : "内部リンクをコピー", + "An error occurred, unable to publish calendar." : "エラーが発生したため、カレンダーを公開できません。", + "An error occurred, unable to send email." : "エラーが発生したため、メールを送信できません。", + "Embed code copied to clipboard." : "埋め込みコードをクリップボードにコピーしました。", + "Embed code could not be copied to clipboard." : "埋め込みコードをクリップボードにコピーできませんでした。", + "Unpublishing calendar failed" : "カレンダーの公開解除に失敗しました", "Share link" : "URLで共有", - "Publish calendar" : "カレンダーを公開", - "Publishing calendar" : "カレンダーを公開しています", "Copy public link" : "公開リンクをコピー", "Send link to calendar via email" : "メールでカレンダーへのリンクを送信", "Enter one address" : "アドレスを1つ入力してください", "Sending email …" : "メールを送信中 …", - "Copy subscription link" : "購読リンクをコピー", - "Copying link …" : "リンクをコピーしています …", - "Copied link" : "リンクをコピーしました", - "Could not copy link" : "リンクをコピーできませんでした", "Copy embedding code" : "埋め込みコードをコピー", "Copying code …" : "コードをコピーしています …", "Copied code" : "コードをコピーしました", "Could not copy code" : "コードをコピーできませんでした", "Delete share link" : "共有リンクを削除", "Deleting share link …" : "共有リンクを削除しています …", - "An error occurred, unable to publish calendar." : "エラーが発生したため、カレンダーを公開できません。", - "An error occurred, unable to send email." : "エラーが発生したため、メールを送信できません。", - "Embed code copied to clipboard." : "埋め込みコードをクリップボードにコピーしました。", - "Embed code could not be copied to clipboard." : "埋め込みコードをクリップボードにコピーできませんでした。", - "Unpublishing calendar failed" : "カレンダーの公開解除に失敗しました", - "Share with users or groups" : "ユーザーまたはグループと共有する", - "No users or groups" : "ユーザーまたはグループはありません", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "カレンダーの共有解除中にエラーが発生しました", + "An error occurred, unable to change the permission of the share." : "エラーが発生したため、共有の権限を変更できませんでした。", "can edit" : "編集を許可", "Unshare with {displayName}" : "{displayName}との共有を解除", - "An error occurred, unable to change the unshare the calendar." : "エラーが発生したため、カレンダーの共有を解除できませんでした。", - "An error occurred, unable to change the permission of the share." : "エラーが発生したため、共有の権限を変更できませんでした。", - "+ New calendar" : "+ 新しいカレンダー", - "New calendar" : "新しいカレンダー", - "Name for new calendar" : "新しいカレンダーの名前", - "Creating calendar …" : "カレンダーを作成中 …", - "New calendar with task list" : "タスクリスト付きの新しいカレンダー", - "New subscription from link (read-only)" : "リンクからの新規加入 (読み取り専用)", - "Creating subscription …" : "購読を作成中 …", - "An error occurred, unable to create the calendar." : "エラーが発生したため、カレンダーを作成できません。", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "有効なリンクを入力してください(http:// や https:// 、webcal:// または webcals:// のいずれかで始まる必要があります)", - "Trash bin" : "ごみ箱", - "Loading deleted elements." : "削除された要素を読み込む。", - "You do not have any deleted elements." : "削除された資格情報はありません", - "Name" : "名前", - "Deleted" : "削除済み", - "Restore" : "復元", - "Delete permanently" : "完全に削除する", - "Empty trash bin" : "ゴミ箱を空にする", - "Untitled element" : "無題要素", - "Unknown calendar" : "不明なカレンダー", - "Could not load deleted calendars and objects" : "削除されたカレンダーとオブジェクトを読み込めませんでした。", - "Could not restore calendar or event" : "カレンダーまたはイベントを復元できませんでした。", - "Do you really want to empty the trash bin?" : "本当にゴミ箱を空にしますか?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["ゴミ箱にある項目は {numDays} 日後に削除されます"], - "Could not update calendar order." : "カレンダーの順番を更新できません。", + "Share with users or groups" : "ユーザーまたはグループと共有する", + "No users or groups" : "ユーザーまたはグループはありません", + "Failed to save calendar name and color" : "カレンダー名と色の保存に失敗しました", + "Calendar name …" : "カレンダー名 …", + "Never show me as busy (set this calendar to transparent)" : "予定ありとして表示しない (このカレンダーを透明に設定)", + "Share calendar" : "カレンダー共有", + "Unshare from me" : "共有を自分から解除", + "Save" : "保存", "Import calendars" : "カレンダーのインポート", "Please select a calendar to import into …" : "インポートするカレンダーを選択してください …", "Filename" : "ファイル名", "Calendar to import into" : "インポートするカレンダー", "Cancel" : "キャンセル", "_Import calendar_::_Import calendars_" : ["カレンダーのインポート"], + "Select the default location for attachments" : "添付ファイルのデフォルト位置を選択", + "Pick" : "選定", + "Invalid location selected" : "選択した場所が無効", + "Attachments folder successfully saved." : "添付ファイルフォルダーを保存しました", + "Error on saving attachments folder." : "添付ファイルフォルダーの保存でエラーが発生しました", + "Default attachments location" : "添付ファイルのデフォルト位置", "{filename} could not be parsed" : "{filename} が解析できませんでした", "No valid files found, aborting import" : "有効なファイルが見つかりませんでした。インポートを中止します。", - "Import partially failed. Imported {accepted} out of {total}." : "インポートが部分的に失敗しました。 {total}のうち{accepted}をインポートしました。", "_Successfully imported %n event_::_Successfully imported %n events_" : ["%nイベントのインポートに成功しました"], + "Import partially failed. Imported {accepted} out of {total}." : "インポートが部分的に失敗しました。 {total}のうち{accepted}をインポートしました。", "Automatic" : "自動", "Automatic ({detected})" : "自動 ({detected})", "New setting was not saved successfully." : "新しい設定は正常に保存されませんでした。", - "Shortcut overview" : "概要", - "or" : "或いは", "Navigation" : "ナビゲーション", "Previous period" : "前の期間", "Next period" : "次の期間", @@ -130,29 +170,39 @@ "Day view" : "日表示", "Week view" : "週表示", "Month view" : "月表示", + "Year view" : "年表示", "List view" : "リスト表示", "Actions" : "アクション", "Create event" : "イベントを作成", "Show shortcuts" : "概要の表示", "Editor" : "エディタ", "Close editor" : "エディタを閉じる", + "Save edited event" : "編集したイベントを保存", + "Delete edited event" : "編集したイベントを削除", + "Duplicate event" : "イベントを複製", + "Shortcut overview" : "概要", + "or" : "或いは", + "Calendar settings" : "カレンダー設定", + "At event start" : "イベント開始時", + "No reminder" : "リマインダーなし", + "Failed to save default calendar" : "デフォルトカレンダーの保存に失敗しました", + "CalDAV link copied to clipboard." : "CalDAVリンクがクリップボードにコピーされました", + "CalDAV link could not be copied to clipboard." : "CalDAVリンクをクリップボードにコピーできませんでした", "Enable birthday calendar" : "誕生日カレンダーを有効にする", "Show tasks in calendar" : "カレンダーにタスクを表示", "Enable simplified editor" : "簡易エディターを有効にする", - "Limit visible events per view" : "表示するイベントを制限する", + "Limit the number of events displayed in the monthly view" : "月間ビューに表示されるイベント数を制限する", "Show weekends" : "週末を表示する", "Show week numbers" : "週番号を表示する", "Time increments" : "時間の増加", + "Default calendar for incoming invitations" : "受信した招待状のデフォルトカレンダー", "Default reminder" : "既定のリマインダー", "Copy primary CalDAV address" : "通常のCalDAVアドレスをコピー", "Copy iOS/macOS CalDAV address" : "iOS/macOS用のCalDAVアドレスをコピー", "Personal availability settings" : "個人の稼働率設定", "Show keyboard shortcuts" : "キーボード ショートカット", - "No reminder" : "リマインダーなし", - "CalDAV link copied to clipboard." : "CalDAVリンクがクリップボードにコピーされました", - "CalDAV link could not be copied to clipboard." : "CalDAVリンクをクリップボードにコピーできませんでした", - "Appointment was created successfully" : "予定の作成に成功しました。", - "Appointment was updated successfully" : "予定は正常に更新されました。", + "Appointment schedule successfully created" : "予約スケジュールの作成に成功しました", + "Appointment schedule successfully updated" : "予約スケジュールの更新に成功しました", "_{duration} minute_::_{duration} minutes_" : ["{duration}分"], "0 minutes" : "0分", "_{duration} hour_::_{duration} hours_" : ["{duration}時間"], @@ -163,15 +213,19 @@ "To configure appointments, add your email address in personal settings." : "予定を設定するには、個人設定であなたのメールアドレスを追加してください。", "Public – shown on the profile page" : "公開 - プロフィールページに表示されます。", "Private – only accessible via secret link" : "非公開 - 秘密のリンクからしかアクセスできません。", + "Update" : "更新", + "Appointment name" : "予定名", "Location" : "場所", + "Create a Talk room" : "通話ルームを作成", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "予約ごとにユニークなリンクが作成され、確認メールで送信されます", "Description" : "説明", "Visibility" : "公開レベル", "Duration" : "期間", "Increments" : "インクリメント", "Additional calendars to check for conflicts" : "コンフリクトを確認するための追加カレンダー", "Pick time ranges where appointments are allowed" : "予約可能な時間帯を選ぶ", - "to" : "宛先", - "Delete slot" : "スロットを削除", + "to" : "終了", + "Delete slot" : "時間枠を削除", "No times set" : "時間設定なし", "Add" : "追加", "Monday" : "月曜日", @@ -181,6 +235,7 @@ "Friday" : "金曜日", "Saturday" : "土曜日", "Sunday" : "日曜日", + "Weekdays" : "平日", "Add time before and after the event" : "イベント前後の時間を追加", "Before the event" : "開催前", "After the event" : "イベント終了後", @@ -188,16 +243,18 @@ "Minimum time before next available slot" : "次の空きスロットまでの最短時間", "Max slots per day" : "1日あたりの最大スロット数", "Limit how far in the future appointments can be booked" : "予約可能な時間帯の制限", - "Create appointment" : "予定を作成", - "Edit appointment" : "予定を編集", - "Save" : "保存", - "Update" : "アップデート", + "It seems a rate limit has been reached. Please try again later." : "レート制限に達したようです。後でもう一度お試しください。", + "Please confirm your reservation" : "あなたの予約の確認をしてください", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "詳細をメールでお送りしました。メールに記載されているリンクから予約の確認をお願いします。これでこのページを閉じることができます。", "Your name" : "あなたの名前", "Your email address" : "あなたのメールアドレス", "Please share anything that will help prepare for our meeting" : "会議の準備に役立つことがあれば教えてください。", "Could not book the appointment. Please try again later or contact the organizer." : "予約できませんでした。後でもう一度試してみるか、主催者に連絡してください。", - "Reminder" : "リマインダー", + "Back" : "戻る", + "Create a new conversation" : "新しい会話を作成する", + "Select conversation" : "会話を選択", + "on" : "曜日", + "at" : "で", "before at" : "次の時間分早めに通知", "Notification" : "通知", "Email" : "メール", @@ -208,99 +265,192 @@ "Edit time" : "時刻を変更", "Save time" : "時刻を保存", "Remove reminder" : "リマインダーを削除", - "on" : "曜日", - "at" : "で", - "+ Add reminder" : "+ リマインダーを追加", "Add reminder" : "リマインダーを追加", - "_second_::_seconds_" : ["秒"], - "_minute_::_minutes_" : ["分"], - "_hour_::_hours_" : ["時間"], - "_day_::_days_" : ["日"], - "_week_::_weeks_" : ["週"], + "seconds" : "秒", + "minutes" : "分", + "hours" : "時間", + "days" : "日", + "weeks" : "週", + "Choose a file to add as attachment" : "添付として追加するファイルを選択", + "Choose a file to share as a link" : "共有リンクにして送信するファイルを選択", + "Attachment {name} already exist!" : "添付ファイル {name} は既に存在します!", + "Could not upload attachment(s)" : "添付ファイルをアップロードできませんでした", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "外部の信頼できない {host} に移動しようとしています。本当に続行しますか?リンク: {link}", + "Proceed" : "続行する", + "No attachments" : "添付ファイル無し", + "Add from Files" : "ファイルから追加", + "Upload from device" : "デバイスからアップロード", + "Delete file" : "ファイルを削除", + "Confirmation" : "確認", + "_{count} attachment_::_{count} attachments_" : ["{count} 個の添付ファイル"], + "Suggested" : "提案された", "Available" : "利用可能", + "Invitation accepted" : "招待を受け付けました", + "Accepted {organizerName}'s invitation" : "{organizerName} の招待を受け入れました", + "Participation marked as tentative" : "参加は暫定的なもの", + "Invitation is delegated" : "招待は委任されました", "Not available" : "利用できません", + "Invitation declined" : "招待は辞退しました", + "Declined {organizerName}'s invitation" : "{organizerName} の招待を辞退しました", + "Awaiting response" : "返答待ち", + "Checking availability" : "空き状況の確認", + "Has not responded to {organizerName}'s invitation yet" : "{organizerName} の招待にまだ応答していません", + "chairperson" : "主宰者", + "required participant" : "参加必須", + "non-participant" : "非参加", + "optional participant" : "任意参加", + "{organizer} (organizer)" : "{organizer} (organizer)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "出席者、リソース、ルームの空き状況", + "Suggestion accepted" : "提案を受け入れた", + "Out of office" : "オフィス外", + "Attendees:" : "参加者:", + "Done" : "完了", + "Search room" : "ルームを検索する", + "Room name" : "会議室名", + "Check room availability" : "ルームの空き状況を確認する", "Free" : "空き", "Busy (tentative)" : "ビジー (暫定)", "Busy" : "ビジー", - "Out of office" : "オフィス外", "Unknown" : "不明", + "Find a time" : "時間を見つける", + "The invitation has been accepted successfully." : "招待状は正常に受理されました。", + "Failed to accept the invitation." : "招待を受け入れることに失敗しました。", + "The invitation has been declined successfully." : "招待は正常に辞退されました。", + "Failed to decline the invitation." : "招待の辞退に失敗しました。", + "Your participation has been marked as tentative." : "あなたの参加は暫定的なものとマークされました。", + "Failed to set the participation status to tentative." : "参加ステータスを暫定に設定することに失敗した。", "Accept" : "承諾", "Decline" : "拒否", "Tentative" : "暫定的", - "Create Talk room for this event" : "このイベントに通話ルームを作成する", - "Show busy times" : "忙しい時間を表示", "No attendees yet" : "出席者はまだいません", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} 招待済み, {confirmedCount} 確定", + "Successfully appended link to talk room to location." : "トークルームへのリンクをロケーションに追加しました。", + "Successfully appended link to talk room to description." : "通話ルームへのリンクを説明文に追加しました", "Error creating Talk room" : "通話ルームの作成に失敗しました", - "Send email" : "メールを送信", + "Attendees" : "参加者", + "_%n more guest_::_%n more guests_" : ["ゲスト %n 名追加"], + "Remove group" : "グループを削除", + "Remove attendee" : "出席者を削除", + "Request reply" : "返信をリクエストする", "Chairperson" : "主宰者", "Required participant" : "参加必須", "Optional participant" : "任意参加", "Non-participant" : "非参加", - "Remove attendee" : "出席者を削除", + "_%n member_::_%n members_" : ["%n メンバー"], + "Search for emails, users, contacts, contact groups or teams" : "メール、ユーザー、連絡先、連絡先グループまたはチームを検索", "No match found" : "一致するものが見つかりません", + "Note that members of circles get invited but are not synced yet." : "サークルのメンバーは招待さ れますが、まだ同期されていないことに注意してください。", "(organizer)" : "(主催者)", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "招待を送信して返信を受け取るには、[linkopen]個人設定にメールアドレスを追加[linkclose]してください。", "Remove color" : "色を削除", "Event title" : "イベントタイトル", - "All day" : "終日", - "from {startDate}" : "{startDate}から", - "from {startDate} at {startTime}" : "{startDate}の{startTime}から", - "to {endDate}" : "{endDate}まで", - "to {endDate} at {endTime}" : "{endDate}の{endTime}まで", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "繰り返しの一部であるイベントの終日設定は変更できません。", + "From" : "開始", + "To" : "宛先", "Repeat" : "繰り返し", - "End repeat" : "繰り返し終了", - "Select to end repeat" : "繰り返しの終了を選択", + "_time_::_times_" : ["回数"], "never" : "なし", "on date" : "日時指定", "after" : "後", - "_time_::_times_" : ["回数"], + "End repeat" : "繰り返し終了", + "Select to end repeat" : "繰り返しの終了を選択", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "このイベントは繰り返しセットの反復例外です。それに繰り返しルールを追加することはできません。", "first" : "初日", - "third" : "3日目", - "fourth" : "4日目", - "fifth" : "5日目", - "second to last" : "2日目から最終日", - "last" : "最後", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "繰り返しルールの変更は、今回および今後のすべての開催にのみ適用されます。", "Repeat every" : "毎日繰り返す", + "By day of the month" : "日付", + "On the" : "On the", + "_day_::_days_" : ["日"], + "_week_::_weeks_" : ["週"], "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], "weekday" : "平日", "weekend day" : "週末", - "Whiteboard" : "ホワイトボード", + "Does not repeat" : "繰り返さない", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "このイベントの繰り返し定義は、Nextcloudでは完全にサポートされていません。繰り返しオプションを編集すると、特定の繰り返しが失われる場合があります。", + "No rooms or resources yet" : "ルームやリソースがありません", + "Resources" : "リソース", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} 席"], + "Add resource" : "リソースを追加する", + "Has a projector" : "プロジェクタ設置", + "Has a whiteboard" : "ホワイトボードがあります", + "Wheelchair accessible" : "車イス対応", + "Remove resource" : "リソースを削除する", + "Search for resources or rooms" : "リソース、ルームを検索", "available" : "利用可能", "unavailable" : "利用不可", - "More" : "もっと見る", + "Show all rooms" : "すべてのルームを表示", + "Projector" : "プロジェクター", + "Whiteboard" : "ホワイトボード", + "Room type" : "ルーム種別", + "Any" : "Any", + "Minimum seating capacity" : "最低座席数", + "More details" : "詳細情報", "Update this and all future" : "これ以降を更新", + "Update this occurrence" : "この出来事を更新する", "Public calendar does not exist" : "公開カレンダーは存在しません", "Maybe the share was deleted or has expired?" : "共有が削除されたか、期限切れの可能性があります", - "Please select a time zone:" : "タイムゾーンを選択してください:", - "Pick a time" : "時間を指定", - "Pick a date" : "日付を指定", "from {formattedDate}" : "{formattedDate}から", "to {formattedDate}" : "{formattedDate}まで", + "on {formattedDate}" : "{formattedDate} にて", "from {formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}から", "to {formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}まで", + "on {formattedDate} at {formattedTime}" : "{formattedDate} の {formattedTime} に", "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "有効な日付を入力してください", "Please enter a valid date and time" : "有効な日付と時刻を入力してください", - "Type to search time zone" : "入力して時間帯を検索", + "Select a time zone" : "タイムゾーンの選択", + "Please select a time zone:" : "タイムゾーンを選択してください:", + "Pick a time" : "時間を指定", + "Pick a date" : "日付を指定", + "Type to search time zone" : "入力してタイムゾーンを検索", "Global" : "グローバル", - "Select date" : "日付を選択", + "Holidays in {region}" : "{region} の休日", + "An error occurred, unable to read public calendars." : "エラーが発生しました、公開カレンダーを読み込むことができません。", + "An error occurred, unable to subscribe to calendar." : "エラーが発生したため、カレンダーを登録できません。", + "Public holiday calendars" : "祝祭日カレンダー", + "Public calendars" : "公開カレンダー", + "No valid public calendars configured" : "有効な公開カレンダーが設定されていない", + "Speak to the server administrator to resolve this issue." : "この問題を解決するには、サーバー管理者にご相談ください。", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "公開祝祭日カレンダーは Thunderbird によって提供されています。カレンダーデータは {website} からダウンロードされます", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "これらの公開カレンダーは、サーバー管理者によって提供されます。カレンダーのデータはそれぞれのウェブサイトからダウンロードされます。", + "By {authors}" : "{author} 記載", + "Subscribed" : "購読", + "Subscribe" : "購読", + "Could not fetch slots" : "スロットを取得できませんでした", + "Select a date" : "日付を選択", + "Select slot" : "時間枠を選択", + "No slots available" : "利用可能な時間枠がありません", + "The slot for your appointment has been confirmed" : "時間枠を予約しました", "Appointment Details:" : "予定の詳細:", "Time:" : "時刻:", + "Booked for:" : "予約済み:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "ありがとうございます。{startDate} から {endDate} までの予約が確定しました。", + "Book another appointment:" : "別の予約をする:", + "See all available slots" : "利用可能なすべての時間枠", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : " {startDate} から{endDate}までの時間枠は、利用できません。", + "Please book a different slot:" : "別の時間枠を予約してください\\:", + "Book an appointment with {name}" : "{name} の予約をする", + "No public appointments found for {name}" : "{name} の公開アポイントメントは見つかりませんでした", "Personal" : "個人", - "No more events today" : "今日はこれ以上イベントがありません", - "No upcoming events" : "今後のイベントはありません", - "Create a new event" : "新しいイベントを作成", - "[Today]" : "[今日]", - "[Tomorrow]" : "[明日]", - "[Yesterday]" : "[昨日]", - "[Last] dddd" : "[Last]dddd", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "自動的なタイムゾーンの検出により、あなたのタイムゾーンはUTCと判断されました。\nこれはおそらく、あなたのウェブブラウザのセキュリティ対策の結果です。\nカレンダーの設定でタイムゾーンを手動で設定してください。", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "設定されたタイムゾーン ({timezoneId}) が見つかりませんでした。UTCにフォールバックします。\n設定でタイムゾーンを変更して、この問題を報告してください。", + "Edit event" : "イベントを編集", "Event does not exist" : "イベントは存在しません", + "Duplicate" : "複製", "Delete this occurrence" : "この出来事を削除", - "Details" : "詳細", - "Attendees" : "参加者", - "Resources" : "リソース", + "Delete this and all future" : "これ以降を削除する", + "All day" : "終日", + "Managing shared access" : "共有アクセスの管理", + "Deny access" : "アクセスを拒否する", + "Invite" : "招待状", + "_User requires access to your file_::_Users require access to your file_" : ["ファイルへのアクセスが必要なユーザ"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["添付ファイルには共有アクセスが必要です"], + "Untitled event" : "無題のイベント", "Close" : "閉じる", - "Show more details" : "詳細を見る", + "Subscribe to {name}" : "{name} を購読する", + "Export {name}" : "エクスポート {name}", "Anniversary" : "記念日", "Appointment" : "アポイントメント", "Business" : "ビジネス", @@ -315,14 +465,19 @@ "Special occasion" : "特別な用事", "Travel" : "旅行", "Vacation" : "休暇", + "Midnight on the day the event starts" : "イベント開始日の午前0時", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n イベントまでの日数 {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n イベントまでの週数 {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "イベント当日 {formattedHourMinute} で開催されます", "at the event's start" : "イベント開始時", "at the event's end" : "イベント終了時", "{time} before the event starts" : "イベント開始 {time} 前", "{time} before the event ends" : "イベント終了 {time} 前", "{time} after the event starts" : "イベント開始 {time} 後", "{time} after the event ends" : "イベント終了 {time} 後", + "on {time}" : "on {time}", + "on {time} ({timezoneId})" : "on {time} ({timezoneId})", "Week {number} of {year}" : "{year}の{number} 週", - "Does not repeat" : "繰り返さない", "Daily" : "毎日", "Weekly" : "毎週", "Monthly" : "毎月", @@ -331,137 +486,67 @@ "_Every %n week_::_Every %n weeks_" : ["%n週ごと"], "_Every %n month_::_Every %n months_" : ["%n月ごと"], "_Every %n year_::_Every %n years_" : ["%n年ごと"], + "_on {weekday}_::_on {weekdays}_" : ["on {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["on days {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "on the {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} on the {ordinalNumber} {byDaySet}", + "until {untilDate}" : "{untilDate} まで", "_%n time_::_%n times_" : ["%n回"], - "Untitled event" : "無題のイベント", + "second" : "2週目", + "third" : "3日目", + "fourth" : "4日目", + "fifth" : "5日目", + "second to last" : "2日目から最終日", + "last" : "最後", "Untitled task" : "タイトルなしタスク", "Please ask your administrator to enable the Tasks App." : "「タスク」アプリを有効化のために、管理者さんにお問い合わせください", - "Prev" : "前へ", - "Next" : "次へ", - "Prev year" : "去年", - "Next year" : "来年", - "Year" : "年", "W" : "W", + "%n more" : "%n more", "No events to display" : "表示するイベントはありません", + "_+%n more_::_+%n more_" : ["+%n more"], "No events" : "イベントはありません", + "Create a new event or change the visible time-range" : "新規イベントの作成、または表示時間帯の変更", + "Failed to save event" : "イベントの保存に失敗しました", + "It might have been deleted, or there was a typo in a link" : "削除されたか、リンクに誤りがある可能性があります", + "It might have been deleted, or there was a typo in the link" : "削除されたか、リンクに誤りがある可能性があります", + "Meeting room" : "会議室", + "Lecture hall" : "講堂", + "Seminar room" : "セミナー", "Other" : "その他", + "When shared show" : "共有した場合", "When shared show full event" : "共有時にすべてのイベントを表示", "When shared show only busy" : "共有時に実行中のみを表示", "When shared hide this event" : "共有時にこのイベントを隠す", + "The visibility of this event in shared calendars." : "共有カレンダーでのこのイベントの表示。", "Add a location" : "住所を追加", - "Add a description" : "説明を追加", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "説明を追加\n\n- この会議の目的\n- 議題\n- 参加者が準備する必要があるもの", "Status" : "ステータス", "Confirmed" : "確認済み", "Canceled" : "キャンセル済み", + "Confirmation about the overall status of the event." : "イベント全体の状況について確認。", "Show as" : "として表示", + "Take this event into account when calculating free-busy information." : "フリー・ビジー情報を計算する際には、このイベントを考慮に入れてください。", "Categories" : "カテゴリ", + "Categories help you to structure and organize your events." : "カテゴリはイベントを構造化し整理するのに役立ちます。", "Search or add categories" : "カテゴリを検索または追加", "Add this as a new category" : "これを新しいカテゴリーとして追加", "Custom color" : "カスタム色", - "Chat room for event" : "イベントのチャットルーム", - "Meditation" : "座禅", - "Relaxing" : "休暇", - "Relax" : "休み", - "Commuting" : "通勤中", - "Finance" : "金融", - "Bank" : "銀行", - "Money" : "お金", - "Wedding" : "結婚式", - "Dog" : "犬", - "Concert" : "演奏会", - "Festival" : "祭", - "Presentation" : "プレゼンテーション", - "Talk" : "トーク", - "Deadline" : "期限", - "Camping" : "キャンプ場", - "Camp" : "キャンプ", - "Election" : "選挙", - "Voting" : "投票", - "Vote" : "投票", - "Garden" : "花園", - "Movie" : "ムービー", - "Cinema" : "映画館", - "Graduation" : "卒業式", - "Brainstorm" : "会議", - "Review" : "レビュー", - "Baseball" : "野球", - "Meet" : "打ち合わせ", - "Planning" : "計画", - "Office" : "オフィス", - "Mail" : "メール", - "Soccer" : "サッカー", - "Football" : "フットボール", - "Gaming" : "ゲーム", - "Drive" : "ドライブ", - "Driving" : "運転", - "Bicycle" : "自転車", - "Cycle" : "自転車", - "Cycling" : "サイクリング", - "Biking" : "サイクリング", - "Bike" : "バイク", - "Podcast" : "生放送", - "Basketball" : "バスケットボール", - "Fishing" : "釣り", - "Hiking" : "ハイキング", - "Hike" : "ハイキング", - "Art" : "芸術", - "Exhibition" : "展覧会", - "Museum" : "美術館", - "Pilates" : "ピラティス", - "Park" : "公園", - "Walk" : "散歩", - "Studying" : "勉強", - "Doctor" : "病院", - "Health" : "診断", - "Dentist" : "歯医者", - "Hospital" : "病院", - "Interview" : "インタビュー", - "Training" : "トレーニング", - "Sports" : "スポーツ", - "Exercise" : "エクササイズ", - "Work out" : "運動", - "Working out" : "筋トレ", - "Gym" : "ジム", - "Barber" : "散髪", - "Haircut" : "美容院", - "Exam" : "試験", - "Working" : "仕事", - "New Years Eve" : "大晦日", - "NYE" : "年越し", - "Fireworks" : "花火", - "Running" : "ランニング", - "Go for a run" : "ジョギング", - "Marathon" : "マラソン", - "Video-conference" : "ビデオコンファレンス", - "Conference-call" : "コンファレンスコール", - "Video-call" : "ビデオコール", - "Video-chat" : "ビデオチャット", - "Video-meeting" : "ビデオミーティング", - "Call" : "電話", - "Calling" : "連絡", - "Christmas" : "クリスマス", - "Conference" : "カンファレンス", - "Pizza" : "ピザ", - "Travelling" : "旅行", - "Trip" : "旅行", - "Journey" : "旅", - "Collaborate" : "一緒", - "Pair" : "ペア", - "Lecture" : "講義", - "Seminar" : "ゼミ", - "Teaching" : "授業", - "Photograph" : "写真", - "Party" : "パーティー", - "Celebration" : "祝", - "Celebrate" : "お祝い", - "Birthday" : "誕生日", - "Shopping" : "買い物", - "Skate" : "スケート", - "Skateboard" : "スケートボード", - "Wine tasting" : "ワイン", - "Golf" : "ゴルフ", - "Dinner" : "ディナー", - "Lunch" : "ランチ", + "Special color of this event. Overrides the calendar-color." : "特別なイベントの色。カレンダーの色を上書きします。", + "Error while sharing file" : "ファイルの共有中にエラーが発生しました", + "Error while sharing file with user" : "ユーザーとのファイルの共有中にエラーが発生しました", + "Attachment {fileName} already exists!" : "添付ファイル {fileName} は既に存在します!", + "An error occurred during getting file information" : "ファイル情報の取得中にエラーが発生しました", + "An error occurred, unable to delete the calendar." : "エラーが発生したため、カレンダーを削除できません。", + "Imported {filename}" : "インポートされた {filename}", + "This is an event reminder." : "これはイベントのリマインダーです。", "Appointment not found" : "予定が見つかりません", - "User not found" : "ユーザーが見つかりません" + "User not found" : "ユーザーが見つかりません", + "Reminder" : "リマインダー", + "+ Add reminder" : "+ リマインダーを追加", + "Select automatic slot" : "自動スロット選択", + "with" : "とともに", + "Available times:" : "利用可能な時間帯:", + "Suggestions" : "提案", + "Details" : "詳細" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/ka.js b/l10n/ka.js new file mode 100644 index 0000000000000000000000000000000000000000..deba96f371c190031bf81ea3b6599caefa930101 --- /dev/null +++ b/l10n/ka.js @@ -0,0 +1,514 @@ +OC.L10N.register( + "calendar", + { + "Provided email-address is too long" : "Provided email-address is too long", + "User-Session unexpectedly expired" : "User-Session unexpectedly expired", + "Provided email-address is not valid" : "Provided email-address is not valid", + "%s has published the calendar »%s«" : "%s has published the calendar »%s«", + "Unexpected error sending email. Please contact your administrator." : "Unexpected error sending email. Please contact your administrator.", + "Successfully sent email to %1$s" : "Successfully sent email to %1$s", + "Hello," : "Hello,", + "We wanted to inform you that %s has published the calendar »%s«." : "We wanted to inform you that %s has published the calendar »%s«.", + "Open »%s«" : "Open »%s«", + "Cheers!" : "Cheers!", + "Upcoming events" : "Upcoming events", + "No more events today" : "No more events today", + "No upcoming events" : "No upcoming events", + "More events" : "More events", + "%1$s with %2$s" : "%1$s with %2$s", + "Calendar" : "Calendar", + "New booking {booking}" : "New booking {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}.", + "Appointments" : "Appointments", + "Schedule appointment \"%s\"" : "Schedule appointment \"%s\"", + "Schedule an appointment" : "Schedule an appointment", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Prepare for %s", + "Follow up for %s" : "Follow up for %s", + "Your appointment \"%s\" with %s needs confirmation" : "Your appointment \"%s\" with %s needs confirmation", + "Dear %s, please confirm your booking" : "Dear %s, please confirm your booking", + "Confirm" : "Confirm", + "Description:" : "Description:", + "This confirmation link expires in %s hours." : "This confirmation link expires in %s hours.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page.", + "Your appointment \"%s\" with %s has been accepted" : "Your appointment \"%s\" with %s has been accepted", + "Dear %s, your booking has been accepted." : "Dear %s, your booking has been accepted.", + "Appointment for:" : "Appointment for:", + "Date:" : "Date:", + "You will receive a link with the confirmation email" : "You will receive a link with the confirmation email", + "Where:" : "Where:", + "Comment:" : "Comment:", + "You have a new appointment booking \"%s\" from %s" : "You have a new appointment booking \"%s\" from %s", + "Dear %s, %s (%s) booked an appointment with you." : "Dear %s, %s (%s) booked an appointment with you.", + "A Calendar app for Nextcloud" : "A Calendar app for Nextcloud", + "Previous day" : "Previous day", + "Previous week" : "Previous week", + "Previous year" : "Previous year", + "Previous month" : "Previous month", + "Next day" : "Next day", + "Next week" : "Next week", + "Next year" : "Next year", + "Next month" : "Next month", + "Create new event" : "Create new event", + "Event" : "Event", + "Today" : "Today", + "Day" : "Day", + "Week" : "Week", + "Month" : "Month", + "Year" : "Year", + "List" : "List", + "Appointment link was copied to clipboard" : "Appointment link was copied to clipboard", + "Appointment link could not be copied to clipboard" : "Appointment link could not be copied to clipboard", + "Preview" : "Preview", + "Copy link" : "Copy link", + "Edit" : "Edit", + "Delete" : "Delete", + "Create new" : "Create new", + "Disable calendar \"{calendar}\"" : "Disable calendar \"{calendar}\"", + "Disable untitled calendar" : "Disable untitled calendar", + "Enable calendar \"{calendar}\"" : "Enable calendar \"{calendar}\"", + "Enable untitled calendar" : "Enable untitled calendar", + "An error occurred, unable to change visibility of the calendar." : "An error occurred, unable to change visibility of the calendar.", + "Untitled calendar" : "Untitled calendar", + "Shared with you by" : "Shared with you by", + "Edit and share calendar" : "Edit and share calendar", + "Edit calendar" : "Edit calendar", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Unsharing the calendar in {countdown} second","Unsharing the calendar in {countdown} seconds"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Deleting the calendar in {countdown} second","Deleting the calendar in {countdown} seconds"], + "An error occurred, unable to create the calendar." : "An error occurred, unable to create the calendar.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)", + "Calendars" : "Calendars", + "Add new" : "Add new", + "New calendar" : "New calendar", + "Name for new calendar" : "Name for new calendar", + "Creating calendar …" : "Creating calendar …", + "New calendar with task list" : "New calendar with task list", + "New subscription from link (read-only)" : "New subscription from link (read-only)", + "Creating subscription …" : "Creating subscription …", + "Add public holiday calendar" : "Add public holiday calendar", + "Add custom public calendar" : "Add custom public calendar", + "Calendar link copied to clipboard." : "Calendar link copied to clipboard.", + "Calendar link could not be copied to clipboard." : "Calendar link could not be copied to clipboard.", + "Copy subscription link" : "Copy subscription link", + "Copying link …" : "Copying link …", + "Copied link" : "Copied link", + "Could not copy link" : "Could not copy link", + "Export" : "Export", + "Untitled item" : "Untitled item", + "Unknown calendar" : "Unknown calendar", + "Could not load deleted calendars and objects" : "Could not load deleted calendars and objects", + "Could not delete calendar or event" : "Could not delete calendar or event", + "Could not restore calendar or event" : "Could not restore calendar or event", + "Do you really want to empty the trash bin?" : "Do you really want to empty the trash bin?", + "Empty trash bin" : "Empty trash bin", + "Trash bin" : "Trash bin", + "Loading deleted items." : "Loading deleted items.", + "You do not have any deleted items." : "You do not have any deleted items.", + "Name" : "Name", + "Deleted" : "Deleted", + "Restore" : "Restore", + "Delete permanently" : "Delete permanently", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Items in the trash bin are deleted after {numDays} day","Items in the trash bin are deleted after {numDays} days"], + "Could not update calendar order." : "Could not update calendar order.", + "Deck" : "Deck", + "Hidden" : "Hidden", + "Internal link" : "Internal link", + "A private link that can be used with external clients" : "A private link that can be used with external clients", + "Copy internal link" : "Copy internal link", + "An error occurred, unable to publish calendar." : "An error occurred, unable to publish calendar.", + "An error occurred, unable to send email." : "An error occurred, unable to send email.", + "Embed code copied to clipboard." : "Embed code copied to clipboard.", + "Embed code could not be copied to clipboard." : "Embed code could not be copied to clipboard.", + "Unpublishing calendar failed" : "Unpublishing calendar failed", + "Share link" : "Share link", + "Copy public link" : "Copy public link", + "Send link to calendar via email" : "Send link to calendar via email", + "Enter one address" : "Enter one address", + "Sending email …" : "Sending email …", + "Copy embedding code" : "Copy embedding code", + "Copying code …" : "Copying code …", + "Copied code" : "Copied code", + "Could not copy code" : "Could not copy code", + "Delete share link" : "Delete share link", + "Deleting share link …" : "Deleting share link …", + "An error occurred while unsharing the calendar." : "An error occurred while unsharing the calendar.", + "An error occurred, unable to change the permission of the share." : "An error occurred, unable to change the permission of the share.", + "can edit" : "can edit", + "Unshare with {displayName}" : "Unshare with {displayName}", + "Share with users or groups" : "Share with users or groups", + "No users or groups" : "No users or groups", + "Failed to save calendar name and color" : "Failed to save calendar name and color", + "Calendar name …" : "Calendar name …", + "Share calendar" : "Share calendar", + "Unshare from me" : "Unshare from me", + "Save" : "Save", + "Import calendars" : "Import calendars", + "Please select a calendar to import into …" : "Please select a calendar to import into …", + "Filename" : "Filename", + "Calendar to import into" : "Calendar to import into", + "Cancel" : "Cancel", + "_Import calendar_::_Import calendars_" : ["Import calendar","Import calendars"], + "Select the default location for attachments" : "Select the default location for attachments", + "Invalid location selected" : "Invalid location selected", + "Attachments folder successfully saved." : "Attachments folder successfully saved.", + "Error on saving attachments folder." : "Error on saving attachments folder.", + "Default attachments location" : "Default attachments location", + "{filename} could not be parsed" : "{filename} could not be parsed", + "No valid files found, aborting import" : "No valid files found, aborting import", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Successfully imported %n event","Successfully imported %n events"], + "Import partially failed. Imported {accepted} out of {total}." : "Import partially failed. Imported {accepted} out of {total}.", + "Automatic" : "Automatic", + "Automatic ({detected})" : "Automatic ({detected})", + "New setting was not saved successfully." : "New setting was not saved successfully.", + "Navigation" : "Navigation", + "Previous period" : "Previous period", + "Next period" : "Next period", + "Views" : "Views", + "Day view" : "Day view", + "Week view" : "Week view", + "Month view" : "Month view", + "Year view" : "Year view", + "List view" : "List view", + "Actions" : "Actions", + "Create event" : "Create event", + "Show shortcuts" : "Show shortcuts", + "Editor" : "Editor", + "Close editor" : "Close editor", + "Save edited event" : "Save edited event", + "Delete edited event" : "Delete edited event", + "Duplicate event" : "Duplicate event", + "Shortcut overview" : "Shortcut overview", + "or" : "or", + "Calendar settings" : "Calendar settings", + "No reminder" : "No reminder", + "CalDAV link copied to clipboard." : "CalDAV link copied to clipboard.", + "CalDAV link could not be copied to clipboard." : "CalDAV link could not be copied to clipboard.", + "Enable birthday calendar" : "Enable birthday calendar", + "Show tasks in calendar" : "Show tasks in calendar", + "Enable simplified editor" : "Enable simplified editor", + "Limit the number of events displayed in the monthly view" : "Limit the number of events displayed in the monthly view", + "Show weekends" : "Show weekends", + "Show week numbers" : "Show week numbers", + "Time increments" : "Time increments", + "Default reminder" : "Default reminder", + "Copy primary CalDAV address" : "Copy primary CalDAV address", + "Copy iOS/macOS CalDAV address" : "Copy iOS/macOS CalDAV address", + "Personal availability settings" : "Personal availability settings", + "Show keyboard shortcuts" : "Show keyboard shortcuts", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minute","{duration} minutes"], + "0 minutes" : "0 minutes", + "_{duration} hour_::_{duration} hours_" : ["{duration} hour","{duration} hours"], + "_{duration} day_::_{duration} days_" : ["{duration} day","{duration} days"], + "_{duration} week_::_{duration} weeks_" : ["{duration} week","{duration} weeks"], + "_{duration} month_::_{duration} months_" : ["{duration} month","{duration} months"], + "_{duration} year_::_{duration} years_" : ["{duration} year","{duration} years"], + "To configure appointments, add your email address in personal settings." : "To configure appointments, add your email address in personal settings.", + "Public – shown on the profile page" : "Public – shown on the profile page", + "Private – only accessible via secret link" : "Private – only accessible via secret link", + "Update" : "Update", + "Appointment name" : "Appointment name", + "Location" : "Location", + "Create a Talk room" : "Create a Talk room", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "A unique link will be generated for every booked appointment and sent via the confirmation email", + "Description" : "Description", + "Visibility" : "Visibility", + "Duration" : "Duration", + "Increments" : "Increments", + "Additional calendars to check for conflicts" : "Additional calendars to check for conflicts", + "Pick time ranges where appointments are allowed" : "Pick time ranges where appointments are allowed", + "to" : "to", + "Delete slot" : "Delete slot", + "No times set" : "No times set", + "Add" : "Add", + "Monday" : "Monday", + "Tuesday" : "Tuesday", + "Wednesday" : "Wednesday", + "Thursday" : "Thursday", + "Friday" : "Friday", + "Saturday" : "Saturday", + "Sunday" : "Sunday", + "Add time before and after the event" : "Add time before and after the event", + "Before the event" : "Before the event", + "After the event" : "After the event", + "Planning restrictions" : "Planning restrictions", + "Minimum time before next available slot" : "Minimum time before next available slot", + "Max slots per day" : "Max slots per day", + "Limit how far in the future appointments can be booked" : "Limit how far in the future appointments can be booked", + "Please confirm your reservation" : "Please confirm your reservation", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now.", + "Your name" : "Your name", + "Your email address" : "Your email address", + "Please share anything that will help prepare for our meeting" : "Please share anything that will help prepare for our meeting", + "Could not book the appointment. Please try again later or contact the organizer." : "Could not book the appointment. Please try again later or contact the organizer.", + "Back" : "Back", + "Create a new conversation" : "Create a new conversation", + "Select conversation" : "Select conversation", + "on" : "on", + "at" : "at", + "before at" : "before at", + "Notification" : "Notification", + "Email" : "Email", + "Audio notification" : "Audio notification", + "Other notification" : "Other notification", + "Relative to event" : "Relative to event", + "On date" : "On date", + "Edit time" : "Edit time", + "Save time" : "Save time", + "Remove reminder" : "Remove reminder", + "Add reminder" : "Add reminder", + "seconds" : "seconds", + "minutes" : "minutes", + "hours" : "hours", + "days" : "days", + "weeks" : "weeks", + "Choose a file to add as attachment" : "Choose a file to add as attachment", + "Choose a file to share as a link" : "Choose a file to share as a link", + "Attachment {name} already exist!" : "Attachment {name} already exist!", + "Could not upload attachment(s)" : "Could not upload attachment(s)", + "No attachments" : "No attachments", + "Add from Files" : "Add from Files", + "Upload from device" : "Upload from device", + "Delete file" : "Delete file", + "_{count} attachment_::_{count} attachments_" : ["{count} attachment","{count} attachments"], + "Suggested" : "Suggested", + "Available" : "Available", + "Invitation accepted" : "Invitation accepted", + "Accepted {organizerName}'s invitation" : "Accepted {organizerName}'s invitation", + "Participation marked as tentative" : "Participation marked as tentative", + "Invitation is delegated" : "Invitation is delegated", + "Not available" : "Not available", + "Invitation declined" : "Invitation declined", + "Declined {organizerName}'s invitation" : "Declined {organizerName}'s invitation", + "Checking availability" : "Checking availability", + "Has not responded to {organizerName}'s invitation yet" : "Has not responded to {organizerName}'s invitation yet", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Availability of attendees, resources and rooms" : "Availability of attendees, resources and rooms", + "Out of office" : "Out of office", + "Attendees:" : "Attendees:", + "Done" : "Done", + "Free" : "Free", + "Busy (tentative)" : "Busy (tentative)", + "Busy" : "Busy", + "Unknown" : "Unknown", + "The invitation has been accepted successfully." : "The invitation has been accepted successfully.", + "Failed to accept the invitation." : "Failed to accept the invitation.", + "The invitation has been declined successfully." : "The invitation has been declined successfully.", + "Failed to decline the invitation." : "Failed to decline the invitation.", + "Your participation has been marked as tentative." : "Your participation has been marked as tentative.", + "Failed to set the participation status to tentative." : "Failed to set the participation status to tentative.", + "Accept" : "Accept", + "Decline" : "Decline", + "Tentative" : "Tentative", + "No attendees yet" : "No attendees yet", + "Successfully appended link to talk room to location." : "Successfully appended link to talk room to location.", + "Successfully appended link to talk room to description." : "Successfully appended link to talk room to description.", + "Error creating Talk room" : "Error creating Talk room", + "Attendees" : "Attendees", + "Remove group" : "Remove group", + "Remove attendee" : "Remove attendee", + "Chairperson" : "Chairperson", + "Required participant" : "Required participant", + "Optional participant" : "Optional participant", + "Non-participant" : "Non-participant", + "_%n member_::_%n members_" : ["%n member","%n members"], + "No match found" : "No match found", + "Note that members of circles get invited but are not synced yet." : "Note that members of circles get invited but are not synced yet.", + "(organizer)" : "(organizer)", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose].", + "Remove color" : "Remove color", + "Event title" : "Event title", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Cannot modify all-day setting for events that are part of a recurrence-set.", + "From" : "From", + "To" : "To", + "Repeat" : "Repeat", + "_time_::_times_" : ["time","times"], + "never" : "never", + "on date" : "on date", + "after" : "after", + "End repeat" : "End repeat", + "Select to end repeat" : "Select to end repeat", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it.", + "first" : "first", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Changes to the recurrence-rule will only apply to this and all future occurrences.", + "Repeat every" : "Repeat every", + "By day of the month" : "By day of the month", + "On the" : "On the", + "_day_::_days_" : ["day","days"], + "_week_::_weeks_" : ["week","weeks"], + "_month_::_months_" : ["month","months"], + "_year_::_years_" : ["year","years"], + "weekday" : "weekday", + "weekend day" : "weekend day", + "Does not repeat" : "Does not repeat", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost.", + "No rooms or resources yet" : "No rooms or resources yet", + "Resources" : "Resources", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seat","{seatingCapacity} seats"], + "Add resource" : "Add resource", + "Has a projector" : "Has a projector", + "Has a whiteboard" : "Has a whiteboard", + "Wheelchair accessible" : "Wheelchair accessible", + "Remove resource" : "Remove resource", + "Search for resources or rooms" : "Search for resources or rooms", + "available" : "available", + "unavailable" : "unavailable", + "Projector" : "Projector", + "Whiteboard" : "Whiteboard", + "Room type" : "Room type", + "Any" : "Any", + "Minimum seating capacity" : "Minimum seating capacity", + "Update this and all future" : "Update this and all future", + "Update this occurrence" : "Update this occurrence", + "Public calendar does not exist" : "Public calendar does not exist", + "Maybe the share was deleted or has expired?" : "Maybe the share was deleted or has expired?", + "from {formattedDate}" : "from {formattedDate}", + "to {formattedDate}" : "to {formattedDate}", + "on {formattedDate}" : "on {formattedDate}", + "from {formattedDate} at {formattedTime}" : "from {formattedDate} at {formattedTime}", + "to {formattedDate} at {formattedTime}" : "to {formattedDate} at {formattedTime}", + "on {formattedDate} at {formattedTime}" : "on {formattedDate} at {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} at {formattedTime}", + "Please enter a valid date" : "Please enter a valid date", + "Please enter a valid date and time" : "Please enter a valid date and time", + "Please select a time zone:" : "Please select a time zone:", + "Pick a time" : "Pick a time", + "Pick a date" : "Pick a date", + "Type to search time zone" : "Type to search time zone", + "Global" : "Global", + "Holidays in {region}" : "Holidays in {region}", + "An error occurred, unable to read public calendars." : "An error occurred, unable to read public calendars.", + "An error occurred, unable to subscribe to calendar." : "An error occurred, unable to subscribe to calendar.", + "Public holiday calendars" : "Public holiday calendars", + "Public calendars" : "Public calendars", + "No valid public calendars configured" : "No valid public calendars configured", + "Speak to the server administrator to resolve this issue." : "Speak to the server administrator to resolve this issue.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website.", + "By {authors}" : "By {authors}", + "Subscribed" : "Subscribed", + "Subscribe" : "Subscribe", + "Could not fetch slots" : "Could not fetch slots", + "Select slot" : "Select slot", + "No slots available" : "No slots available", + "The slot for your appointment has been confirmed" : "The slot for your appointment has been confirmed", + "Appointment Details:" : "Appointment Details:", + "Time:" : "Time:", + "Booked for:" : "Booked for:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Thank you. Your booking from {startDate} to {endDate} has been confirmed.", + "Book another appointment:" : "Book another appointment:", + "See all available slots" : "See all available slots", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "The slot for your appointment from {startDate} to {endDate} is not available any more.", + "Please book a different slot:" : "Please book a different slot:", + "Book an appointment with {name}" : "Book an appointment with {name}", + "No public appointments found for {name}" : "No public appointments found for {name}", + "Personal" : "Personal", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue.", + "Event does not exist" : "Event does not exist", + "Duplicate" : "Duplicate", + "Delete this occurrence" : "Delete this occurrence", + "Delete this and all future" : "Delete this and all future", + "All day" : "All day", + "Managing shared access" : "Managing shared access", + "Deny access" : "Deny access", + "Invite" : "Invite", + "_User requires access to your file_::_Users require access to your file_" : ["User requires access to your file","Users require access to your file"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Attachment requires shared access","Attachments requiring shared access"], + "Untitled event" : "Untitled event", + "Close" : "Close", + "Subscribe to {name}" : "Subscribe to {name}", + "Export {name}" : "Export {name}", + "Anniversary" : "Anniversary", + "Appointment" : "Appointment", + "Business" : "Business", + "Education" : "Education", + "Holiday" : "Holiday", + "Meeting" : "Meeting", + "Miscellaneous" : "Miscellaneous", + "Non-working hours" : "Non-working hours", + "Not in office" : "Not in office", + "Phone call" : "Phone call", + "Sick day" : "Sick day", + "Special occasion" : "Special occasion", + "Travel" : "Travel", + "Vacation" : "Vacation", + "Midnight on the day the event starts" : "Midnight on the day the event starts", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n day before the event at {formattedHourMinute}","%n days before the event at {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n week before the event at {formattedHourMinute}","%n weeks before the event at {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "on the day of the event at {formattedHourMinute}", + "at the event's start" : "at the event's start", + "at the event's end" : "at the event's end", + "{time} before the event starts" : "{time} before the event starts", + "{time} before the event ends" : "{time} before the event ends", + "{time} after the event starts" : "{time} after the event starts", + "{time} after the event ends" : "{time} after the event ends", + "on {time}" : "on {time}", + "on {time} ({timezoneId})" : "on {time} ({timezoneId})", + "Week {number} of {year}" : "Week {number} of {year}", + "Daily" : "Daily", + "Weekly" : "Weekly", + "Monthly" : "Monthly", + "Yearly" : "Yearly", + "_Every %n day_::_Every %n days_" : ["Every %n day","Every %n days"], + "_Every %n week_::_Every %n weeks_" : ["Every %n week","Every %n weeks"], + "_Every %n month_::_Every %n months_" : ["Every %n month","Every %n months"], + "_Every %n year_::_Every %n years_" : ["Every %n year","Every %n years"], + "_on {weekday}_::_on {weekdays}_" : ["on {weekday}","on {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["on day {dayOfMonthList}","on days {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "on the {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} on the {ordinalNumber} {byDaySet}", + "until {untilDate}" : "until {untilDate}", + "_%n time_::_%n times_" : ["%n time","%n times"], + "second" : "second", + "third" : "third", + "fourth" : "fourth", + "fifth" : "fifth", + "second to last" : "second to last", + "last" : "last", + "Untitled task" : "Untitled task", + "Please ask your administrator to enable the Tasks App." : "Please ask your administrator to enable the Tasks App.", + "W" : "W", + "%n more" : "%n more", + "No events to display" : "No events to display", + "_+%n more_::_+%n more_" : ["+%n more","+%n more"], + "No events" : "No events", + "Create a new event or change the visible time-range" : "Create a new event or change the visible time-range", + "It might have been deleted, or there was a typo in a link" : "It might have been deleted, or there was a typo in a link", + "It might have been deleted, or there was a typo in the link" : "It might have been deleted, or there was a typo in the link", + "Meeting room" : "Meeting room", + "Lecture hall" : "Lecture hall", + "Seminar room" : "Seminar room", + "Other" : "Other", + "When shared show" : "When shared show", + "When shared show full event" : "When shared show full event", + "When shared show only busy" : "When shared show only busy", + "When shared hide this event" : "When shared hide this event", + "The visibility of this event in shared calendars." : "The visibility of this event in shared calendars.", + "Add a location" : "Add a location", + "Status" : "Status", + "Confirmed" : "Confirmed", + "Canceled" : "Canceled", + "Confirmation about the overall status of the event." : "Confirmation about the overall status of the event.", + "Show as" : "Show as", + "Take this event into account when calculating free-busy information." : "Take this event into account when calculating free-busy information.", + "Categories" : "Categories", + "Categories help you to structure and organize your events." : "Categories help you to structure and organize your events.", + "Search or add categories" : "Search or add categories", + "Add this as a new category" : "Add this as a new category", + "Custom color" : "Custom color", + "Special color of this event. Overrides the calendar-color." : "Special color of this event. Overrides the calendar-color.", + "Error while sharing file" : "Error while sharing file", + "Error while sharing file with user" : "Error while sharing file with user", + "Attachment {fileName} already exists!" : "Attachment {fileName} already exists!", + "An error occurred during getting file information" : "An error occurred during getting file information", + "An error occurred, unable to delete the calendar." : "An error occurred, unable to delete the calendar.", + "Imported {filename}" : "Imported {filename}", + "This is an event reminder." : "This is an event reminder.", + "Appointment not found" : "Appointment not found", + "User not found" : "User not found", + "Reminder" : "Reminder", + "+ Add reminder" : "+ Add reminder", + "Suggestions" : "Suggestions", + "Details" : "Details" +}, +"nplurals=2; plural=(n!=1);"); diff --git a/l10n/ka.json b/l10n/ka.json new file mode 100644 index 0000000000000000000000000000000000000000..771f7fa1c3ac0b9fb1ed15ce3079ca330b0202a3 --- /dev/null +++ b/l10n/ka.json @@ -0,0 +1,512 @@ +{ "translations": { + "Provided email-address is too long" : "Provided email-address is too long", + "User-Session unexpectedly expired" : "User-Session unexpectedly expired", + "Provided email-address is not valid" : "Provided email-address is not valid", + "%s has published the calendar »%s«" : "%s has published the calendar »%s«", + "Unexpected error sending email. Please contact your administrator." : "Unexpected error sending email. Please contact your administrator.", + "Successfully sent email to %1$s" : "Successfully sent email to %1$s", + "Hello," : "Hello,", + "We wanted to inform you that %s has published the calendar »%s«." : "We wanted to inform you that %s has published the calendar »%s«.", + "Open »%s«" : "Open »%s«", + "Cheers!" : "Cheers!", + "Upcoming events" : "Upcoming events", + "No more events today" : "No more events today", + "No upcoming events" : "No upcoming events", + "More events" : "More events", + "%1$s with %2$s" : "%1$s with %2$s", + "Calendar" : "Calendar", + "New booking {booking}" : "New booking {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}.", + "Appointments" : "Appointments", + "Schedule appointment \"%s\"" : "Schedule appointment \"%s\"", + "Schedule an appointment" : "Schedule an appointment", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Prepare for %s", + "Follow up for %s" : "Follow up for %s", + "Your appointment \"%s\" with %s needs confirmation" : "Your appointment \"%s\" with %s needs confirmation", + "Dear %s, please confirm your booking" : "Dear %s, please confirm your booking", + "Confirm" : "Confirm", + "Description:" : "Description:", + "This confirmation link expires in %s hours." : "This confirmation link expires in %s hours.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page.", + "Your appointment \"%s\" with %s has been accepted" : "Your appointment \"%s\" with %s has been accepted", + "Dear %s, your booking has been accepted." : "Dear %s, your booking has been accepted.", + "Appointment for:" : "Appointment for:", + "Date:" : "Date:", + "You will receive a link with the confirmation email" : "You will receive a link with the confirmation email", + "Where:" : "Where:", + "Comment:" : "Comment:", + "You have a new appointment booking \"%s\" from %s" : "You have a new appointment booking \"%s\" from %s", + "Dear %s, %s (%s) booked an appointment with you." : "Dear %s, %s (%s) booked an appointment with you.", + "A Calendar app for Nextcloud" : "A Calendar app for Nextcloud", + "Previous day" : "Previous day", + "Previous week" : "Previous week", + "Previous year" : "Previous year", + "Previous month" : "Previous month", + "Next day" : "Next day", + "Next week" : "Next week", + "Next year" : "Next year", + "Next month" : "Next month", + "Create new event" : "Create new event", + "Event" : "Event", + "Today" : "Today", + "Day" : "Day", + "Week" : "Week", + "Month" : "Month", + "Year" : "Year", + "List" : "List", + "Appointment link was copied to clipboard" : "Appointment link was copied to clipboard", + "Appointment link could not be copied to clipboard" : "Appointment link could not be copied to clipboard", + "Preview" : "Preview", + "Copy link" : "Copy link", + "Edit" : "Edit", + "Delete" : "Delete", + "Create new" : "Create new", + "Disable calendar \"{calendar}\"" : "Disable calendar \"{calendar}\"", + "Disable untitled calendar" : "Disable untitled calendar", + "Enable calendar \"{calendar}\"" : "Enable calendar \"{calendar}\"", + "Enable untitled calendar" : "Enable untitled calendar", + "An error occurred, unable to change visibility of the calendar." : "An error occurred, unable to change visibility of the calendar.", + "Untitled calendar" : "Untitled calendar", + "Shared with you by" : "Shared with you by", + "Edit and share calendar" : "Edit and share calendar", + "Edit calendar" : "Edit calendar", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Unsharing the calendar in {countdown} second","Unsharing the calendar in {countdown} seconds"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Deleting the calendar in {countdown} second","Deleting the calendar in {countdown} seconds"], + "An error occurred, unable to create the calendar." : "An error occurred, unable to create the calendar.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)", + "Calendars" : "Calendars", + "Add new" : "Add new", + "New calendar" : "New calendar", + "Name for new calendar" : "Name for new calendar", + "Creating calendar …" : "Creating calendar …", + "New calendar with task list" : "New calendar with task list", + "New subscription from link (read-only)" : "New subscription from link (read-only)", + "Creating subscription …" : "Creating subscription …", + "Add public holiday calendar" : "Add public holiday calendar", + "Add custom public calendar" : "Add custom public calendar", + "Calendar link copied to clipboard." : "Calendar link copied to clipboard.", + "Calendar link could not be copied to clipboard." : "Calendar link could not be copied to clipboard.", + "Copy subscription link" : "Copy subscription link", + "Copying link …" : "Copying link …", + "Copied link" : "Copied link", + "Could not copy link" : "Could not copy link", + "Export" : "Export", + "Untitled item" : "Untitled item", + "Unknown calendar" : "Unknown calendar", + "Could not load deleted calendars and objects" : "Could not load deleted calendars and objects", + "Could not delete calendar or event" : "Could not delete calendar or event", + "Could not restore calendar or event" : "Could not restore calendar or event", + "Do you really want to empty the trash bin?" : "Do you really want to empty the trash bin?", + "Empty trash bin" : "Empty trash bin", + "Trash bin" : "Trash bin", + "Loading deleted items." : "Loading deleted items.", + "You do not have any deleted items." : "You do not have any deleted items.", + "Name" : "Name", + "Deleted" : "Deleted", + "Restore" : "Restore", + "Delete permanently" : "Delete permanently", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Items in the trash bin are deleted after {numDays} day","Items in the trash bin are deleted after {numDays} days"], + "Could not update calendar order." : "Could not update calendar order.", + "Deck" : "Deck", + "Hidden" : "Hidden", + "Internal link" : "Internal link", + "A private link that can be used with external clients" : "A private link that can be used with external clients", + "Copy internal link" : "Copy internal link", + "An error occurred, unable to publish calendar." : "An error occurred, unable to publish calendar.", + "An error occurred, unable to send email." : "An error occurred, unable to send email.", + "Embed code copied to clipboard." : "Embed code copied to clipboard.", + "Embed code could not be copied to clipboard." : "Embed code could not be copied to clipboard.", + "Unpublishing calendar failed" : "Unpublishing calendar failed", + "Share link" : "Share link", + "Copy public link" : "Copy public link", + "Send link to calendar via email" : "Send link to calendar via email", + "Enter one address" : "Enter one address", + "Sending email …" : "Sending email …", + "Copy embedding code" : "Copy embedding code", + "Copying code …" : "Copying code …", + "Copied code" : "Copied code", + "Could not copy code" : "Could not copy code", + "Delete share link" : "Delete share link", + "Deleting share link …" : "Deleting share link …", + "An error occurred while unsharing the calendar." : "An error occurred while unsharing the calendar.", + "An error occurred, unable to change the permission of the share." : "An error occurred, unable to change the permission of the share.", + "can edit" : "can edit", + "Unshare with {displayName}" : "Unshare with {displayName}", + "Share with users or groups" : "Share with users or groups", + "No users or groups" : "No users or groups", + "Failed to save calendar name and color" : "Failed to save calendar name and color", + "Calendar name …" : "Calendar name …", + "Share calendar" : "Share calendar", + "Unshare from me" : "Unshare from me", + "Save" : "Save", + "Import calendars" : "Import calendars", + "Please select a calendar to import into …" : "Please select a calendar to import into …", + "Filename" : "Filename", + "Calendar to import into" : "Calendar to import into", + "Cancel" : "Cancel", + "_Import calendar_::_Import calendars_" : ["Import calendar","Import calendars"], + "Select the default location for attachments" : "Select the default location for attachments", + "Invalid location selected" : "Invalid location selected", + "Attachments folder successfully saved." : "Attachments folder successfully saved.", + "Error on saving attachments folder." : "Error on saving attachments folder.", + "Default attachments location" : "Default attachments location", + "{filename} could not be parsed" : "{filename} could not be parsed", + "No valid files found, aborting import" : "No valid files found, aborting import", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Successfully imported %n event","Successfully imported %n events"], + "Import partially failed. Imported {accepted} out of {total}." : "Import partially failed. Imported {accepted} out of {total}.", + "Automatic" : "Automatic", + "Automatic ({detected})" : "Automatic ({detected})", + "New setting was not saved successfully." : "New setting was not saved successfully.", + "Navigation" : "Navigation", + "Previous period" : "Previous period", + "Next period" : "Next period", + "Views" : "Views", + "Day view" : "Day view", + "Week view" : "Week view", + "Month view" : "Month view", + "Year view" : "Year view", + "List view" : "List view", + "Actions" : "Actions", + "Create event" : "Create event", + "Show shortcuts" : "Show shortcuts", + "Editor" : "Editor", + "Close editor" : "Close editor", + "Save edited event" : "Save edited event", + "Delete edited event" : "Delete edited event", + "Duplicate event" : "Duplicate event", + "Shortcut overview" : "Shortcut overview", + "or" : "or", + "Calendar settings" : "Calendar settings", + "No reminder" : "No reminder", + "CalDAV link copied to clipboard." : "CalDAV link copied to clipboard.", + "CalDAV link could not be copied to clipboard." : "CalDAV link could not be copied to clipboard.", + "Enable birthday calendar" : "Enable birthday calendar", + "Show tasks in calendar" : "Show tasks in calendar", + "Enable simplified editor" : "Enable simplified editor", + "Limit the number of events displayed in the monthly view" : "Limit the number of events displayed in the monthly view", + "Show weekends" : "Show weekends", + "Show week numbers" : "Show week numbers", + "Time increments" : "Time increments", + "Default reminder" : "Default reminder", + "Copy primary CalDAV address" : "Copy primary CalDAV address", + "Copy iOS/macOS CalDAV address" : "Copy iOS/macOS CalDAV address", + "Personal availability settings" : "Personal availability settings", + "Show keyboard shortcuts" : "Show keyboard shortcuts", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minute","{duration} minutes"], + "0 minutes" : "0 minutes", + "_{duration} hour_::_{duration} hours_" : ["{duration} hour","{duration} hours"], + "_{duration} day_::_{duration} days_" : ["{duration} day","{duration} days"], + "_{duration} week_::_{duration} weeks_" : ["{duration} week","{duration} weeks"], + "_{duration} month_::_{duration} months_" : ["{duration} month","{duration} months"], + "_{duration} year_::_{duration} years_" : ["{duration} year","{duration} years"], + "To configure appointments, add your email address in personal settings." : "To configure appointments, add your email address in personal settings.", + "Public – shown on the profile page" : "Public – shown on the profile page", + "Private – only accessible via secret link" : "Private – only accessible via secret link", + "Update" : "Update", + "Appointment name" : "Appointment name", + "Location" : "Location", + "Create a Talk room" : "Create a Talk room", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "A unique link will be generated for every booked appointment and sent via the confirmation email", + "Description" : "Description", + "Visibility" : "Visibility", + "Duration" : "Duration", + "Increments" : "Increments", + "Additional calendars to check for conflicts" : "Additional calendars to check for conflicts", + "Pick time ranges where appointments are allowed" : "Pick time ranges where appointments are allowed", + "to" : "to", + "Delete slot" : "Delete slot", + "No times set" : "No times set", + "Add" : "Add", + "Monday" : "Monday", + "Tuesday" : "Tuesday", + "Wednesday" : "Wednesday", + "Thursday" : "Thursday", + "Friday" : "Friday", + "Saturday" : "Saturday", + "Sunday" : "Sunday", + "Add time before and after the event" : "Add time before and after the event", + "Before the event" : "Before the event", + "After the event" : "After the event", + "Planning restrictions" : "Planning restrictions", + "Minimum time before next available slot" : "Minimum time before next available slot", + "Max slots per day" : "Max slots per day", + "Limit how far in the future appointments can be booked" : "Limit how far in the future appointments can be booked", + "Please confirm your reservation" : "Please confirm your reservation", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now.", + "Your name" : "Your name", + "Your email address" : "Your email address", + "Please share anything that will help prepare for our meeting" : "Please share anything that will help prepare for our meeting", + "Could not book the appointment. Please try again later or contact the organizer." : "Could not book the appointment. Please try again later or contact the organizer.", + "Back" : "Back", + "Create a new conversation" : "Create a new conversation", + "Select conversation" : "Select conversation", + "on" : "on", + "at" : "at", + "before at" : "before at", + "Notification" : "Notification", + "Email" : "Email", + "Audio notification" : "Audio notification", + "Other notification" : "Other notification", + "Relative to event" : "Relative to event", + "On date" : "On date", + "Edit time" : "Edit time", + "Save time" : "Save time", + "Remove reminder" : "Remove reminder", + "Add reminder" : "Add reminder", + "seconds" : "seconds", + "minutes" : "minutes", + "hours" : "hours", + "days" : "days", + "weeks" : "weeks", + "Choose a file to add as attachment" : "Choose a file to add as attachment", + "Choose a file to share as a link" : "Choose a file to share as a link", + "Attachment {name} already exist!" : "Attachment {name} already exist!", + "Could not upload attachment(s)" : "Could not upload attachment(s)", + "No attachments" : "No attachments", + "Add from Files" : "Add from Files", + "Upload from device" : "Upload from device", + "Delete file" : "Delete file", + "_{count} attachment_::_{count} attachments_" : ["{count} attachment","{count} attachments"], + "Suggested" : "Suggested", + "Available" : "Available", + "Invitation accepted" : "Invitation accepted", + "Accepted {organizerName}'s invitation" : "Accepted {organizerName}'s invitation", + "Participation marked as tentative" : "Participation marked as tentative", + "Invitation is delegated" : "Invitation is delegated", + "Not available" : "Not available", + "Invitation declined" : "Invitation declined", + "Declined {organizerName}'s invitation" : "Declined {organizerName}'s invitation", + "Checking availability" : "Checking availability", + "Has not responded to {organizerName}'s invitation yet" : "Has not responded to {organizerName}'s invitation yet", + "{organizer} (organizer)" : "{organizer} (organizer)", + "Availability of attendees, resources and rooms" : "Availability of attendees, resources and rooms", + "Out of office" : "Out of office", + "Attendees:" : "Attendees:", + "Done" : "Done", + "Free" : "Free", + "Busy (tentative)" : "Busy (tentative)", + "Busy" : "Busy", + "Unknown" : "Unknown", + "The invitation has been accepted successfully." : "The invitation has been accepted successfully.", + "Failed to accept the invitation." : "Failed to accept the invitation.", + "The invitation has been declined successfully." : "The invitation has been declined successfully.", + "Failed to decline the invitation." : "Failed to decline the invitation.", + "Your participation has been marked as tentative." : "Your participation has been marked as tentative.", + "Failed to set the participation status to tentative." : "Failed to set the participation status to tentative.", + "Accept" : "Accept", + "Decline" : "Decline", + "Tentative" : "Tentative", + "No attendees yet" : "No attendees yet", + "Successfully appended link to talk room to location." : "Successfully appended link to talk room to location.", + "Successfully appended link to talk room to description." : "Successfully appended link to talk room to description.", + "Error creating Talk room" : "Error creating Talk room", + "Attendees" : "Attendees", + "Remove group" : "Remove group", + "Remove attendee" : "Remove attendee", + "Chairperson" : "Chairperson", + "Required participant" : "Required participant", + "Optional participant" : "Optional participant", + "Non-participant" : "Non-participant", + "_%n member_::_%n members_" : ["%n member","%n members"], + "No match found" : "No match found", + "Note that members of circles get invited but are not synced yet." : "Note that members of circles get invited but are not synced yet.", + "(organizer)" : "(organizer)", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose].", + "Remove color" : "Remove color", + "Event title" : "Event title", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Cannot modify all-day setting for events that are part of a recurrence-set.", + "From" : "From", + "To" : "To", + "Repeat" : "Repeat", + "_time_::_times_" : ["time","times"], + "never" : "never", + "on date" : "on date", + "after" : "after", + "End repeat" : "End repeat", + "Select to end repeat" : "Select to end repeat", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it.", + "first" : "first", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Changes to the recurrence-rule will only apply to this and all future occurrences.", + "Repeat every" : "Repeat every", + "By day of the month" : "By day of the month", + "On the" : "On the", + "_day_::_days_" : ["day","days"], + "_week_::_weeks_" : ["week","weeks"], + "_month_::_months_" : ["month","months"], + "_year_::_years_" : ["year","years"], + "weekday" : "weekday", + "weekend day" : "weekend day", + "Does not repeat" : "Does not repeat", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost.", + "No rooms or resources yet" : "No rooms or resources yet", + "Resources" : "Resources", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seat","{seatingCapacity} seats"], + "Add resource" : "Add resource", + "Has a projector" : "Has a projector", + "Has a whiteboard" : "Has a whiteboard", + "Wheelchair accessible" : "Wheelchair accessible", + "Remove resource" : "Remove resource", + "Search for resources or rooms" : "Search for resources or rooms", + "available" : "available", + "unavailable" : "unavailable", + "Projector" : "Projector", + "Whiteboard" : "Whiteboard", + "Room type" : "Room type", + "Any" : "Any", + "Minimum seating capacity" : "Minimum seating capacity", + "Update this and all future" : "Update this and all future", + "Update this occurrence" : "Update this occurrence", + "Public calendar does not exist" : "Public calendar does not exist", + "Maybe the share was deleted or has expired?" : "Maybe the share was deleted or has expired?", + "from {formattedDate}" : "from {formattedDate}", + "to {formattedDate}" : "to {formattedDate}", + "on {formattedDate}" : "on {formattedDate}", + "from {formattedDate} at {formattedTime}" : "from {formattedDate} at {formattedTime}", + "to {formattedDate} at {formattedTime}" : "to {formattedDate} at {formattedTime}", + "on {formattedDate} at {formattedTime}" : "on {formattedDate} at {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} at {formattedTime}", + "Please enter a valid date" : "Please enter a valid date", + "Please enter a valid date and time" : "Please enter a valid date and time", + "Please select a time zone:" : "Please select a time zone:", + "Pick a time" : "Pick a time", + "Pick a date" : "Pick a date", + "Type to search time zone" : "Type to search time zone", + "Global" : "Global", + "Holidays in {region}" : "Holidays in {region}", + "An error occurred, unable to read public calendars." : "An error occurred, unable to read public calendars.", + "An error occurred, unable to subscribe to calendar." : "An error occurred, unable to subscribe to calendar.", + "Public holiday calendars" : "Public holiday calendars", + "Public calendars" : "Public calendars", + "No valid public calendars configured" : "No valid public calendars configured", + "Speak to the server administrator to resolve this issue." : "Speak to the server administrator to resolve this issue.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website.", + "By {authors}" : "By {authors}", + "Subscribed" : "Subscribed", + "Subscribe" : "Subscribe", + "Could not fetch slots" : "Could not fetch slots", + "Select slot" : "Select slot", + "No slots available" : "No slots available", + "The slot for your appointment has been confirmed" : "The slot for your appointment has been confirmed", + "Appointment Details:" : "Appointment Details:", + "Time:" : "Time:", + "Booked for:" : "Booked for:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Thank you. Your booking from {startDate} to {endDate} has been confirmed.", + "Book another appointment:" : "Book another appointment:", + "See all available slots" : "See all available slots", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "The slot for your appointment from {startDate} to {endDate} is not available any more.", + "Please book a different slot:" : "Please book a different slot:", + "Book an appointment with {name}" : "Book an appointment with {name}", + "No public appointments found for {name}" : "No public appointments found for {name}", + "Personal" : "Personal", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue.", + "Event does not exist" : "Event does not exist", + "Duplicate" : "Duplicate", + "Delete this occurrence" : "Delete this occurrence", + "Delete this and all future" : "Delete this and all future", + "All day" : "All day", + "Managing shared access" : "Managing shared access", + "Deny access" : "Deny access", + "Invite" : "Invite", + "_User requires access to your file_::_Users require access to your file_" : ["User requires access to your file","Users require access to your file"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Attachment requires shared access","Attachments requiring shared access"], + "Untitled event" : "Untitled event", + "Close" : "Close", + "Subscribe to {name}" : "Subscribe to {name}", + "Export {name}" : "Export {name}", + "Anniversary" : "Anniversary", + "Appointment" : "Appointment", + "Business" : "Business", + "Education" : "Education", + "Holiday" : "Holiday", + "Meeting" : "Meeting", + "Miscellaneous" : "Miscellaneous", + "Non-working hours" : "Non-working hours", + "Not in office" : "Not in office", + "Phone call" : "Phone call", + "Sick day" : "Sick day", + "Special occasion" : "Special occasion", + "Travel" : "Travel", + "Vacation" : "Vacation", + "Midnight on the day the event starts" : "Midnight on the day the event starts", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n day before the event at {formattedHourMinute}","%n days before the event at {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n week before the event at {formattedHourMinute}","%n weeks before the event at {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "on the day of the event at {formattedHourMinute}", + "at the event's start" : "at the event's start", + "at the event's end" : "at the event's end", + "{time} before the event starts" : "{time} before the event starts", + "{time} before the event ends" : "{time} before the event ends", + "{time} after the event starts" : "{time} after the event starts", + "{time} after the event ends" : "{time} after the event ends", + "on {time}" : "on {time}", + "on {time} ({timezoneId})" : "on {time} ({timezoneId})", + "Week {number} of {year}" : "Week {number} of {year}", + "Daily" : "Daily", + "Weekly" : "Weekly", + "Monthly" : "Monthly", + "Yearly" : "Yearly", + "_Every %n day_::_Every %n days_" : ["Every %n day","Every %n days"], + "_Every %n week_::_Every %n weeks_" : ["Every %n week","Every %n weeks"], + "_Every %n month_::_Every %n months_" : ["Every %n month","Every %n months"], + "_Every %n year_::_Every %n years_" : ["Every %n year","Every %n years"], + "_on {weekday}_::_on {weekdays}_" : ["on {weekday}","on {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["on day {dayOfMonthList}","on days {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "on the {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} on the {ordinalNumber} {byDaySet}", + "until {untilDate}" : "until {untilDate}", + "_%n time_::_%n times_" : ["%n time","%n times"], + "second" : "second", + "third" : "third", + "fourth" : "fourth", + "fifth" : "fifth", + "second to last" : "second to last", + "last" : "last", + "Untitled task" : "Untitled task", + "Please ask your administrator to enable the Tasks App." : "Please ask your administrator to enable the Tasks App.", + "W" : "W", + "%n more" : "%n more", + "No events to display" : "No events to display", + "_+%n more_::_+%n more_" : ["+%n more","+%n more"], + "No events" : "No events", + "Create a new event or change the visible time-range" : "Create a new event or change the visible time-range", + "It might have been deleted, or there was a typo in a link" : "It might have been deleted, or there was a typo in a link", + "It might have been deleted, or there was a typo in the link" : "It might have been deleted, or there was a typo in the link", + "Meeting room" : "Meeting room", + "Lecture hall" : "Lecture hall", + "Seminar room" : "Seminar room", + "Other" : "Other", + "When shared show" : "When shared show", + "When shared show full event" : "When shared show full event", + "When shared show only busy" : "When shared show only busy", + "When shared hide this event" : "When shared hide this event", + "The visibility of this event in shared calendars." : "The visibility of this event in shared calendars.", + "Add a location" : "Add a location", + "Status" : "Status", + "Confirmed" : "Confirmed", + "Canceled" : "Canceled", + "Confirmation about the overall status of the event." : "Confirmation about the overall status of the event.", + "Show as" : "Show as", + "Take this event into account when calculating free-busy information." : "Take this event into account when calculating free-busy information.", + "Categories" : "Categories", + "Categories help you to structure and organize your events." : "Categories help you to structure and organize your events.", + "Search or add categories" : "Search or add categories", + "Add this as a new category" : "Add this as a new category", + "Custom color" : "Custom color", + "Special color of this event. Overrides the calendar-color." : "Special color of this event. Overrides the calendar-color.", + "Error while sharing file" : "Error while sharing file", + "Error while sharing file with user" : "Error while sharing file with user", + "Attachment {fileName} already exists!" : "Attachment {fileName} already exists!", + "An error occurred during getting file information" : "An error occurred during getting file information", + "An error occurred, unable to delete the calendar." : "An error occurred, unable to delete the calendar.", + "Imported {filename}" : "Imported {filename}", + "This is an event reminder." : "This is an event reminder.", + "Appointment not found" : "Appointment not found", + "User not found" : "User not found", + "Reminder" : "Reminder", + "+ Add reminder" : "+ Add reminder", + "Suggestions" : "Suggestions", + "Details" : "Details" +},"pluralForm" :"nplurals=2; plural=(n!=1);" +} \ No newline at end of file diff --git a/l10n/ka_GE.js b/l10n/ka_GE.js index 3c8c738a3e9a9c854d9d9e729bf3b84bd3df0d8d..1f6f319ccb8fce635b104809770d8299bd5d74df 100644 --- a/l10n/ka_GE.js +++ b/l10n/ka_GE.js @@ -6,11 +6,10 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "გვსურს შეგატყობინოთ, რომ %s მომხმარებელმა გამოაქყვენა კალენდარი »%s«.", "Open »%s«" : "გახნსნა »%s«", "Cheers!" : "წარმატებები!", + "Calendar" : "კალენდარი", "Confirm" : "დადასტურება", - "Where:" : "სად:", "Description:" : "აღწერა:", - "Calendar" : "კალენდარი", - "New event" : "ახალი მოვლენა", + "Where:" : "სად:", "Today" : "დღეს", "Day" : "დღე", "Week" : "კვირა", @@ -20,22 +19,26 @@ OC.L10N.register( "Copy link" : "ბმულის კოპირება", "Edit" : "შეცვლა", "Delete" : "წაშლა", - "Export" : "ექსპორტი", - "Share link" : "ბმულის გაზიარება", - "Share with users or groups" : "გაზიარება მოხმარებლებთან ან ჯგუფებთან", - "can edit" : "შეგიძლია შეცვლა", "New calendar" : "ახალი კალენდარი", + "Export" : "ექსპორტი", "Name" : "სახელი", "Deleted" : "გაუქმდა", "Restore" : "აღდგენა", "Delete permanently" : "სამუდამოდ წაშლა", + "Deck" : "დასტა", + "Hidden" : "უჩინარი", + "Share link" : "ბმულის გაზიარება", + "can edit" : "შეგიძლია შეცვლა", + "Share with users or groups" : "გაზიარება მოხმარებლებთან ან ჯგუფებთან", + "Save" : "შენახვა", "Filename" : "ფაილის სახელი", "Cancel" : "უარყოფა", "Automatic" : "ავტომატური", - "or" : "ან", "List view" : "ჩამონათვლისებური ხედი", "Actions" : "მოქმედებები", + "or" : "ან", "Show week numbers" : "კვირის ნომრების ჩვენება", + "Update" : "განახლება", "Location" : "ადგილმდებარეობა", "Description" : "აღწერილობა", "to" : "ვის", @@ -47,34 +50,35 @@ OC.L10N.register( "Friday" : "პარასკევი", "Saturday" : "შაბათი", "Sunday" : "კვირა", - "Save" : "შენახვა", - "Update" : "განახლება", "Your email address" : "თქვენი ელ-ფოსტის მისამართი", "Notification" : "შეტყობინება", "Email" : "ელ-ფოსტა", + "days" : "დღე", + "weeks" : "კვირა", + "Choose a file to add as attachment" : "დანართად დასამატებლად აირჩიეთ ფაილი", + "Delete file" : "გაუქმდეს ფაილი", + "Done" : "დასრულდა", + "Room name" : "ოთახის სახელი", "Unknown" : "ამოუცნობი", "Accept" : "მიღება", "Decline" : "ურაყოფა", "Tentative" : "საცდელი", - "Send email" : "ელ-წერილის გაგზავნა", - "All day" : "მთელი დღე", + "Attendees" : "დამსწრეები", "Repeat" : "გამეორება", "never" : "არასდროს", "after" : "შემდეგ", + "Resources" : "რესურსები", "available" : "ხელმისაწვდომი", - "More" : "უფრო მეტი", "Global" : "გლობალური", + "Subscribe" : "გამოწერა", "Personal" : "პირადი", - "Details" : "დეტლაები", - "Attendees" : "დამსწრეები", - "Resources" : "რესურსები", + "Edit event" : "მოვლენის ცვლილება", + "All day" : "მთელი დღე", "Close" : "დახურვა", "Anniversary" : "დაბადების დღე", "Week {number} of {year}" : "კვირა {number} {year}-დან", "Daily" : "ყოველდღიური", "Weekly" : "ყოველკვირეული", - "Prev" : "წინა", - "Next" : "შემდეგი", "Other" : "სხვა", "When shared show full event" : "როდესაც გაზიარებულია გამოჩნდეს სრული მოვლენა", "When shared show only busy" : "როდესაც გაზიარებულია გამოჩნდეს მხოლოდ დაკავებული", @@ -82,8 +86,6 @@ OC.L10N.register( "Status" : "სტატუსი", "Confirmed" : "დადასტურებლია", "Categories" : "კატეგორიები", - "Talk" : "საუბარი", - "Mail" : "ფოსტა", - "Birthday" : "დაბადების დრე" + "Details" : "დეტლაები" }, "nplurals=2; plural=(n!=1);"); diff --git a/l10n/ka_GE.json b/l10n/ka_GE.json index 8b484db9cda7257ac21f6df598e4b9b03ddf548e..6970e7d7d4fbfb8503cf0bc79ffd1f60adbfe4b2 100644 --- a/l10n/ka_GE.json +++ b/l10n/ka_GE.json @@ -4,11 +4,10 @@ "We wanted to inform you that %s has published the calendar »%s«." : "გვსურს შეგატყობინოთ, რომ %s მომხმარებელმა გამოაქყვენა კალენდარი »%s«.", "Open »%s«" : "გახნსნა »%s«", "Cheers!" : "წარმატებები!", + "Calendar" : "კალენდარი", "Confirm" : "დადასტურება", - "Where:" : "სად:", "Description:" : "აღწერა:", - "Calendar" : "კალენდარი", - "New event" : "ახალი მოვლენა", + "Where:" : "სად:", "Today" : "დღეს", "Day" : "დღე", "Week" : "კვირა", @@ -18,22 +17,26 @@ "Copy link" : "ბმულის კოპირება", "Edit" : "შეცვლა", "Delete" : "წაშლა", - "Export" : "ექსპორტი", - "Share link" : "ბმულის გაზიარება", - "Share with users or groups" : "გაზიარება მოხმარებლებთან ან ჯგუფებთან", - "can edit" : "შეგიძლია შეცვლა", "New calendar" : "ახალი კალენდარი", + "Export" : "ექსპორტი", "Name" : "სახელი", "Deleted" : "გაუქმდა", "Restore" : "აღდგენა", "Delete permanently" : "სამუდამოდ წაშლა", + "Deck" : "დასტა", + "Hidden" : "უჩინარი", + "Share link" : "ბმულის გაზიარება", + "can edit" : "შეგიძლია შეცვლა", + "Share with users or groups" : "გაზიარება მოხმარებლებთან ან ჯგუფებთან", + "Save" : "შენახვა", "Filename" : "ფაილის სახელი", "Cancel" : "უარყოფა", "Automatic" : "ავტომატური", - "or" : "ან", "List view" : "ჩამონათვლისებური ხედი", "Actions" : "მოქმედებები", + "or" : "ან", "Show week numbers" : "კვირის ნომრების ჩვენება", + "Update" : "განახლება", "Location" : "ადგილმდებარეობა", "Description" : "აღწერილობა", "to" : "ვის", @@ -45,34 +48,35 @@ "Friday" : "პარასკევი", "Saturday" : "შაბათი", "Sunday" : "კვირა", - "Save" : "შენახვა", - "Update" : "განახლება", "Your email address" : "თქვენი ელ-ფოსტის მისამართი", "Notification" : "შეტყობინება", "Email" : "ელ-ფოსტა", + "days" : "დღე", + "weeks" : "კვირა", + "Choose a file to add as attachment" : "დანართად დასამატებლად აირჩიეთ ფაილი", + "Delete file" : "გაუქმდეს ფაილი", + "Done" : "დასრულდა", + "Room name" : "ოთახის სახელი", "Unknown" : "ამოუცნობი", "Accept" : "მიღება", "Decline" : "ურაყოფა", "Tentative" : "საცდელი", - "Send email" : "ელ-წერილის გაგზავნა", - "All day" : "მთელი დღე", + "Attendees" : "დამსწრეები", "Repeat" : "გამეორება", "never" : "არასდროს", "after" : "შემდეგ", + "Resources" : "რესურსები", "available" : "ხელმისაწვდომი", - "More" : "უფრო მეტი", "Global" : "გლობალური", + "Subscribe" : "გამოწერა", "Personal" : "პირადი", - "Details" : "დეტლაები", - "Attendees" : "დამსწრეები", - "Resources" : "რესურსები", + "Edit event" : "მოვლენის ცვლილება", + "All day" : "მთელი დღე", "Close" : "დახურვა", "Anniversary" : "დაბადების დღე", "Week {number} of {year}" : "კვირა {number} {year}-დან", "Daily" : "ყოველდღიური", "Weekly" : "ყოველკვირეული", - "Prev" : "წინა", - "Next" : "შემდეგი", "Other" : "სხვა", "When shared show full event" : "როდესაც გაზიარებულია გამოჩნდეს სრული მოვლენა", "When shared show only busy" : "როდესაც გაზიარებულია გამოჩნდეს მხოლოდ დაკავებული", @@ -80,8 +84,6 @@ "Status" : "სტატუსი", "Confirmed" : "დადასტურებლია", "Categories" : "კატეგორიები", - "Talk" : "საუბარი", - "Mail" : "ფოსტა", - "Birthday" : "დაბადების დრე" + "Details" : "დეტლაები" },"pluralForm" :"nplurals=2; plural=(n!=1);" } \ No newline at end of file diff --git a/l10n/kab.js b/l10n/kab.js new file mode 100644 index 0000000000000000000000000000000000000000..4d6f0394157025899c9890c6974d6ba4f9e356cf --- /dev/null +++ b/l10n/kab.js @@ -0,0 +1,35 @@ +OC.L10N.register( + "calendar", + { + "Calendar" : "Awitay", + "Confirm" : "Serggeg", + "Today" : "Ass-a", + "Copy link" : "Nɣel aseɣwen", + "Edit" : "Ẓreg", + "Delete" : "Kkes", + "Create new" : "Rnu tura", + "Name" : "Nom", + "Deleted" : "Yettwakkes", + "Share link" : "Fren aseɣwen", + "Save" : "Sekles", + "Filename" : "Isem n ufaylu", + "Cancel" : "Sefsex", + "List view" : "Timeẓri n tebdart", + "Location" : "Adig", + "Add" : "Rnu", + "Back" : "Retour", + "Notification" : "Alɣu", + "Email" : "Imayl", + "days" : "ussan", + "Proceed" : "Kemmel", + "Done" : "Immed", + "Unknown" : "Arussin", + "Personal" : "Udmawan", + "Close" : "Mdel", + "Daily" : "S wass", + "Weekly" : "S umalas", + "Other" : "Wayeḍ", + "Status" : "État", + "Details" : "Talqayt" +}, +"nplurals=2; plural=(n != 1);"); diff --git a/l10n/kab.json b/l10n/kab.json new file mode 100644 index 0000000000000000000000000000000000000000..0aea878128734261f528877879959408f2f52446 --- /dev/null +++ b/l10n/kab.json @@ -0,0 +1,33 @@ +{ "translations": { + "Calendar" : "Awitay", + "Confirm" : "Serggeg", + "Today" : "Ass-a", + "Copy link" : "Nɣel aseɣwen", + "Edit" : "Ẓreg", + "Delete" : "Kkes", + "Create new" : "Rnu tura", + "Name" : "Nom", + "Deleted" : "Yettwakkes", + "Share link" : "Fren aseɣwen", + "Save" : "Sekles", + "Filename" : "Isem n ufaylu", + "Cancel" : "Sefsex", + "List view" : "Timeẓri n tebdart", + "Location" : "Adig", + "Add" : "Rnu", + "Back" : "Retour", + "Notification" : "Alɣu", + "Email" : "Imayl", + "days" : "ussan", + "Proceed" : "Kemmel", + "Done" : "Immed", + "Unknown" : "Arussin", + "Personal" : "Udmawan", + "Close" : "Mdel", + "Daily" : "S wass", + "Weekly" : "S umalas", + "Other" : "Wayeḍ", + "Status" : "État", + "Details" : "Talqayt" +},"pluralForm" :"nplurals=2; plural=(n != 1);" +} \ No newline at end of file diff --git a/l10n/km.js b/l10n/km.js index 598bb6e9a79c03f740725b9ae03eca2a71fbe70a..553d7a5419afefebc6b5be52c6e7670a575a06d4 100644 --- a/l10n/km.js +++ b/l10n/km.js @@ -6,18 +6,21 @@ OC.L10N.register( "Day" : "ថ្ងៃ", "Week" : "សប្ដាហ៍", "Month" : "ខែ", + "Year" : "ឆ្នាំ", "Copy link" : "ចម្លងតំណ", "Edit" : "កែប្រែ", "Delete" : "លុប", - "Export" : "នាំចេញ", - "Share link" : "Share link", - "can edit" : "អាច​កែប្រែ", "New calendar" : "ប្រតិទិន​ថ្មី", + "Export" : "នាំចេញ", "Name" : "ឈ្មោះ", "Deleted" : "បាន​លុប", "Restore" : "ស្ដារ​មក​វិញ", "Delete permanently" : "លុប​ជា​អចិន្ត្រៃយ៍", + "Share link" : "Share link", + "can edit" : "អាច​កែប្រែ", + "Save" : "រក្សាទុក", "Cancel" : "បោះបង់", + "Update" : "ធ្វើ​បច្ចុប្បន្នភាព", "Location" : "ទីតាំង", "Description" : "ការ​អធិប្បាយ", "to" : "ទៅ", @@ -29,26 +32,20 @@ OC.L10N.register( "Friday" : "ថ្ងៃសុក្រ", "Saturday" : "ថ្ងៃសៅរ៍", "Sunday" : "ថ្ងៃអាទិត្យ", - "Save" : "រក្សាទុក", - "Update" : "ធ្វើ​បច្ចុប្បន្នភាព", "Your email address" : "អ៊ីម៉ែល​របស់​អ្នក", "Email" : "អ៊ីមែល", - "Send email" : "ផ្ញើ​អ៊ីមែល", + "Attendees" : "អ្នក​ចូលរួម", "Repeat" : "ធ្វើម្ដងទៀត", "never" : "មិនដែរ", "first" : "ទីមួយ", - "last" : "ចុងក្រោយ", - "More" : "ច្រើន​ទៀត", "Personal" : "ផ្ទាល់​ខ្លួន", - "Details" : "ព័ត៌មាន​លម្អិត", - "Attendees" : "អ្នក​ចូលរួម", + "Edit event" : "កែ​ព្រឹត្តិការណ៍", "Close" : "បិទ", "Daily" : "រាល់ថ្ងៃ", "Weekly" : "រាល់​សប្ដាហ៍", - "Next" : "បន្ទាប់", - "Year" : "ឆ្នាំ", + "second" : "ទីពីរ", + "last" : "ចុងក្រោយ", "Other" : "ផ្សេងៗ", - "Mail" : "សំបុត្រ", - "Birthday" : "ថ្ងៃ​កំណើត" + "Details" : "ព័ត៌មាន​លម្អិត" }, "nplurals=1; plural=0;"); diff --git a/l10n/km.json b/l10n/km.json index 3c52fcb63e79dfa8aa9b23da3289083c243cd329..68d2e210324e2cef1bf1d1d1f2c34c74e1c94833 100644 --- a/l10n/km.json +++ b/l10n/km.json @@ -4,18 +4,21 @@ "Day" : "ថ្ងៃ", "Week" : "សប្ដាហ៍", "Month" : "ខែ", + "Year" : "ឆ្នាំ", "Copy link" : "ចម្លងតំណ", "Edit" : "កែប្រែ", "Delete" : "លុប", - "Export" : "នាំចេញ", - "Share link" : "Share link", - "can edit" : "អាច​កែប្រែ", "New calendar" : "ប្រតិទិន​ថ្មី", + "Export" : "នាំចេញ", "Name" : "ឈ្មោះ", "Deleted" : "បាន​លុប", "Restore" : "ស្ដារ​មក​វិញ", "Delete permanently" : "លុប​ជា​អចិន្ត្រៃយ៍", + "Share link" : "Share link", + "can edit" : "អាច​កែប្រែ", + "Save" : "រក្សាទុក", "Cancel" : "បោះបង់", + "Update" : "ធ្វើ​បច្ចុប្បន្នភាព", "Location" : "ទីតាំង", "Description" : "ការ​អធិប្បាយ", "to" : "ទៅ", @@ -27,26 +30,20 @@ "Friday" : "ថ្ងៃសុក្រ", "Saturday" : "ថ្ងៃសៅរ៍", "Sunday" : "ថ្ងៃអាទិត្យ", - "Save" : "រក្សាទុក", - "Update" : "ធ្វើ​បច្ចុប្បន្នភាព", "Your email address" : "អ៊ីម៉ែល​របស់​អ្នក", "Email" : "អ៊ីមែល", - "Send email" : "ផ្ញើ​អ៊ីមែល", + "Attendees" : "អ្នក​ចូលរួម", "Repeat" : "ធ្វើម្ដងទៀត", "never" : "មិនដែរ", "first" : "ទីមួយ", - "last" : "ចុងក្រោយ", - "More" : "ច្រើន​ទៀត", "Personal" : "ផ្ទាល់​ខ្លួន", - "Details" : "ព័ត៌មាន​លម្អិត", - "Attendees" : "អ្នក​ចូលរួម", + "Edit event" : "កែ​ព្រឹត្តិការណ៍", "Close" : "បិទ", "Daily" : "រាល់ថ្ងៃ", "Weekly" : "រាល់​សប្ដាហ៍", - "Next" : "បន្ទាប់", - "Year" : "ឆ្នាំ", + "second" : "ទីពីរ", + "last" : "ចុងក្រោយ", "Other" : "ផ្សេងៗ", - "Mail" : "សំបុត្រ", - "Birthday" : "ថ្ងៃ​កំណើត" + "Details" : "ព័ត៌មាន​លម្អិត" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/ko.js b/l10n/ko.js index 503c5c03a19a2bd9830bc4e1e41c220241ea66e8..13a7642c1b8dc16a1d5e923bdf2e5875003430fa 100644 --- a/l10n/ko.js +++ b/l10n/ko.js @@ -1,150 +1,228 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "입력한 이메일 주소가 너무 깁니다", "User-Session unexpectedly expired" : "사용자 세션이 예기치 않게 만료되었습니다.", "Provided email-address is not valid" : "지정한 파일이 사진이 아님", "%s has published the calendar »%s«" : "%s 님이 달력 \"%s\"을(를) 공개했습니다", "Unexpected error sending email. Please contact your administrator." : "재설정 메일을 보낼 수 없습니다. 관리자에게 문의하십시오.", - "Successfully sent email to %1$s" : "%1$s에게 이메일을 성공적으로 발송했습니다", + "Successfully sent email to %1$s" : "%1$s에게 이메일을 성공적으로 발송했습니다.", "Hello," : "안녕하세요,", "We wanted to inform you that %s has published the calendar »%s«." : "%s 님이 달력 \"%s\"을(를) 공개했음을 알려 드립니다.", "Open »%s«" : "%s 열기", "Cheers!" : "감사합니다!", "Upcoming events" : "곧 있을 일정", + "No more events today" : "오늘 더 이상 일정이 없음", + "No upcoming events" : "다가오는 일정 없음", + "More events" : "일정 더 보기", + "%1$s with %2$s" : "%2$s이(가) 참여하는 %1$s", + "Calendar" : "달력", + "New booking {booking}" : "새로운 예약 {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) 이(가) \"{config_display_name}\"을(를) {date_time}에 예약했습니다.", "Appointments" : "일정들", + "Schedule appointment \"%s\"" : "약속 \"%s\" 잡기", + "Schedule an appointment" : "약속 잡기", + "Prepare for %s" : "%s 준비", + "Your appointment \"%s\" with %s needs confirmation" : "%s님과의 약속 \"%s\"에 대해 확인이 필요합니다", + "Dear %s, please confirm your booking" : "%s님, 예약을 확인해 주십시오", "Confirm" : "확인", + "Appointment with:" : "약속 상대:", + "Description:" : "설명:", + "This confirmation link expires in %s hours." : "이 확인 링크는 %s시간 후 만료됩니다.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "약속을 취소하고자 할 경우 이 이메일 또는 프로필 페이지를 통해 조직 관리자에게 문의하십시오.", + "Your appointment \"%s\" with %s has been accepted" : "%s님과의 약속 \"%s\"이(가) 수락되었습니다", + "Dear %s, your booking has been accepted." : "%s님, 예약이 수락되었습니다.", + "Appointment for:" : "약속 주제:", "Date:" : "날짜:", + "You will receive a link with the confirmation email" : "링크가 동봉된 확인 이메일을 수신할 것입니다", "Where:" : "장소:", - "Description:" : "설명:", - "Calendar" : "달력", + "Comment:" : "댓글:", + "You have a new appointment booking \"%s\" from %s" : "%s님으로부터 약속 \"%s\"에 대한 새로운 예약이 있습니다", + "Dear %s, %s (%s) booked an appointment with you." : "%s님, %s(%s)님께서 귀하와 약속을 예약했습니다.", "A Calendar app for Nextcloud" : "Nextcloud 달력 앱", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "캘린더 앱은 Nextcloud의 CalDAV 서버용 사용자 인터페이스입니다. 다양한 장치의 일정을 Nextcloud와 쉽게 동기화하고 온라인으로 편집하세요. \n* 🚀 ** 다른 Nextcloud 앱과 통합! ** 현재 연락처 - 추가 예정 \n* 🌐 ** WebCal 지원! ** 캘린더에서 좋아하는 팀의 경기 일정을 보고 싶으세요? 문제 없어요! \n* 🙋 ** 모여라! ** 내 일정에 사람들 초대합니다\n* ⌚️ ** 한가함 / 바쁨! ** 언제 미팅이 가능할지 확인할 수 있습니다\n* ⏰ ** 알림! ** 브라우저나 이메일로 일정에 대한 알람을 받을 수 있습니다 \n* 🔍 검색! 쉽게 일정 찾기\n* ☑️ 작업! 마감일이있는 작업을 캘린더에서 바로 확인할 수 있습니다 \n* 🙈 ** 우리는 바퀴를 새로 만들지 않습니다! ** 위대한 [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js] (https : // github.com/mozilla-comm/ical.js) 그리고 [fullcalendar] (https://github.com/fullcalendar/fullcalendar) 라이브러리를 기반으로 합니다.", "Previous day" : "이전날", "Previous week" : "이전주", + "Previous year" : "전년도", "Previous month" : "이전달", "Next day" : "다음날", "Next week" : "다음주", + "Next year" : "다음 년도", "Next month" : "다음달", - "New event" : "새 일정", + "Create new event" : "새 일정 생성", + "Event" : "일정", "Today" : "오늘", "Day" : "일", "Week" : "주", "Month" : "달", + "Year" : "년", "List" : "목록", + "Appointment link was copied to clipboard" : "예약 링크가 클립보드에 복사되었습니다", + "Appointment link could not be copied to clipboard" : "예약 링크를 클립보드에 복사하지 못했습니다", "Preview" : "미리 보기", "Copy link" : "링크 복사", "Edit" : "수정", "Delete" : "삭제", - "Add new" : "새로 추가", - "Untitled calendar" : "제목없는 달력", - "Edit name" : "이름 편집", - "Saving name …" : "이름 저장 중...", - "Edit color" : "색 편집", - "Saving color …" : "색깔 저장 중...", - "Copy private link" : "개인 링크 주소 복사", - "Export" : "내보내기", - "Unshare from me" : "나의 공유 해제", + "Appointment schedules" : "약속 일정", + "Create new" : "새로 만들기", + "Disable calendar \"{calendar}\"" : "달력 \"{calendar}\" 비활성화", + "Disable untitled calendar" : "제목 없는 달력 비활성화", + "Enable calendar \"{calendar}\"" : "달력 \"{calendar}\" 활성화", + "Enable untitled calendar" : "제목 없는 달력 활성화", "An error occurred, unable to change visibility of the calendar." : "오류가 발생하여 달력의 공개 설정을 변경할 수 없습니다.", - "An error occurred, unable to delete the calendar." : "오류가 발생하여 달력을 삭제할 수 없습니다.", - "Calendar link copied to clipboard." : "달력의 링크를 클립보드에 복사되었습니다.", - "Calendar link could not be copied to clipboard." : "달력의 링크를 클립보드에 저장할 수 없습니다.", - "An error occurred, unable to rename the calendar." : "오류가 발생하여 달력의 이름을 변경할 수 없습니다.", - "An error occurred, unable to change the calendar's color." : "오류가 발생하여 달력의 색깔을 변경할 수 없습니다.", + "Untitled calendar" : "제목없는 달력", + "Shared with you by" : "다음을 이용해 나와 공유됨 : ", + "Edit and share calendar" : "달력 편집 및 공유", + "Edit calendar" : "달력 편집", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["{countdown}초 후 달력 공유 해제"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["{countdown}초 후 달력 삭제"], + "An error occurred, unable to create the calendar." : "오류가 발생하여 달력을 만들 수 없습니다.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "올바른 링크를 입력해 주십시오 (http://, https://, wdbcal://, 혹은 webcals:// 로 시작합니다.)", + "Calendars" : "달력", + "Add new" : "새로 추가", + "New calendar" : "새 달력", + "Name for new calendar" : "새 달력 이름", + "Creating calendar …" : "달력 생성중 …", + "New calendar with task list" : "작업 목록이 포함된 새 달력", + "New subscription from link (read-only)" : "링크를 통해 새로 구독하기 (읽기 전용)", + "Creating subscription …" : "구독 생성 ...", + "Add public holiday calendar" : "공개 휴일 달력 추가", + "Add custom public calendar" : "사용자 지정 공개 달력 추가", + "Calendar link copied to clipboard." : "달력의 링크를 클립보드에 복사했습니다.", + "Calendar link could not be copied to clipboard." : "달력의 링크를 클립보드에 복사할 수 없습니다.", + "Copy subscription link" : "구독 링크 복사", + "Copying link …" : "링크 복사중 …", + "Copied link" : "링크 복사됨", + "Could not copy link" : "링크를 복사할 수 없음", + "Export" : "내보내기", + "Untitled item" : "제목 없는 항목", + "Unknown calendar" : "제목 없는 달력", + "Could not load deleted calendars and objects" : "삭제된 달력과 요소들을 불러올 수 없음", + "Could not restore calendar or event" : "달력과 일정을 복구할 수 없음", + "Do you really want to empty the trash bin?" : "휴지통을 정말 비웁니까?", + "Empty trash bin" : "휴지통 비우기", + "Trash bin" : "휴지통", + "Loading deleted items." : "삭제된 항목 불러오는 중", + "You do not have any deleted items." : "삭제된 항목이 없습니다.", + "Name" : "이름", + "Deleted" : "삭제됨", + "Restore" : "복원", + "Delete permanently" : "영구히 삭제", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["휴지통에 있는 항목은 {numDays}일 수 완전히 삭제됩니다"], + "Could not update calendar order." : "달력 순서를 갱신할 수 없습니다.", + "Deck" : "덱", + "Hidden" : "숨겨짐", + "Internal link" : "내부 링크", + "A private link that can be used with external clients" : "개인 링크를 외부 클라이언트에서 사용할 수 있습니다", + "Copy internal link" : "내부 링크 복사", + "An error occurred, unable to publish calendar." : "오류 발생, 달력을 공개할 수 없음", + "An error occurred, unable to send email." : "오류 발생, 이메일로 보낼 수 없음", + "Embed code copied to clipboard." : "삽입 코드가 클립보드에 복사됨", + "Embed code could not be copied to clipboard." : "삽입 코드를 클립보드에 복사할 수 없음", + "Unpublishing calendar failed" : "달력 공개 중단 실패", "Share link" : "링크 공유", - "Publish calendar" : "달력 공개", - "Publishing calendar" : "달력 공개 중", "Copy public link" : "공개 링크 복사", "Send link to calendar via email" : "이메일로 달력 링크 보내기", "Enter one address" : "주소 입력", "Sending email …" : "이메일로 보내는중 …", - "Copy subscription link" : "구독 링크 복사", - "Copying link …" : "링크 복사중 …", - "Copied link" : "링크 복사됨", - "Could not copy link" : "링크를 복사할 수 없음", "Copy embedding code" : "삽입 코드 복사", "Copying code …" : "코드 복사중 …", "Copied code" : "코드 복사됨", "Could not copy code" : "코드를 복사할 수 없음", "Delete share link" : "공유 링크 삭제", "Deleting share link …" : "공유링크 삭제 …", - "An error occurred, unable to publish calendar." : "오류 발생, 달력을 공개할 수 없음", - "An error occurred, unable to send email." : "오류 발생, 이메일로 보낼 수 없음", - "Embed code copied to clipboard." : "삽입 코드가 클립보드에 복사됨", - "Embed code could not be copied to clipboard." : "삽입 코드를 클립보드에 복사할 수 없음", - "Unpublishing calendar failed" : "달력 공개 중단 실패", - "Share with users or groups" : "사용자 및 그룹과 공유", - "No users or groups" : "사용자나 그룹 없음", + "An error occurred while unsharing the calendar." : "달력 공유 해제 중 오류 발생", + "An error occurred, unable to change the permission of the share." : "오류가 발생하여 공유 권한을 변경할 수 없습니다.", "can edit" : "편집 가능", "Unshare with {displayName}" : "{displayName}과 공유 중단", - "An error occurred, unable to change the unshare the calendar." : "오류가 발생하여 달력의 공개 중단을 변경할 수 없습니다.", - "An error occurred, unable to change the permission of the share." : "오류가 발생하여 공유 권한을 변경할 수 없습니다.", - "+ New calendar" : "+ 새 달력", - "New calendar" : "새 달력", - "Creating calendar …" : "달력 생성중 …", - "New calendar with task list" : "작업 목록이 포함된 새 달력", - "New subscription from link (read-only)" : "링크를 통해 새로 구독하기 (읽기 전용)", - "Creating subscription …" : "구독 생성 ...", - "An error occurred, unable to create the calendar." : "오류가 발생하여 달력을 만들 수 없습니다.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "올바른 링크를 입력해 주십시오 (http://, https://, wdbcal://, 혹은 webcals:// 로 시작합니다.)", - "Trash bin" : "휴지통", - "Loading deleted elements." : "삭제된 요소를 불러오는 중.", - "You do not have any deleted elements." : "삭제된 요소가 없습니다.", - "Name" : "이름", - "Deleted" : "삭제됨", - "Restore" : "복원", - "Delete permanently" : "영구히 삭제", - "Empty trash bin" : "휴지통 비우기", - "Untitled element" : "제목없는 요소", - "Could not load deleted calendars and objects" : "삭제된 달력과 요소들을 불러올 수 없음", - "Could not restore calendar or event" : "달력과 일정을 복구할 수 없음", - "Do you really want to empty the trash bin?" : "휴지통을 정말 비웁니까?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["휴지통에 있는 요소는 {numDays} 후 삭제됩니다."], - "Could not update calendar order." : "달력 순서를 갱신할 수 없습니다.", + "Share with users or groups" : "사용자 및 그룹과 공유", + "No users or groups" : "사용자나 그룹 없음", + "Failed to save calendar name and color" : "달력 이름 및 색상 저장 실패", + "Calendar name …" : "달력 이름 ...", + "Share calendar" : "달력 공유", + "Unshare from me" : "나의 공유 해제", + "Save" : "저장", "Import calendars" : "달력 가져오기", "Please select a calendar to import into …" : "다음으로 가져올 달력을 선택해 주십시오 ...", "Filename" : "파일 이름", "Calendar to import into" : "다음으로 가져올 달력", "Cancel" : "취소", "_Import calendar_::_Import calendars_" : ["달력 가져오기"], + "Select the default location for attachments" : "첨부파일에 대한 기본 위치를 지정하십시오", + "Invalid location selected" : "잘못된 위치가 선택됨", + "Attachments folder successfully saved." : "첨부파일 폴더가 성공적으로 저장됨.", + "Error on saving attachments folder." : "첨부파일 폴더 설정 저장 중 오류 발생", + "Default attachments location" : "기본 첨부파일 위치", "{filename} could not be parsed" : "{filename} 분석할 수 없음", "No valid files found, aborting import" : "올바른 파일을 발견할 수 없음, 가져오기 취소", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n개의 일정을 성공적으로 가져옴"], "Import partially failed. Imported {accepted} out of {total}." : "가져오기가 부분적으로 실패했습니다. {total} 중 {accepted} 가져옴.", "Automatic" : "자동", "Automatic ({detected})" : "자동 ({detected})", "New setting was not saved successfully." : "새로운 설정이 저장되지 않았습니다.", - "or" : "또는", + "Navigation" : "탐색", "Previous period" : "이전 기간", "Next period" : "다음 기간", "Views" : "보기", "Day view" : "일간", "Week view" : "주간", "Month view" : "월간", + "Year view" : "연도별 보기", "List view" : "목록 보기", "Actions" : "동작", "Create event" : "일정 만들기", "Show shortcuts" : "단축키 표시", + "Editor" : "편집기", + "Close editor" : "편집기 닫기", + "Save edited event" : "수정된 일정 저장", + "Delete edited event" : "수정된 일정 삭제", + "Duplicate event" : "일정 복제", + "Shortcut overview" : "바로가기 개요", + "or" : "또는", + "Calendar settings" : "달력 설정", + "No reminder" : "알림 없음", + "CalDAV link copied to clipboard." : "CalDAV 링크를 클립보드에 복사했습니다.", + "CalDAV link could not be copied to clipboard." : "CalDAV 링크를 클립보드에 복사할 수 없습니다.", "Enable birthday calendar" : "생일 달력 활성화", "Show tasks in calendar" : "달력에 작업 보이기", "Enable simplified editor" : "간편한 편집기 활성화", + "Limit the number of events displayed in the monthly view" : "월간 보기에서 표시되는 일정의 수 제한", "Show weekends" : "공휴일 보기", "Show week numbers" : "주 번호 보이기", "Time increments" : "시간 단위", "Default reminder" : "기본 알림", "Copy primary CalDAV address" : "주 CalDAV 주소 복사하기", "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV 주소 복사하기", - "Personal availability settings" : "개인 별 가능한 시간대 설정", + "Personal availability settings" : "개인별 시간 조율 설정", "Show keyboard shortcuts" : "키보드 단축키 표시", - "No reminder" : "알림 없음", - "CalDAV link copied to clipboard." : "CalDAV 링크를 클립보드에 복사했습니다.", - "CalDAV link could not be copied to clipboard." : "CalDAV 링크를 클립보드에 복사할 수 없습니다.", + "Appointment schedule successfully created" : "약속 일정이 성공적으로 생성되었습니다", + "Appointment schedule successfully updated" : "약속 일정이 성공적으로 갱신되었습니다", + "_{duration} minute_::_{duration} minutes_" : ["{duration}분"], + "0 minutes" : "0분", + "_{duration} hour_::_{duration} hours_" : ["{duration}시간"], + "_{duration} day_::_{duration} days_" : ["{duration}일"], + "_{duration} week_::_{duration} weeks_" : ["{duration}주"], + "_{duration} month_::_{duration} months_" : ["{duration}개월"], + "_{duration} year_::_{duration} years_" : ["{duration}년"], + "To configure appointments, add your email address in personal settings." : "약속을 설정하기 위해 개인 설정에서 이메일 주소를 추가하십시오", + "Public – shown on the profile page" : "공개 - 프로필 페이지에 표시됩니다", + "Private – only accessible via secret link" : "개인 - 비밀 링크를 통해서만 접근할 수 있습니다", + "Appointment schedule saved" : "약속 일정이 저장되었습니다", + "Create appointment schedule" : "약속 일정 생성", + "Edit appointment schedule" : "약속 일정 수정", + "Update" : "업데이트", + "Appointment name" : "약속 이름", "Location" : "위치", + "Create a Talk room" : "대화방 만들기", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "예약된 약속마다 고유의 링크가 생성되며 이는 확인 이메일을 통해 전송됩니다", "Description" : "설명", "Visibility" : "표시 여부", "Duration" : "길이", - "to" : "받는 사람", + "Increments" : "시간 단위", + "Additional calendars to check for conflicts" : "충돌 확인을 위한 별도의 달력", + "Pick time ranges where appointments are allowed" : "약속을 잡을 수 있는 시간의 범위를 지정하십시오", + "to" : "부터", "Delete slot" : "시간대 삭제", + "No times set" : "지정된 시간 없음", "Add" : "추가", "Monday" : "월요일", "Tuesday" : "화요일", @@ -153,10 +231,25 @@ OC.L10N.register( "Friday" : "금요일", "Saturday" : "토요일", "Sunday" : "일요일", - "Save" : "저장", - "Update" : "업데이트", + "Add time before and after the event" : "일정 이전 및 이후 시간을 추가하십시오", + "Before the event" : "일정 전", + "After the event" : "일정 후", + "Planning restrictions" : "계획 수립 제한 사항", + "Minimum time before next available slot" : "다음 약속까지 최소 여유 시간", + "Max slots per day" : "일일 최대 약속 수", + "Limit how far in the future appointments can be booked" : "약속을 잡을 수 있는 날짜 범위를 제한합니다", + "Please confirm your reservation" : "예약을 확인하십시오", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "세부사항을 포함한 이메일을 전송했습니다. 이메일을 통해 약속을 확인하십시오. 이제 이 창을 닫아도 됩니다.", + "Your name" : "내 이름", "Your email address" : "내 이메일 주소", - "Reminder" : "알림", + "Please share anything that will help prepare for our meeting" : "약속 준비에 필요한 모든 사항을 공유해 주십시오", + "Could not book the appointment. Please try again later or contact the organizer." : "예약할 수 없음. 잠시 후 다시 시도하거나 중재자에게 문의하십시오.", + "Back" : "뒤로", + "Book appointment" : "약속 잡기", + "Create a new conversation" : "새 대화 만들기", + "Select conversation" : "대화 선택", + "on" : "다음 시간/위치에: ", + "at" : "다음 시간/위치에: ", "before at" : "다음 이전에: ", "Notification" : "알림", "Email" : "이메일", @@ -167,86 +260,113 @@ OC.L10N.register( "Edit time" : "시간 편집", "Save time" : "시간 저장", "Remove reminder" : "알림 삭제", - "on" : "다음 시간/위치에: ", - "at" : "다음 시간/위치에: ", - "+ Add reminder" : "+ 알림 생성", "Add reminder" : "알림 추가", - "_second_::_seconds_" : ["초"], - "_minute_::_minutes_" : ["분"], - "_hour_::_hours_" : ["시"], - "_day_::_days_" : ["일"], - "_week_::_weeks_" : ["주"], + "seconds" : "초", + "minutes" : "분", + "hours" : "시간", + "days" : "일", + "weeks" : "주", + "Choose a file to add as attachment" : "첨부할 파일을 선택하세요.", + "Choose a file to share as a link" : "공유할 링크 파일을 선택하세요.", + "Attachment {name} already exist!" : "첨부파일 {name}은(는) 이미 존재합니다", + "Could not upload attachment(s)" : "첨부파일을 업로드할 수 없음", + "Proceed" : "진행", + "No attachments" : "첨부파일 없음", + "Add from Files" : "파일 앱에서 추가하기", + "Upload from device" : "이 장치에서 업로드하다", + "Delete file" : "파일 삭제", + "Confirmation" : "확인", + "_{count} attachment_::_{count} attachments_" : ["{count}개의 첨부파일"], + "Suggested" : "제안됨", "Available" : "사용 가능", + "Invitation accepted" : "초대가 수락됨", + "Accepted {organizerName}'s invitation" : "{organizerName}의 초대가 수락됨", + "Participation marked as tentative" : "잠정적인 참여", + "Invitation is delegated" : "초대가 위임됨", "Not available" : "사용할 수 없음", + "Invitation declined" : "초대가 거절됨", + "Declined {organizerName}'s invitation" : "{organizerName}의 초대가 거절됨", + "Checking availability" : "시간 조율 설정 확인 중", + "Has not responded to {organizerName}'s invitation yet" : "{organizerName}의 초대에 아직 응답하지 않음", + "{organizer} (organizer)" : "{organizer} (주회자)", + "Availability of attendees, resources and rooms" : "참석 가능한 시간대 및 자원, 호실 사용 가능 여부 확인", + "Out of office" : "자리에 없음", + "Attendees:" : "참석자:", + "Done" : "완료", + "Room name" : "방 번호", "Free" : "바쁘지 않음", "Busy (tentative)" : "바쁨 (잠정적으로)", "Busy" : "바쁨", - "Out of office" : "자리에 없음", "Unknown" : "알 수 없음", + "The invitation has been accepted successfully." : "초대가 성공적으로 수락됨", + "Failed to accept the invitation." : "초대를 수락할 수 없음", + "The invitation has been declined successfully." : "초대가 성공적으로 거절됨", + "Failed to decline the invitation." : "초대를 거절할 수 없음", + "Your participation has been marked as tentative." : "내 참여가 잠정 참여로 표시됐습니다.", + "Failed to set the participation status to tentative." : "잠정 참여로 지정하기 실패", "Accept" : "수락", "Decline" : "거절", "Tentative" : "예정됨", - "Create Talk room for this event" : "이 일정에 대한 대화방 만들기", - "Show busy times" : "바쁜 시간 보이기", - "No attendees yet" : "아직 참석자가 없습니다", + "No attendees yet" : "아직 참석자가 없습니다.", + "Successfully appended link to talk room to location." : "위치에 대화방 링크를 성공적으로 추가함", + "Successfully appended link to talk room to description." : "설명에 대화방 링크를 성공적으로 추가함", "Error creating Talk room" : "대화방 생성 오류", - "Send email" : "이메일 보내기", - "Chairperson" : "회장", - "Required participant" : "필수 참여자", - "Optional participant" : "추가 참여자", - "Non-participant" : "미참여자", + "Attendees" : "참석자", + "Remove group" : "그룹 지우기", "Remove attendee" : "참석자 삭제", - "Search for emails, users or contacts" : "이메일, 사용자 혹은 연락처 검색", + "Chairperson" : "회장", + "Required participant" : "필수 참가자", + "Optional participant" : "선택적 참가자", + "Non-participant" : "미참가자", + "_%n member_::_%n members_" : ["%n명"], "No match found" : "일치하는 항목 없음", + "Note that members of circles get invited but are not synced yet." : "서클의 회원이 초대되었으나 아직 동기화되지 않았습니다.", + "(organizer)" : "(주최자)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "초대장을 보내거나 답장을 관리하려면, [linkopen] 개인 설정에서 이메일 주소를 추가하십시오[linkclose].", "Remove color" : "색깔 삭제", "Event title" : "일정 제목", - "All day" : "하루 종일", "Cannot modify all-day setting for events that are part of a recurrence-set." : "반복하는 이 일정의 \"하루 종일\" 여부를 수정할 수 없습니다.", - "from {startDate}" : "{startDate} 부터", - "from {startDate} at {startTime}" : "{startDate} {startTime} 부터", - "to {endDate}" : "{endDate} 까지", - "to {endDate} at {endTime}" : "{endDate} {endTime} 까지", + "From" : "시작", + "To" : "종료", "Repeat" : "반복", - "End repeat" : "반복 종료", + "_time_::_times_" : ["회"], "never" : "없음", + "on date" : "지정한 날짜에", "after" : "이후", - "_time_::_times_" : ["회"], + "End repeat" : "반복 종료", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "이 일정은 특정 반복 일정의 예외로 지정되어 있습니다. 이 일정에 다른 반복 규칙을 지정할 수 없습니다.", - "first" : "첫번째", - "third" : "세번째", - "fourth" : "네번째", - "fifth" : "다섯번째", - "second to last" : "끝에서 두번째", - "last" : "마지막", + "first" : "첫 번째", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "반복 규칙은 이번 및 그 이후의 일정에만 적용됩니다.", "Repeat every" : "반복 주기", + "By day of the month" : "일자 지정", + "On the" : "조건 지정", + "_day_::_days_" : ["일"], + "_week_::_weeks_" : ["주"], "_month_::_months_" : ["개월"], "_year_::_years_" : ["년"], "weekday" : "주중", "weekend day" : "주말", - "No recurrence" : "반복 없음", + "Does not repeat" : "반복하지 않음", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud에서 이 일정의 반복 설정 방식을 완전히 지원하지 않습니다. 반복 설정을 편집할 경우, 현재의 반복 설정이 사라질 수 있습니다.", - "No rooms or resources yet" : "방 혹은 비품 없음", + "No rooms or resources yet" : "호실 혹은 비품 없음", + "Resources" : "자원", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity}석"], + "Add resource" : "비품 추가", "Has a projector" : "프로젝터 있음", "Has a whiteboard" : "화이트보드 있음", "Wheelchair accessible" : "휠체어 사용 가능", "Remove resource" : "비품 삭제", - "Projector" : "프로젝터", - "Whiteboard" : "화이트보드", - "Search for resources or rooms" : "비품 혹은 방 검색", + "Search for resources or rooms" : "비품 혹은 호실 검색", "available" : "사용 가능", "unavailable" : "사용 불가", - "Room type" : "방 종류", + "Projector" : "프로젝터", + "Whiteboard" : "화이트보드", + "Room type" : "호실 종류", "Minimum seating capacity" : "최소 좌석 수", - "More" : "더 보기", - "Update this occurrence" : "이 일정 업데이트", "Update this and all future" : "이후 모든 일정 업데이트", + "Update this occurrence" : "이 일정 업데이트", "Public calendar does not exist" : "공용 달력이 존재하지 않음", "Maybe the share was deleted or has expired?" : "공유가 삭제되었거나 만료되었을 수 있습니다.", - "Please select a time zone:" : "시간대를 선택해 주십시오: ", - "Pick a time" : "시간 선택", - "Pick a date" : "날짜 선택", "from {formattedDate}" : "{formattedDate} 부터", "to {formattedDate}" : "{formattedDate} 까지", "on {formattedDate}" : "{formattedDate}에", @@ -254,35 +374,61 @@ OC.L10N.register( "to {formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime} 까지", "on {formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime} 에", "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", - "Please enter a valid date" : "올바른 날짜를 입력하십시오", - "Please enter a valid date and time" : "올바른 날짜와 시간을 입력하십시오", + "Please enter a valid date" : "올바른 날짜를 입력하세요.", + "Please enter a valid date and time" : "올바른 날짜와 시간을 입력하세요.", + "Please select a time zone:" : "시간대를 선택하세요.", + "Pick a time" : "시간 선택", + "Pick a date" : "날짜 선택", "Type to search time zone" : "시간대를 찾기 위해 입력하세요.", "Global" : "국제", + "Holidays in {region}" : "{region}의 휴일", + "An error occurred, unable to read public calendars." : "오류가 발생하여 공개 달력을 읽을 수 없습니다.", + "An error occurred, unable to subscribe to calendar." : "오류가 발생하여 달력을 구독할 수 없습니다.", + "Public holiday calendars" : "공개 휴일 달력", + "Public calendars" : "공개 달력", + "No valid public calendars configured" : "설정된 유효한 달력 없음", + "Speak to the server administrator to resolve this issue." : "이 문제를 해결하기 위해 서버 관리자에게 문의하십시오", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "공개 휴일 달력은 Thunderbird에서 제공합니다. 달력의 데이터는 {website}(으)로부터 다운로드합니다", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "이 공개 달력은 서버 관리자의 추천입니다. 달력 데이터는 각각의 웹사이트로부터 다운로드됩니다.", + "By {authors}" : "{authors} 작성", + "Subscribed" : "구독함", + "Subscribe" : "구독", + "Could not fetch slots" : "슬롯을 불러올 수 없음", + "Select a date" : "날짜 선택", + "Select slot" : "슬롯 선택", + "No slots available" : "사용 가능한 슬롯 없음", + "The slot for your appointment has been confirmed" : "약속에 대한 슬롯이 확인되었습니다", + "Appointment Details:" : "약속에 대한 상세 정보:", "Time:" : "시간:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "감사합니다. {startDate}에서 {endDate}까지의 예약이 확인되었습니다.", + "Book another appointment:" : "다른 약속 예약하기:", + "See all available slots" : "사용 가능한 슬롯 모두 보기", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "{starDate}에서 {endDate}까지의 슬롯은 더 이상 사용할 수 없습니다.", + "Please book a different slot:" : "다른 슬롯에 예약하십시오:", + "Book an appointment with {name}" : "{name}님과의 약속 잡기", "Personal" : "개인", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "자동으로 감지된 귀하의 시간대가 UTC입니다.\n이 웹 브라우저의 보안 설정이 원인일 수 있습니다.\n달력 설정에서 수동으로 시간대를 설정해 주십시오.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "설정된 시간대 ({timezoneId}) 을(를) 찾을 수 없습니다. UTC로 설정됩니다.\n설정에서 시간대를 변경하고 이 문제를 보고해 주십시오.", - "No more events today" : "오늘 더 이상 일정이 없음", - "No upcoming events" : "다가오는 일정 없음", - "Create a new event" : "새 일정 만들기", - "[Today]" : "[오늘]", - "[Tomorrow]" : "[내일]", - "[Yesterday]" : "[어제]", + "Edit event" : "일정 편집", "Event does not exist" : "일정이 존재하지 않음", + "Duplicate" : "복제", "Delete this occurrence" : "이 일정 삭제", "Delete this and all future" : "이후 모든 일정 삭제", - "Details" : "자세한 정보", - "Attendees" : "참석자", - "Resources" : "자원", + "All day" : "하루 종일", + "Deny access" : "접근 거부", + "Invite" : "초대", + "_User requires access to your file_::_Users require access to your file_" : ["사용자가 내 파일에 대한 접근을 요구합니다"], + "Untitled event" : "제목없는 일정", "Close" : "닫기", - "Show more details" : "더 자세히 보기", "Subscribe to {name}" : "{name} 구독", + "Export {name}" : "{name} 내보내기", "Anniversary" : "기념일", "Appointment" : "일정", "Business" : "사업", "Education" : "교육", "Holiday" : "휴일", "Meeting" : "회의", + "Miscellaneous" : "기타", "Non-working hours" : "비번인 시간", "Not in office" : "자리에 없음", "Phone call" : "전화 연락", @@ -299,10 +445,9 @@ OC.L10N.register( "{time} before the event ends" : "일정 종료 {time} 전", "{time} after the event starts" : "일정 시작 {time} 후", "{time} after the event ends" : "일정 종료 {time} 후", - "on {time}" : "{time}에", - "on {time} ({timezoneId})" : "{time} ({timezoneId})에", + "on {time}" : "{time} 후", + "on {time} ({timezoneId})" : "{time} ({timezoneId}) 후", "Week {number} of {year}" : "{year}년 제 {number}주", - "Does not repeat" : "반복하지 않음", "Daily" : "매일", "Weekly" : "매주", "Monthly" : "매달", @@ -312,19 +457,27 @@ OC.L10N.register( "_Every %n month_::_Every %n months_" : ["%n 개월 마다"], "_Every %n year_::_Every %n years_" : ["%n 년 마다"], "_on {weekday}_::_on {weekdays}_" : ["{weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["{dayOfMonthList}일"], + "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber} {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "{monthNames} {dayOfMonthList}일", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames} {ordinalNumber} {byDaySet}", "until {untilDate}" : "{untilDate} 까지", - "Untitled event" : "제목없는 일정", + "_%n time_::_%n times_" : ["%n회"], + "second" : "두 번째", + "third" : "세 번째", + "fourth" : "네 번째", + "fifth" : "다섯 번째", + "second to last" : "끝에서 두 번째", + "last" : "마지막", "Untitled task" : "제목없는 작업", - "Please ask your administrator to enable the Tasks App." : "관리자에게 Tasks 앱 활성화를 요청하십시오", - "Prev" : "이전", - "Next" : "다음", - "Prev year" : "이전 년도", - "Next year" : "다음 년도", - "Year" : "년", + "Please ask your administrator to enable the Tasks App." : "관리자에게 Tasks 앱 활성화를 요청하세요.", "%n more" : "%n 더", "No events to display" : "표시할 일정 없음", "_+%n more_::_+%n more_" : ["+%n 더"], "No events" : "일정 없음", + "Create a new event or change the visible time-range" : "새로운 일정을 만들거나 시간 범위를 변경하십시오", + "It might have been deleted, or there was a typo in a link" : "삭제되었거나 오타가 있는 링크입니다", + "It might have been deleted, or there was a typo in the link" : "삭제되었거나 오타가 있는 링크입니다", "Meeting room" : "회의실", "Lecture hall" : "강의실", "Seminar room" : "세미나실", @@ -334,7 +487,7 @@ OC.L10N.register( "When shared hide this event" : "일정 공유하지 않음", "The visibility of this event in shared calendars." : "공유 달력에서 이 일정의 표시 여부", "Add a location" : "위치 추가", - "Add a description" : "설명 추가", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "설명을 입력하세요\n\n- 회의 목적\n- 안건 목록\n- 참석자들이 준비해야 할 것들", "Status" : "상태", "Confirmed" : "확인됨", "Canceled" : "취소됨", @@ -344,91 +497,20 @@ OC.L10N.register( "Categories help you to structure and organize your events." : "카테고리는 일정을 만들고 조직할 때 도움이 됩니다.", "Search or add categories" : "카테고리를 찾거나 추가하기", "Add this as a new category" : "새 카테고리로 추가", + "Custom color" : "사용자 지정 색상", "Special color of this event. Overrides the calendar-color." : "이 일정만의 색깔. 달력 색깔을 무시함.", - "Chat room for event" : "일정에 대한 대화방", + "Error while sharing file" : "파일 공유하는 도중 오류", + "Error while sharing file with user" : "사용자와 파일을 공유하는 중 오류 발생", + "Attachment {fileName} already exists!" : "첨부파일 {name}은(는) 이미 존재합니다", + "An error occurred during getting file information" : "정보를 불러오는 중 오류 발생", + "An error occurred, unable to delete the calendar." : "오류가 발생하여 달력을 삭제할 수 없습니다.", "Imported {filename}" : "{filename} 가져옴", - "Meditation" : "명상", - "Relaxing" : "휴식하기", - "Relax" : "휴식", - "Break" : "쉼", - "Commuting" : "이동 중", - "Shuttle" : "왕복", - "Presentation" : "프레젠테이션", - "Talk" : "토크", - "Camping" : "캠핑하기", - "Camp" : "캠핑", - "Movie" : "영화", - "Cinema" : "영화", - "Graduation" : "졸업", - "Review" : "리뷰", - "Baseball" : "야구", - "Meet" : "회의", - "Office" : "사무실", - "Mail" : "메일", - "Soccer" : "축구", - "Football" : "축구", - "Gaming" : "게임", - "Drive" : "드라이브", - "Driving" : "운전", - "Bicycle" : "자전거", - "Cycle" : "사이클", - "Biking" : "오토바이 타기", - "Bike" : "오토바이", - "Podcast" : "팟캐스트", - "Basketball" : "농구", - "Fishing" : "낚시", - "Hiking" : "등산하기", - "Hike" : "등산", - "Exhibition" : "전시회", - "Museum" : "박물관", - "Pilates" : "필라테스", - "Park" : "공원", - "Studying" : "공부", - "Doctor" : "의사", - "Health" : "건강", - "Dentist" : "치과", - "Hospital" : "병원", - "Interview" : "면접", - "Training" : "훈련", - "Practice" : "연습", - "Sports" : "스포츠", - "Exercise" : "운동", - "Work out" : "운동", - "Working out" : "운동하기", - "Gym" : "체육관", - "Barber" : "이발소", - "Haircut" : "이발", - "Exam" : "시험", - "Written test" : "필기 시험", - "Working" : "일", - "Fireworks" : "불꽃놀이", - "Running" : "달리기", - "Go for a run" : "달리기", - "Marathon" : "마라톤", - "Video-conference" : "화상회의", - "Video-call" : "영상 통화", - "Video-chat" : "영상채팅", - "Video-meeting" : "영상회의", - "Call" : "전화", - "Calling" : "전화하기", - "Christmas" : "크리스마스", - "Conference" : "회의", - "Pizza" : "피자", - "Travelling" : "여행가기", - "Journey" : "탐험", - "Collaborate" : "협업", - "Lecture" : "강의", - "Seminar" : "세미나", - "Party" : "파티", - "Celebration" : "축하", - "Celebrate" : "축하하기", - "Birthday" : "생일", - "Shopping" : "쇼핑", - "Skate" : "스케이트", - "Skateboard" : "스케이트보드", - "Golf" : "골프", - "Dinner" : "저녁", - "Lunch" : "점심", - "User not found" : "사용자를 찾을 수 없음" + "This is an event reminder." : "일정에 대한 알림입니다.", + "Appointment not found" : "약속을 찾을 수 없음", + "User not found" : "사용자를 찾을 수 없음", + "Reminder" : "알림", + "+ Add reminder" : "+ 알림 생성", + "Suggestions" : "제안", + "Details" : "자세한 정보" }, "nplurals=1; plural=0;"); diff --git a/l10n/ko.json b/l10n/ko.json index 23a0d8d4bc07a158bfa304143fd86b9dfe1022ee..c36cf94ecaeaa1601922a8bd882612a6fc9afebe 100644 --- a/l10n/ko.json +++ b/l10n/ko.json @@ -1,148 +1,226 @@ { "translations": { + "Provided email-address is too long" : "입력한 이메일 주소가 너무 깁니다", "User-Session unexpectedly expired" : "사용자 세션이 예기치 않게 만료되었습니다.", "Provided email-address is not valid" : "지정한 파일이 사진이 아님", "%s has published the calendar »%s«" : "%s 님이 달력 \"%s\"을(를) 공개했습니다", "Unexpected error sending email. Please contact your administrator." : "재설정 메일을 보낼 수 없습니다. 관리자에게 문의하십시오.", - "Successfully sent email to %1$s" : "%1$s에게 이메일을 성공적으로 발송했습니다", + "Successfully sent email to %1$s" : "%1$s에게 이메일을 성공적으로 발송했습니다.", "Hello," : "안녕하세요,", "We wanted to inform you that %s has published the calendar »%s«." : "%s 님이 달력 \"%s\"을(를) 공개했음을 알려 드립니다.", "Open »%s«" : "%s 열기", "Cheers!" : "감사합니다!", "Upcoming events" : "곧 있을 일정", + "No more events today" : "오늘 더 이상 일정이 없음", + "No upcoming events" : "다가오는 일정 없음", + "More events" : "일정 더 보기", + "%1$s with %2$s" : "%2$s이(가) 참여하는 %1$s", + "Calendar" : "달력", + "New booking {booking}" : "새로운 예약 {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) 이(가) \"{config_display_name}\"을(를) {date_time}에 예약했습니다.", "Appointments" : "일정들", + "Schedule appointment \"%s\"" : "약속 \"%s\" 잡기", + "Schedule an appointment" : "약속 잡기", + "Prepare for %s" : "%s 준비", + "Your appointment \"%s\" with %s needs confirmation" : "%s님과의 약속 \"%s\"에 대해 확인이 필요합니다", + "Dear %s, please confirm your booking" : "%s님, 예약을 확인해 주십시오", "Confirm" : "확인", + "Appointment with:" : "약속 상대:", + "Description:" : "설명:", + "This confirmation link expires in %s hours." : "이 확인 링크는 %s시간 후 만료됩니다.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "약속을 취소하고자 할 경우 이 이메일 또는 프로필 페이지를 통해 조직 관리자에게 문의하십시오.", + "Your appointment \"%s\" with %s has been accepted" : "%s님과의 약속 \"%s\"이(가) 수락되었습니다", + "Dear %s, your booking has been accepted." : "%s님, 예약이 수락되었습니다.", + "Appointment for:" : "약속 주제:", "Date:" : "날짜:", + "You will receive a link with the confirmation email" : "링크가 동봉된 확인 이메일을 수신할 것입니다", "Where:" : "장소:", - "Description:" : "설명:", - "Calendar" : "달력", + "Comment:" : "댓글:", + "You have a new appointment booking \"%s\" from %s" : "%s님으로부터 약속 \"%s\"에 대한 새로운 예약이 있습니다", + "Dear %s, %s (%s) booked an appointment with you." : "%s님, %s(%s)님께서 귀하와 약속을 예약했습니다.", "A Calendar app for Nextcloud" : "Nextcloud 달력 앱", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "캘린더 앱은 Nextcloud의 CalDAV 서버용 사용자 인터페이스입니다. 다양한 장치의 일정을 Nextcloud와 쉽게 동기화하고 온라인으로 편집하세요. \n* 🚀 ** 다른 Nextcloud 앱과 통합! ** 현재 연락처 - 추가 예정 \n* 🌐 ** WebCal 지원! ** 캘린더에서 좋아하는 팀의 경기 일정을 보고 싶으세요? 문제 없어요! \n* 🙋 ** 모여라! ** 내 일정에 사람들 초대합니다\n* ⌚️ ** 한가함 / 바쁨! ** 언제 미팅이 가능할지 확인할 수 있습니다\n* ⏰ ** 알림! ** 브라우저나 이메일로 일정에 대한 알람을 받을 수 있습니다 \n* 🔍 검색! 쉽게 일정 찾기\n* ☑️ 작업! 마감일이있는 작업을 캘린더에서 바로 확인할 수 있습니다 \n* 🙈 ** 우리는 바퀴를 새로 만들지 않습니다! ** 위대한 [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js] (https : // github.com/mozilla-comm/ical.js) 그리고 [fullcalendar] (https://github.com/fullcalendar/fullcalendar) 라이브러리를 기반으로 합니다.", "Previous day" : "이전날", "Previous week" : "이전주", + "Previous year" : "전년도", "Previous month" : "이전달", "Next day" : "다음날", "Next week" : "다음주", + "Next year" : "다음 년도", "Next month" : "다음달", - "New event" : "새 일정", + "Create new event" : "새 일정 생성", + "Event" : "일정", "Today" : "오늘", "Day" : "일", "Week" : "주", "Month" : "달", + "Year" : "년", "List" : "목록", + "Appointment link was copied to clipboard" : "예약 링크가 클립보드에 복사되었습니다", + "Appointment link could not be copied to clipboard" : "예약 링크를 클립보드에 복사하지 못했습니다", "Preview" : "미리 보기", "Copy link" : "링크 복사", "Edit" : "수정", "Delete" : "삭제", - "Add new" : "새로 추가", - "Untitled calendar" : "제목없는 달력", - "Edit name" : "이름 편집", - "Saving name …" : "이름 저장 중...", - "Edit color" : "색 편집", - "Saving color …" : "색깔 저장 중...", - "Copy private link" : "개인 링크 주소 복사", - "Export" : "내보내기", - "Unshare from me" : "나의 공유 해제", + "Appointment schedules" : "약속 일정", + "Create new" : "새로 만들기", + "Disable calendar \"{calendar}\"" : "달력 \"{calendar}\" 비활성화", + "Disable untitled calendar" : "제목 없는 달력 비활성화", + "Enable calendar \"{calendar}\"" : "달력 \"{calendar}\" 활성화", + "Enable untitled calendar" : "제목 없는 달력 활성화", "An error occurred, unable to change visibility of the calendar." : "오류가 발생하여 달력의 공개 설정을 변경할 수 없습니다.", - "An error occurred, unable to delete the calendar." : "오류가 발생하여 달력을 삭제할 수 없습니다.", - "Calendar link copied to clipboard." : "달력의 링크를 클립보드에 복사되었습니다.", - "Calendar link could not be copied to clipboard." : "달력의 링크를 클립보드에 저장할 수 없습니다.", - "An error occurred, unable to rename the calendar." : "오류가 발생하여 달력의 이름을 변경할 수 없습니다.", - "An error occurred, unable to change the calendar's color." : "오류가 발생하여 달력의 색깔을 변경할 수 없습니다.", + "Untitled calendar" : "제목없는 달력", + "Shared with you by" : "다음을 이용해 나와 공유됨 : ", + "Edit and share calendar" : "달력 편집 및 공유", + "Edit calendar" : "달력 편집", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["{countdown}초 후 달력 공유 해제"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["{countdown}초 후 달력 삭제"], + "An error occurred, unable to create the calendar." : "오류가 발생하여 달력을 만들 수 없습니다.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "올바른 링크를 입력해 주십시오 (http://, https://, wdbcal://, 혹은 webcals:// 로 시작합니다.)", + "Calendars" : "달력", + "Add new" : "새로 추가", + "New calendar" : "새 달력", + "Name for new calendar" : "새 달력 이름", + "Creating calendar …" : "달력 생성중 …", + "New calendar with task list" : "작업 목록이 포함된 새 달력", + "New subscription from link (read-only)" : "링크를 통해 새로 구독하기 (읽기 전용)", + "Creating subscription …" : "구독 생성 ...", + "Add public holiday calendar" : "공개 휴일 달력 추가", + "Add custom public calendar" : "사용자 지정 공개 달력 추가", + "Calendar link copied to clipboard." : "달력의 링크를 클립보드에 복사했습니다.", + "Calendar link could not be copied to clipboard." : "달력의 링크를 클립보드에 복사할 수 없습니다.", + "Copy subscription link" : "구독 링크 복사", + "Copying link …" : "링크 복사중 …", + "Copied link" : "링크 복사됨", + "Could not copy link" : "링크를 복사할 수 없음", + "Export" : "내보내기", + "Untitled item" : "제목 없는 항목", + "Unknown calendar" : "제목 없는 달력", + "Could not load deleted calendars and objects" : "삭제된 달력과 요소들을 불러올 수 없음", + "Could not restore calendar or event" : "달력과 일정을 복구할 수 없음", + "Do you really want to empty the trash bin?" : "휴지통을 정말 비웁니까?", + "Empty trash bin" : "휴지통 비우기", + "Trash bin" : "휴지통", + "Loading deleted items." : "삭제된 항목 불러오는 중", + "You do not have any deleted items." : "삭제된 항목이 없습니다.", + "Name" : "이름", + "Deleted" : "삭제됨", + "Restore" : "복원", + "Delete permanently" : "영구히 삭제", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["휴지통에 있는 항목은 {numDays}일 수 완전히 삭제됩니다"], + "Could not update calendar order." : "달력 순서를 갱신할 수 없습니다.", + "Deck" : "덱", + "Hidden" : "숨겨짐", + "Internal link" : "내부 링크", + "A private link that can be used with external clients" : "개인 링크를 외부 클라이언트에서 사용할 수 있습니다", + "Copy internal link" : "내부 링크 복사", + "An error occurred, unable to publish calendar." : "오류 발생, 달력을 공개할 수 없음", + "An error occurred, unable to send email." : "오류 발생, 이메일로 보낼 수 없음", + "Embed code copied to clipboard." : "삽입 코드가 클립보드에 복사됨", + "Embed code could not be copied to clipboard." : "삽입 코드를 클립보드에 복사할 수 없음", + "Unpublishing calendar failed" : "달력 공개 중단 실패", "Share link" : "링크 공유", - "Publish calendar" : "달력 공개", - "Publishing calendar" : "달력 공개 중", "Copy public link" : "공개 링크 복사", "Send link to calendar via email" : "이메일로 달력 링크 보내기", "Enter one address" : "주소 입력", "Sending email …" : "이메일로 보내는중 …", - "Copy subscription link" : "구독 링크 복사", - "Copying link …" : "링크 복사중 …", - "Copied link" : "링크 복사됨", - "Could not copy link" : "링크를 복사할 수 없음", "Copy embedding code" : "삽입 코드 복사", "Copying code …" : "코드 복사중 …", "Copied code" : "코드 복사됨", "Could not copy code" : "코드를 복사할 수 없음", "Delete share link" : "공유 링크 삭제", "Deleting share link …" : "공유링크 삭제 …", - "An error occurred, unable to publish calendar." : "오류 발생, 달력을 공개할 수 없음", - "An error occurred, unable to send email." : "오류 발생, 이메일로 보낼 수 없음", - "Embed code copied to clipboard." : "삽입 코드가 클립보드에 복사됨", - "Embed code could not be copied to clipboard." : "삽입 코드를 클립보드에 복사할 수 없음", - "Unpublishing calendar failed" : "달력 공개 중단 실패", - "Share with users or groups" : "사용자 및 그룹과 공유", - "No users or groups" : "사용자나 그룹 없음", + "An error occurred while unsharing the calendar." : "달력 공유 해제 중 오류 발생", + "An error occurred, unable to change the permission of the share." : "오류가 발생하여 공유 권한을 변경할 수 없습니다.", "can edit" : "편집 가능", "Unshare with {displayName}" : "{displayName}과 공유 중단", - "An error occurred, unable to change the unshare the calendar." : "오류가 발생하여 달력의 공개 중단을 변경할 수 없습니다.", - "An error occurred, unable to change the permission of the share." : "오류가 발생하여 공유 권한을 변경할 수 없습니다.", - "+ New calendar" : "+ 새 달력", - "New calendar" : "새 달력", - "Creating calendar …" : "달력 생성중 …", - "New calendar with task list" : "작업 목록이 포함된 새 달력", - "New subscription from link (read-only)" : "링크를 통해 새로 구독하기 (읽기 전용)", - "Creating subscription …" : "구독 생성 ...", - "An error occurred, unable to create the calendar." : "오류가 발생하여 달력을 만들 수 없습니다.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "올바른 링크를 입력해 주십시오 (http://, https://, wdbcal://, 혹은 webcals:// 로 시작합니다.)", - "Trash bin" : "휴지통", - "Loading deleted elements." : "삭제된 요소를 불러오는 중.", - "You do not have any deleted elements." : "삭제된 요소가 없습니다.", - "Name" : "이름", - "Deleted" : "삭제됨", - "Restore" : "복원", - "Delete permanently" : "영구히 삭제", - "Empty trash bin" : "휴지통 비우기", - "Untitled element" : "제목없는 요소", - "Could not load deleted calendars and objects" : "삭제된 달력과 요소들을 불러올 수 없음", - "Could not restore calendar or event" : "달력과 일정을 복구할 수 없음", - "Do you really want to empty the trash bin?" : "휴지통을 정말 비웁니까?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["휴지통에 있는 요소는 {numDays} 후 삭제됩니다."], - "Could not update calendar order." : "달력 순서를 갱신할 수 없습니다.", + "Share with users or groups" : "사용자 및 그룹과 공유", + "No users or groups" : "사용자나 그룹 없음", + "Failed to save calendar name and color" : "달력 이름 및 색상 저장 실패", + "Calendar name …" : "달력 이름 ...", + "Share calendar" : "달력 공유", + "Unshare from me" : "나의 공유 해제", + "Save" : "저장", "Import calendars" : "달력 가져오기", "Please select a calendar to import into …" : "다음으로 가져올 달력을 선택해 주십시오 ...", "Filename" : "파일 이름", "Calendar to import into" : "다음으로 가져올 달력", "Cancel" : "취소", "_Import calendar_::_Import calendars_" : ["달력 가져오기"], + "Select the default location for attachments" : "첨부파일에 대한 기본 위치를 지정하십시오", + "Invalid location selected" : "잘못된 위치가 선택됨", + "Attachments folder successfully saved." : "첨부파일 폴더가 성공적으로 저장됨.", + "Error on saving attachments folder." : "첨부파일 폴더 설정 저장 중 오류 발생", + "Default attachments location" : "기본 첨부파일 위치", "{filename} could not be parsed" : "{filename} 분석할 수 없음", "No valid files found, aborting import" : "올바른 파일을 발견할 수 없음, 가져오기 취소", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n개의 일정을 성공적으로 가져옴"], "Import partially failed. Imported {accepted} out of {total}." : "가져오기가 부분적으로 실패했습니다. {total} 중 {accepted} 가져옴.", "Automatic" : "자동", "Automatic ({detected})" : "자동 ({detected})", "New setting was not saved successfully." : "새로운 설정이 저장되지 않았습니다.", - "or" : "또는", + "Navigation" : "탐색", "Previous period" : "이전 기간", "Next period" : "다음 기간", "Views" : "보기", "Day view" : "일간", "Week view" : "주간", "Month view" : "월간", + "Year view" : "연도별 보기", "List view" : "목록 보기", "Actions" : "동작", "Create event" : "일정 만들기", "Show shortcuts" : "단축키 표시", + "Editor" : "편집기", + "Close editor" : "편집기 닫기", + "Save edited event" : "수정된 일정 저장", + "Delete edited event" : "수정된 일정 삭제", + "Duplicate event" : "일정 복제", + "Shortcut overview" : "바로가기 개요", + "or" : "또는", + "Calendar settings" : "달력 설정", + "No reminder" : "알림 없음", + "CalDAV link copied to clipboard." : "CalDAV 링크를 클립보드에 복사했습니다.", + "CalDAV link could not be copied to clipboard." : "CalDAV 링크를 클립보드에 복사할 수 없습니다.", "Enable birthday calendar" : "생일 달력 활성화", "Show tasks in calendar" : "달력에 작업 보이기", "Enable simplified editor" : "간편한 편집기 활성화", + "Limit the number of events displayed in the monthly view" : "월간 보기에서 표시되는 일정의 수 제한", "Show weekends" : "공휴일 보기", "Show week numbers" : "주 번호 보이기", "Time increments" : "시간 단위", "Default reminder" : "기본 알림", "Copy primary CalDAV address" : "주 CalDAV 주소 복사하기", "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV 주소 복사하기", - "Personal availability settings" : "개인 별 가능한 시간대 설정", + "Personal availability settings" : "개인별 시간 조율 설정", "Show keyboard shortcuts" : "키보드 단축키 표시", - "No reminder" : "알림 없음", - "CalDAV link copied to clipboard." : "CalDAV 링크를 클립보드에 복사했습니다.", - "CalDAV link could not be copied to clipboard." : "CalDAV 링크를 클립보드에 복사할 수 없습니다.", + "Appointment schedule successfully created" : "약속 일정이 성공적으로 생성되었습니다", + "Appointment schedule successfully updated" : "약속 일정이 성공적으로 갱신되었습니다", + "_{duration} minute_::_{duration} minutes_" : ["{duration}분"], + "0 minutes" : "0분", + "_{duration} hour_::_{duration} hours_" : ["{duration}시간"], + "_{duration} day_::_{duration} days_" : ["{duration}일"], + "_{duration} week_::_{duration} weeks_" : ["{duration}주"], + "_{duration} month_::_{duration} months_" : ["{duration}개월"], + "_{duration} year_::_{duration} years_" : ["{duration}년"], + "To configure appointments, add your email address in personal settings." : "약속을 설정하기 위해 개인 설정에서 이메일 주소를 추가하십시오", + "Public – shown on the profile page" : "공개 - 프로필 페이지에 표시됩니다", + "Private – only accessible via secret link" : "개인 - 비밀 링크를 통해서만 접근할 수 있습니다", + "Appointment schedule saved" : "약속 일정이 저장되었습니다", + "Create appointment schedule" : "약속 일정 생성", + "Edit appointment schedule" : "약속 일정 수정", + "Update" : "업데이트", + "Appointment name" : "약속 이름", "Location" : "위치", + "Create a Talk room" : "대화방 만들기", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "예약된 약속마다 고유의 링크가 생성되며 이는 확인 이메일을 통해 전송됩니다", "Description" : "설명", "Visibility" : "표시 여부", "Duration" : "길이", - "to" : "받는 사람", + "Increments" : "시간 단위", + "Additional calendars to check for conflicts" : "충돌 확인을 위한 별도의 달력", + "Pick time ranges where appointments are allowed" : "약속을 잡을 수 있는 시간의 범위를 지정하십시오", + "to" : "부터", "Delete slot" : "시간대 삭제", + "No times set" : "지정된 시간 없음", "Add" : "추가", "Monday" : "월요일", "Tuesday" : "화요일", @@ -151,10 +229,25 @@ "Friday" : "금요일", "Saturday" : "토요일", "Sunday" : "일요일", - "Save" : "저장", - "Update" : "업데이트", + "Add time before and after the event" : "일정 이전 및 이후 시간을 추가하십시오", + "Before the event" : "일정 전", + "After the event" : "일정 후", + "Planning restrictions" : "계획 수립 제한 사항", + "Minimum time before next available slot" : "다음 약속까지 최소 여유 시간", + "Max slots per day" : "일일 최대 약속 수", + "Limit how far in the future appointments can be booked" : "약속을 잡을 수 있는 날짜 범위를 제한합니다", + "Please confirm your reservation" : "예약을 확인하십시오", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "세부사항을 포함한 이메일을 전송했습니다. 이메일을 통해 약속을 확인하십시오. 이제 이 창을 닫아도 됩니다.", + "Your name" : "내 이름", "Your email address" : "내 이메일 주소", - "Reminder" : "알림", + "Please share anything that will help prepare for our meeting" : "약속 준비에 필요한 모든 사항을 공유해 주십시오", + "Could not book the appointment. Please try again later or contact the organizer." : "예약할 수 없음. 잠시 후 다시 시도하거나 중재자에게 문의하십시오.", + "Back" : "뒤로", + "Book appointment" : "약속 잡기", + "Create a new conversation" : "새 대화 만들기", + "Select conversation" : "대화 선택", + "on" : "다음 시간/위치에: ", + "at" : "다음 시간/위치에: ", "before at" : "다음 이전에: ", "Notification" : "알림", "Email" : "이메일", @@ -165,86 +258,113 @@ "Edit time" : "시간 편집", "Save time" : "시간 저장", "Remove reminder" : "알림 삭제", - "on" : "다음 시간/위치에: ", - "at" : "다음 시간/위치에: ", - "+ Add reminder" : "+ 알림 생성", "Add reminder" : "알림 추가", - "_second_::_seconds_" : ["초"], - "_minute_::_minutes_" : ["분"], - "_hour_::_hours_" : ["시"], - "_day_::_days_" : ["일"], - "_week_::_weeks_" : ["주"], + "seconds" : "초", + "minutes" : "분", + "hours" : "시간", + "days" : "일", + "weeks" : "주", + "Choose a file to add as attachment" : "첨부할 파일을 선택하세요.", + "Choose a file to share as a link" : "공유할 링크 파일을 선택하세요.", + "Attachment {name} already exist!" : "첨부파일 {name}은(는) 이미 존재합니다", + "Could not upload attachment(s)" : "첨부파일을 업로드할 수 없음", + "Proceed" : "진행", + "No attachments" : "첨부파일 없음", + "Add from Files" : "파일 앱에서 추가하기", + "Upload from device" : "이 장치에서 업로드하다", + "Delete file" : "파일 삭제", + "Confirmation" : "확인", + "_{count} attachment_::_{count} attachments_" : ["{count}개의 첨부파일"], + "Suggested" : "제안됨", "Available" : "사용 가능", + "Invitation accepted" : "초대가 수락됨", + "Accepted {organizerName}'s invitation" : "{organizerName}의 초대가 수락됨", + "Participation marked as tentative" : "잠정적인 참여", + "Invitation is delegated" : "초대가 위임됨", "Not available" : "사용할 수 없음", + "Invitation declined" : "초대가 거절됨", + "Declined {organizerName}'s invitation" : "{organizerName}의 초대가 거절됨", + "Checking availability" : "시간 조율 설정 확인 중", + "Has not responded to {organizerName}'s invitation yet" : "{organizerName}의 초대에 아직 응답하지 않음", + "{organizer} (organizer)" : "{organizer} (주회자)", + "Availability of attendees, resources and rooms" : "참석 가능한 시간대 및 자원, 호실 사용 가능 여부 확인", + "Out of office" : "자리에 없음", + "Attendees:" : "참석자:", + "Done" : "완료", + "Room name" : "방 번호", "Free" : "바쁘지 않음", "Busy (tentative)" : "바쁨 (잠정적으로)", "Busy" : "바쁨", - "Out of office" : "자리에 없음", "Unknown" : "알 수 없음", + "The invitation has been accepted successfully." : "초대가 성공적으로 수락됨", + "Failed to accept the invitation." : "초대를 수락할 수 없음", + "The invitation has been declined successfully." : "초대가 성공적으로 거절됨", + "Failed to decline the invitation." : "초대를 거절할 수 없음", + "Your participation has been marked as tentative." : "내 참여가 잠정 참여로 표시됐습니다.", + "Failed to set the participation status to tentative." : "잠정 참여로 지정하기 실패", "Accept" : "수락", "Decline" : "거절", "Tentative" : "예정됨", - "Create Talk room for this event" : "이 일정에 대한 대화방 만들기", - "Show busy times" : "바쁜 시간 보이기", - "No attendees yet" : "아직 참석자가 없습니다", + "No attendees yet" : "아직 참석자가 없습니다.", + "Successfully appended link to talk room to location." : "위치에 대화방 링크를 성공적으로 추가함", + "Successfully appended link to talk room to description." : "설명에 대화방 링크를 성공적으로 추가함", "Error creating Talk room" : "대화방 생성 오류", - "Send email" : "이메일 보내기", - "Chairperson" : "회장", - "Required participant" : "필수 참여자", - "Optional participant" : "추가 참여자", - "Non-participant" : "미참여자", + "Attendees" : "참석자", + "Remove group" : "그룹 지우기", "Remove attendee" : "참석자 삭제", - "Search for emails, users or contacts" : "이메일, 사용자 혹은 연락처 검색", + "Chairperson" : "회장", + "Required participant" : "필수 참가자", + "Optional participant" : "선택적 참가자", + "Non-participant" : "미참가자", + "_%n member_::_%n members_" : ["%n명"], "No match found" : "일치하는 항목 없음", + "Note that members of circles get invited but are not synced yet." : "서클의 회원이 초대되었으나 아직 동기화되지 않았습니다.", + "(organizer)" : "(주최자)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "초대장을 보내거나 답장을 관리하려면, [linkopen] 개인 설정에서 이메일 주소를 추가하십시오[linkclose].", "Remove color" : "색깔 삭제", "Event title" : "일정 제목", - "All day" : "하루 종일", "Cannot modify all-day setting for events that are part of a recurrence-set." : "반복하는 이 일정의 \"하루 종일\" 여부를 수정할 수 없습니다.", - "from {startDate}" : "{startDate} 부터", - "from {startDate} at {startTime}" : "{startDate} {startTime} 부터", - "to {endDate}" : "{endDate} 까지", - "to {endDate} at {endTime}" : "{endDate} {endTime} 까지", + "From" : "시작", + "To" : "종료", "Repeat" : "반복", - "End repeat" : "반복 종료", + "_time_::_times_" : ["회"], "never" : "없음", + "on date" : "지정한 날짜에", "after" : "이후", - "_time_::_times_" : ["회"], + "End repeat" : "반복 종료", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "이 일정은 특정 반복 일정의 예외로 지정되어 있습니다. 이 일정에 다른 반복 규칙을 지정할 수 없습니다.", - "first" : "첫번째", - "third" : "세번째", - "fourth" : "네번째", - "fifth" : "다섯번째", - "second to last" : "끝에서 두번째", - "last" : "마지막", + "first" : "첫 번째", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "반복 규칙은 이번 및 그 이후의 일정에만 적용됩니다.", "Repeat every" : "반복 주기", + "By day of the month" : "일자 지정", + "On the" : "조건 지정", + "_day_::_days_" : ["일"], + "_week_::_weeks_" : ["주"], "_month_::_months_" : ["개월"], "_year_::_years_" : ["년"], "weekday" : "주중", "weekend day" : "주말", - "No recurrence" : "반복 없음", + "Does not repeat" : "반복하지 않음", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud에서 이 일정의 반복 설정 방식을 완전히 지원하지 않습니다. 반복 설정을 편집할 경우, 현재의 반복 설정이 사라질 수 있습니다.", - "No rooms or resources yet" : "방 혹은 비품 없음", + "No rooms or resources yet" : "호실 혹은 비품 없음", + "Resources" : "자원", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity}석"], + "Add resource" : "비품 추가", "Has a projector" : "프로젝터 있음", "Has a whiteboard" : "화이트보드 있음", "Wheelchair accessible" : "휠체어 사용 가능", "Remove resource" : "비품 삭제", - "Projector" : "프로젝터", - "Whiteboard" : "화이트보드", - "Search for resources or rooms" : "비품 혹은 방 검색", + "Search for resources or rooms" : "비품 혹은 호실 검색", "available" : "사용 가능", "unavailable" : "사용 불가", - "Room type" : "방 종류", + "Projector" : "프로젝터", + "Whiteboard" : "화이트보드", + "Room type" : "호실 종류", "Minimum seating capacity" : "최소 좌석 수", - "More" : "더 보기", - "Update this occurrence" : "이 일정 업데이트", "Update this and all future" : "이후 모든 일정 업데이트", + "Update this occurrence" : "이 일정 업데이트", "Public calendar does not exist" : "공용 달력이 존재하지 않음", "Maybe the share was deleted or has expired?" : "공유가 삭제되었거나 만료되었을 수 있습니다.", - "Please select a time zone:" : "시간대를 선택해 주십시오: ", - "Pick a time" : "시간 선택", - "Pick a date" : "날짜 선택", "from {formattedDate}" : "{formattedDate} 부터", "to {formattedDate}" : "{formattedDate} 까지", "on {formattedDate}" : "{formattedDate}에", @@ -252,35 +372,61 @@ "to {formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime} 까지", "on {formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime} 에", "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", - "Please enter a valid date" : "올바른 날짜를 입력하십시오", - "Please enter a valid date and time" : "올바른 날짜와 시간을 입력하십시오", + "Please enter a valid date" : "올바른 날짜를 입력하세요.", + "Please enter a valid date and time" : "올바른 날짜와 시간을 입력하세요.", + "Please select a time zone:" : "시간대를 선택하세요.", + "Pick a time" : "시간 선택", + "Pick a date" : "날짜 선택", "Type to search time zone" : "시간대를 찾기 위해 입력하세요.", "Global" : "국제", + "Holidays in {region}" : "{region}의 휴일", + "An error occurred, unable to read public calendars." : "오류가 발생하여 공개 달력을 읽을 수 없습니다.", + "An error occurred, unable to subscribe to calendar." : "오류가 발생하여 달력을 구독할 수 없습니다.", + "Public holiday calendars" : "공개 휴일 달력", + "Public calendars" : "공개 달력", + "No valid public calendars configured" : "설정된 유효한 달력 없음", + "Speak to the server administrator to resolve this issue." : "이 문제를 해결하기 위해 서버 관리자에게 문의하십시오", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "공개 휴일 달력은 Thunderbird에서 제공합니다. 달력의 데이터는 {website}(으)로부터 다운로드합니다", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "이 공개 달력은 서버 관리자의 추천입니다. 달력 데이터는 각각의 웹사이트로부터 다운로드됩니다.", + "By {authors}" : "{authors} 작성", + "Subscribed" : "구독함", + "Subscribe" : "구독", + "Could not fetch slots" : "슬롯을 불러올 수 없음", + "Select a date" : "날짜 선택", + "Select slot" : "슬롯 선택", + "No slots available" : "사용 가능한 슬롯 없음", + "The slot for your appointment has been confirmed" : "약속에 대한 슬롯이 확인되었습니다", + "Appointment Details:" : "약속에 대한 상세 정보:", "Time:" : "시간:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "감사합니다. {startDate}에서 {endDate}까지의 예약이 확인되었습니다.", + "Book another appointment:" : "다른 약속 예약하기:", + "See all available slots" : "사용 가능한 슬롯 모두 보기", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "{starDate}에서 {endDate}까지의 슬롯은 더 이상 사용할 수 없습니다.", + "Please book a different slot:" : "다른 슬롯에 예약하십시오:", + "Book an appointment with {name}" : "{name}님과의 약속 잡기", "Personal" : "개인", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "자동으로 감지된 귀하의 시간대가 UTC입니다.\n이 웹 브라우저의 보안 설정이 원인일 수 있습니다.\n달력 설정에서 수동으로 시간대를 설정해 주십시오.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "설정된 시간대 ({timezoneId}) 을(를) 찾을 수 없습니다. UTC로 설정됩니다.\n설정에서 시간대를 변경하고 이 문제를 보고해 주십시오.", - "No more events today" : "오늘 더 이상 일정이 없음", - "No upcoming events" : "다가오는 일정 없음", - "Create a new event" : "새 일정 만들기", - "[Today]" : "[오늘]", - "[Tomorrow]" : "[내일]", - "[Yesterday]" : "[어제]", + "Edit event" : "일정 편집", "Event does not exist" : "일정이 존재하지 않음", + "Duplicate" : "복제", "Delete this occurrence" : "이 일정 삭제", "Delete this and all future" : "이후 모든 일정 삭제", - "Details" : "자세한 정보", - "Attendees" : "참석자", - "Resources" : "자원", + "All day" : "하루 종일", + "Deny access" : "접근 거부", + "Invite" : "초대", + "_User requires access to your file_::_Users require access to your file_" : ["사용자가 내 파일에 대한 접근을 요구합니다"], + "Untitled event" : "제목없는 일정", "Close" : "닫기", - "Show more details" : "더 자세히 보기", "Subscribe to {name}" : "{name} 구독", + "Export {name}" : "{name} 내보내기", "Anniversary" : "기념일", "Appointment" : "일정", "Business" : "사업", "Education" : "교육", "Holiday" : "휴일", "Meeting" : "회의", + "Miscellaneous" : "기타", "Non-working hours" : "비번인 시간", "Not in office" : "자리에 없음", "Phone call" : "전화 연락", @@ -297,10 +443,9 @@ "{time} before the event ends" : "일정 종료 {time} 전", "{time} after the event starts" : "일정 시작 {time} 후", "{time} after the event ends" : "일정 종료 {time} 후", - "on {time}" : "{time}에", - "on {time} ({timezoneId})" : "{time} ({timezoneId})에", + "on {time}" : "{time} 후", + "on {time} ({timezoneId})" : "{time} ({timezoneId}) 후", "Week {number} of {year}" : "{year}년 제 {number}주", - "Does not repeat" : "반복하지 않음", "Daily" : "매일", "Weekly" : "매주", "Monthly" : "매달", @@ -310,19 +455,27 @@ "_Every %n month_::_Every %n months_" : ["%n 개월 마다"], "_Every %n year_::_Every %n years_" : ["%n 년 마다"], "_on {weekday}_::_on {weekdays}_" : ["{weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["{dayOfMonthList}일"], + "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber} {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "{monthNames} {dayOfMonthList}일", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames} {ordinalNumber} {byDaySet}", "until {untilDate}" : "{untilDate} 까지", - "Untitled event" : "제목없는 일정", + "_%n time_::_%n times_" : ["%n회"], + "second" : "두 번째", + "third" : "세 번째", + "fourth" : "네 번째", + "fifth" : "다섯 번째", + "second to last" : "끝에서 두 번째", + "last" : "마지막", "Untitled task" : "제목없는 작업", - "Please ask your administrator to enable the Tasks App." : "관리자에게 Tasks 앱 활성화를 요청하십시오", - "Prev" : "이전", - "Next" : "다음", - "Prev year" : "이전 년도", - "Next year" : "다음 년도", - "Year" : "년", + "Please ask your administrator to enable the Tasks App." : "관리자에게 Tasks 앱 활성화를 요청하세요.", "%n more" : "%n 더", "No events to display" : "표시할 일정 없음", "_+%n more_::_+%n more_" : ["+%n 더"], "No events" : "일정 없음", + "Create a new event or change the visible time-range" : "새로운 일정을 만들거나 시간 범위를 변경하십시오", + "It might have been deleted, or there was a typo in a link" : "삭제되었거나 오타가 있는 링크입니다", + "It might have been deleted, or there was a typo in the link" : "삭제되었거나 오타가 있는 링크입니다", "Meeting room" : "회의실", "Lecture hall" : "강의실", "Seminar room" : "세미나실", @@ -332,7 +485,7 @@ "When shared hide this event" : "일정 공유하지 않음", "The visibility of this event in shared calendars." : "공유 달력에서 이 일정의 표시 여부", "Add a location" : "위치 추가", - "Add a description" : "설명 추가", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "설명을 입력하세요\n\n- 회의 목적\n- 안건 목록\n- 참석자들이 준비해야 할 것들", "Status" : "상태", "Confirmed" : "확인됨", "Canceled" : "취소됨", @@ -342,91 +495,20 @@ "Categories help you to structure and organize your events." : "카테고리는 일정을 만들고 조직할 때 도움이 됩니다.", "Search or add categories" : "카테고리를 찾거나 추가하기", "Add this as a new category" : "새 카테고리로 추가", + "Custom color" : "사용자 지정 색상", "Special color of this event. Overrides the calendar-color." : "이 일정만의 색깔. 달력 색깔을 무시함.", - "Chat room for event" : "일정에 대한 대화방", + "Error while sharing file" : "파일 공유하는 도중 오류", + "Error while sharing file with user" : "사용자와 파일을 공유하는 중 오류 발생", + "Attachment {fileName} already exists!" : "첨부파일 {name}은(는) 이미 존재합니다", + "An error occurred during getting file information" : "정보를 불러오는 중 오류 발생", + "An error occurred, unable to delete the calendar." : "오류가 발생하여 달력을 삭제할 수 없습니다.", "Imported {filename}" : "{filename} 가져옴", - "Meditation" : "명상", - "Relaxing" : "휴식하기", - "Relax" : "휴식", - "Break" : "쉼", - "Commuting" : "이동 중", - "Shuttle" : "왕복", - "Presentation" : "프레젠테이션", - "Talk" : "토크", - "Camping" : "캠핑하기", - "Camp" : "캠핑", - "Movie" : "영화", - "Cinema" : "영화", - "Graduation" : "졸업", - "Review" : "리뷰", - "Baseball" : "야구", - "Meet" : "회의", - "Office" : "사무실", - "Mail" : "메일", - "Soccer" : "축구", - "Football" : "축구", - "Gaming" : "게임", - "Drive" : "드라이브", - "Driving" : "운전", - "Bicycle" : "자전거", - "Cycle" : "사이클", - "Biking" : "오토바이 타기", - "Bike" : "오토바이", - "Podcast" : "팟캐스트", - "Basketball" : "농구", - "Fishing" : "낚시", - "Hiking" : "등산하기", - "Hike" : "등산", - "Exhibition" : "전시회", - "Museum" : "박물관", - "Pilates" : "필라테스", - "Park" : "공원", - "Studying" : "공부", - "Doctor" : "의사", - "Health" : "건강", - "Dentist" : "치과", - "Hospital" : "병원", - "Interview" : "면접", - "Training" : "훈련", - "Practice" : "연습", - "Sports" : "스포츠", - "Exercise" : "운동", - "Work out" : "운동", - "Working out" : "운동하기", - "Gym" : "체육관", - "Barber" : "이발소", - "Haircut" : "이발", - "Exam" : "시험", - "Written test" : "필기 시험", - "Working" : "일", - "Fireworks" : "불꽃놀이", - "Running" : "달리기", - "Go for a run" : "달리기", - "Marathon" : "마라톤", - "Video-conference" : "화상회의", - "Video-call" : "영상 통화", - "Video-chat" : "영상채팅", - "Video-meeting" : "영상회의", - "Call" : "전화", - "Calling" : "전화하기", - "Christmas" : "크리스마스", - "Conference" : "회의", - "Pizza" : "피자", - "Travelling" : "여행가기", - "Journey" : "탐험", - "Collaborate" : "협업", - "Lecture" : "강의", - "Seminar" : "세미나", - "Party" : "파티", - "Celebration" : "축하", - "Celebrate" : "축하하기", - "Birthday" : "생일", - "Shopping" : "쇼핑", - "Skate" : "스케이트", - "Skateboard" : "스케이트보드", - "Golf" : "골프", - "Dinner" : "저녁", - "Lunch" : "점심", - "User not found" : "사용자를 찾을 수 없음" + "This is an event reminder." : "일정에 대한 알림입니다.", + "Appointment not found" : "약속을 찾을 수 없음", + "User not found" : "사용자를 찾을 수 없음", + "Reminder" : "알림", + "+ Add reminder" : "+ 알림 생성", + "Suggestions" : "제안", + "Details" : "자세한 정보" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/lb.js b/l10n/lb.js index 552c1977d8440bf0428f4742e5f5bda57cda3d4c..9f6de656625e73b53e7c5d46daa5a5787a42fa0f 100644 --- a/l10n/lb.js +++ b/l10n/lb.js @@ -3,7 +3,7 @@ OC.L10N.register( { "Cheers!" : "Prost!", "Calendar" : "Kalenner", - "New event" : "Neit Evenement", + "Confirm" : "Konfirméieren", "Today" : "Haut", "Day" : "Dag", "Week" : "Woch", @@ -11,18 +11,24 @@ OC.L10N.register( "Copy link" : "Link kopéieren", "Edit" : "Änneren", "Delete" : "Läschen", - "Export" : "Exportéieren", - "Share link" : "Link deelen", - "Share with users or groups" : "Mat Benotzer oder Gruppen deelen", - "can edit" : "kann änneren", + "Calendars" : "Kalenneren", "New calendar" : "Neie Kalenner", + "Export" : "Exportéieren", + "Empty trash bin" : "Eidel Dreckskëscht", "Name" : "Numm", "Deleted" : "Geläscht", "Restore" : "Zrécksetzen", "Delete permanently" : "Permanent läschen", + "Hidden" : "Verstoppt", + "Share link" : "Link deelen", + "can edit" : "kann änneren", + "Share with users or groups" : "Mat Benotzer oder Gruppen deelen", + "Save" : "Späicheren", "Cancel" : "Ofbriechen", "Automatic" : "Automatesch", + "List view" : "Lëscht Vue", "Actions" : "Aktiounen", + "Update" : "Update", "Location" : "Uert", "Description" : "Beschreiwung", "to" : "bis", @@ -34,29 +40,31 @@ OC.L10N.register( "Friday" : "Freideg", "Saturday" : "Samschdeg", "Sunday" : "Sonndeg", - "Save" : "Späicheren", - "Update" : "Update", "Your email address" : "Deng Email Adress", "Email" : "Email", + "seconds" : "Sekonnen", + "minutes" : "Minutten", + "hours" : "Stonnen", + "days" : "Deeg", + "weeks" : "Wochen", "Unknown" : "Onbekannt", + "Attendees" : "Participanten", "Repeat" : "Widderhuelen", "never" : "Ni", "after" : "No", - "More" : "Méi", "Global" : "Global", + "Subscribe" : "Umellen", "Personal" : "Perséinlech", - "Details" : "Detailer", - "Attendees" : "Participanten", + "Edit event" : "Evenement änneren", "Close" : "Zoumaachen", "Week {number} of {year}" : "Woch {Nummer} vum {Joer}", "Daily" : "All Dag", "Weekly" : "All Woch", - "Next" : "Weider", + "second" : "zweet", "Other" : "Aner", "When shared show full event" : "Wann et gedeelt gouf, dann de ganzen Evenement uweisen", "When shared show only busy" : "Wann et gedeelt gouf, dann nëmmen als beschäftegt uweisen", "When shared hide this event" : "Wann et gedeelt gouf, dann verstopp dëst Evenement", - "Mail" : "Mail", - "Birthday" : "Gebuertsdag" + "Details" : "Detailer" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/lb.json b/l10n/lb.json index 228bcd1189fe8cfa19232aa72242f6c7d5bea804..2bd778f40a9faf7b25e4eb0ffd6606067663d892 100644 --- a/l10n/lb.json +++ b/l10n/lb.json @@ -1,7 +1,7 @@ { "translations": { "Cheers!" : "Prost!", "Calendar" : "Kalenner", - "New event" : "Neit Evenement", + "Confirm" : "Konfirméieren", "Today" : "Haut", "Day" : "Dag", "Week" : "Woch", @@ -9,18 +9,24 @@ "Copy link" : "Link kopéieren", "Edit" : "Änneren", "Delete" : "Läschen", - "Export" : "Exportéieren", - "Share link" : "Link deelen", - "Share with users or groups" : "Mat Benotzer oder Gruppen deelen", - "can edit" : "kann änneren", + "Calendars" : "Kalenneren", "New calendar" : "Neie Kalenner", + "Export" : "Exportéieren", + "Empty trash bin" : "Eidel Dreckskëscht", "Name" : "Numm", "Deleted" : "Geläscht", "Restore" : "Zrécksetzen", "Delete permanently" : "Permanent läschen", + "Hidden" : "Verstoppt", + "Share link" : "Link deelen", + "can edit" : "kann änneren", + "Share with users or groups" : "Mat Benotzer oder Gruppen deelen", + "Save" : "Späicheren", "Cancel" : "Ofbriechen", "Automatic" : "Automatesch", + "List view" : "Lëscht Vue", "Actions" : "Aktiounen", + "Update" : "Update", "Location" : "Uert", "Description" : "Beschreiwung", "to" : "bis", @@ -32,29 +38,31 @@ "Friday" : "Freideg", "Saturday" : "Samschdeg", "Sunday" : "Sonndeg", - "Save" : "Späicheren", - "Update" : "Update", "Your email address" : "Deng Email Adress", "Email" : "Email", + "seconds" : "Sekonnen", + "minutes" : "Minutten", + "hours" : "Stonnen", + "days" : "Deeg", + "weeks" : "Wochen", "Unknown" : "Onbekannt", + "Attendees" : "Participanten", "Repeat" : "Widderhuelen", "never" : "Ni", "after" : "No", - "More" : "Méi", "Global" : "Global", + "Subscribe" : "Umellen", "Personal" : "Perséinlech", - "Details" : "Detailer", - "Attendees" : "Participanten", + "Edit event" : "Evenement änneren", "Close" : "Zoumaachen", "Week {number} of {year}" : "Woch {Nummer} vum {Joer}", "Daily" : "All Dag", "Weekly" : "All Woch", - "Next" : "Weider", + "second" : "zweet", "Other" : "Aner", "When shared show full event" : "Wann et gedeelt gouf, dann de ganzen Evenement uweisen", "When shared show only busy" : "Wann et gedeelt gouf, dann nëmmen als beschäftegt uweisen", "When shared hide this event" : "Wann et gedeelt gouf, dann verstopp dëst Evenement", - "Mail" : "Mail", - "Birthday" : "Gebuertsdag" + "Details" : "Detailer" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/lo.js b/l10n/lo.js new file mode 100644 index 0000000000000000000000000000000000000000..a2cc866fd685d42d2048c4e28fa70dc824bb6d57 --- /dev/null +++ b/l10n/lo.js @@ -0,0 +1,37 @@ +OC.L10N.register( + "calendar", + { + "Calendar" : "ປະຕິທິນ", + "Confirm" : "ຢືນຢັນ", + "Today" : "ມື້ນີ້", + "Copy link" : "ສຳເນົາລິງ", + "Edit" : "ແກ້ໄຂ", + "Delete" : "ລຶບ", + "Create new" : "ສ້າງໃຫມ່", + "Shared with you by" : "ແບ່ງປັນໂດຍທ່ານ", + "Empty trash bin" : "ລ້າງຖັງຂີ້ເຫຍື່ອ", + "Name" : "ຊື່", + "Deleted" : "ລືບ", + "Restore" : "ການກຸ້ຄຶນ", + "Share link" : "ແບ່ງປັນລິງ", + "Delete share link" : "ລົບລິງແບ່ງປັນ", + "Save" : "ບັນທຶກ", + "Filename" : "ຊື່ຟາຍ", + "Cancel" : "ຍົກເລີກ", + "List view" : "ລາຍການທີ່ຈະເບິ່ງ", + "Duration" : "ໄລຍະ", + "Add" : "ເພີ່ມ", + "Notification" : "ແຈ້ງການ", + "Email" : "ອິເມວ", + "Delete file" : "ລຶບຟາຍ", + "Available" : "ມີຢູ່", + "Not available" : "ບໍ່ມີ", + "Unknown" : "ບໍ່ຮູ້", + "never" : "ບໍ່ເຄີຍ", + "Personal" : "ສ່ວນບຸກຄົນ", + "Close" : "ປິດ", + "Daily" : "ລາຍວັນ", + "Weekly" : "ອາທິດ", + "Details" : "ລາຍລະອຽດ" +}, +"nplurals=1; plural=0;"); diff --git a/l10n/lo.json b/l10n/lo.json new file mode 100644 index 0000000000000000000000000000000000000000..003fc4b9d9000927d6d5541d27af5675d25ad526 --- /dev/null +++ b/l10n/lo.json @@ -0,0 +1,35 @@ +{ "translations": { + "Calendar" : "ປະຕິທິນ", + "Confirm" : "ຢືນຢັນ", + "Today" : "ມື້ນີ້", + "Copy link" : "ສຳເນົາລິງ", + "Edit" : "ແກ້ໄຂ", + "Delete" : "ລຶບ", + "Create new" : "ສ້າງໃຫມ່", + "Shared with you by" : "ແບ່ງປັນໂດຍທ່ານ", + "Empty trash bin" : "ລ້າງຖັງຂີ້ເຫຍື່ອ", + "Name" : "ຊື່", + "Deleted" : "ລືບ", + "Restore" : "ການກຸ້ຄຶນ", + "Share link" : "ແບ່ງປັນລິງ", + "Delete share link" : "ລົບລິງແບ່ງປັນ", + "Save" : "ບັນທຶກ", + "Filename" : "ຊື່ຟາຍ", + "Cancel" : "ຍົກເລີກ", + "List view" : "ລາຍການທີ່ຈະເບິ່ງ", + "Duration" : "ໄລຍະ", + "Add" : "ເພີ່ມ", + "Notification" : "ແຈ້ງການ", + "Email" : "ອິເມວ", + "Delete file" : "ລຶບຟາຍ", + "Available" : "ມີຢູ່", + "Not available" : "ບໍ່ມີ", + "Unknown" : "ບໍ່ຮູ້", + "never" : "ບໍ່ເຄີຍ", + "Personal" : "ສ່ວນບຸກຄົນ", + "Close" : "ປິດ", + "Daily" : "ລາຍວັນ", + "Weekly" : "ອາທິດ", + "Details" : "ລາຍລະອຽດ" +},"pluralForm" :"nplurals=1; plural=0;" +} \ No newline at end of file diff --git a/l10n/lt_LT.js b/l10n/lt_LT.js index faa14fdd4389707e4eebbe4de51d25604bb648c0..a48a95f3aab67f2bb3dcd858547e9f2fa02a2abd 100644 --- a/l10n/lt_LT.js +++ b/l10n/lt_LT.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Pateiktas el. pašto adresas yra per ilgas", "User-Session unexpectedly expired" : "Netikėtai pasibaigė naudotojo seanso galiojimas", "Provided email-address is not valid" : "Pateiktas el. pašto adresas nėra teisingas", "%s has published the calendar »%s«" : "%s paskelbė kalendorių „%s“", @@ -11,121 +12,133 @@ OC.L10N.register( "Open »%s«" : "Atverti „%s“", "Cheers!" : "Sveikinimai!", "Upcoming events" : "Artėjantys įvykiai", + "No more events today" : "Šiandien daugiau įvykių nėra", + "No upcoming events" : "Artėjančių įvykių nėra", + "More events" : "Daugiau įvykių", + "%1$s with %2$s" : "%1$s su %2$s", + "Calendar" : "Kalendorius", "Appointments" : "Susitikimai", + "%1$s - %2$s" : "%1$s – %2$s", "Confirm" : "Patvirtinti", + "Description:" : "Aprašas:", "This confirmation link expires in %s hours." : "Ši patvirtinimo nuoroda baigia galioti po %s val.", - "Appointment:" : "Susitikimas:", "Date:" : "Data:", "Where:" : "Kur:", - "Description:" : "Aprašas:", - "Calendar" : "Kalendorius", + "Comment:" : "Komentaras:", "A Calendar app for Nextcloud" : "Kalendoriaus programėlė, skirta Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Kalendoriaus programėlė yra Nextcloud CalDAV serverio naudotojo sąsaja. Lengvai sinchronizuokite įvykius iš įvairių įrenginių, naudodami Nextcloud ir redaguokite juos internete.\n\n* 🚀 **Integracija su kitomis Nextcloud programėlėmis!** Šiuo metu tik su Adresatais - greitu laiku ir su kitomis.\n* 🌐 **WebCal palaikymas!** Norite savo kalendoriuje matyti mėgstamos komandos rungtynių dienas? Jokių problemų!\n* 🙋 **Kviestiniai!** Pakvieskite žmones prisijungti prie savo įvykių.\n* ⌚️ **Laisva/Užimta!** Matykite, kada jūsų kviestiniai gali susitikti.\n* ⏰ **Priminimai!** Gaukite įvykių signalus savo naršyklėje ar el. paštu.\n* 🔍 Paieška! Lengvai raskite įvykius.\n* ☑️ Užduotys! Matykite užduotis su galutinio termino diena tiesiogiai kalendoriuje.\n* 🙈 **Mes neišradinėjame dviračio!** Pagrįsta puikiomis [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) ir [fullcalendar](https://github.com/fullcalendar/fullcalendar) bibliotekomis.", "Previous day" : "Ankstesnė diena", "Previous week" : "Ankstesnė savaitė", + "Previous year" : "Ankstesni metai", "Previous month" : "Ankstesnis mėnuo", "Next day" : "Kita diena", "Next week" : "Kita savaitė", + "Next year" : "Kiti metai", "Next month" : "Kitas mėnuo", - "New event" : "Naujas įvykis", + "Create new event" : "Sukurti naują įvykį", + "Event" : "Įvykis", "Today" : "Šiandiena", "Day" : "Diena", "Week" : "Savaitė", "Month" : "Mėnuo", + "Year" : "Metai", "List" : "Sąrašas", + "Appointment link was copied to clipboard" : "Susitikimo nuoroda buvo nukopijuota į iškarpinę", + "Appointment link could not be copied to clipboard" : "Susitikimo nuorodos nepavyko nukopijuoti į iškarpinę", "Preview" : "Peržiūra", "Copy link" : "Kopijuoti nuorodą", "Edit" : "Taisyti", "Delete" : "Ištrinti", - "Appointment link was copied to clipboard" : "Susitikimo nuoroda buvo nukopijuota į iškarpinę", - "Appointment link could not be copied to clipboard" : "Susitikimo nuorodos nepavyko nukopijuoti į iškarpinę", - "Add new" : "Pridėti naują", - "Untitled calendar" : "Kalendorius be pavadinimo", - "Edit name" : "Taisyti pavadinimą", - "Saving name …" : "Įrašomas pavadinimas…", - "Edit color" : "Taisyti spalvą", - "Saving color …" : "Įrašoma spalva…", - "Copy private link" : "Kopijuoti privačią nuorodą", - "Export" : "Eksportuoti", - "Unshare from me" : "Nustoti bendrinti su manimi", + "Create new" : "Sukurti naują", "Disable calendar \"{calendar}\"" : "Išjungti kalendorių „{calendar}“", "Disable untitled calendar" : "Išjungti kalendorių be pavadinimo", "Enable calendar \"{calendar}\"" : "Įjungti kalendorių „{calendar}“", "Enable untitled calendar" : "Įjungti kalendorių be pavadinimo", "An error occurred, unable to change visibility of the calendar." : "Įvyko klaida, nepavyko pakeisti kalendoriaus matomumo.", - "An error occurred, unable to delete the calendar." : "Įvyko klaida, nepavyko ištrinti kalendorių.", - "Calendar link copied to clipboard." : "Kalendoriaus nuoroda nukopijuota į iškarpinę.", - "Calendar link could not be copied to clipboard." : "Kalendoriaus nuorodos nepavyko nukopijuoti į iškarpinę.", - "An error occurred, unable to rename the calendar." : "Įvyko klaida, nepavyko pervadinti kalendorių.", - "An error occurred, unable to change the calendar's color." : "Įvyko klaida, nepavyko pakeisti kalendoriaus spalvos.", + "Untitled calendar" : "Kalendorius be pavadinimo", + "Shared with you by" : "Su jumis bendrina", + "Edit and share calendar" : "Taisyti ir bendrinti kalendorių", + "Edit calendar" : "Taisyti kalendorių", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Kalendorius nustojamas bendrinti po {countdown} sekundės","Kalendorius nustojamas bendrinti po {countdown} sekundžių","Kalendorius nustojamas bendrinti po {countdown} sekundžių","Kalendorius nustojamas bendrinti po {countdown} sekundės"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Kalendorius ištrinamas po {countdown} sekundės","Kalendorius ištrinamas po {countdown} sekundžių","Kalendorius ištrinamas po {countdown} sekundžių","Kalendorius ištrinamas po {countdown} sekundės"], - "Share link" : "Bendrinimo nuoroda", - "Publish calendar" : "Paskelbti kalendorių", - "Publishing calendar" : "Skelbiamas kalendorius", - "Copy public link" : "Kopijuoti viešąją nuorodą", - "Send link to calendar via email" : "Siųsti el. paštu nuorodą į kalendorių", - "Enter one address" : "Įveskite vieną adresą", - "Sending email …" : "Siunčiamas el. laiškas…", - "Copy subscription link" : "Kopijuoti prenumeratos nuorodą", - "Copying link …" : "Kopijuojama nuoroda…", - "Copied link" : "Nuoroda nukopijuota", - "Could not copy link" : "Nepavyko nukopijuoti nuorodos", - "Copy embedding code" : "Kopijuoti įterpimo kodą", - "Copying code …" : "Kopijuojamas kodas…", - "Copied code" : "Kodas nukopijuotas", - "Could not copy code" : "Nepavyko nukopijuoti kodo", - "Delete share link" : "Ištrinti bendrinimo nuorodą", - "Deleting share link …" : "Ištrinama bendrinimo nuoroda…", - "An error occurred, unable to publish calendar." : "Įvyko klaida, nepavyko paskelbti kalendoriaus.", - "An error occurred, unable to send email." : "Įvyko klaida, nepavyko išsiųsti el. laiško.", - "Embed code copied to clipboard." : "Įterpimo kodas nukopijuotas į iškarpinę.", - "Embed code could not be copied to clipboard." : "Įterpimo kodo nepavyko nukopijuoti į iškarpinę.", - "Unpublishing calendar failed" : "Nepavyko paskelbti kalendoriaus", - "Share with users or groups" : "Bendrinti su naudotojais ar grupėmis", - "No users or groups" : "Nėra jokių naudotojų ar grupių", - "can edit" : "gali redaguoti", - "Unshare with {displayName}" : "Nustoti bendrinti su {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Įvyko klaida, nepavyko pakeisti kalendoriaus nebendrinimo.", - "An error occurred, unable to change the permission of the share." : "Įvykio klaida, nepavyko pakeisti viešinio leidimo.", - "+ New calendar" : "+ Naujas kalendorius", + "An error occurred, unable to create the calendar." : "Įvyko klaida, nepavyko sukurti kalendoriaus.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Įveskite teisingą nuorodą (prasidedančią http://, https://, webcal:// ar webcals://)", + "Calendars" : "Kalendoriai", + "Add new" : "Pridėti naują", "New calendar" : "Naujas kalendorius", "Name for new calendar" : "Naujo kalendoriaus pavadinimas", "Creating calendar …" : "Kuriamas kalendorius…", "New calendar with task list" : "Naujas kalendorius su užduočių sąrašu", "New subscription from link (read-only)" : "Nauja prenumerata iš nuorodos (tik skaitymui)", "Creating subscription …" : "Kuriama prenumerata…", - "An error occurred, unable to create the calendar." : "Įvyko klaida, nepavyko sukurti kalendoriaus.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Įveskite teisingą nuorodą (prasidedančią http://, https://, webcal:// ar webcals://)", + "Calendar link copied to clipboard." : "Kalendoriaus nuoroda nukopijuota į iškarpinę.", + "Calendar link could not be copied to clipboard." : "Kalendoriaus nuorodos nepavyko nukopijuoti į iškarpinę.", + "Copy subscription link" : "Kopijuoti prenumeratos nuorodą", + "Copying link …" : "Kopijuojama nuoroda…", + "Copied link" : "Nuoroda nukopijuota", + "Could not copy link" : "Nepavyko nukopijuoti nuorodos", + "Export" : "Eksportuoti", + "Unknown calendar" : "Nežinomas kalendorius", + "Could not load deleted calendars and objects" : "Nepavyko įkelti ištrintų kalendorių ir objektų", + "Could not delete calendar or event" : "Nepavyko ištrinti kalendoriaus ar įvykio", + "Could not restore calendar or event" : "Nepavyko atkurti kalendoriaus ar įvykio", + "Do you really want to empty the trash bin?" : "Ar tikrai norite išvalyti šiukšlinę?", + "Empty trash bin" : "Išvalyti šiukšlinę", "Trash bin" : "Šiukšlinė", - "Loading deleted elements." : "Įkeliami ištrinti elementai.", - "You do not have any deleted elements." : "Jūs neturite jokių ištrintų elementų.", + "Loading deleted items." : "Įkeliami ištrinti elementai.", + "You do not have any deleted items." : "Jūs neturite jokių ištrintų elementų.", "Name" : "Pavadinimas", "Deleted" : "Ištrintas", "Restore" : "Atkurti", "Delete permanently" : "Ištrinti negrįžtamai", - "Empty trash bin" : "Išvalyti šiukšlinę", - "Untitled element" : "Elementas be pavadinimo", - "Unknown calendar" : "Nežinomas kalendorius", - "Could not load deleted calendars and objects" : "Nepavyko įkelti ištrintų kalendorių ir objektų", - "Could not restore calendar or event" : "Nepavyko atkurti kalendoriaus ar įvykio", - "Do you really want to empty the trash bin?" : "Ar tikrai norite išvalyti šiukšlinę?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Elementai šiukšlinėje bus ištrinti po {numDays} dienos","Elementai šiukšlinėje bus ištrinti po {numDays} dienų","Elementai šiukšlinėje bus ištrinti po {numDays} dienų","Elementai šiukšlinėje bus ištrinti po {numDays} dienos"], "Could not update calendar order." : "Nepavyko atnaujinti kalendoriaus tvarkos.", + "Deck" : "Darbai", + "Hidden" : "Paslėpta", + "Internal link" : "Vidinė nuoroda", + "Copy internal link" : "Kopijuoti vidinę nuorodą", + "An error occurred, unable to publish calendar." : "Įvyko klaida, nepavyko paskelbti kalendoriaus.", + "An error occurred, unable to send email." : "Įvyko klaida, nepavyko išsiųsti el. laiško.", + "Embed code copied to clipboard." : "Įterpimo kodas nukopijuotas į iškarpinę.", + "Embed code could not be copied to clipboard." : "Įterpimo kodo nepavyko nukopijuoti į iškarpinę.", + "Unpublishing calendar failed" : "Nepavyko paskelbti kalendoriaus", + "Share link" : "Viešinio nuoroda", + "Copy public link" : "Kopijuoti viešąją nuorodą", + "Send link to calendar via email" : "Siųsti el. paštu nuorodą į kalendorių", + "Enter one address" : "Įveskite vieną adresą", + "Sending email …" : "Siunčiamas el. laiškas…", + "Copy embedding code" : "Kopijuoti įterpimo kodą", + "Copying code …" : "Kopijuojamas kodas…", + "Copied code" : "Kodas nukopijuotas", + "Could not copy code" : "Nepavyko nukopijuoti kodo", + "Delete share link" : "Ištrinti viešinio nuorodą", + "Deleting share link …" : "Ištrinama viešinio nuoroda …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Komanda)", + "An error occurred, unable to change the permission of the share." : "Įvykio klaida, nepavyko pakeisti viešinio leidimo.", + "can edit" : "gali redaguoti", + "Unshare with {displayName}" : "Nustoti bendrinti su {displayName}", + "Share with users or groups" : "Bendrinti su naudotojais ar grupėmis", + "No users or groups" : "Nėra jokių naudotojų ar grupių", + "Failed to save calendar name and color" : "Nepavyko įrašyti kalendoriaus pavadinimo ir spalvos", + "Calendar name …" : "Kalendoriaus pavadinimas…", + "Share calendar" : "Bendrinti kalendorių", + "Unshare from me" : "Nustoti bendrinti su manimi", + "Save" : "Įrašyti", "Import calendars" : "Importuoti kalendorius", "Please select a calendar to import into …" : "Pasirinkite kalendorių į kurį importuoti…", "Filename" : "Failo pavadinimas", "Calendar to import into" : "Kalendorius, į kurį importuoti", "Cancel" : "Atsisakyti", "_Import calendar_::_Import calendars_" : ["Importuoti kalendorių","Importuoti kalendorius","Importuoti kalendorius","Importuoti kalendorius"], + "Invalid location selected" : "Pasirinkta neteisinga vieta", + "Attachments folder successfully saved." : "Priedų aplankas sėkmingai įrašytas.", + "Error on saving attachments folder." : "Klaida įrašant priedų aplanką.", + "Default attachments location" : "Numatytoji priedų vieta", "{filename} could not be parsed" : "Nepavyko išnagrinėti {filename}", "No valid files found, aborting import" : "Nerasta jokių tinkamų failų, importavimas nutraukiamas", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Sėkmingai importuotas %n įvykis","Sėkmingai importuoti %n įvykiai","Sėkmingai importuota %n įvykių","Sėkmingai importuotas %n įvykis"], "Import partially failed. Imported {accepted} out of {total}." : "Importavimas dalinai nepavyko. Importuota {accepted} iš {total}.", "Automatic" : "Automatinė", "Automatic ({detected})" : "Automatinė ({detected})", "New setting was not saved successfully." : "Naujas nustatymas nebuvo sėkmingai įrašytas.", - "Shortcut overview" : "Nuorodų apžvalga", - "or" : "ar", "Navigation" : "Navigacija", "Previous period" : "Ankstesnis laikotarpis", "Next period" : "Kitas laikotarpis", @@ -133,6 +146,7 @@ OC.L10N.register( "Day view" : "Dienos rodinys", "Week view" : "Savaitės rodinys", "Month view" : "Mėnesio rodinys", + "Year view" : "Metų rodinys", "List view" : "Sąrašo rodinys", "Actions" : "Veiksmai", "Create event" : "Sukurti įvykį", @@ -141,23 +155,25 @@ OC.L10N.register( "Close editor" : "Užverti redaktorių", "Save edited event" : "Įrašyti taisytą įvykį", "Delete edited event" : "Ištrinti taisytą įvykį", + "Duplicate event" : "Dubliuoti įvykį", + "Shortcut overview" : "Nuorodų apžvalga", + "or" : "ar", + "Calendar settings" : "Kalendoriaus nustatymai", + "No reminder" : "Jokio priminimo", + "Failed to save default calendar" : "Nepavyko įrašyti numatytojo kalendoriaus", + "CalDAV link copied to clipboard." : "CalDAV nuoroda nukopijuota į iškarpinę.", + "CalDAV link could not be copied to clipboard." : "Nepavyko nukopijuoti CalDAV nuorodą į iškarpinę.", "Enable birthday calendar" : "Įjungti gimtadienių kalendorių", "Show tasks in calendar" : "Rodyti užduotis kalendoriuje", "Enable simplified editor" : "Įjungti supaprastintą redaktorių", - "Limit visible events per view" : "Riboti matomus įvykius pagal rodinį", + "Limit the number of events displayed in the monthly view" : "Riboti mėnesio rodinyje rodomų įvykių skaičių", "Show weekends" : "Rodyti savaitgalius", "Show week numbers" : "Rodyti savaičių numerius", "Default reminder" : "Numatytasis priminimas", "Copy primary CalDAV address" : "Kopijuoti pirminį CalDAV adresą", "Copy iOS/macOS CalDAV address" : "Kopijuoti iOS/macOS CalDAV adresą", "Personal availability settings" : "Asmeninio pasiekiamumo nustatymai", - "Show keyboard shortcuts" : "Rodyti klaviatūros kombinacijas", - "Calendar settings" : "Kalendoriaus nustatymai", - "No reminder" : "Jokio priminimo", - "CalDAV link copied to clipboard." : "CalDAV nuoroda nukopijuota į iškarpinę.", - "CalDAV link could not be copied to clipboard." : "Nepavyko nukopijuoti CalDAV nuorodą į iškarpinę.", - "Appointment was created successfully" : "Susitikimas buvo sėkmingai sukurtas", - "Appointment was updated successfully" : "Susitikimas buvo sėkmingai atnaujintas", + "Show keyboard shortcuts" : "Rodyti sparčiuosius klavišus", "_{duration} minute_::_{duration} minutes_" : ["{duration} minutė","{duration} minutės","{duration} minučių","{duration} minutė"], "0 minutes" : "0 minučių", "_{duration} hour_::_{duration} hours_" : ["{duration} valanda","{duration} valandos","{duration} valandų","{duration} valanda"], @@ -168,6 +184,7 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Norėdami konfigūruoti susitikimus, asmeniniuose nustatymuose pridėkite savo el. pašto adresą.", "Public – shown on the profile page" : "Viešas – rodomas profilio puslapyje", "Private – only accessible via secret link" : "Privatus – pasiekiamas tik per slaptą nuorodą", + "Update" : "Atnaujinti", "Location" : "Vieta", "Description" : "Aprašas", "Visibility" : "Matomumas", @@ -187,14 +204,13 @@ OC.L10N.register( "Before the event" : "Prieš įvykį", "After the event" : "Po įvykio", "Planning restrictions" : "Planavimo apribojimai", - "Create appointment" : "Sukurti susitikimą", - "Edit appointment" : "Taisyti susitikimą", - "Save" : "Įrašyti", - "Update" : "Atnaujinti", "Your name" : "Jūsų vardas", "Your email address" : "Jūsų el. pašto adresas", "Please share anything that will help prepare for our meeting" : "Pasidalinkite informacija, kuri padės mums pasiruošti šiam susitikimui", - "Reminder" : "Priminimas", + "Back" : "Atgal", + "Create a new conversation" : "Sukurti naują pokalbį", + "on" : "šiomis dienomis", + "at" : ",", "before at" : "prieš įvykį, ties", "Notification" : "Pranešimas", "Email" : "Elektroninis laiškas", @@ -205,97 +221,97 @@ OC.L10N.register( "Edit time" : "Taisyti laiką", "Save time" : "Įrašyti laiką", "Remove reminder" : "Šalinti priminimą", - "on" : "šiomis dienomis", - "at" : ",", - "+ Add reminder" : "+ Pridėti priminimą", "Add reminder" : "Pridėti priminimą", - "_second_::_seconds_" : ["sekundė","sekundės","sekundžių","sekundė"], - "_minute_::_minutes_" : ["minutė","minutės","minučių","minutė"], - "_hour_::_hours_" : ["valanda","valandos","valandų","valanda"], - "_day_::_days_" : ["diena","dienos","dienų","diena"], - "_week_::_weeks_" : ["savaitė","savaitės","savaičių","savaitė"], + "seconds" : "sekundes", + "minutes" : "minučių", + "hours" : "valandų", + "days" : "dienų", + "weeks" : "savaičių", + "Choose a file to add as attachment" : "Pasirinkite failą, kurį prisegsite prie laiško", + "Choose a file to share as a link" : "Pasirinkite failą, kurį bendrinsite kaip nuorodą", + "Add from Files" : "Pridėti iš Failų", + "Delete file" : "Ištrinti failą", + "_{count} attachment_::_{count} attachments_" : ["{count} priedas","{count} priedai","{count} priedų","{count} priedas"], "Available" : "Prieinamas", + "Invitation accepted" : "Pakvietimas priimtas", + "Failed to deliver invitation" : "Nepavyko pristatyti pakvietimo", "Checking availability" : "Tikrinamas prieinamumas", - "Availability of attendees, resources and rooms" : "Kviestinių, išteklių ir kambarių prieinamumas", + "chairperson" : "pirmininkas", "{organizer} (organizer)" : "{organizer} (organizatorius)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Kviestinių, išteklių ir kambarių prieinamumas", + "Out of office" : "Ne darbo vietoje", + "Attendees:" : "Kviestiniai:", + "Done" : "Atlikta", + "Room name" : "Kambario pavadinimas", "Free" : "Laisvas laikas", "Busy (tentative)" : "Užimtas laikas (preliminariai)", "Busy" : "Užimtas laikas", - "Out of office" : "Ne darbo vietoje", "Unknown" : "Nežinoma", "Accept" : "Priimti", "Decline" : "Atmesti", "Tentative" : "Preliminarus", - "Create Talk room for this event" : "Sukurti šiam įvykiui pokalbių kambarį", - "Show busy times" : "Rodyti užimtumo laikus", "No attendees yet" : "Kol kas kviestinių nėra", "Successfully appended link to talk room to description." : "Pokalbių kambario nuoroda sėkmingai pridėta į aprašą.", "Error creating Talk room" : "Klaida sukuriant pokalbių kambarį", - "Send email" : "Siųsti elektroninį laišką", + "Attendees" : "Kviestiniai", + "Remove group" : "Šalinti grupę", + "Remove attendee" : "Šalinti kviestinį", "Chairperson" : "Pirmininkas", "Required participant" : "Būtinas dalyvis", "Optional participant" : "Nebūtinas dalyvis", "Non-participant" : "Ne dalyvis", - "Remove attendee" : "Šalinti kviestinį", - "Search for emails, users or contacts" : "Ieškoti el. pašto adresų, naudotojų ar adresatų", + "_%n member_::_%n members_" : ["%n narys","%n nariai","%n narių","%n narys"], "No match found" : "Nerasta jokio atitikmens", "(organizer)" : "(organizatorius)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Norėdami siųsti pakvietimus ir apdoroti atsakymus, [linkopen]pridėkite į asmeninius nustatymus savo el. pašto adresą[linkclose].", "Remove color" : "Šalinti spalvą", "Event title" : "Įvykio pavadinimas", - "All day" : "Visą dieną", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Negalima modifikuoti „Visos dienos“ nustatymą įvykiams, kurie yra pasikartojimo rinkinio dalis.", - "from {startDate}" : "nuo {startDate}", - "from {startDate} at {startTime}" : "nuo {startDate}, {startTime}", - "to {endDate}" : "iki {endDate}", - "to {endDate} at {endTime}" : "iki {endDate}, {endTime}", + "From" : "Nuo", + "To" : "Kam", "Repeat" : "Kartoti", - "End repeat" : "Užbaigti kartojimą", - "Select to end repeat" : "Pasirinkite norėdami užbaigti kartojimą", + "_time_::_times_" : ["karto","kartų","kartų","karto"], "never" : "niekada", "on date" : "tam tikrą datą", "after" : "po", - "_time_::_times_" : ["karto","kartų","kartų","karto"], + "End repeat" : "Užbaigti kartojimą", + "Select to end repeat" : "Pasirinkite norėdami užbaigti kartojimą", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Šis įvykis yra pasikartojimo rinkinio pasikartojimo išimtis. Negalite jam pridėti pasikartojimo taisyklės.", "first" : "pirmas", - "third" : "trečias", - "fourth" : "ketvirtas", - "fifth" : "penktas", - "second to last" : "priešpaskutinis", - "last" : "paskutinis", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Pakeitimai pasikartojimo taisyklėje bus taikomi tik šiam ir būsimiems pasikartojimams.", "Repeat every" : "Kartoti kas", "By day of the month" : "Pagal mėnesio dienas", "On the" : "Ties", + "_day_::_days_" : ["diena","dienos","dienų","diena"], + "_week_::_weeks_" : ["savaitė","savaitės","savaičių","savaitė"], "_month_::_months_" : ["mėnesis","mėnesiai","mėnesių","mėnesis"], "_year_::_years_" : ["metai","metai","metų","metai"], "weekday" : "savaitės darbo dienos", "weekend day" : "savaitgalio diena", - "No recurrence" : "Be pasikartojimo", + "Does not repeat" : "Nekartojamas", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud nepalaiko pilnai šio įvykio pasikartojimo apibrėžimo. Jei taisysite pasikartojimo parinktis, tam tikri pasikartojimai gali būti prarasti.", - "Suggestions" : "Pasiūlymai", "No rooms or resources yet" : "Kol kas nėra kambarių ar išteklių", + "Resources" : "Ištekliai", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sėdima vieta","{seatingCapacity} sėdimos vietos","{seatingCapacity} sėdimų vietų","{seatingCapacity} sėdima vieta"], "Add resource" : "Pridėti išteklių", "Has a projector" : "Yra projektorius", "Has a whiteboard" : "Yra rašymo lenta", "Wheelchair accessible" : "Prieiga neįgaliųjų vežimėliu", "Remove resource" : "Šalinti išteklių", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sėdima vieta","{seatingCapacity} sėdimos vietos","{seatingCapacity} sėdimų vietų","{seatingCapacity} sėdima vieta"], - "Projector" : "Projektorius", - "Whiteboard" : "Rašymo lenta", "Search for resources or rooms" : "Ieškoti išteklių ar kambarių", "available" : "prieinamas", "unavailable" : "neprieinamas", + "Show all rooms" : "Rodyti visus kambarius", + "Projector" : "Projektorius", + "Whiteboard" : "Rašymo lenta", "Room type" : "Kambario tipas", "Any" : "Bet koks", - "More" : "Daugiau", - "Update this occurrence" : "Atnaujinti šį pasikartojimą", + "More details" : "Išsamiau", "Update this and all future" : "Atnaujinti šį ir visus būsimus", + "Update this occurrence" : "Atnaujinti šį pasikartojimą", "Public calendar does not exist" : "Viešojo kalendoriaus nėra", "Maybe the share was deleted or has expired?" : "Galbūt, viešinys buvo ištrintas arba nebegalioja?", - "Please select a time zone:" : "Pasirinkite laiko juostą:", - "Pick a time" : "Pasirinkite laiką", - "Pick a date" : "Pasirinkite datą", "from {formattedDate}" : "nuo {formattedDate}", "to {formattedDate}" : "iki {formattedDate}", "on {formattedDate}" : "{formattedDate}", @@ -305,28 +321,29 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate}, {formattedTime}", "Please enter a valid date" : "Įveskite teisingą datą", "Please enter a valid date and time" : "Įveskite teisingą datą ir laiką", + "Please select a time zone:" : "Pasirinkite laiko juostą:", + "Pick a time" : "Pasirinkite laiką", + "Pick a date" : "Pasirinkite datą", "Type to search time zone" : "Rašykite norėdami ieškoti laiko juostos", "Global" : "Visuotinis", + "An error occurred, unable to subscribe to calendar." : "Įvyko klaida, nepavyko prenumeruoti kalendoriaus.", + "Subscribed" : "Prenumeruotas", + "Subscribe" : "Prenumeruoti", + "Select a date" : "Pasirinkti datą", "Time:" : "Laikas:", "Personal" : "Asmeniniai", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Automatinis laiko juostos aptikimas nustatė, kad jūsų laiko juosta yra UTC.\nTaip, greičiausiai, yra dėl jūsų saityno naršyklės saugos priemonių.\nKalendoriaus nustatymuose prašome rankiniu būdu nusistatyti laiko juostą.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Jūsų konfigūruota laiko juosta ({timezoneId}) nerasta. Grįžtama į UTC.\nPrašome nustatymuose pakeisti savo laiko juostą ir pranešti apie šią problemą.", - "No more events today" : "Šiandien daugiau įvykių nėra", - "No upcoming events" : "Artėjančių įvykių nėra", - "Create a new event" : "Sukurti naują įvykį", - "[Today]" : "[Šiandien]", - "[Tomorrow]" : "[Rytoj]", - "[Yesterday]" : "[Vakar]", + "Edit event" : "Taisyti įvykį", "Event does not exist" : "Įvykio nėra", "Delete this occurrence" : "Ištrinti šį pasikartojimą", "Delete this and all future" : "Ištrinti šį ir visus būsimus", - "Details" : "Išsamiau", - "Attendees" : "Kviestiniai", - "Resources" : "Ištekliai", + "All day" : "Visą dieną", + "Untitled event" : "Įvykis be pavadinimo", "Close" : "Užverti", - "Show more details" : "Rodyti išsamiau", "Subscribe to {name}" : "Prenumeruoti {name}", "Export {name}" : "Eksportuoti {name}", + "Show availability" : "Rodyti prieinamumą", "Anniversary" : "Metinės", "Appointment" : "Paskyrimas", "Business" : "Verslas", @@ -354,7 +371,6 @@ OC.L10N.register( "on {time}" : "ties {time}", "on {time} ({timezoneId})" : "ties {time} ({timezoneId})", "Week {number} of {year}" : "{year}-ųjų metų {number} savaitė", - "Does not repeat" : "Nekartojamas", "Daily" : "Kasdien", "Weekly" : "Kas savaitę", "Monthly" : "Kas mėnesį", @@ -366,24 +382,24 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["ties {weekday}","ties {weekdays}","ties {weekdays}","ties {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["šiomis dienomis: {dayOfMonthList}","šiomis dienomis: {dayOfMonthList}","šiomis dienomis: {dayOfMonthList}","šiomis dienomis: {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "ties {ordinalNumber} {byDaySet}", - "in {monthNames}" : "ties {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "ties {monthNames}, ties {ordinalNumber} {byDaySet}", "until {untilDate}" : "iki {untilDate}", "_%n time_::_%n times_" : ["%n kartą","%n kartus","%n kartų","%n kartą"], - "Untitled event" : "Įvykis be pavadinimo", + "second" : "antras", + "third" : "trečias", + "fourth" : "ketvirtas", + "fifth" : "penktas", + "second to last" : "priešpaskutinis", + "last" : "paskutinis", "Untitled task" : "Užduotis be pavadinimo", "Please ask your administrator to enable the Tasks App." : "Paprašykite administratoriaus įjungti Užduočių programą.", - "Prev" : "Ankstesnis", - "Next" : "Kitas", - "Prev year" : "Ankstesni metai", - "Next year" : "Kiti metai", - "Year" : "Metai", "W" : "Sav.", "%n more" : "dar %n", "No events to display" : "Nėra rodytinų įvykių", "_+%n more_::_+%n more_" : ["+ dar %n","+ dar %n","+ dar %n","+ dar %n"], "No events" : "Įvykių nėra", "Create a new event or change the visible time-range" : "Sukurti naują įvykį ar keisti matomą laiko rėžį", + "Failed to save event" : "Nepavyko įrašyti įvykio", "Meeting room" : "Susitikimų kambarys", "Lecture hall" : "Paskaitų auditorija", "Seminar room" : "Seminarų salė", @@ -394,7 +410,6 @@ OC.L10N.register( "When shared hide this event" : "Bendrinant, slėpti šį įvykį", "The visibility of this event in shared calendars." : "Šio įvykio matomumas bendrinamuose kalendoriuose.", "Add a location" : "Pridėti vietą", - "Add a description" : "Pridėti aprašą", "Status" : "Būsena", "Confirmed" : "Patvirtintas", "Canceled" : "Atsisakytas", @@ -407,123 +422,19 @@ OC.L10N.register( "Add this as a new category" : "Pridėti tai kaip naują kategoriją", "Custom color" : "Tinkinta spalva", "Special color of this event. Overrides the calendar-color." : "Speciali šio įvykio spalva. Nustelbia kalendoriaus spalvą.", - "Chat room for event" : "Įvykio pokalbių kambarys", + "Error while sharing file" : "Klaida bendrinant failą", + "Error while sharing file with user" : "Klaida bendrinant failą su naudotoju", + "Attachment {fileName} already exists!" : "Priedas „{fileName}“ jau yra!", + "An error occurred during getting file information" : "Gaunant informaciją apie failą įvyko klaida", + "An error occurred, unable to delete the calendar." : "Įvyko klaida, nepavyko ištrinti kalendorių.", "Imported {filename}" : "Importuotas {filename}", - "Meditation" : "Apmąstymas", - "Relaxing" : "Atsipalaidavimas", - "Relax" : "Poilsis", - "Break" : "Pertrauka", - "Commuting" : "Važinėju", - "Finance" : "Finansai", - "Bank" : "Bankas", - "Money" : "Pinigai", - "Wedding" : "Vestuvės", - "Dog" : "Šuo", - "Concert" : "Koncertas", - "Festival" : "Festivalis", - "Theater" : "Teatras", - "Theatre" : "Teatras", - "Presentation" : "Pateiktis", - "Talk" : "Kalba", - "Speech" : "Kalbėjimas", - "Deadline" : "Galutinis terminas", - "Camping" : "Stovyklavimas", - "Camp" : "Stovykla", - "Election" : "Rinkimai", - "Voting" : "Balsavimas", - "Vote" : "Balsuoti", - "Barbecue" : "Piknikas", - "Barbeque" : "Barbekiu", - "Garden" : "Sodas", - "Farm" : "Ūkis", - "Movie" : "Filmas", - "Cinema" : "Kinas", - "Graduation" : "Diplomo įteikimas", - "Brainstorm" : "Įdėjų svarstymas", - "Review" : "Peržiūra", - "Baseball" : "Beisbolas", - "Meet" : "Susitikimas", - "Planning" : "Planavimas", - "Pointing" : "Nurodant", - "Retrospective" : "Retrospektyva", - "Office" : "Biuras", - "Contributor week" : "Bendradarbių savaitė", - "Mail" : "Paštas", - "Soccer" : "Futbolas", - "Football" : "Futbolo", - "Gaming" : "Žaidimas", - "Drive" : "Vairavimas", - "Driving" : "Vairavimas", - "Bicycle" : "Dviračiu", - "Cycle" : "Dviračiais", - "Biking" : "Dviratis", - "Podcast" : "Tinklalaidė", - "Basketball" : "Krepšinis", - "Fishing" : "Žvejyba", - "Hiking" : "Žygį", - "Hike" : "Žygis", - "Art" : "Menas", - "Exhibition" : "Paroda", - "Museum" : "Muziejus", - "Pilates" : "Pilatesas", - "Park" : "Parkas", - "Studying" : "Mokslai", - "Doctor" : "Daktaras", - "Health" : "Sveikata", - "Dentist" : "Stomatologas", - "Hospital" : "Ligoninė", - "Interview" : "Interviu", - "Training" : "Treniruotė", - "Practice" : "Pratimai", - "Sports" : "Sportas", - "Exercise" : "Mankšta", - "Work out" : "Sportuoti", - "Working out" : "Pratimus", - "Gym" : "Sporto klubas", - "Barber" : "Kirpėja", - "Haircut" : "Šukuosena", - "Hairdresser" : "Kirpėja", - "Exam" : "Egzaminas", - "Written test" : "Rašymo testas", - "Oral test" : "Kalbėjimo testas", - "Working" : "Darbas", - "New Years Eve" : "Naujieji metai", - "NYE" : "Naujųjų metų", - "Fireworks" : "Fejerverkai", - "Running" : "Bėgimas", - "Go for a run" : "Bėgimui", - "Marathon" : "Maratonas", - "Video-conference" : "Video konferencija", - "Conference-call" : "Konferencinis skambutis", - "Video-call" : "Video skambutis", - "Video-chat" : "Video pokalbis", - "Video-meeting" : "Video susitikimas", - "Call" : "Skambutis", - "Calling" : "Paskambinti", - "Christmas" : "Kalėdos", - "Conference" : "Konferencija", - "Pizza" : "Pica", - "Travelling" : "Kelionė", - "Trip" : "Kelionė", - "Journey" : "Reisas", - "Collaborate" : "Bendradarbiavimas", - "Pair" : "Pora", - "Lecture" : "Paskaita", - "Seminar" : "Seminaras", - "Teaching" : "Mokymai", - "Photograph" : "Nuotrauka", - "Party" : "Vakarėlis", - "Celebration" : "Šventė", - "Celebrate" : "Švęsti", - "Birthday" : "Gimtadienis", - "Shopping" : "Apsipirkti", - "Skate" : "Riedlentė", - "Skateboard" : "Riedlentė", - "Wine tasting" : "Vyno degustacija", - "Golf" : "Golfas", - "Dinner" : "Pietūs", - "Lunch" : "Priešpiečiai", + "This is an event reminder." : "Tai priminimas apie įvykį.", "Appointment not found" : "Susitikimas nerastas", - "User not found" : "Naudotojas nerastas" + "User not found" : "Naudotojas nerastas", + "Reminder" : "Priminimas", + "+ Add reminder" : "+ Pridėti priminimą", + "Available times:" : "Prieinami laikai:", + "Suggestions" : "Pasiūlymai", + "Details" : "Išsamiau" }, "nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);"); diff --git a/l10n/lt_LT.json b/l10n/lt_LT.json index dd88f68d62b3f685bed1cb4b4d99b0481c579818..325a40e646c9a0473d68392249b555cd0b7c7417 100644 --- a/l10n/lt_LT.json +++ b/l10n/lt_LT.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "Pateiktas el. pašto adresas yra per ilgas", "User-Session unexpectedly expired" : "Netikėtai pasibaigė naudotojo seanso galiojimas", "Provided email-address is not valid" : "Pateiktas el. pašto adresas nėra teisingas", "%s has published the calendar »%s«" : "%s paskelbė kalendorių „%s“", @@ -9,121 +10,133 @@ "Open »%s«" : "Atverti „%s“", "Cheers!" : "Sveikinimai!", "Upcoming events" : "Artėjantys įvykiai", + "No more events today" : "Šiandien daugiau įvykių nėra", + "No upcoming events" : "Artėjančių įvykių nėra", + "More events" : "Daugiau įvykių", + "%1$s with %2$s" : "%1$s su %2$s", + "Calendar" : "Kalendorius", "Appointments" : "Susitikimai", + "%1$s - %2$s" : "%1$s – %2$s", "Confirm" : "Patvirtinti", + "Description:" : "Aprašas:", "This confirmation link expires in %s hours." : "Ši patvirtinimo nuoroda baigia galioti po %s val.", - "Appointment:" : "Susitikimas:", "Date:" : "Data:", "Where:" : "Kur:", - "Description:" : "Aprašas:", - "Calendar" : "Kalendorius", + "Comment:" : "Komentaras:", "A Calendar app for Nextcloud" : "Kalendoriaus programėlė, skirta Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Kalendoriaus programėlė yra Nextcloud CalDAV serverio naudotojo sąsaja. Lengvai sinchronizuokite įvykius iš įvairių įrenginių, naudodami Nextcloud ir redaguokite juos internete.\n\n* 🚀 **Integracija su kitomis Nextcloud programėlėmis!** Šiuo metu tik su Adresatais - greitu laiku ir su kitomis.\n* 🌐 **WebCal palaikymas!** Norite savo kalendoriuje matyti mėgstamos komandos rungtynių dienas? Jokių problemų!\n* 🙋 **Kviestiniai!** Pakvieskite žmones prisijungti prie savo įvykių.\n* ⌚️ **Laisva/Užimta!** Matykite, kada jūsų kviestiniai gali susitikti.\n* ⏰ **Priminimai!** Gaukite įvykių signalus savo naršyklėje ar el. paštu.\n* 🔍 Paieška! Lengvai raskite įvykius.\n* ☑️ Užduotys! Matykite užduotis su galutinio termino diena tiesiogiai kalendoriuje.\n* 🙈 **Mes neišradinėjame dviračio!** Pagrįsta puikiomis [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) ir [fullcalendar](https://github.com/fullcalendar/fullcalendar) bibliotekomis.", "Previous day" : "Ankstesnė diena", "Previous week" : "Ankstesnė savaitė", + "Previous year" : "Ankstesni metai", "Previous month" : "Ankstesnis mėnuo", "Next day" : "Kita diena", "Next week" : "Kita savaitė", + "Next year" : "Kiti metai", "Next month" : "Kitas mėnuo", - "New event" : "Naujas įvykis", + "Create new event" : "Sukurti naują įvykį", + "Event" : "Įvykis", "Today" : "Šiandiena", "Day" : "Diena", "Week" : "Savaitė", "Month" : "Mėnuo", + "Year" : "Metai", "List" : "Sąrašas", + "Appointment link was copied to clipboard" : "Susitikimo nuoroda buvo nukopijuota į iškarpinę", + "Appointment link could not be copied to clipboard" : "Susitikimo nuorodos nepavyko nukopijuoti į iškarpinę", "Preview" : "Peržiūra", "Copy link" : "Kopijuoti nuorodą", "Edit" : "Taisyti", "Delete" : "Ištrinti", - "Appointment link was copied to clipboard" : "Susitikimo nuoroda buvo nukopijuota į iškarpinę", - "Appointment link could not be copied to clipboard" : "Susitikimo nuorodos nepavyko nukopijuoti į iškarpinę", - "Add new" : "Pridėti naują", - "Untitled calendar" : "Kalendorius be pavadinimo", - "Edit name" : "Taisyti pavadinimą", - "Saving name …" : "Įrašomas pavadinimas…", - "Edit color" : "Taisyti spalvą", - "Saving color …" : "Įrašoma spalva…", - "Copy private link" : "Kopijuoti privačią nuorodą", - "Export" : "Eksportuoti", - "Unshare from me" : "Nustoti bendrinti su manimi", + "Create new" : "Sukurti naują", "Disable calendar \"{calendar}\"" : "Išjungti kalendorių „{calendar}“", "Disable untitled calendar" : "Išjungti kalendorių be pavadinimo", "Enable calendar \"{calendar}\"" : "Įjungti kalendorių „{calendar}“", "Enable untitled calendar" : "Įjungti kalendorių be pavadinimo", "An error occurred, unable to change visibility of the calendar." : "Įvyko klaida, nepavyko pakeisti kalendoriaus matomumo.", - "An error occurred, unable to delete the calendar." : "Įvyko klaida, nepavyko ištrinti kalendorių.", - "Calendar link copied to clipboard." : "Kalendoriaus nuoroda nukopijuota į iškarpinę.", - "Calendar link could not be copied to clipboard." : "Kalendoriaus nuorodos nepavyko nukopijuoti į iškarpinę.", - "An error occurred, unable to rename the calendar." : "Įvyko klaida, nepavyko pervadinti kalendorių.", - "An error occurred, unable to change the calendar's color." : "Įvyko klaida, nepavyko pakeisti kalendoriaus spalvos.", + "Untitled calendar" : "Kalendorius be pavadinimo", + "Shared with you by" : "Su jumis bendrina", + "Edit and share calendar" : "Taisyti ir bendrinti kalendorių", + "Edit calendar" : "Taisyti kalendorių", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Kalendorius nustojamas bendrinti po {countdown} sekundės","Kalendorius nustojamas bendrinti po {countdown} sekundžių","Kalendorius nustojamas bendrinti po {countdown} sekundžių","Kalendorius nustojamas bendrinti po {countdown} sekundės"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Kalendorius ištrinamas po {countdown} sekundės","Kalendorius ištrinamas po {countdown} sekundžių","Kalendorius ištrinamas po {countdown} sekundžių","Kalendorius ištrinamas po {countdown} sekundės"], - "Share link" : "Bendrinimo nuoroda", - "Publish calendar" : "Paskelbti kalendorių", - "Publishing calendar" : "Skelbiamas kalendorius", - "Copy public link" : "Kopijuoti viešąją nuorodą", - "Send link to calendar via email" : "Siųsti el. paštu nuorodą į kalendorių", - "Enter one address" : "Įveskite vieną adresą", - "Sending email …" : "Siunčiamas el. laiškas…", - "Copy subscription link" : "Kopijuoti prenumeratos nuorodą", - "Copying link …" : "Kopijuojama nuoroda…", - "Copied link" : "Nuoroda nukopijuota", - "Could not copy link" : "Nepavyko nukopijuoti nuorodos", - "Copy embedding code" : "Kopijuoti įterpimo kodą", - "Copying code …" : "Kopijuojamas kodas…", - "Copied code" : "Kodas nukopijuotas", - "Could not copy code" : "Nepavyko nukopijuoti kodo", - "Delete share link" : "Ištrinti bendrinimo nuorodą", - "Deleting share link …" : "Ištrinama bendrinimo nuoroda…", - "An error occurred, unable to publish calendar." : "Įvyko klaida, nepavyko paskelbti kalendoriaus.", - "An error occurred, unable to send email." : "Įvyko klaida, nepavyko išsiųsti el. laiško.", - "Embed code copied to clipboard." : "Įterpimo kodas nukopijuotas į iškarpinę.", - "Embed code could not be copied to clipboard." : "Įterpimo kodo nepavyko nukopijuoti į iškarpinę.", - "Unpublishing calendar failed" : "Nepavyko paskelbti kalendoriaus", - "Share with users or groups" : "Bendrinti su naudotojais ar grupėmis", - "No users or groups" : "Nėra jokių naudotojų ar grupių", - "can edit" : "gali redaguoti", - "Unshare with {displayName}" : "Nustoti bendrinti su {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Įvyko klaida, nepavyko pakeisti kalendoriaus nebendrinimo.", - "An error occurred, unable to change the permission of the share." : "Įvykio klaida, nepavyko pakeisti viešinio leidimo.", - "+ New calendar" : "+ Naujas kalendorius", + "An error occurred, unable to create the calendar." : "Įvyko klaida, nepavyko sukurti kalendoriaus.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Įveskite teisingą nuorodą (prasidedančią http://, https://, webcal:// ar webcals://)", + "Calendars" : "Kalendoriai", + "Add new" : "Pridėti naują", "New calendar" : "Naujas kalendorius", "Name for new calendar" : "Naujo kalendoriaus pavadinimas", "Creating calendar …" : "Kuriamas kalendorius…", "New calendar with task list" : "Naujas kalendorius su užduočių sąrašu", "New subscription from link (read-only)" : "Nauja prenumerata iš nuorodos (tik skaitymui)", "Creating subscription …" : "Kuriama prenumerata…", - "An error occurred, unable to create the calendar." : "Įvyko klaida, nepavyko sukurti kalendoriaus.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Įveskite teisingą nuorodą (prasidedančią http://, https://, webcal:// ar webcals://)", + "Calendar link copied to clipboard." : "Kalendoriaus nuoroda nukopijuota į iškarpinę.", + "Calendar link could not be copied to clipboard." : "Kalendoriaus nuorodos nepavyko nukopijuoti į iškarpinę.", + "Copy subscription link" : "Kopijuoti prenumeratos nuorodą", + "Copying link …" : "Kopijuojama nuoroda…", + "Copied link" : "Nuoroda nukopijuota", + "Could not copy link" : "Nepavyko nukopijuoti nuorodos", + "Export" : "Eksportuoti", + "Unknown calendar" : "Nežinomas kalendorius", + "Could not load deleted calendars and objects" : "Nepavyko įkelti ištrintų kalendorių ir objektų", + "Could not delete calendar or event" : "Nepavyko ištrinti kalendoriaus ar įvykio", + "Could not restore calendar or event" : "Nepavyko atkurti kalendoriaus ar įvykio", + "Do you really want to empty the trash bin?" : "Ar tikrai norite išvalyti šiukšlinę?", + "Empty trash bin" : "Išvalyti šiukšlinę", "Trash bin" : "Šiukšlinė", - "Loading deleted elements." : "Įkeliami ištrinti elementai.", - "You do not have any deleted elements." : "Jūs neturite jokių ištrintų elementų.", + "Loading deleted items." : "Įkeliami ištrinti elementai.", + "You do not have any deleted items." : "Jūs neturite jokių ištrintų elementų.", "Name" : "Pavadinimas", "Deleted" : "Ištrintas", "Restore" : "Atkurti", "Delete permanently" : "Ištrinti negrįžtamai", - "Empty trash bin" : "Išvalyti šiukšlinę", - "Untitled element" : "Elementas be pavadinimo", - "Unknown calendar" : "Nežinomas kalendorius", - "Could not load deleted calendars and objects" : "Nepavyko įkelti ištrintų kalendorių ir objektų", - "Could not restore calendar or event" : "Nepavyko atkurti kalendoriaus ar įvykio", - "Do you really want to empty the trash bin?" : "Ar tikrai norite išvalyti šiukšlinę?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Elementai šiukšlinėje bus ištrinti po {numDays} dienos","Elementai šiukšlinėje bus ištrinti po {numDays} dienų","Elementai šiukšlinėje bus ištrinti po {numDays} dienų","Elementai šiukšlinėje bus ištrinti po {numDays} dienos"], "Could not update calendar order." : "Nepavyko atnaujinti kalendoriaus tvarkos.", + "Deck" : "Darbai", + "Hidden" : "Paslėpta", + "Internal link" : "Vidinė nuoroda", + "Copy internal link" : "Kopijuoti vidinę nuorodą", + "An error occurred, unable to publish calendar." : "Įvyko klaida, nepavyko paskelbti kalendoriaus.", + "An error occurred, unable to send email." : "Įvyko klaida, nepavyko išsiųsti el. laiško.", + "Embed code copied to clipboard." : "Įterpimo kodas nukopijuotas į iškarpinę.", + "Embed code could not be copied to clipboard." : "Įterpimo kodo nepavyko nukopijuoti į iškarpinę.", + "Unpublishing calendar failed" : "Nepavyko paskelbti kalendoriaus", + "Share link" : "Viešinio nuoroda", + "Copy public link" : "Kopijuoti viešąją nuorodą", + "Send link to calendar via email" : "Siųsti el. paštu nuorodą į kalendorių", + "Enter one address" : "Įveskite vieną adresą", + "Sending email …" : "Siunčiamas el. laiškas…", + "Copy embedding code" : "Kopijuoti įterpimo kodą", + "Copying code …" : "Kopijuojamas kodas…", + "Copied code" : "Kodas nukopijuotas", + "Could not copy code" : "Nepavyko nukopijuoti kodo", + "Delete share link" : "Ištrinti viešinio nuorodą", + "Deleting share link …" : "Ištrinama viešinio nuoroda …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Komanda)", + "An error occurred, unable to change the permission of the share." : "Įvykio klaida, nepavyko pakeisti viešinio leidimo.", + "can edit" : "gali redaguoti", + "Unshare with {displayName}" : "Nustoti bendrinti su {displayName}", + "Share with users or groups" : "Bendrinti su naudotojais ar grupėmis", + "No users or groups" : "Nėra jokių naudotojų ar grupių", + "Failed to save calendar name and color" : "Nepavyko įrašyti kalendoriaus pavadinimo ir spalvos", + "Calendar name …" : "Kalendoriaus pavadinimas…", + "Share calendar" : "Bendrinti kalendorių", + "Unshare from me" : "Nustoti bendrinti su manimi", + "Save" : "Įrašyti", "Import calendars" : "Importuoti kalendorius", "Please select a calendar to import into …" : "Pasirinkite kalendorių į kurį importuoti…", "Filename" : "Failo pavadinimas", "Calendar to import into" : "Kalendorius, į kurį importuoti", "Cancel" : "Atsisakyti", "_Import calendar_::_Import calendars_" : ["Importuoti kalendorių","Importuoti kalendorius","Importuoti kalendorius","Importuoti kalendorius"], + "Invalid location selected" : "Pasirinkta neteisinga vieta", + "Attachments folder successfully saved." : "Priedų aplankas sėkmingai įrašytas.", + "Error on saving attachments folder." : "Klaida įrašant priedų aplanką.", + "Default attachments location" : "Numatytoji priedų vieta", "{filename} could not be parsed" : "Nepavyko išnagrinėti {filename}", "No valid files found, aborting import" : "Nerasta jokių tinkamų failų, importavimas nutraukiamas", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Sėkmingai importuotas %n įvykis","Sėkmingai importuoti %n įvykiai","Sėkmingai importuota %n įvykių","Sėkmingai importuotas %n įvykis"], "Import partially failed. Imported {accepted} out of {total}." : "Importavimas dalinai nepavyko. Importuota {accepted} iš {total}.", "Automatic" : "Automatinė", "Automatic ({detected})" : "Automatinė ({detected})", "New setting was not saved successfully." : "Naujas nustatymas nebuvo sėkmingai įrašytas.", - "Shortcut overview" : "Nuorodų apžvalga", - "or" : "ar", "Navigation" : "Navigacija", "Previous period" : "Ankstesnis laikotarpis", "Next period" : "Kitas laikotarpis", @@ -131,6 +144,7 @@ "Day view" : "Dienos rodinys", "Week view" : "Savaitės rodinys", "Month view" : "Mėnesio rodinys", + "Year view" : "Metų rodinys", "List view" : "Sąrašo rodinys", "Actions" : "Veiksmai", "Create event" : "Sukurti įvykį", @@ -139,23 +153,25 @@ "Close editor" : "Užverti redaktorių", "Save edited event" : "Įrašyti taisytą įvykį", "Delete edited event" : "Ištrinti taisytą įvykį", + "Duplicate event" : "Dubliuoti įvykį", + "Shortcut overview" : "Nuorodų apžvalga", + "or" : "ar", + "Calendar settings" : "Kalendoriaus nustatymai", + "No reminder" : "Jokio priminimo", + "Failed to save default calendar" : "Nepavyko įrašyti numatytojo kalendoriaus", + "CalDAV link copied to clipboard." : "CalDAV nuoroda nukopijuota į iškarpinę.", + "CalDAV link could not be copied to clipboard." : "Nepavyko nukopijuoti CalDAV nuorodą į iškarpinę.", "Enable birthday calendar" : "Įjungti gimtadienių kalendorių", "Show tasks in calendar" : "Rodyti užduotis kalendoriuje", "Enable simplified editor" : "Įjungti supaprastintą redaktorių", - "Limit visible events per view" : "Riboti matomus įvykius pagal rodinį", + "Limit the number of events displayed in the monthly view" : "Riboti mėnesio rodinyje rodomų įvykių skaičių", "Show weekends" : "Rodyti savaitgalius", "Show week numbers" : "Rodyti savaičių numerius", "Default reminder" : "Numatytasis priminimas", "Copy primary CalDAV address" : "Kopijuoti pirminį CalDAV adresą", "Copy iOS/macOS CalDAV address" : "Kopijuoti iOS/macOS CalDAV adresą", "Personal availability settings" : "Asmeninio pasiekiamumo nustatymai", - "Show keyboard shortcuts" : "Rodyti klaviatūros kombinacijas", - "Calendar settings" : "Kalendoriaus nustatymai", - "No reminder" : "Jokio priminimo", - "CalDAV link copied to clipboard." : "CalDAV nuoroda nukopijuota į iškarpinę.", - "CalDAV link could not be copied to clipboard." : "Nepavyko nukopijuoti CalDAV nuorodą į iškarpinę.", - "Appointment was created successfully" : "Susitikimas buvo sėkmingai sukurtas", - "Appointment was updated successfully" : "Susitikimas buvo sėkmingai atnaujintas", + "Show keyboard shortcuts" : "Rodyti sparčiuosius klavišus", "_{duration} minute_::_{duration} minutes_" : ["{duration} minutė","{duration} minutės","{duration} minučių","{duration} minutė"], "0 minutes" : "0 minučių", "_{duration} hour_::_{duration} hours_" : ["{duration} valanda","{duration} valandos","{duration} valandų","{duration} valanda"], @@ -166,6 +182,7 @@ "To configure appointments, add your email address in personal settings." : "Norėdami konfigūruoti susitikimus, asmeniniuose nustatymuose pridėkite savo el. pašto adresą.", "Public – shown on the profile page" : "Viešas – rodomas profilio puslapyje", "Private – only accessible via secret link" : "Privatus – pasiekiamas tik per slaptą nuorodą", + "Update" : "Atnaujinti", "Location" : "Vieta", "Description" : "Aprašas", "Visibility" : "Matomumas", @@ -185,14 +202,13 @@ "Before the event" : "Prieš įvykį", "After the event" : "Po įvykio", "Planning restrictions" : "Planavimo apribojimai", - "Create appointment" : "Sukurti susitikimą", - "Edit appointment" : "Taisyti susitikimą", - "Save" : "Įrašyti", - "Update" : "Atnaujinti", "Your name" : "Jūsų vardas", "Your email address" : "Jūsų el. pašto adresas", "Please share anything that will help prepare for our meeting" : "Pasidalinkite informacija, kuri padės mums pasiruošti šiam susitikimui", - "Reminder" : "Priminimas", + "Back" : "Atgal", + "Create a new conversation" : "Sukurti naują pokalbį", + "on" : "šiomis dienomis", + "at" : ",", "before at" : "prieš įvykį, ties", "Notification" : "Pranešimas", "Email" : "Elektroninis laiškas", @@ -203,97 +219,97 @@ "Edit time" : "Taisyti laiką", "Save time" : "Įrašyti laiką", "Remove reminder" : "Šalinti priminimą", - "on" : "šiomis dienomis", - "at" : ",", - "+ Add reminder" : "+ Pridėti priminimą", "Add reminder" : "Pridėti priminimą", - "_second_::_seconds_" : ["sekundė","sekundės","sekundžių","sekundė"], - "_minute_::_minutes_" : ["minutė","minutės","minučių","minutė"], - "_hour_::_hours_" : ["valanda","valandos","valandų","valanda"], - "_day_::_days_" : ["diena","dienos","dienų","diena"], - "_week_::_weeks_" : ["savaitė","savaitės","savaičių","savaitė"], + "seconds" : "sekundes", + "minutes" : "minučių", + "hours" : "valandų", + "days" : "dienų", + "weeks" : "savaičių", + "Choose a file to add as attachment" : "Pasirinkite failą, kurį prisegsite prie laiško", + "Choose a file to share as a link" : "Pasirinkite failą, kurį bendrinsite kaip nuorodą", + "Add from Files" : "Pridėti iš Failų", + "Delete file" : "Ištrinti failą", + "_{count} attachment_::_{count} attachments_" : ["{count} priedas","{count} priedai","{count} priedų","{count} priedas"], "Available" : "Prieinamas", + "Invitation accepted" : "Pakvietimas priimtas", + "Failed to deliver invitation" : "Nepavyko pristatyti pakvietimo", "Checking availability" : "Tikrinamas prieinamumas", - "Availability of attendees, resources and rooms" : "Kviestinių, išteklių ir kambarių prieinamumas", + "chairperson" : "pirmininkas", "{organizer} (organizer)" : "{organizer} (organizatorius)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Kviestinių, išteklių ir kambarių prieinamumas", + "Out of office" : "Ne darbo vietoje", + "Attendees:" : "Kviestiniai:", + "Done" : "Atlikta", + "Room name" : "Kambario pavadinimas", "Free" : "Laisvas laikas", "Busy (tentative)" : "Užimtas laikas (preliminariai)", "Busy" : "Užimtas laikas", - "Out of office" : "Ne darbo vietoje", "Unknown" : "Nežinoma", "Accept" : "Priimti", "Decline" : "Atmesti", "Tentative" : "Preliminarus", - "Create Talk room for this event" : "Sukurti šiam įvykiui pokalbių kambarį", - "Show busy times" : "Rodyti užimtumo laikus", "No attendees yet" : "Kol kas kviestinių nėra", "Successfully appended link to talk room to description." : "Pokalbių kambario nuoroda sėkmingai pridėta į aprašą.", "Error creating Talk room" : "Klaida sukuriant pokalbių kambarį", - "Send email" : "Siųsti elektroninį laišką", + "Attendees" : "Kviestiniai", + "Remove group" : "Šalinti grupę", + "Remove attendee" : "Šalinti kviestinį", "Chairperson" : "Pirmininkas", "Required participant" : "Būtinas dalyvis", "Optional participant" : "Nebūtinas dalyvis", "Non-participant" : "Ne dalyvis", - "Remove attendee" : "Šalinti kviestinį", - "Search for emails, users or contacts" : "Ieškoti el. pašto adresų, naudotojų ar adresatų", + "_%n member_::_%n members_" : ["%n narys","%n nariai","%n narių","%n narys"], "No match found" : "Nerasta jokio atitikmens", "(organizer)" : "(organizatorius)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Norėdami siųsti pakvietimus ir apdoroti atsakymus, [linkopen]pridėkite į asmeninius nustatymus savo el. pašto adresą[linkclose].", "Remove color" : "Šalinti spalvą", "Event title" : "Įvykio pavadinimas", - "All day" : "Visą dieną", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Negalima modifikuoti „Visos dienos“ nustatymą įvykiams, kurie yra pasikartojimo rinkinio dalis.", - "from {startDate}" : "nuo {startDate}", - "from {startDate} at {startTime}" : "nuo {startDate}, {startTime}", - "to {endDate}" : "iki {endDate}", - "to {endDate} at {endTime}" : "iki {endDate}, {endTime}", + "From" : "Nuo", + "To" : "Kam", "Repeat" : "Kartoti", - "End repeat" : "Užbaigti kartojimą", - "Select to end repeat" : "Pasirinkite norėdami užbaigti kartojimą", + "_time_::_times_" : ["karto","kartų","kartų","karto"], "never" : "niekada", "on date" : "tam tikrą datą", "after" : "po", - "_time_::_times_" : ["karto","kartų","kartų","karto"], + "End repeat" : "Užbaigti kartojimą", + "Select to end repeat" : "Pasirinkite norėdami užbaigti kartojimą", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Šis įvykis yra pasikartojimo rinkinio pasikartojimo išimtis. Negalite jam pridėti pasikartojimo taisyklės.", "first" : "pirmas", - "third" : "trečias", - "fourth" : "ketvirtas", - "fifth" : "penktas", - "second to last" : "priešpaskutinis", - "last" : "paskutinis", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Pakeitimai pasikartojimo taisyklėje bus taikomi tik šiam ir būsimiems pasikartojimams.", "Repeat every" : "Kartoti kas", "By day of the month" : "Pagal mėnesio dienas", "On the" : "Ties", + "_day_::_days_" : ["diena","dienos","dienų","diena"], + "_week_::_weeks_" : ["savaitė","savaitės","savaičių","savaitė"], "_month_::_months_" : ["mėnesis","mėnesiai","mėnesių","mėnesis"], "_year_::_years_" : ["metai","metai","metų","metai"], "weekday" : "savaitės darbo dienos", "weekend day" : "savaitgalio diena", - "No recurrence" : "Be pasikartojimo", + "Does not repeat" : "Nekartojamas", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud nepalaiko pilnai šio įvykio pasikartojimo apibrėžimo. Jei taisysite pasikartojimo parinktis, tam tikri pasikartojimai gali būti prarasti.", - "Suggestions" : "Pasiūlymai", "No rooms or resources yet" : "Kol kas nėra kambarių ar išteklių", + "Resources" : "Ištekliai", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sėdima vieta","{seatingCapacity} sėdimos vietos","{seatingCapacity} sėdimų vietų","{seatingCapacity} sėdima vieta"], "Add resource" : "Pridėti išteklių", "Has a projector" : "Yra projektorius", "Has a whiteboard" : "Yra rašymo lenta", "Wheelchair accessible" : "Prieiga neįgaliųjų vežimėliu", "Remove resource" : "Šalinti išteklių", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sėdima vieta","{seatingCapacity} sėdimos vietos","{seatingCapacity} sėdimų vietų","{seatingCapacity} sėdima vieta"], - "Projector" : "Projektorius", - "Whiteboard" : "Rašymo lenta", "Search for resources or rooms" : "Ieškoti išteklių ar kambarių", "available" : "prieinamas", "unavailable" : "neprieinamas", + "Show all rooms" : "Rodyti visus kambarius", + "Projector" : "Projektorius", + "Whiteboard" : "Rašymo lenta", "Room type" : "Kambario tipas", "Any" : "Bet koks", - "More" : "Daugiau", - "Update this occurrence" : "Atnaujinti šį pasikartojimą", + "More details" : "Išsamiau", "Update this and all future" : "Atnaujinti šį ir visus būsimus", + "Update this occurrence" : "Atnaujinti šį pasikartojimą", "Public calendar does not exist" : "Viešojo kalendoriaus nėra", "Maybe the share was deleted or has expired?" : "Galbūt, viešinys buvo ištrintas arba nebegalioja?", - "Please select a time zone:" : "Pasirinkite laiko juostą:", - "Pick a time" : "Pasirinkite laiką", - "Pick a date" : "Pasirinkite datą", "from {formattedDate}" : "nuo {formattedDate}", "to {formattedDate}" : "iki {formattedDate}", "on {formattedDate}" : "{formattedDate}", @@ -303,28 +319,29 @@ "{formattedDate} at {formattedTime}" : "{formattedDate}, {formattedTime}", "Please enter a valid date" : "Įveskite teisingą datą", "Please enter a valid date and time" : "Įveskite teisingą datą ir laiką", + "Please select a time zone:" : "Pasirinkite laiko juostą:", + "Pick a time" : "Pasirinkite laiką", + "Pick a date" : "Pasirinkite datą", "Type to search time zone" : "Rašykite norėdami ieškoti laiko juostos", "Global" : "Visuotinis", + "An error occurred, unable to subscribe to calendar." : "Įvyko klaida, nepavyko prenumeruoti kalendoriaus.", + "Subscribed" : "Prenumeruotas", + "Subscribe" : "Prenumeruoti", + "Select a date" : "Pasirinkti datą", "Time:" : "Laikas:", "Personal" : "Asmeniniai", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Automatinis laiko juostos aptikimas nustatė, kad jūsų laiko juosta yra UTC.\nTaip, greičiausiai, yra dėl jūsų saityno naršyklės saugos priemonių.\nKalendoriaus nustatymuose prašome rankiniu būdu nusistatyti laiko juostą.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Jūsų konfigūruota laiko juosta ({timezoneId}) nerasta. Grįžtama į UTC.\nPrašome nustatymuose pakeisti savo laiko juostą ir pranešti apie šią problemą.", - "No more events today" : "Šiandien daugiau įvykių nėra", - "No upcoming events" : "Artėjančių įvykių nėra", - "Create a new event" : "Sukurti naują įvykį", - "[Today]" : "[Šiandien]", - "[Tomorrow]" : "[Rytoj]", - "[Yesterday]" : "[Vakar]", + "Edit event" : "Taisyti įvykį", "Event does not exist" : "Įvykio nėra", "Delete this occurrence" : "Ištrinti šį pasikartojimą", "Delete this and all future" : "Ištrinti šį ir visus būsimus", - "Details" : "Išsamiau", - "Attendees" : "Kviestiniai", - "Resources" : "Ištekliai", + "All day" : "Visą dieną", + "Untitled event" : "Įvykis be pavadinimo", "Close" : "Užverti", - "Show more details" : "Rodyti išsamiau", "Subscribe to {name}" : "Prenumeruoti {name}", "Export {name}" : "Eksportuoti {name}", + "Show availability" : "Rodyti prieinamumą", "Anniversary" : "Metinės", "Appointment" : "Paskyrimas", "Business" : "Verslas", @@ -352,7 +369,6 @@ "on {time}" : "ties {time}", "on {time} ({timezoneId})" : "ties {time} ({timezoneId})", "Week {number} of {year}" : "{year}-ųjų metų {number} savaitė", - "Does not repeat" : "Nekartojamas", "Daily" : "Kasdien", "Weekly" : "Kas savaitę", "Monthly" : "Kas mėnesį", @@ -364,24 +380,24 @@ "_on {weekday}_::_on {weekdays}_" : ["ties {weekday}","ties {weekdays}","ties {weekdays}","ties {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["šiomis dienomis: {dayOfMonthList}","šiomis dienomis: {dayOfMonthList}","šiomis dienomis: {dayOfMonthList}","šiomis dienomis: {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "ties {ordinalNumber} {byDaySet}", - "in {monthNames}" : "ties {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "ties {monthNames}, ties {ordinalNumber} {byDaySet}", "until {untilDate}" : "iki {untilDate}", "_%n time_::_%n times_" : ["%n kartą","%n kartus","%n kartų","%n kartą"], - "Untitled event" : "Įvykis be pavadinimo", + "second" : "antras", + "third" : "trečias", + "fourth" : "ketvirtas", + "fifth" : "penktas", + "second to last" : "priešpaskutinis", + "last" : "paskutinis", "Untitled task" : "Užduotis be pavadinimo", "Please ask your administrator to enable the Tasks App." : "Paprašykite administratoriaus įjungti Užduočių programą.", - "Prev" : "Ankstesnis", - "Next" : "Kitas", - "Prev year" : "Ankstesni metai", - "Next year" : "Kiti metai", - "Year" : "Metai", "W" : "Sav.", "%n more" : "dar %n", "No events to display" : "Nėra rodytinų įvykių", "_+%n more_::_+%n more_" : ["+ dar %n","+ dar %n","+ dar %n","+ dar %n"], "No events" : "Įvykių nėra", "Create a new event or change the visible time-range" : "Sukurti naują įvykį ar keisti matomą laiko rėžį", + "Failed to save event" : "Nepavyko įrašyti įvykio", "Meeting room" : "Susitikimų kambarys", "Lecture hall" : "Paskaitų auditorija", "Seminar room" : "Seminarų salė", @@ -392,7 +408,6 @@ "When shared hide this event" : "Bendrinant, slėpti šį įvykį", "The visibility of this event in shared calendars." : "Šio įvykio matomumas bendrinamuose kalendoriuose.", "Add a location" : "Pridėti vietą", - "Add a description" : "Pridėti aprašą", "Status" : "Būsena", "Confirmed" : "Patvirtintas", "Canceled" : "Atsisakytas", @@ -405,123 +420,19 @@ "Add this as a new category" : "Pridėti tai kaip naują kategoriją", "Custom color" : "Tinkinta spalva", "Special color of this event. Overrides the calendar-color." : "Speciali šio įvykio spalva. Nustelbia kalendoriaus spalvą.", - "Chat room for event" : "Įvykio pokalbių kambarys", + "Error while sharing file" : "Klaida bendrinant failą", + "Error while sharing file with user" : "Klaida bendrinant failą su naudotoju", + "Attachment {fileName} already exists!" : "Priedas „{fileName}“ jau yra!", + "An error occurred during getting file information" : "Gaunant informaciją apie failą įvyko klaida", + "An error occurred, unable to delete the calendar." : "Įvyko klaida, nepavyko ištrinti kalendorių.", "Imported {filename}" : "Importuotas {filename}", - "Meditation" : "Apmąstymas", - "Relaxing" : "Atsipalaidavimas", - "Relax" : "Poilsis", - "Break" : "Pertrauka", - "Commuting" : "Važinėju", - "Finance" : "Finansai", - "Bank" : "Bankas", - "Money" : "Pinigai", - "Wedding" : "Vestuvės", - "Dog" : "Šuo", - "Concert" : "Koncertas", - "Festival" : "Festivalis", - "Theater" : "Teatras", - "Theatre" : "Teatras", - "Presentation" : "Pateiktis", - "Talk" : "Kalba", - "Speech" : "Kalbėjimas", - "Deadline" : "Galutinis terminas", - "Camping" : "Stovyklavimas", - "Camp" : "Stovykla", - "Election" : "Rinkimai", - "Voting" : "Balsavimas", - "Vote" : "Balsuoti", - "Barbecue" : "Piknikas", - "Barbeque" : "Barbekiu", - "Garden" : "Sodas", - "Farm" : "Ūkis", - "Movie" : "Filmas", - "Cinema" : "Kinas", - "Graduation" : "Diplomo įteikimas", - "Brainstorm" : "Įdėjų svarstymas", - "Review" : "Peržiūra", - "Baseball" : "Beisbolas", - "Meet" : "Susitikimas", - "Planning" : "Planavimas", - "Pointing" : "Nurodant", - "Retrospective" : "Retrospektyva", - "Office" : "Biuras", - "Contributor week" : "Bendradarbių savaitė", - "Mail" : "Paštas", - "Soccer" : "Futbolas", - "Football" : "Futbolo", - "Gaming" : "Žaidimas", - "Drive" : "Vairavimas", - "Driving" : "Vairavimas", - "Bicycle" : "Dviračiu", - "Cycle" : "Dviračiais", - "Biking" : "Dviratis", - "Podcast" : "Tinklalaidė", - "Basketball" : "Krepšinis", - "Fishing" : "Žvejyba", - "Hiking" : "Žygį", - "Hike" : "Žygis", - "Art" : "Menas", - "Exhibition" : "Paroda", - "Museum" : "Muziejus", - "Pilates" : "Pilatesas", - "Park" : "Parkas", - "Studying" : "Mokslai", - "Doctor" : "Daktaras", - "Health" : "Sveikata", - "Dentist" : "Stomatologas", - "Hospital" : "Ligoninė", - "Interview" : "Interviu", - "Training" : "Treniruotė", - "Practice" : "Pratimai", - "Sports" : "Sportas", - "Exercise" : "Mankšta", - "Work out" : "Sportuoti", - "Working out" : "Pratimus", - "Gym" : "Sporto klubas", - "Barber" : "Kirpėja", - "Haircut" : "Šukuosena", - "Hairdresser" : "Kirpėja", - "Exam" : "Egzaminas", - "Written test" : "Rašymo testas", - "Oral test" : "Kalbėjimo testas", - "Working" : "Darbas", - "New Years Eve" : "Naujieji metai", - "NYE" : "Naujųjų metų", - "Fireworks" : "Fejerverkai", - "Running" : "Bėgimas", - "Go for a run" : "Bėgimui", - "Marathon" : "Maratonas", - "Video-conference" : "Video konferencija", - "Conference-call" : "Konferencinis skambutis", - "Video-call" : "Video skambutis", - "Video-chat" : "Video pokalbis", - "Video-meeting" : "Video susitikimas", - "Call" : "Skambutis", - "Calling" : "Paskambinti", - "Christmas" : "Kalėdos", - "Conference" : "Konferencija", - "Pizza" : "Pica", - "Travelling" : "Kelionė", - "Trip" : "Kelionė", - "Journey" : "Reisas", - "Collaborate" : "Bendradarbiavimas", - "Pair" : "Pora", - "Lecture" : "Paskaita", - "Seminar" : "Seminaras", - "Teaching" : "Mokymai", - "Photograph" : "Nuotrauka", - "Party" : "Vakarėlis", - "Celebration" : "Šventė", - "Celebrate" : "Švęsti", - "Birthday" : "Gimtadienis", - "Shopping" : "Apsipirkti", - "Skate" : "Riedlentė", - "Skateboard" : "Riedlentė", - "Wine tasting" : "Vyno degustacija", - "Golf" : "Golfas", - "Dinner" : "Pietūs", - "Lunch" : "Priešpiečiai", + "This is an event reminder." : "Tai priminimas apie įvykį.", "Appointment not found" : "Susitikimas nerastas", - "User not found" : "Naudotojas nerastas" + "User not found" : "Naudotojas nerastas", + "Reminder" : "Priminimas", + "+ Add reminder" : "+ Pridėti priminimą", + "Available times:" : "Prieinami laikai:", + "Suggestions" : "Pasiūlymai", + "Details" : "Išsamiau" },"pluralForm" :"nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);" } \ No newline at end of file diff --git a/l10n/lv.js b/l10n/lv.js index b564511155e62ca5ce1074a33b303e7107e1a90b..bc0313f9cec3f4d579b2c16a8bbb7b607a940a1f 100644 --- a/l10n/lv.js +++ b/l10n/lv.js @@ -1,46 +1,211 @@ OC.L10N.register( "calendar", { - "%s has published the calendar »%s«" : "%s dalijās ar kalendāru »%s«", + "Provided email-address is too long" : "Norādītā e-pasta adrese ir pārāk gara", + "User-Session unexpectedly expired" : "Lietotāja sesija ir negaidīti beigusies", + "Provided email-address is not valid" : "Norādītā e-pasta adrese nav derīga", + "%s has published the calendar »%s«" : "%s dalījās ar kalendāru »%s«", + "Unexpected error sending email. Please contact your administrator." : "E-pasta ziņojuma nosūtīšanas laikā bija neparedzēta kļūda. Lūgums sazināties ar savu pārvaldītāju.", + "Successfully sent email to %1$s" : "E-pasta ziņojums sekmīgi nosūtīts uz %1$s", "Hello," : "Sveicināti,", - "We wanted to inform you that %s has published the calendar »%s«." : "Mēs jūs vēlējāmies informēt, ka %s publicēja kalendāru »%s«.", + "We wanted to inform you that %s has published the calendar »%s«." : "Mēs vēlējāmies ziņot, ka %s padarīja pieejamu kalendāru »%s«.", "Open »%s«" : "Atvērt »%s«", "Cheers!" : "Priekā!", - "Confirm" : "Apstiprināt", + "Upcoming events" : "Gaidāmie notikumi", + "No more events today" : "Šodien vairs nav notikumu", + "No upcoming events" : "Nav gaidāmu notikumu", + "More events" : "Vairāk notikumu", + "%1$s with %2$s" : "%1$s ar %2$s", "Calendar" : "Kalendārs", - "A Calendar app for Nextcloud" : "Kalendāra lietotne priekš Nextcloud", - "New event" : "Jauns notikums", + "New booking {booking}" : "Jauna rezervācija {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) rezervēja tikšanos \"{config_display_name}\" {date_time}.", + "Appointments" : "Plānotās tikšanās", + "Schedule appointment \"%s\"" : " Ieplānot tikšanos \"%s\"", + "Schedule an appointment" : "Ieplānot tikšanos", + "Prepare for %s" : "Sagatavojieties %s", + "Follow up for %s" : "Seko līdzi %s", + "Your appointment \"%s\" with %s needs confirmation" : "Jūsu tikšanās \"%s\" ar %s nepieciešama apstiprināšana.", + "Dear %s, please confirm your booking" : " %s, lūgums apstiprināt savu rezervāciju", + "Confirm" : "Apstiprināt", + "This confirmation link expires in %s hours." : "Šī apstiprinājuma saites derīgums beigsies pēc %s stundām.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Ja tomēr ir vēlme atcelt tikšanos, lūgums sazināties ar rīkotāju, atbildot uz šo e-pasta ziņojumu vai apmeklējot tā profilu.", + "Your appointment \"%s\" with %s has been accepted" : "Jūsu plānotā tikšanās \"%s\" ar %s ir apstiprināta.", + "Dear %s, your booking has been accepted." : " %s, Jūsu rezervācija ir apstiprināta.", + "Appointment for:" : "Plānota tikšanās:", + "Date:" : "Datums:", + "You will receive a link with the confirmation email" : "Jūs saņemsiet saiti apstiprinājuma e-pastā.", + "Where:" : "Kur:", + "Comment:" : "Piebilde:", + "You have a new appointment booking \"%s\" from %s" : "Jums ir jauna tikšanās rezervācija \"%s\" no %s", + "Dear %s, %s (%s) booked an appointment with you." : " %s, %s (%s) rezervēja tikšanos ar Jums.", + "A Calendar app for Nextcloud" : "Nextcloud kalendāra lietotne", + "Previous day" : "Iepriekšējā diena", + "Previous week" : "Iepriekšējā nedēļa", + "Previous year" : "Iepriekšējais gads", + "Previous month" : "Iepriekšējais mēnesis", + "Next day" : "Nākamā diena", + "Next week" : "Nākamā nedēļa", + "Next year" : "Nākamais gads", + "Next month" : "Nākamais mēnesis", + "Create new event" : "Izveidot jaunu notikumu", + "Event" : "Notikums", "Today" : "Šodien", "Day" : "Diena", "Week" : "Nedēļa", "Month" : "Mēnesis", + "Year" : "Gads", "List" : "Saraksts", + "Appointment link was copied to clipboard" : "Plānotās tikšanās saite tika ievietota starpliktuvē.", + "Appointment link could not be copied to clipboard" : "Plānotās tikšanās saiti nevarēja ievietot starpliktuvē.", "Preview" : "Priekšskatīt", - "Copy link" : "Kopēt saiti", - "Edit" : "Rediģēt", - "Delete" : "Dzēst", - "Export" : "Eksportēt", - "Share link" : "Koplietot saiti", - "Share with users or groups" : "Koplietot ar lietotājiem vai grupām", - "No users or groups" : "Nav lietotāji vai grupas", - "can edit" : "var rediģēt", - "+ New calendar" : "+ Jauns kalendārs", + "Copy link" : "Ievietot saiti starpliktuvē", + "Edit" : "Labot", + "Delete" : "Izdzēst", + "Create new" : "Izveidot jaunu", + "Disable calendar \"{calendar}\"" : "Atspējot kalendāru \"{calendar}\"", + "Disable untitled calendar" : "Atspējot kalendāru bez nosaukuma", + "Enable calendar \"{calendar}\"" : "Iespējot kalendāru \"{calendar}\"", + "Enable untitled calendar" : "Iespējot kalendāru bez nosaukuma ", + "An error occurred, unable to change visibility of the calendar." : "Atgadījās kļūda, nevar mainīt kalendāra redzamību.", + "Untitled calendar" : "Kalendārs bez nosaukuma", + "Shared with you by" : "Koplietots ar Jums", + "Edit and share calendar" : "Labot un koplietot kalendāru", + "Edit calendar" : "Labot kalendāru", + "An error occurred, unable to create the calendar." : "Atgadījās kļūda, nevar izveidot kalendāru.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Lūdzu, ievadiet derīgu saiti (kas sākas ar http://, https://, webcal:// vai webcals://)", + "Calendars" : "Kalendāri", + "Add new" : "Pievienot jaunu", "New calendar" : "Jauns kalendārs", + "Name for new calendar" : "Jaunā kalendāra nosaukums", + "Creating calendar …" : "Izveido kalendāru ...", "New calendar with task list" : "Jauns kalendārs ar uzdevumu sarakstu", - "Name" : "Vārds", - "Deleted" : "Dzēstie", + "New subscription from link (read-only)" : "Jauna abonēšana no saites (tikai lasāms)", + "Creating subscription …" : "Izveido abonementu ...", + "Add public holiday calendar" : "Pievienot publisku brīvdienu kalendāru", + "Add custom public calendar" : "Pievienot pielāgotu publisko kalendāru", + "Calendar link copied to clipboard." : "Kalendāra saite ievietota starpliktuvē.", + "Calendar link could not be copied to clipboard." : "Kalendāra saiti nevarēja ievietot starpliktuvē.", + "Copy subscription link" : "Ievietot abonēšanas saiti starpliktuvē", + "Copying link …" : "Saite tiek ievietota starpliktuvē ...", + "Copied link" : "Kopēta saite", + "Could not copy link" : "Neizdevās ievietot saiti starpliktuvē", + "Export" : "Izgūt", + "Untitled item" : "Nenosaukts vienums", + "Unknown calendar" : "Nezināms kalendārs", + "Could not load deleted calendars and objects" : "Nevarēja ielādēt izdzēstos kalendārus un objektus", + "Could not restore calendar or event" : "Nevarēja atjaunot kalendāru vai notikumu", + "Do you really want to empty the trash bin?" : "Vai tiešām iztukšot atkritni?", + "Empty trash bin" : "Izdzēst atkritnes saturu", + "Trash bin" : "Miskaste", + "Loading deleted items." : "Ielādē izdzēstos vienumus.", + "You do not have any deleted items." : "Nav neviena izdzēsta vienuma.", + "Name" : "Nosaukums", + "Deleted" : "Izdzēsts", "Restore" : "Atjaunot", - "Delete permanently" : "Dzēst pavisam", + "Delete permanently" : "Neatgriezeniski izdzēst", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Atkritnes vienumi tiek izdzēsti pēc {numDays} dienām","Atkritnes vienumi tiek izdzēsti pēc {numDays} dienas","Atkritnes vienumi tiek izdzēsti pēc {numDays} dienām"], + "Could not update calendar order." : "Nevarēja atjaunināt kalendāra pasūtījumu.", + "Hidden" : "Paslēpts", + "Internal link" : "Iekšējā saite", + "A private link that can be used with external clients" : "Privāta saite, kas var tikt izmantota ar ārējiem klientiem.", + "Copy internal link" : "Ievietot iekšējo saiti starpliktuvē", + "An error occurred, unable to publish calendar." : "Atgadījās kļūda, neizdevās publiskot kalendāru.", + "An error occurred, unable to send email." : "Atgadījās kļūda, nevarēja nosūtīt e-pasta ziņojumu.", + "Embed code copied to clipboard." : "Iegulšanas kods ievietots starpliktuvē.", + "Embed code could not be copied to clipboard." : "Iegulšanas kodu nevarēja ievietot starpliktuvē.", + "Unpublishing calendar failed" : "Neizdevās atcelt kalendāra publicēšanu", + "Share link" : "Koplietot saiti", + "Copy public link" : "Ievietot publisko saiti starpliktuvē", + "Send link to calendar via email" : "Nosūtīt saiti kalendāra saiti e-pastā", + "Enter one address" : "Ievadiet vienu adresi", + "Sending email …" : "Sūta e-pastu ...", + "Copying code …" : "Kopē kodu ...", + "Copied code" : "Kopētais kods", + "Could not copy code" : "Neizdevās nokopēt kodu", + "Delete share link" : "Izdzēst kopīgojuma saiti", + "Deleting share link …" : "Dzēš koplietoto saiti ...", + "An error occurred while unsharing the calendar." : "Atgadījās kļūda kalendāra koplietošanas atcelšanas laikā.", + "An error occurred, unable to change the permission of the share." : "Atgadījās kļūda, nevar mainīt kopīgojuma atļauju.", + "can edit" : "var labot", + "Unshare with {displayName}" : "Atcelt kopīgošanu ar {displayName}", + "Share with users or groups" : "Koplietot ar lietotājiem vai grupām", + "No users or groups" : "Nav lietotāji vai grupas", + "Failed to save calendar name and color" : "Neizdevās saglabāt kalendāra nosaukumu un krāsu.", + "Calendar name …" : "Kalendāra nosaukums ...", + "Never show me as busy (set this calendar to transparent)" : "Nekad nerādīt mani kā aizņemtu (iestatīt šo kalendāru caurspīdīgu)", + "Share calendar" : "Koplietot kalendāru", + "Unshare from me" : "Atcelt koplietošanu no manis", + "Save" : "Saglabāt", + "Import calendars" : "Importēt kalendārus", + "Please select a calendar to import into …" : "Lūgums atlasīt kalendāru, kurā ievietot ...", "Filename" : "Datnes nosaukums", + "Calendar to import into" : "Kalendārs, kurā ievietot", "Cancel" : "Atcelt", + "Select the default location for attachments" : "Atlasīt pielikumu noklusējuma atrašanās vietu", + "Invalid location selected" : "Ir izvēlēta nederīga atrašanās vieta ", + "Attachments folder successfully saved." : "Pielikumu mape veiksmīgi saglabāta.", + "Error on saving attachments folder." : "Kļūda saglabājot pielikumu mapi.", + "Default attachments location" : "Pielikumu noklusējuma atrašanās vietas", + "No valid files found, aborting import" : "Nav atrastas derīgas datnes, ievietošana tiek pārtraukta.", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Veiksmīgi importēti %n notikumi","Veiksmīgi importēts %n notikums","Veiksmīgi importēti %n notikumi"], + "Import partially failed. Imported {accepted} out of {total}." : "Ievietošana daļēji neizdevās. Ievietoti {accepted} no {total}.", "Automatic" : "Automātisks", + "Automatic ({detected})" : "Automātiska ({detected})", + "New setting was not saved successfully." : "Jauna iestatījuma saglabāšana neizdevās.", + "Navigation" : "Navigācija", + "Previous period" : "Iepriekšējais laika posms", + "Next period" : "Nākamais periods", + "Views" : "Skatījumi", + "Day view" : "Dienas skats", + "Week view" : "Nedēļas skats", + "Month view" : "Mēneša skats", + "Year view" : "Gada skats", "List view" : "Saraksta izkārtojums", "Actions" : "Darbības", + "Create event" : "Izveidot notikumu", + "Show shortcuts" : "Rādīt saīsnes", + "Editor" : "Redaktors", + "Close editor" : "Aizvērt redaktoru", + "Save edited event" : "Saglabāt laboto notikumu", + "Delete edited event" : "Izdzēst laboto notikumu", + "Duplicate event" : "Pavairot notikumu", + "Shortcut overview" : "Īsceļu pārskats", + "or" : "vai", + "Calendar settings" : "Kalendāra iestatījumi", + "No reminder" : "Nav atgādinājuma", + "Failed to save default calendar" : "Neizdevās saglabāt noklusējuma kalendāru", + "CalDAV link copied to clipboard." : "Kalendāra saite ievietota starpliktuvē.", + "CalDAV link could not be copied to clipboard." : "Kalendāra saiti neizdevās ievietot starpliktuvē.", "Enable birthday calendar" : "Iespējot dzimšanas dienas kalendāru", + "Show tasks in calendar" : "Rādīt uzdevumus kalendārā", + "Enable simplified editor" : "Iespējot vienkāršoto redaktoru", + "Limit the number of events displayed in the monthly view" : "Ierobežot notikumu skaitu, kas tiek parādīti mēneša skatā", + "Show weekends" : "Rādīt nedēļas nogales", "Show week numbers" : "Rādīt nedēļu numurus", - "Location" : "Vieta", + "Default reminder" : "Noklusējuma atgādinājums", + "Copy primary CalDAV address" : "Kopēt primāro CalDAV adresi", + "Copy iOS/macOS CalDAV address" : "Kopēt IOS/macOS CalDAV adresi", + "Personal availability settings" : "Personiskās pieejamības iestatījumi", + "Show keyboard shortcuts" : "Rādīt tastatūras saīsnes taustiņus", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minūšu","{duration} minūte","{duration} minūtes"], + "0 minutes" : "0 minūtes", + "_{duration} hour_::_{duration} hours_" : ["{duration} stundu","{duration} stunda","{duration} stundas"], + "_{duration} day_::_{duration} days_" : ["{duration} dienas","{duration} diena","{duration} dienas"], + "To configure appointments, add your email address in personal settings." : "Lai konfigurētu pievienotos notikumus, personiskajos iestatījumos jāpievieno sava e-pasta adrese.", + "Public – shown on the profile page" : "Publiski - parādīts profilā", + "Private – only accessible via secret link" : "Privāts – pieejams tikai ar slepeno saiti", + "Update" : "Atjaunināt", + "Appointment name" : "Tikšanās nosaukums", + "Location" : "Atrašanās vieta", + "Create a Talk room" : "Izveidojiet Tērzēšanas istabu", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Neatkārtojama saite tiks izveidota katram aizņemtajam tikšanās laikam un tiks nosūtīta ar apstiprinājuma e-pasta ziņojumu.", "Description" : "Apraksts", + "Visibility" : "Redzamība", + "Duration" : "Ilgums", + "Additional calendars to check for conflicts" : "Papildu kalendāri nesaderību pārbaudīšanai", + "Pick time ranges where appointments are allowed" : "Izvēlieties laika intervālus, kurās ir atļautas tikšanās.", "to" : "kam", + "No times set" : "Laiks nav noteikts", "Add" : "Pievienot", "Monday" : "Pirmdiena", "Tuesday" : "Otrdiena", @@ -49,47 +214,252 @@ OC.L10N.register( "Friday" : "Piektdiena", "Saturday" : "Sestdiena", "Sunday" : "Svētdiena", - "Save" : "Saglabāt", - "Update" : "Atjaunināt", + "Add time before and after the event" : "Pievienot laiku pirms un pēc notikuma", + "Before the event" : "Pirms notikuma", + "After the event" : "Pēc notikuma", + "Planning restrictions" : "Plānošanas ierobežojumi", + "Limit how far in the future appointments can be booked" : "Ierobežot, cik tālu nākotnē var rezervēt plānotu tikšanos.", + "Please confirm your reservation" : "Lūgums apstiprināt savu rezervāciju", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Mēs nosūtījām e-pasta ziņojumu ar informāciju. Lūgums apstiprināt savu tikšanos ar e-pasta ziņojumā esošo saiti. Šo lapu tagad var aizvērt.", + "Your name" : "Tavs vārds", "Your email address" : "Jūsu e-pasta adrese", + "Please share anything that will help prepare for our meeting" : "Lūdzu, dalieties ar visu, kas palīdzēs sagatavoties mūsu sanāksmei", + "Could not book the appointment. Please try again later or contact the organizer." : "Neizdevās rezervēt tikšanos. Lūdzu, mēģiniet vēlreiz vēlāk vai sazinieties ar organizatoru.", + "Successfully added Talk conversation link to location." : "Talk sarunas saite sekmīgi pievienota atrašanās vietai.", + "Successfully added Talk conversation link to description." : "Talk sarunas saite sekmīgi pievienota aprakstam.", + "Failed to apply Talk room." : "Neizdevās pielietot Talk istabu.", + "Add Talk conversation" : "Pievienot Talk sarunu", + "Select conversation" : "Atlasīt sarunu", + "at" : "plkst.", + "before at" : "pirms ", "Notification" : "Paziņojums", "Email" : "E-pasts", + "Audio notification" : "Skaņas paziņojums", + "Other notification" : "Cits paziņojums", + "Relative to event" : "Attiecībā pret notikumu", + "On date" : "Datumā", + "Edit time" : "Labot laiku", + "Save time" : "Saglabāt laiku", + "Remove reminder" : "Noņemt atgādinājumu", + "Add reminder" : "Pievienot atgādinājumu", + "seconds" : "sekundes", + "minutes" : "minūtes", + "hours" : "stundas", + "days" : "dienas", + "weeks" : "nedēļas", + "Choose a file to add as attachment" : "Izvēlēties datni, ko pievienot kā pielikumu", + "Choose a file to share as a link" : "Jāizvēlas datne, ko kopīgot kā saiti", + "Attachment {name} already exist!" : "Pielikums {name} jau pastāv.", + "Could not upload attachment(s)" : "Neizdevās augšupielādēt pielikumu(s)", + "No attachments" : "Nav pielikumu", + "Add from Files" : "Pievienot no Datnēm", + "Upload from device" : "Augšupielādēt no ierīces", + "Delete file" : "Izdzēst datni", + "Suggested" : "Ieteikts", "Available" : "Pieejams", + "Invitation accepted" : "Ielūgums apstiprināts", + "Accepted {organizerName}'s invitation" : "Apstiprināts {organizerName} uzaicinājums", + "Participation marked as tentative" : "Dalība atzīmēta kā nenoteikta", + "Invitation is delegated" : "Uzaicinājums ir deleģēts", + "Not available" : "Nav pieejams", + "Invitation declined" : "Ielūgums noraidīts", + "Declined {organizerName}'s invitation" : "Noraidīts {organizerName} uzaicinājums", + "Failed to check availability" : "Neizdevās pārbaudīt pieejamību", + "Failed to deliver invitation" : "Uzaicinājumu neizdevās piegādāt", + "Awaiting response" : "Gaida atbildi", + "Checking availability" : "Pārbauda pieejamību", + "Has not responded to {organizerName}'s invitation yet" : "Vēl nav atbildējis uz {organizerName} uzaicinājumu", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Dalībnieku, resursu un telpu pieejamība", + "Out of office" : "Ārpus biroja", + "Done" : "Pabeigts", + "Room name" : "Sapulču telpas nosaukums", + "Free" : "Brīvs", + "Busy (tentative)" : "Aizņemts (nenoteikts)", "Busy" : "Aizņemts", "Unknown" : "Nezināms", + "Find a time" : "Atrast laiku", + "The invitation has been accepted successfully." : "Uzaicinājums ir veiksmīgi apstiprināts.", + "Failed to accept the invitation." : "Neizdevās apstiprināt uzaicinājumu.", + "The invitation has been declined successfully." : "Uzaicinājums ir veiksmīgi noraidīts.", + "Failed to decline the invitation." : "Neizdevās atteikt uzaicinājumu.", + "Your participation has been marked as tentative." : "Jūsu piedalīšanās ir atzīmēta kā nenoteikta.", + "Failed to set the participation status to tentative." : "Neizdevās iestatīt dalības stāvokli kā nenoteiktu.", "Accept" : "Pieņemt", "Decline" : "Noraidīt", "Tentative" : "Mēģinājums", - "Send email" : "Sūtīt e-pastu", - "All day" : "Visas dienas", + "No attendees yet" : "Vēl nav dalībnieku", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} uzaicināti, {confirmedCount} apstiprinājuši", + "Error creating Talk room" : "Notika kļūda, veidojot tērzēšanas istabu", + "Attendees" : "Dalībnieki", + "Remove group" : "Noņemt grupu", + "Remove attendee" : "Noņemt dalībnieku", + "Request reply" : "Pieprasīt atbildi", + "Chairperson" : "Priekšsēdētājs", + "Required participant" : "Nepieciešams dalībnieks", + "Optional participant" : "Papildu dalībnieks", + "Search for emails, users, contacts, contact groups or teams" : "Meklēt e-pasta adreses, lietotājus, kontaktpersonas, saziņas kopas vai komandas", + "Remove color" : "Noņemt krāsu", + "Event title" : "Notikuma nosaukums", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Nevar modificēt visas dienas iestatījumu notikumiem, kas ir daļa no atkārtojumu kopas.", + "From" : "No", + "To" : "Līdz", "Repeat" : "Atkārtot", "never" : "nekad", + "on date" : "datumā", "after" : "pēc", + "End repeat" : "Beigt atkārtošanu", + "Select to end repeat" : "Atlasīt, lai beigtu atkārtošanu", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Šis notikums ir atkārtojuma izņēmums no atkārtojumu kopas. Tam nevar pievienot atkārtojuma kārtulu.", + "first" : "pirmais", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Izmaiņas atkārtošanās kārtulai tiks piemērotas tikai šim un visiem turpmākajiem notikumiem.", + "Repeat every" : "Atkārtot katru", + "By day of the month" : "Mēneša dienā", + "weekday" : "darba diena", + "weekend day" : "brīvdiena", + "Does not repeat" : "Neatkārtojas", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Atkārtošanās definīcija šim notikumam Nextcloud nav pilnībā atbalstīta. Ja tiek labotas atkārtošanās iespējas, noteikti atkārtojošies notikumi var tikt zaudēti.", + "No rooms or resources yet" : "Vēl nav telpu vai resursu.", + "Resources" : "Resursi", + "Add resource" : "Pievienot resursu", + "Has a projector" : "Ir projektors", + "Has a whiteboard" : "Ir tāfele", + "Wheelchair accessible" : "Iespējams piekļūt ar ratiņkrēslu", + "Remove resource" : "Noņemt resursu", + "Search for resources or rooms" : "Meklēt resursus vai telpas", "available" : "pieejams", - "More" : "Vairāk", + "unavailable" : "nav pieejams", + "Projector" : "Projektors", + "Whiteboard" : "Tāfele", + "Room type" : "Telpas veids", + "Any" : "jebkurš", + "Minimum seating capacity" : "Mazākā sēdvietu ietilpība", + "More details" : "Izvērstāk", + "Update this and all future" : "Atjaunināt šo un visus turpmākos", + "Update this occurrence" : "Atjaunināt šo notikumu", + "Public calendar does not exist" : "Publiskais kalendārs nepastāv", + "Maybe the share was deleted or has expired?" : "Varbūt kopīgojums tika izdzēsts, vai arī ir beidzies tā derīgums?", + "from {formattedDate}" : "no {formattedDate}", + "to {formattedDate}" : "līdz {formattedDate}", + "from {formattedDate} at {formattedTime}" : "no {formattedDate} plkst. {formattedTime}", + "to {formattedDate} at {formattedTime}" : "līdz {formattedDate} plkst. {formattedTime}", + "on {formattedDate} at {formattedTime}" : "{formattedDate} plkst. {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} plkst. {formattedTime}", + "Please enter a valid date" : "Lūdzu ievadiet derīgu datumu", + "Please enter a valid date and time" : "Lūdzu ievadiet derīgu datumu un laiku", + "Please select a time zone:" : "Lūdzu, izvēlieties laika joslu:", + "Pick a time" : "Izvēlieties laiku", + "Pick a date" : "Izvēlieties datumu", + "Type to search time zone" : "Rakstīt, lai meklētu laika zonu", "Global" : "Globāls", + "Holidays in {region}" : "Brīvdienas {region}", + "An error occurred, unable to read public calendars." : "Atgadījās kļūda, nevarēja nolasīt publiskos kalendārus.", + "An error occurred, unable to subscribe to calendar." : "Atgadījās kļūda, neizdevās abonēt kalendāru.", + "Speak to the server administrator to resolve this issue." : "Jāsazinās ar servera pārvaldītāju, lai atrisinātu šo sarežģījumu.", + "Subscribed" : "Abonēts", + "Subscribe" : "Abonēt", + "Select slot" : "Izvēlieties laiku", + "The slot for your appointment has been confirmed" : "Vieta paredzētajam notikumam tika apstiprināta", + "Appointment Details:" : "Informācija par paredzēto tikšanos:", + "Time:" : "Laiks:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Paldies! Rezervācija no {startDate} līdz {endDate} tika apstiprināta.", + "Book another appointment:" : "Rezervēt vēl vienu plānotu tikšanos", + "Book an appointment with {name}" : "Rezervējiet plānotu tikšanos ar {name}", "Personal" : "Personīgs", - "Create a new event" : "Izveidot jaunu notikumu", - "Details" : "Detaļas", - "Attendees" : "Apmeklētāji", - "Resources" : "Resursi", + "Edit event" : "Rediģēt notikumu", + "Event does not exist" : "Notikums nepastāv", + "Duplicate" : "Pavairot", + "Delete this occurrence" : "Izdzēst šo notikumu", + "All day" : "Visas dienas", + "Managing shared access" : "Koplietotās piekļuves pārvaldība", + "Deny access" : "Liegt piekļuvi", + "Invite" : "Uzaicināt", + "_User requires access to your file_::_Users require access to your file_" : ["Lietotāji pieprasa piekļuvi Tavai datnei","Lietotājs pieprasa piekļuvi Tavai datnei","Lietotāji pieprasa piekļuvi Tavai datnei"], + "Untitled event" : "Nenosaukts notikums", "Close" : "Aizvērt", + "Subscribe to {name}" : "Abonēt {name}", + "Export {name}" : "Izgūt {name}", "Anniversary" : "Gadadiena", + "Appointment" : "Plānota tikšanās", + "Business" : "Komandējums", + "Education" : "Izglītība", + "Holiday" : "Brīvdiena", + "Meeting" : "Tikšanās", + "Miscellaneous" : "Dažādi", + "Non-working hours" : "Ārpus darba laika", + "Not in office" : "Ārpus biroja", + "Phone call" : "Telefona zvans", + "Sick day" : "Slimības diena", + "Special occasion" : "Īpašs notikums", + "Travel" : "Ceļojums", + "Vacation" : "Atvaļinājums", + "Midnight on the day the event starts" : "Pusnakts dienā, kad notiek notikums", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dienas pirms notikuma plkst. {formattedHourMinute}","%n dienu pirms notikuma plkst. {formattedHourMinute}","%n dienas pirms notikuma plkst. {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n nedēļas pirms notikuma plkst. {formattedHourMinute}","%n nedēļu pirms notikuma plkst. {formattedHourMinute}","%n nedēļas pirms notikuma plkst. {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "notikuma dienā plkst. {formattedHourMinute}", + "at the event's start" : "notikuma sākumā", + "at the event's end" : "notikuma beigās", + "{time} before the event starts" : "{time} pirms notikuma sākuma", + "{time} before the event ends" : "{time} pirms notikuma beigām", + "{time} after the event starts" : "{time} pēc notikuma sākuma", + "{time} after the event ends" : "{time} pēc notikuma beigām", "Week {number} of {year}" : "{number} nedēļa no {year}", "Daily" : "Katru dienu", "Weekly" : "Katru nedēļu", - "Next" : "Nākamā", + "Monthly" : "Ikmēneša", + "Yearly" : "Ik gadu", + "_on {weekday}_::_on {weekdays}_" : ["{weekdays}","{weekdays}","{weekdays}"], + "until {untilDate}" : "līdz {untilDate}", + "second" : "otrais", + "third" : "trešais", + "fourth" : "ceturtais", + "fifth" : "piektais", + "second to last" : "pirmspēdējais", + "last" : "pēdējais", + "Untitled task" : "Uzdevums bez nosaukuma", + "Please ask your administrator to enable the Tasks App." : "Lūgums vaicāt pārvaldītājam iespējot uzdevumu lietotni.", + "You are not allowed to edit this event as an attendee." : "Nav ļauts labot šo notikumu kā dalībniekam.", + "%n more" : "vēl %n ", + "No events to display" : "Nav notikumu, ko attēlot", + "_+%n more_::_+%n more_" : ["+ vēl %n","+ vēl %n","+ vēl %n"], + "No events" : "Nav notikumu", + "Create a new event or change the visible time-range" : "Izveidot jaunu notikumu vai mainīt redzamo laika diapazonu", + "Failed to save event" : "Neizdevās saglabāt notikumu", + "Meeting room" : "Sanāksmju telpa", + "Lecture hall" : "Lekciju zāle", + "Seminar room" : "Semināra telpa", "Other" : "Cits", - "When shared show full event" : "Ja koplietots, tad rādīt pilnu notikumu", - "When shared show only busy" : "Ja koplietots, tad rādīt tikai aizņemts", - "When shared hide this event" : "Ja koplietots, tad paslēpt notikumu", + "When shared show" : "Kad koplietots rāda", + "When shared show full event" : "Ja kopīgots, tad rādīt pilnu notikumu", + "When shared show only busy" : "Ja kopīgots, tad rādīt tikai aizņemtos", + "When shared hide this event" : "Ja kopīgots, tad paslēpt šo notikumu", + "The visibility of this event in shared calendars." : "Šī notikuma redzamība koplietotos kalendāros.", + "Add a location" : "Pievienot atrašanās vietu", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Pievienot aprakstu\n\n- Par ko ir šī tikšanās\n- Darba kārtības vienumi\n- Jebkas, kam dalībniekiem ir jāsagatavojas", "Status" : "Status", "Confirmed" : "Apstiprināts", + "Canceled" : "Atcelts", + "Confirmation about the overall status of the event." : "Apstiprinājums par kopējo notikuma stāvokli.", + "Show as" : "Rādīt kā", + "Take this event into account when calculating free-busy information." : "Ņemiet vērā šo notikumu, aprēķinot pieejamību vai aizņemtību.", "Categories" : "Kategorijas", - "Presentation" : "Prezentācija", - "Talk" : "Runāt", - "Mail" : "E-pasts", - "Birthday" : "Dzimšanas diena", - "User not found" : "Lietotājs nav atrasts" + "Categories help you to structure and organize your events." : "Kategorijas palīdz jums strukturēt un organizēt savus notikumus.", + "Search or add categories" : "Meklēt vai pievienot kategorijas", + "Add this as a new category" : "Pievienot kā jaunu kategoriju", + "Custom color" : "Pielāgota krāsa", + "Special color of this event. Overrides the calendar-color." : "Īpaša notikuma krāsa. Aizstāj kalendāra krāsu.", + "Error while sharing file" : "Kļūda datnes kopīgošanā", + "Error while sharing file with user" : "Kļūda datnes kopīgošanā ar lietotāju", + "Attachment {fileName} already exists!" : "Pielikums {fileName} jau pastāv.", + "An error occurred during getting file information" : "Kļūda datnes informācijas iegūšanas laikā", + "An error occurred, unable to delete the calendar." : "Atgadījās kļūda, neizdevās izdzēst kalendāru.", + "Imported {filename}" : "Importēts {filename}", + "This is an event reminder." : "Šis ir notikuma atgādinājums.", + "Appointment not found" : "Tikšanās nav atrasta", + "User not found" : "Lietotājs nav atrasts", + "Reminder" : "Atgādinājums", + "+ Add reminder" : "Pievienot atgādinājumu", + "Suggestions" : "Ieteikumi", + "Details" : "Informācija" }, "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);"); diff --git a/l10n/lv.json b/l10n/lv.json index de79c02dbd05bc13838a6a668d1acf5d495da4a2..de5214d0c222797a7c88322f8483a07776425c63 100644 --- a/l10n/lv.json +++ b/l10n/lv.json @@ -1,44 +1,209 @@ { "translations": { - "%s has published the calendar »%s«" : "%s dalijās ar kalendāru »%s«", + "Provided email-address is too long" : "Norādītā e-pasta adrese ir pārāk gara", + "User-Session unexpectedly expired" : "Lietotāja sesija ir negaidīti beigusies", + "Provided email-address is not valid" : "Norādītā e-pasta adrese nav derīga", + "%s has published the calendar »%s«" : "%s dalījās ar kalendāru »%s«", + "Unexpected error sending email. Please contact your administrator." : "E-pasta ziņojuma nosūtīšanas laikā bija neparedzēta kļūda. Lūgums sazināties ar savu pārvaldītāju.", + "Successfully sent email to %1$s" : "E-pasta ziņojums sekmīgi nosūtīts uz %1$s", "Hello," : "Sveicināti,", - "We wanted to inform you that %s has published the calendar »%s«." : "Mēs jūs vēlējāmies informēt, ka %s publicēja kalendāru »%s«.", + "We wanted to inform you that %s has published the calendar »%s«." : "Mēs vēlējāmies ziņot, ka %s padarīja pieejamu kalendāru »%s«.", "Open »%s«" : "Atvērt »%s«", "Cheers!" : "Priekā!", - "Confirm" : "Apstiprināt", + "Upcoming events" : "Gaidāmie notikumi", + "No more events today" : "Šodien vairs nav notikumu", + "No upcoming events" : "Nav gaidāmu notikumu", + "More events" : "Vairāk notikumu", + "%1$s with %2$s" : "%1$s ar %2$s", "Calendar" : "Kalendārs", - "A Calendar app for Nextcloud" : "Kalendāra lietotne priekš Nextcloud", - "New event" : "Jauns notikums", + "New booking {booking}" : "Jauna rezervācija {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) rezervēja tikšanos \"{config_display_name}\" {date_time}.", + "Appointments" : "Plānotās tikšanās", + "Schedule appointment \"%s\"" : " Ieplānot tikšanos \"%s\"", + "Schedule an appointment" : "Ieplānot tikšanos", + "Prepare for %s" : "Sagatavojieties %s", + "Follow up for %s" : "Seko līdzi %s", + "Your appointment \"%s\" with %s needs confirmation" : "Jūsu tikšanās \"%s\" ar %s nepieciešama apstiprināšana.", + "Dear %s, please confirm your booking" : " %s, lūgums apstiprināt savu rezervāciju", + "Confirm" : "Apstiprināt", + "This confirmation link expires in %s hours." : "Šī apstiprinājuma saites derīgums beigsies pēc %s stundām.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Ja tomēr ir vēlme atcelt tikšanos, lūgums sazināties ar rīkotāju, atbildot uz šo e-pasta ziņojumu vai apmeklējot tā profilu.", + "Your appointment \"%s\" with %s has been accepted" : "Jūsu plānotā tikšanās \"%s\" ar %s ir apstiprināta.", + "Dear %s, your booking has been accepted." : " %s, Jūsu rezervācija ir apstiprināta.", + "Appointment for:" : "Plānota tikšanās:", + "Date:" : "Datums:", + "You will receive a link with the confirmation email" : "Jūs saņemsiet saiti apstiprinājuma e-pastā.", + "Where:" : "Kur:", + "Comment:" : "Piebilde:", + "You have a new appointment booking \"%s\" from %s" : "Jums ir jauna tikšanās rezervācija \"%s\" no %s", + "Dear %s, %s (%s) booked an appointment with you." : " %s, %s (%s) rezervēja tikšanos ar Jums.", + "A Calendar app for Nextcloud" : "Nextcloud kalendāra lietotne", + "Previous day" : "Iepriekšējā diena", + "Previous week" : "Iepriekšējā nedēļa", + "Previous year" : "Iepriekšējais gads", + "Previous month" : "Iepriekšējais mēnesis", + "Next day" : "Nākamā diena", + "Next week" : "Nākamā nedēļa", + "Next year" : "Nākamais gads", + "Next month" : "Nākamais mēnesis", + "Create new event" : "Izveidot jaunu notikumu", + "Event" : "Notikums", "Today" : "Šodien", "Day" : "Diena", "Week" : "Nedēļa", "Month" : "Mēnesis", + "Year" : "Gads", "List" : "Saraksts", + "Appointment link was copied to clipboard" : "Plānotās tikšanās saite tika ievietota starpliktuvē.", + "Appointment link could not be copied to clipboard" : "Plānotās tikšanās saiti nevarēja ievietot starpliktuvē.", "Preview" : "Priekšskatīt", - "Copy link" : "Kopēt saiti", - "Edit" : "Rediģēt", - "Delete" : "Dzēst", - "Export" : "Eksportēt", - "Share link" : "Koplietot saiti", - "Share with users or groups" : "Koplietot ar lietotājiem vai grupām", - "No users or groups" : "Nav lietotāji vai grupas", - "can edit" : "var rediģēt", - "+ New calendar" : "+ Jauns kalendārs", + "Copy link" : "Ievietot saiti starpliktuvē", + "Edit" : "Labot", + "Delete" : "Izdzēst", + "Create new" : "Izveidot jaunu", + "Disable calendar \"{calendar}\"" : "Atspējot kalendāru \"{calendar}\"", + "Disable untitled calendar" : "Atspējot kalendāru bez nosaukuma", + "Enable calendar \"{calendar}\"" : "Iespējot kalendāru \"{calendar}\"", + "Enable untitled calendar" : "Iespējot kalendāru bez nosaukuma ", + "An error occurred, unable to change visibility of the calendar." : "Atgadījās kļūda, nevar mainīt kalendāra redzamību.", + "Untitled calendar" : "Kalendārs bez nosaukuma", + "Shared with you by" : "Koplietots ar Jums", + "Edit and share calendar" : "Labot un koplietot kalendāru", + "Edit calendar" : "Labot kalendāru", + "An error occurred, unable to create the calendar." : "Atgadījās kļūda, nevar izveidot kalendāru.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Lūdzu, ievadiet derīgu saiti (kas sākas ar http://, https://, webcal:// vai webcals://)", + "Calendars" : "Kalendāri", + "Add new" : "Pievienot jaunu", "New calendar" : "Jauns kalendārs", + "Name for new calendar" : "Jaunā kalendāra nosaukums", + "Creating calendar …" : "Izveido kalendāru ...", "New calendar with task list" : "Jauns kalendārs ar uzdevumu sarakstu", - "Name" : "Vārds", - "Deleted" : "Dzēstie", + "New subscription from link (read-only)" : "Jauna abonēšana no saites (tikai lasāms)", + "Creating subscription …" : "Izveido abonementu ...", + "Add public holiday calendar" : "Pievienot publisku brīvdienu kalendāru", + "Add custom public calendar" : "Pievienot pielāgotu publisko kalendāru", + "Calendar link copied to clipboard." : "Kalendāra saite ievietota starpliktuvē.", + "Calendar link could not be copied to clipboard." : "Kalendāra saiti nevarēja ievietot starpliktuvē.", + "Copy subscription link" : "Ievietot abonēšanas saiti starpliktuvē", + "Copying link …" : "Saite tiek ievietota starpliktuvē ...", + "Copied link" : "Kopēta saite", + "Could not copy link" : "Neizdevās ievietot saiti starpliktuvē", + "Export" : "Izgūt", + "Untitled item" : "Nenosaukts vienums", + "Unknown calendar" : "Nezināms kalendārs", + "Could not load deleted calendars and objects" : "Nevarēja ielādēt izdzēstos kalendārus un objektus", + "Could not restore calendar or event" : "Nevarēja atjaunot kalendāru vai notikumu", + "Do you really want to empty the trash bin?" : "Vai tiešām iztukšot atkritni?", + "Empty trash bin" : "Izdzēst atkritnes saturu", + "Trash bin" : "Miskaste", + "Loading deleted items." : "Ielādē izdzēstos vienumus.", + "You do not have any deleted items." : "Nav neviena izdzēsta vienuma.", + "Name" : "Nosaukums", + "Deleted" : "Izdzēsts", "Restore" : "Atjaunot", - "Delete permanently" : "Dzēst pavisam", + "Delete permanently" : "Neatgriezeniski izdzēst", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Atkritnes vienumi tiek izdzēsti pēc {numDays} dienām","Atkritnes vienumi tiek izdzēsti pēc {numDays} dienas","Atkritnes vienumi tiek izdzēsti pēc {numDays} dienām"], + "Could not update calendar order." : "Nevarēja atjaunināt kalendāra pasūtījumu.", + "Hidden" : "Paslēpts", + "Internal link" : "Iekšējā saite", + "A private link that can be used with external clients" : "Privāta saite, kas var tikt izmantota ar ārējiem klientiem.", + "Copy internal link" : "Ievietot iekšējo saiti starpliktuvē", + "An error occurred, unable to publish calendar." : "Atgadījās kļūda, neizdevās publiskot kalendāru.", + "An error occurred, unable to send email." : "Atgadījās kļūda, nevarēja nosūtīt e-pasta ziņojumu.", + "Embed code copied to clipboard." : "Iegulšanas kods ievietots starpliktuvē.", + "Embed code could not be copied to clipboard." : "Iegulšanas kodu nevarēja ievietot starpliktuvē.", + "Unpublishing calendar failed" : "Neizdevās atcelt kalendāra publicēšanu", + "Share link" : "Koplietot saiti", + "Copy public link" : "Ievietot publisko saiti starpliktuvē", + "Send link to calendar via email" : "Nosūtīt saiti kalendāra saiti e-pastā", + "Enter one address" : "Ievadiet vienu adresi", + "Sending email …" : "Sūta e-pastu ...", + "Copying code …" : "Kopē kodu ...", + "Copied code" : "Kopētais kods", + "Could not copy code" : "Neizdevās nokopēt kodu", + "Delete share link" : "Izdzēst kopīgojuma saiti", + "Deleting share link …" : "Dzēš koplietoto saiti ...", + "An error occurred while unsharing the calendar." : "Atgadījās kļūda kalendāra koplietošanas atcelšanas laikā.", + "An error occurred, unable to change the permission of the share." : "Atgadījās kļūda, nevar mainīt kopīgojuma atļauju.", + "can edit" : "var labot", + "Unshare with {displayName}" : "Atcelt kopīgošanu ar {displayName}", + "Share with users or groups" : "Koplietot ar lietotājiem vai grupām", + "No users or groups" : "Nav lietotāji vai grupas", + "Failed to save calendar name and color" : "Neizdevās saglabāt kalendāra nosaukumu un krāsu.", + "Calendar name …" : "Kalendāra nosaukums ...", + "Never show me as busy (set this calendar to transparent)" : "Nekad nerādīt mani kā aizņemtu (iestatīt šo kalendāru caurspīdīgu)", + "Share calendar" : "Koplietot kalendāru", + "Unshare from me" : "Atcelt koplietošanu no manis", + "Save" : "Saglabāt", + "Import calendars" : "Importēt kalendārus", + "Please select a calendar to import into …" : "Lūgums atlasīt kalendāru, kurā ievietot ...", "Filename" : "Datnes nosaukums", + "Calendar to import into" : "Kalendārs, kurā ievietot", "Cancel" : "Atcelt", + "Select the default location for attachments" : "Atlasīt pielikumu noklusējuma atrašanās vietu", + "Invalid location selected" : "Ir izvēlēta nederīga atrašanās vieta ", + "Attachments folder successfully saved." : "Pielikumu mape veiksmīgi saglabāta.", + "Error on saving attachments folder." : "Kļūda saglabājot pielikumu mapi.", + "Default attachments location" : "Pielikumu noklusējuma atrašanās vietas", + "No valid files found, aborting import" : "Nav atrastas derīgas datnes, ievietošana tiek pārtraukta.", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Veiksmīgi importēti %n notikumi","Veiksmīgi importēts %n notikums","Veiksmīgi importēti %n notikumi"], + "Import partially failed. Imported {accepted} out of {total}." : "Ievietošana daļēji neizdevās. Ievietoti {accepted} no {total}.", "Automatic" : "Automātisks", + "Automatic ({detected})" : "Automātiska ({detected})", + "New setting was not saved successfully." : "Jauna iestatījuma saglabāšana neizdevās.", + "Navigation" : "Navigācija", + "Previous period" : "Iepriekšējais laika posms", + "Next period" : "Nākamais periods", + "Views" : "Skatījumi", + "Day view" : "Dienas skats", + "Week view" : "Nedēļas skats", + "Month view" : "Mēneša skats", + "Year view" : "Gada skats", "List view" : "Saraksta izkārtojums", "Actions" : "Darbības", + "Create event" : "Izveidot notikumu", + "Show shortcuts" : "Rādīt saīsnes", + "Editor" : "Redaktors", + "Close editor" : "Aizvērt redaktoru", + "Save edited event" : "Saglabāt laboto notikumu", + "Delete edited event" : "Izdzēst laboto notikumu", + "Duplicate event" : "Pavairot notikumu", + "Shortcut overview" : "Īsceļu pārskats", + "or" : "vai", + "Calendar settings" : "Kalendāra iestatījumi", + "No reminder" : "Nav atgādinājuma", + "Failed to save default calendar" : "Neizdevās saglabāt noklusējuma kalendāru", + "CalDAV link copied to clipboard." : "Kalendāra saite ievietota starpliktuvē.", + "CalDAV link could not be copied to clipboard." : "Kalendāra saiti neizdevās ievietot starpliktuvē.", "Enable birthday calendar" : "Iespējot dzimšanas dienas kalendāru", + "Show tasks in calendar" : "Rādīt uzdevumus kalendārā", + "Enable simplified editor" : "Iespējot vienkāršoto redaktoru", + "Limit the number of events displayed in the monthly view" : "Ierobežot notikumu skaitu, kas tiek parādīti mēneša skatā", + "Show weekends" : "Rādīt nedēļas nogales", "Show week numbers" : "Rādīt nedēļu numurus", - "Location" : "Vieta", + "Default reminder" : "Noklusējuma atgādinājums", + "Copy primary CalDAV address" : "Kopēt primāro CalDAV adresi", + "Copy iOS/macOS CalDAV address" : "Kopēt IOS/macOS CalDAV adresi", + "Personal availability settings" : "Personiskās pieejamības iestatījumi", + "Show keyboard shortcuts" : "Rādīt tastatūras saīsnes taustiņus", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minūšu","{duration} minūte","{duration} minūtes"], + "0 minutes" : "0 minūtes", + "_{duration} hour_::_{duration} hours_" : ["{duration} stundu","{duration} stunda","{duration} stundas"], + "_{duration} day_::_{duration} days_" : ["{duration} dienas","{duration} diena","{duration} dienas"], + "To configure appointments, add your email address in personal settings." : "Lai konfigurētu pievienotos notikumus, personiskajos iestatījumos jāpievieno sava e-pasta adrese.", + "Public – shown on the profile page" : "Publiski - parādīts profilā", + "Private – only accessible via secret link" : "Privāts – pieejams tikai ar slepeno saiti", + "Update" : "Atjaunināt", + "Appointment name" : "Tikšanās nosaukums", + "Location" : "Atrašanās vieta", + "Create a Talk room" : "Izveidojiet Tērzēšanas istabu", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Neatkārtojama saite tiks izveidota katram aizņemtajam tikšanās laikam un tiks nosūtīta ar apstiprinājuma e-pasta ziņojumu.", "Description" : "Apraksts", + "Visibility" : "Redzamība", + "Duration" : "Ilgums", + "Additional calendars to check for conflicts" : "Papildu kalendāri nesaderību pārbaudīšanai", + "Pick time ranges where appointments are allowed" : "Izvēlieties laika intervālus, kurās ir atļautas tikšanās.", "to" : "kam", + "No times set" : "Laiks nav noteikts", "Add" : "Pievienot", "Monday" : "Pirmdiena", "Tuesday" : "Otrdiena", @@ -47,47 +212,252 @@ "Friday" : "Piektdiena", "Saturday" : "Sestdiena", "Sunday" : "Svētdiena", - "Save" : "Saglabāt", - "Update" : "Atjaunināt", + "Add time before and after the event" : "Pievienot laiku pirms un pēc notikuma", + "Before the event" : "Pirms notikuma", + "After the event" : "Pēc notikuma", + "Planning restrictions" : "Plānošanas ierobežojumi", + "Limit how far in the future appointments can be booked" : "Ierobežot, cik tālu nākotnē var rezervēt plānotu tikšanos.", + "Please confirm your reservation" : "Lūgums apstiprināt savu rezervāciju", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Mēs nosūtījām e-pasta ziņojumu ar informāciju. Lūgums apstiprināt savu tikšanos ar e-pasta ziņojumā esošo saiti. Šo lapu tagad var aizvērt.", + "Your name" : "Tavs vārds", "Your email address" : "Jūsu e-pasta adrese", + "Please share anything that will help prepare for our meeting" : "Lūdzu, dalieties ar visu, kas palīdzēs sagatavoties mūsu sanāksmei", + "Could not book the appointment. Please try again later or contact the organizer." : "Neizdevās rezervēt tikšanos. Lūdzu, mēģiniet vēlreiz vēlāk vai sazinieties ar organizatoru.", + "Successfully added Talk conversation link to location." : "Talk sarunas saite sekmīgi pievienota atrašanās vietai.", + "Successfully added Talk conversation link to description." : "Talk sarunas saite sekmīgi pievienota aprakstam.", + "Failed to apply Talk room." : "Neizdevās pielietot Talk istabu.", + "Add Talk conversation" : "Pievienot Talk sarunu", + "Select conversation" : "Atlasīt sarunu", + "at" : "plkst.", + "before at" : "pirms ", "Notification" : "Paziņojums", "Email" : "E-pasts", + "Audio notification" : "Skaņas paziņojums", + "Other notification" : "Cits paziņojums", + "Relative to event" : "Attiecībā pret notikumu", + "On date" : "Datumā", + "Edit time" : "Labot laiku", + "Save time" : "Saglabāt laiku", + "Remove reminder" : "Noņemt atgādinājumu", + "Add reminder" : "Pievienot atgādinājumu", + "seconds" : "sekundes", + "minutes" : "minūtes", + "hours" : "stundas", + "days" : "dienas", + "weeks" : "nedēļas", + "Choose a file to add as attachment" : "Izvēlēties datni, ko pievienot kā pielikumu", + "Choose a file to share as a link" : "Jāizvēlas datne, ko kopīgot kā saiti", + "Attachment {name} already exist!" : "Pielikums {name} jau pastāv.", + "Could not upload attachment(s)" : "Neizdevās augšupielādēt pielikumu(s)", + "No attachments" : "Nav pielikumu", + "Add from Files" : "Pievienot no Datnēm", + "Upload from device" : "Augšupielādēt no ierīces", + "Delete file" : "Izdzēst datni", + "Suggested" : "Ieteikts", "Available" : "Pieejams", + "Invitation accepted" : "Ielūgums apstiprināts", + "Accepted {organizerName}'s invitation" : "Apstiprināts {organizerName} uzaicinājums", + "Participation marked as tentative" : "Dalība atzīmēta kā nenoteikta", + "Invitation is delegated" : "Uzaicinājums ir deleģēts", + "Not available" : "Nav pieejams", + "Invitation declined" : "Ielūgums noraidīts", + "Declined {organizerName}'s invitation" : "Noraidīts {organizerName} uzaicinājums", + "Failed to check availability" : "Neizdevās pārbaudīt pieejamību", + "Failed to deliver invitation" : "Uzaicinājumu neizdevās piegādāt", + "Awaiting response" : "Gaida atbildi", + "Checking availability" : "Pārbauda pieejamību", + "Has not responded to {organizerName}'s invitation yet" : "Vēl nav atbildējis uz {organizerName} uzaicinājumu", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Dalībnieku, resursu un telpu pieejamība", + "Out of office" : "Ārpus biroja", + "Done" : "Pabeigts", + "Room name" : "Sapulču telpas nosaukums", + "Free" : "Brīvs", + "Busy (tentative)" : "Aizņemts (nenoteikts)", "Busy" : "Aizņemts", "Unknown" : "Nezināms", + "Find a time" : "Atrast laiku", + "The invitation has been accepted successfully." : "Uzaicinājums ir veiksmīgi apstiprināts.", + "Failed to accept the invitation." : "Neizdevās apstiprināt uzaicinājumu.", + "The invitation has been declined successfully." : "Uzaicinājums ir veiksmīgi noraidīts.", + "Failed to decline the invitation." : "Neizdevās atteikt uzaicinājumu.", + "Your participation has been marked as tentative." : "Jūsu piedalīšanās ir atzīmēta kā nenoteikta.", + "Failed to set the participation status to tentative." : "Neizdevās iestatīt dalības stāvokli kā nenoteiktu.", "Accept" : "Pieņemt", "Decline" : "Noraidīt", "Tentative" : "Mēģinājums", - "Send email" : "Sūtīt e-pastu", - "All day" : "Visas dienas", + "No attendees yet" : "Vēl nav dalībnieku", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} uzaicināti, {confirmedCount} apstiprinājuši", + "Error creating Talk room" : "Notika kļūda, veidojot tērzēšanas istabu", + "Attendees" : "Dalībnieki", + "Remove group" : "Noņemt grupu", + "Remove attendee" : "Noņemt dalībnieku", + "Request reply" : "Pieprasīt atbildi", + "Chairperson" : "Priekšsēdētājs", + "Required participant" : "Nepieciešams dalībnieks", + "Optional participant" : "Papildu dalībnieks", + "Search for emails, users, contacts, contact groups or teams" : "Meklēt e-pasta adreses, lietotājus, kontaktpersonas, saziņas kopas vai komandas", + "Remove color" : "Noņemt krāsu", + "Event title" : "Notikuma nosaukums", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Nevar modificēt visas dienas iestatījumu notikumiem, kas ir daļa no atkārtojumu kopas.", + "From" : "No", + "To" : "Līdz", "Repeat" : "Atkārtot", "never" : "nekad", + "on date" : "datumā", "after" : "pēc", + "End repeat" : "Beigt atkārtošanu", + "Select to end repeat" : "Atlasīt, lai beigtu atkārtošanu", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Šis notikums ir atkārtojuma izņēmums no atkārtojumu kopas. Tam nevar pievienot atkārtojuma kārtulu.", + "first" : "pirmais", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Izmaiņas atkārtošanās kārtulai tiks piemērotas tikai šim un visiem turpmākajiem notikumiem.", + "Repeat every" : "Atkārtot katru", + "By day of the month" : "Mēneša dienā", + "weekday" : "darba diena", + "weekend day" : "brīvdiena", + "Does not repeat" : "Neatkārtojas", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Atkārtošanās definīcija šim notikumam Nextcloud nav pilnībā atbalstīta. Ja tiek labotas atkārtošanās iespējas, noteikti atkārtojošies notikumi var tikt zaudēti.", + "No rooms or resources yet" : "Vēl nav telpu vai resursu.", + "Resources" : "Resursi", + "Add resource" : "Pievienot resursu", + "Has a projector" : "Ir projektors", + "Has a whiteboard" : "Ir tāfele", + "Wheelchair accessible" : "Iespējams piekļūt ar ratiņkrēslu", + "Remove resource" : "Noņemt resursu", + "Search for resources or rooms" : "Meklēt resursus vai telpas", "available" : "pieejams", - "More" : "Vairāk", + "unavailable" : "nav pieejams", + "Projector" : "Projektors", + "Whiteboard" : "Tāfele", + "Room type" : "Telpas veids", + "Any" : "jebkurš", + "Minimum seating capacity" : "Mazākā sēdvietu ietilpība", + "More details" : "Izvērstāk", + "Update this and all future" : "Atjaunināt šo un visus turpmākos", + "Update this occurrence" : "Atjaunināt šo notikumu", + "Public calendar does not exist" : "Publiskais kalendārs nepastāv", + "Maybe the share was deleted or has expired?" : "Varbūt kopīgojums tika izdzēsts, vai arī ir beidzies tā derīgums?", + "from {formattedDate}" : "no {formattedDate}", + "to {formattedDate}" : "līdz {formattedDate}", + "from {formattedDate} at {formattedTime}" : "no {formattedDate} plkst. {formattedTime}", + "to {formattedDate} at {formattedTime}" : "līdz {formattedDate} plkst. {formattedTime}", + "on {formattedDate} at {formattedTime}" : "{formattedDate} plkst. {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} plkst. {formattedTime}", + "Please enter a valid date" : "Lūdzu ievadiet derīgu datumu", + "Please enter a valid date and time" : "Lūdzu ievadiet derīgu datumu un laiku", + "Please select a time zone:" : "Lūdzu, izvēlieties laika joslu:", + "Pick a time" : "Izvēlieties laiku", + "Pick a date" : "Izvēlieties datumu", + "Type to search time zone" : "Rakstīt, lai meklētu laika zonu", "Global" : "Globāls", + "Holidays in {region}" : "Brīvdienas {region}", + "An error occurred, unable to read public calendars." : "Atgadījās kļūda, nevarēja nolasīt publiskos kalendārus.", + "An error occurred, unable to subscribe to calendar." : "Atgadījās kļūda, neizdevās abonēt kalendāru.", + "Speak to the server administrator to resolve this issue." : "Jāsazinās ar servera pārvaldītāju, lai atrisinātu šo sarežģījumu.", + "Subscribed" : "Abonēts", + "Subscribe" : "Abonēt", + "Select slot" : "Izvēlieties laiku", + "The slot for your appointment has been confirmed" : "Vieta paredzētajam notikumam tika apstiprināta", + "Appointment Details:" : "Informācija par paredzēto tikšanos:", + "Time:" : "Laiks:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Paldies! Rezervācija no {startDate} līdz {endDate} tika apstiprināta.", + "Book another appointment:" : "Rezervēt vēl vienu plānotu tikšanos", + "Book an appointment with {name}" : "Rezervējiet plānotu tikšanos ar {name}", "Personal" : "Personīgs", - "Create a new event" : "Izveidot jaunu notikumu", - "Details" : "Detaļas", - "Attendees" : "Apmeklētāji", - "Resources" : "Resursi", + "Edit event" : "Rediģēt notikumu", + "Event does not exist" : "Notikums nepastāv", + "Duplicate" : "Pavairot", + "Delete this occurrence" : "Izdzēst šo notikumu", + "All day" : "Visas dienas", + "Managing shared access" : "Koplietotās piekļuves pārvaldība", + "Deny access" : "Liegt piekļuvi", + "Invite" : "Uzaicināt", + "_User requires access to your file_::_Users require access to your file_" : ["Lietotāji pieprasa piekļuvi Tavai datnei","Lietotājs pieprasa piekļuvi Tavai datnei","Lietotāji pieprasa piekļuvi Tavai datnei"], + "Untitled event" : "Nenosaukts notikums", "Close" : "Aizvērt", + "Subscribe to {name}" : "Abonēt {name}", + "Export {name}" : "Izgūt {name}", "Anniversary" : "Gadadiena", + "Appointment" : "Plānota tikšanās", + "Business" : "Komandējums", + "Education" : "Izglītība", + "Holiday" : "Brīvdiena", + "Meeting" : "Tikšanās", + "Miscellaneous" : "Dažādi", + "Non-working hours" : "Ārpus darba laika", + "Not in office" : "Ārpus biroja", + "Phone call" : "Telefona zvans", + "Sick day" : "Slimības diena", + "Special occasion" : "Īpašs notikums", + "Travel" : "Ceļojums", + "Vacation" : "Atvaļinājums", + "Midnight on the day the event starts" : "Pusnakts dienā, kad notiek notikums", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dienas pirms notikuma plkst. {formattedHourMinute}","%n dienu pirms notikuma plkst. {formattedHourMinute}","%n dienas pirms notikuma plkst. {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n nedēļas pirms notikuma plkst. {formattedHourMinute}","%n nedēļu pirms notikuma plkst. {formattedHourMinute}","%n nedēļas pirms notikuma plkst. {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "notikuma dienā plkst. {formattedHourMinute}", + "at the event's start" : "notikuma sākumā", + "at the event's end" : "notikuma beigās", + "{time} before the event starts" : "{time} pirms notikuma sākuma", + "{time} before the event ends" : "{time} pirms notikuma beigām", + "{time} after the event starts" : "{time} pēc notikuma sākuma", + "{time} after the event ends" : "{time} pēc notikuma beigām", "Week {number} of {year}" : "{number} nedēļa no {year}", "Daily" : "Katru dienu", "Weekly" : "Katru nedēļu", - "Next" : "Nākamā", + "Monthly" : "Ikmēneša", + "Yearly" : "Ik gadu", + "_on {weekday}_::_on {weekdays}_" : ["{weekdays}","{weekdays}","{weekdays}"], + "until {untilDate}" : "līdz {untilDate}", + "second" : "otrais", + "third" : "trešais", + "fourth" : "ceturtais", + "fifth" : "piektais", + "second to last" : "pirmspēdējais", + "last" : "pēdējais", + "Untitled task" : "Uzdevums bez nosaukuma", + "Please ask your administrator to enable the Tasks App." : "Lūgums vaicāt pārvaldītājam iespējot uzdevumu lietotni.", + "You are not allowed to edit this event as an attendee." : "Nav ļauts labot šo notikumu kā dalībniekam.", + "%n more" : "vēl %n ", + "No events to display" : "Nav notikumu, ko attēlot", + "_+%n more_::_+%n more_" : ["+ vēl %n","+ vēl %n","+ vēl %n"], + "No events" : "Nav notikumu", + "Create a new event or change the visible time-range" : "Izveidot jaunu notikumu vai mainīt redzamo laika diapazonu", + "Failed to save event" : "Neizdevās saglabāt notikumu", + "Meeting room" : "Sanāksmju telpa", + "Lecture hall" : "Lekciju zāle", + "Seminar room" : "Semināra telpa", "Other" : "Cits", - "When shared show full event" : "Ja koplietots, tad rādīt pilnu notikumu", - "When shared show only busy" : "Ja koplietots, tad rādīt tikai aizņemts", - "When shared hide this event" : "Ja koplietots, tad paslēpt notikumu", + "When shared show" : "Kad koplietots rāda", + "When shared show full event" : "Ja kopīgots, tad rādīt pilnu notikumu", + "When shared show only busy" : "Ja kopīgots, tad rādīt tikai aizņemtos", + "When shared hide this event" : "Ja kopīgots, tad paslēpt šo notikumu", + "The visibility of this event in shared calendars." : "Šī notikuma redzamība koplietotos kalendāros.", + "Add a location" : "Pievienot atrašanās vietu", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Pievienot aprakstu\n\n- Par ko ir šī tikšanās\n- Darba kārtības vienumi\n- Jebkas, kam dalībniekiem ir jāsagatavojas", "Status" : "Status", "Confirmed" : "Apstiprināts", + "Canceled" : "Atcelts", + "Confirmation about the overall status of the event." : "Apstiprinājums par kopējo notikuma stāvokli.", + "Show as" : "Rādīt kā", + "Take this event into account when calculating free-busy information." : "Ņemiet vērā šo notikumu, aprēķinot pieejamību vai aizņemtību.", "Categories" : "Kategorijas", - "Presentation" : "Prezentācija", - "Talk" : "Runāt", - "Mail" : "E-pasts", - "Birthday" : "Dzimšanas diena", - "User not found" : "Lietotājs nav atrasts" + "Categories help you to structure and organize your events." : "Kategorijas palīdz jums strukturēt un organizēt savus notikumus.", + "Search or add categories" : "Meklēt vai pievienot kategorijas", + "Add this as a new category" : "Pievienot kā jaunu kategoriju", + "Custom color" : "Pielāgota krāsa", + "Special color of this event. Overrides the calendar-color." : "Īpaša notikuma krāsa. Aizstāj kalendāra krāsu.", + "Error while sharing file" : "Kļūda datnes kopīgošanā", + "Error while sharing file with user" : "Kļūda datnes kopīgošanā ar lietotāju", + "Attachment {fileName} already exists!" : "Pielikums {fileName} jau pastāv.", + "An error occurred during getting file information" : "Kļūda datnes informācijas iegūšanas laikā", + "An error occurred, unable to delete the calendar." : "Atgadījās kļūda, neizdevās izdzēst kalendāru.", + "Imported {filename}" : "Importēts {filename}", + "This is an event reminder." : "Šis ir notikuma atgādinājums.", + "Appointment not found" : "Tikšanās nav atrasta", + "User not found" : "Lietotājs nav atrasts", + "Reminder" : "Atgādinājums", + "+ Add reminder" : "Pievienot atgādinājumu", + "Suggestions" : "Ieteikumi", + "Details" : "Informācija" },"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);" } \ No newline at end of file diff --git a/l10n/mk.js b/l10n/mk.js index e699c85133b8d8e2a61b4256c15fa2aedef4ef9e..955c7e016259a833945c35e415ea98631e24bff4 100644 --- a/l10n/mk.js +++ b/l10n/mk.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Внесената адреса на е-пошта е премногу долга", "User-Session unexpectedly expired" : "Корисничката-сесија е застарена", "Provided email-address is not valid" : "Адресата на е-пошта не е правилно внесена", "%s has published the calendar »%s«" : "%s Објави календар »%s«", @@ -11,129 +12,153 @@ OC.L10N.register( "Open »%s«" : "Отвори »%s«", "Cheers!" : "Поздрав!", "Upcoming events" : "Престојни настани", + "No more events today" : "Нема настани за денес", + "No upcoming events" : "Нема престојни настани", + "More events" : "Повеќе настани", + "%1$s with %2$s" : "%1$s со %2$s", + "Calendar" : "Календар", + "New booking {booking}" : "Нова резервација {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) закажа состанок \"{config_display_name}\" на {date_time}.", "Appointments" : "Состаноци", "Schedule appointment \"%s\"" : "Закажан состанок \"%s\"", "Schedule an appointment" : "Закажи состанок", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Подготовки за %s", "Follow up for %s" : "Следи за %s", - "Your appointment \"%s\" needs confirmation" : "Потребна е потврда за состанокот \"%s\"", + "Your appointment \"%s\" with %s needs confirmation" : "Потребна е потврда за состанокот \"%s\" со %s", "Dear %s, please confirm your booking" : "Поритуван/а %s, ве молиме потврдете ја вашата резервација", "Confirm" : "Потврди", + "Description:" : "Опис:", "This confirmation link expires in %s hours." : "Овој линк за потврда истекува за %s часа.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Доколку сепак сакате да го откажете терминот, ве молиме контактирајте го вашиот организатор.", - "Appointment:" : "Состанок:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "И покрај се, ако сакате да го откажете состанокот, контактирајте го организаторот со тоа што ќе одговорите на оваа е-пошта или посетете го неговиот профил", + "Your appointment \"%s\" with %s has been accepted" : "Состанокот \"%s\" со %s е прифатен", + "Dear %s, your booking has been accepted." : "Почитуван/а %s, Вашата резервација е прифатена.", + "Appointment for:" : "Состанок за:", "Date:" : "Датум:", + "You will receive a link with the confirmation email" : "Ќе добиете линк со потврда на е-пошта", "Where:" : "Каде: ", - "Description:" : "Опис:", - "Calendar" : "Календар", + "Comment:" : "Коментар:", + "You have a new appointment booking \"%s\" from %s" : "Имате нов закажан состанок \"%s\" од %s", + "Dear %s, %s (%s) booked an appointment with you." : "Почитуван/а %s, %s (%s) закажа состанок со вас.", "A Calendar app for Nextcloud" : "Календар апликација за Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Апликацијата Calendar е кориснички интерфејс за серверот CalDAV на Nextcloud. Лесно синхронизирајте настани од различни уреди со вашиот Nextcloud и уредувајте ги онлајн.\n\n* 🚀 **Интеграција со други апликации Nextcloud!** Моментално Контакти - претстојат повеќе.\n* 🌐 **WebCal поддршка!** Сакате да ги видите натпреварите на вашиот омилен тим во вашиот календар? Нема проблем!\n* 🙋 **Присутни!** Поканете луѓе на вашите настани\n* ⌚️ **Слободно/Зафатено!** Погледнете кога вашите присутни се достапни за средба\n* ⏰ **Потсетници!** Добијте аларми за настани во вашиот прелистувач и преку е-пошта\n* 🔍 Барај! Најдете ги вашите настани лесно\n* ☑️ Задачи! Погледнете ги задачите со датум на доспевање директно во календарот\n* 🙈 **Ние не го измислуваме повторно тркалото!** Врз основа на одличната [c-dav библиотека](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/ mozilla-comm/ical.js) и библиотеки [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Предходен ден", "Previous week" : "Предходна недела", + "Previous year" : "Предходна година", "Previous month" : "Предходен месец", "Next day" : "Следен ден", "Next week" : "Следна недела", + "Next year" : "Следна година", "Next month" : "Следен месец", - "New event" : "Нов настан", + "Create new event" : "Креирај нов настан", + "Event" : "Настан", "Today" : "Денес", "Day" : "Ден", "Week" : "Недела", "Month" : "Месец", + "Year" : "Година", "List" : "Лист", + "Appointment link was copied to clipboard" : "Линкот за состанокот е копиран во клипборд", + "Appointment link could not be copied to clipboard" : "Линкот за состанокот неможе за се копира во клипборд", "Preview" : "Преглед", "Copy link" : "Копирај линк", "Edit" : "Уреди", "Delete" : "Избриши", - "Appointment link was copied to clipboard" : "Линкот за состанокот е копиран во клипборд", - "Appointment link could not be copied to clipboard" : "Линкот за состанокот неможе за се копира во клипборд", - "Add new" : "Додади нов", - "Untitled calendar" : "Неименуван календар", - "Edit name" : "Уреди име", - "Saving name …" : "Зачувување име …", - "Edit color" : "Уреди бои", - "Saving color …" : "Зачувување боја …", - "Copy private link" : "Копирај приватен линк", - "Export" : "Извези", - "Unshare from me" : "Не споделувај со мене", + "Create new" : "Креирај нова", "Disable calendar \"{calendar}\"" : "Оневозможи календар \"{calendar}\"", "Disable untitled calendar" : "Оневозможи неименуван календар", "Enable calendar \"{calendar}\"" : "Овозможи календар \"{calendar}\"", "Enable untitled calendar" : "Овозможи неименуван календар", "An error occurred, unable to change visibility of the calendar." : "Настана грешка, неможе да се промени видливоста на календарот.", - "An error occurred, unable to delete the calendar." : "Настана грешка, неможе да се избрише календарот.", - "Calendar link copied to clipboard." : "Линк до календарот е копиран во клипборд.", - "Calendar link could not be copied to clipboard." : "Линк до календарот неможе да се копира во клипборд.", - "An error occurred, unable to rename the calendar." : "Настана грешка, неможе да се преименува календарот.", - "An error occurred, unable to change the calendar's color." : "Настана грешка, неможе да се променат боите на календарот.", + "Untitled calendar" : "Неименуван календар", + "Shared with you by" : "Споделено со вас од", + "Edit and share calendar" : "Уреди и сподели календар", + "Edit calendar" : "Уреди календар", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Отстранување на споделување на календар за 1 секунда","Отстранување на споделување на календар за {countdown} секунди"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Бришење на календарот за 1 секунда","Бришење на календарот за {countdown} секунди"], + "An error occurred, unable to create the calendar." : "Настана грешка, неможе да се креира календар.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Внесете валиден линк (започнувајчи со http://, https://, webcal://, или webcals://)", + "Calendars" : "Календари", + "Add new" : "Додади нов", + "New calendar" : "Нов календар", + "Name for new calendar" : "Име за нов календар", + "Creating calendar …" : "Креирање календар …", + "New calendar with task list" : "Нов календар со листа на задачи", + "New subscription from link (read-only)" : "Нова претплата од линк (само за читање)", + "Creating subscription …" : "Креирање претплата  …", + "Add public holiday calendar" : "Додади календар со државни празници", + "Calendar link copied to clipboard." : "Линк до календарот е копиран во клипборд.", + "Calendar link could not be copied to clipboard." : "Линк до календарот неможе да се копира во клипборд.", + "Copy subscription link" : "Копирај линк за претплата", + "Copying link …" : "Копирање линк …", + "Copied link" : "Линкот е копиран", + "Could not copy link" : "Неможе да се копира линкот", + "Export" : "Извези", + "Untitled item" : "Неименуваи работи", + "Unknown calendar" : "Непознат календар", + "Could not load deleted calendars and objects" : "Неможат да се вчитаат избришаните календари и елементи", + "Could not delete calendar or event" : "Неможе да избришете календар или настан", + "Could not restore calendar or event" : "Неможе да се врати календар или настан", + "Do you really want to empty the trash bin?" : "Дали навистина сакате да ја испразните kорпаta за отпадоци?", + "Empty trash bin" : "Испразни ја корпата со отпадоци", + "Trash bin" : "Корпа за отпадоци", + "Loading deleted items." : "Вчитување на избришаните работи.", + "You do not have any deleted items." : "Немате избришани работи.", + "Name" : "Име", + "Deleted" : "Избришани", + "Restore" : "Врати", + "Delete permanently" : "Избриши", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Работите од корпата за отпадоци ќе бидат избришани после {numDays} ден","Работите од корпата за отпадоци ќе бидат избришани после {numDays} дена"], + "Could not update calendar order." : "Неможе да се ажурира редоследот на календарите.", + "Deck" : "Deck", + "Hidden" : "Сокриен", + "Internal link" : "Внатрешен линк", + "A private link that can be used with external clients" : "Приватен линк што може да се користи со надворешни клиенти", + "Copy internal link" : "Копирај внатрешен линк", + "An error occurred, unable to publish calendar." : "Настана грешка, неможе да се објави календарот.", + "An error occurred, unable to send email." : "Настана грешка, неможе да се испрати е-пошта.", + "Embed code copied to clipboard." : "Кодот за вградување е копиран во клипборд.", + "Embed code could not be copied to clipboard." : "Кодот за вградување неможе да се копира во клипборд.", + "Unpublishing calendar failed" : "Неуспешно од-објавување на календар", "Share link" : "Сподели линк", - "Publish calendar" : "Објави календар", - "Publishing calendar" : "Објавување на календар", "Copy public link" : "Копирај јавен линк", "Send link to calendar via email" : "Испрати линк до календарот преку е-пошта", "Enter one address" : "Внеси една адреса", "Sending email …" : "Испраќање е-пошта …", - "Copy subscription link" : "Копирај линк за претплата", - "Copying link …" : "Копирање линк …", - "Copied link" : "Линкот е копиран", - "Could not copy link" : "Неможе да се копира линкот", "Copy embedding code" : "Копирај код за вградување", "Copying code …" : "Копирање код …", "Copied code" : "Кодот е копиран", "Could not copy code" : "Неможе да се копира кодот", "Delete share link" : "Избриши го линкот за споделување", "Deleting share link …" : "Се брише линкот за споделување …", - "An error occurred, unable to publish calendar." : "Настана грешка, неможе да се објави календарот.", - "An error occurred, unable to send email." : "Настана грешка, неможе да се испрати е-пошта.", - "Embed code copied to clipboard." : "Кодот за вградување е копиран во клипборд.", - "Embed code could not be copied to clipboard." : "Кодот за вградување неможе да се копира во клипборд.", - "Unpublishing calendar failed" : "Неуспешно од-објавување на календар", - "Share with users or groups" : "Сподели со корисници или групи", - "No users or groups" : "Нема корисници или групи", + "An error occurred while unsharing the calendar." : "Настана грешка при откажување на споделување на календар.", + "An error occurred, unable to change the permission of the share." : "Настана грешка, неможе да се променат дозволите за споделување.", "can edit" : "може да се измени", "Unshare with {displayName}" : "Не споделувај со {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Настана грешка, неможе да се промени споделувањето на календарот.", - "An error occurred, unable to change the permission of the share." : "Настана грешка, неможе да се променат дозволите за споделување.", - "+ New calendar" : "+ Нов календар", - "New calendar" : "Нов календар", - "Name for new calendar" : "Име за нов календар", - "Creating calendar …" : "Креирање календар …", - "New calendar with task list" : "Нов календар со листа на задачи", - "New subscription from link (read-only)" : "Нова претплата од линк (само за читање)", - "Creating subscription …" : "Креирање претплата  …", - "An error occurred, unable to create the calendar." : "Настана грешка, неможе да се креира календар.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Внесете валиден линк (започнувајчи со http://, https://, webcal://, или webcals://)", - "Trash bin" : "Корпа за отпадоци", - "Loading deleted elements." : "Вчитување на избришаните елементи", - "You do not have any deleted elements." : "Немате избришани елементи", - "Name" : "Име", - "Deleted" : "Избришани", - "Restore" : "Врати", - "Delete permanently" : "Избриши", - "Empty trash bin" : "Испразни ја корпата со отпадоци", - "Untitled element" : "Неименувани елементи", - "Unknown calendar" : "Непознат календар", - "Could not load deleted calendars and objects" : "Неможат да се вчитаат избришаните календари и елементи", - "Could not restore calendar or event" : "Неможе да се врати календар или настан", - "Do you really want to empty the trash bin?" : "Дали навистина сакате да ја испразните kорпаta за отпадоци?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Елементите од корпата за отпадоци ќе бидат избришани после 1 ден","Елементите од корпата за отпадоци ќе бидат избришани после {numDays} дена"], - "Could not update calendar order." : "Неможе да се ажурира редоследот на календарите.", + "Share with users or groups" : "Сподели со корисници или групи", + "No users or groups" : "Нема корисници или групи", + "Failed to save calendar name and color" : "Неуспешно зачувување на име на календар и боја", + "Calendar name …" : "Име на календар ...", + "Share calendar" : "Сподели календар", + "Unshare from me" : "Не споделувај со мене", + "Save" : "Зачувај", "Import calendars" : "Увези календари", "Please select a calendar to import into …" : "Изберете календар за да направите увоз во него …", "Filename" : "Име на датотека", "Calendar to import into" : "Календар за да направите увоз во него", "Cancel" : "Откажи", "_Import calendar_::_Import calendars_" : ["Увези календар","Увези календари"], + "Select the default location for attachments" : "Избери стандардна локација за прилози", + "Invalid location selected" : "Избрана невалидна локација", + "Attachments folder successfully saved." : "Папката за прилози е успешно зачувана.", + "Error on saving attachments folder." : "Грешка при зачувување на папка за прилози.", + "Default attachments location" : "Стандардна локација за прилози", "{filename} could not be parsed" : "Датотеката {filename} не може да се анализира", "No valid files found, aborting import" : "Не е пронајдена валидна датотека, увозот е откажан", - "Import partially failed. Imported {accepted} out of {total}." : "Увозот е делумно неуспешен. Увезени {accepted} од вкупно {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Успешно увезен 1 настан","Успешно увезени %n настани"], + "Import partially failed. Imported {accepted} out of {total}." : "Увозот е делумно неуспешен. Увезени {accepted} од вкупно {total}.", "Automatic" : "Автоматски", "Automatic ({detected})" : "Автоматски ({detected})", "New setting was not saved successfully." : "Неуспешно зачувување на промените.", - "Shortcut overview" : "Преглед на кратенки преку тастатура", - "or" : "или", "Navigation" : "Навигација", "Previous period" : "Предходен период", "Next period" : "Следен период", @@ -141,6 +166,7 @@ OC.L10N.register( "Day view" : "Дневен преглед", "Week view" : "Неделен преглед", "Month view" : "Месечен преглед", + "Year view" : "Годишен преглед", "List view" : "Листа", "Actions" : "Акции", "Create event" : "Креирај настан", @@ -150,10 +176,16 @@ OC.L10N.register( "Save edited event" : "Зачувај го изменетиот настан", "Delete edited event" : "Избриши го изменетиот настан", "Duplicate event" : "Дуплицирај настај", + "Shortcut overview" : "Преглед на кратенки преку тастатура", + "or" : "или", + "Calendar settings" : "Параметри за календар", + "No reminder" : "Нема потсетник", + "CalDAV link copied to clipboard." : "CalDAV линкот е копиран.", + "CalDAV link could not be copied to clipboard." : "CalDAV линкот неможе да биде копиран.", "Enable birthday calendar" : "Овозможи календар со родендени", "Show tasks in calendar" : "Прикажи ги задачите во календарнот", "Enable simplified editor" : "Овозможи поедноставен уредувач", - "Limit visible events per view" : "Ограни ги видливите настани по преглед", + "Limit the number of events displayed in the monthly view" : "Ограничи број на настани прикажани во месечниот преглед", "Show weekends" : "Прикажи викенди", "Show week numbers" : "Прикажи броеви на неделите", "Time increments" : "Временско зголемување", @@ -162,29 +194,27 @@ OC.L10N.register( "Copy iOS/macOS CalDAV address" : "Копирај iOS/macOS CalDAV адреса", "Personal availability settings" : "Параметри за лична достапност", "Show keyboard shortcuts" : "Прикажи кратенки преку тастатура", - "Calendar settings" : "Параметри за календар", - "No reminder" : "Нема потсетник", - "CalDAV link copied to clipboard." : "CalDAV линкот е копиран.", - "CalDAV link could not be copied to clipboard." : "CalDAV линкот неможе да биде копиран.", - "Appointment was created successfully" : "Состанокот е успешно креиран", - "Appointment was updated successfully" : "Состанокот е успешно ажуриран", "_{duration} minute_::_{duration} minutes_" : ["1 минута","{duration} минути"], "0 minutes" : "0 минути", "_{duration} hour_::_{duration} hours_" : ["1 час","{duration} часа"], "_{duration} day_::_{duration} days_" : ["1 ден","{duration} дена"], "_{duration} week_::_{duration} weeks_" : ["1 недела","{duration} недели"], - "_{duration} month_::_{duration} months_" : ["1 месец","{duration} месеци"], + "_{duration} month_::_{duration} months_" : ["{duration} месец","{duration} месеци"], "_{duration} year_::_{duration} years_" : ["1 година","{duration} години"], "To configure appointments, add your email address in personal settings." : "За да ги конфигурирате состаноците, додајте ја вашата адреса за е-пошта во личните поставки.", "Public – shown on the profile page" : "Јавен - Прикажи на профилната страница", "Private – only accessible via secret link" : "Приватен - пристап само со безбедносен линк", + "Update" : "Ажурирај", + "Appointment name" : "Име на состанокот", "Location" : "Локација", + "Create a Talk room" : "Креирај соба за разговор", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Уникатен линк ќе се генерира за секој резервиран термин и ќе се испрати потврда преку е-пошта", "Description" : "Опис", "Visibility" : "Видливост", "Duration" : "Времетраење", "Increments" : "Зголемување", "Additional calendars to check for conflicts" : "Дополнителни календари за проверка на конфликти", - "Pick time ranges where appointments are allowed" : "Изберете временски интервал кога состаноците се дозволени", + "Pick time ranges where appointments are allowed" : "Изберете временски интервал кога термините се дозволени", "to" : "до", "Delete slot" : "Избриши термин", "No times set" : "Нема поставени времиња", @@ -196,25 +226,25 @@ OC.L10N.register( "Friday" : "Петок", "Saturday" : "Сабота", "Sunday" : "Недела", + "Weekdays" : "Работни денови", "Add time before and after the event" : "Додадете време пред и по настанот", "Before the event" : "Пред настанот", "After the event" : "После настанот", "Planning restrictions" : "Планирани рестрикции", "Minimum time before next available slot" : "Минимално време пред следниот достапен термин", "Max slots per day" : "Максимален број термини на ден", - "Limit how far in the future appointments can be booked" : "Ограничете колку далеку во иднина може да се резервираат состаноци", - "Create appointment" : "Креирајте состанок", - "Edit appointment" : "Уреди состанок", - "Save" : "Зачувај", - "Update" : "Ажурирај", + "Limit how far in the future appointments can be booked" : "Ограничете колку во иднина може да се резервираат термини", "Please confirm your reservation" : "Ве молиме потврдете ја вашата резервација", - "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Ви испративме е-пошта со детали. Ве молиме потврдете го вашиот состанок користејќи ја врската во е-поштата. Можете да ја затворите оваа страница сега.", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Ви испративме е-пошта со детали. Ве молиме потврдете го вашиот термин користејќи ја врската во е-поштата. Можете да ја затворите оваа страница сега.", "Your name" : "Вашето име", "Your email address" : "Вашата адреса за е-пошта", "Please share anything that will help prepare for our meeting" : "Ве молиме споделете сè што ќе помогне да се подготвиме за нашиот состанок", - "Could not book the appointment. Please try again later or contact the organizer." : "Не може да се резервира состанокот. Обидете се повторно подоцна или контактирајте со организаторот.", - "Book the appointment" : "Резервирајте состанок", - "Reminder" : "Потсетник", + "Could not book the appointment. Please try again later or contact the organizer." : "Не може да се резервира термин. Обидете се повторно подоцна или контактирајте со организаторот.", + "Back" : "Назад", + "Create a new conversation" : "Креирај нов разговор", + "Select conversation" : "Избери разговор", + "on" : "во", + "at" : "во", "before at" : "пред", "Notification" : "Известување", "Email" : "Е-пошта", @@ -225,114 +255,109 @@ OC.L10N.register( "Edit time" : "Удери време", "Save time" : "Зачувај време", "Remove reminder" : "Отстрани потсетник", - "on" : "во", - "at" : "во", - "+ Add reminder" : "+ Додади потсетник", "Add reminder" : "Додади потсетник", - "_second_::_seconds_" : ["секунда","секунди"], - "_minute_::_minutes_" : ["минута","минути"], - "_hour_::_hours_" : ["час","часа"], - "_day_::_days_" : ["ден","дена"], - "_week_::_weeks_" : ["недела","недели"], + "seconds" : "секунди", + "minutes" : "минути", + "hours" : "часови", + "days" : "денови", + "weeks" : "недели", + "Choose a file to add as attachment" : "Избери датотека за да додадете прилог", + "Choose a file to share as a link" : "Избери датотека за да се сподели како линк", + "Attachment {name} already exist!" : "Прилогот {name} веќе постои!", + "No attachments" : "Нема прилози", + "Add from Files" : "Додади од датотеките", + "Upload from device" : "Прикачи од уред", + "Delete file" : "Избриши датотека", + "_{count} attachment_::_{count} attachments_" : ["{count} прилог","{count} прилози"], "Suggested" : "Предложено", "Available" : "Достапно", - "Not available" : "Недостапно", - "Checking availability" : "Проверување на достапност", "Invitation accepted" : "Поканата е прифатена", "Accepted {organizerName}'s invitation" : "Прифатена е покана од {organizerName}", + "Participation marked as tentative" : "Учеството е означено како пробно", + "Invitation is delegated" : "Поканата е делегирана", + "Not available" : "Недостапно", "Invitation declined" : "Поканата е одбиена", "Declined {organizerName}'s invitation" : "Одбиена е покана од {organizerName}", - "Invitation is delegated" : "Поканата е делегирана", - "Participation marked as tentative" : "Учеството е означено како пробно", - "Invitation sent" : "Испратена е покана", + "Checking availability" : "Проверување на достапност", "Has not responded to {organizerName}'s invitation yet" : "Сè уште не одговорил на поканата на {organizerName}", - "Availability of attendees, resources and rooms" : "Достапност на присутните, ресурси и соби", "{organizer} (organizer)" : "{organizer} (organizer)", + "Availability of attendees, resources and rooms" : "Достапност на присутните, ресурси и соби", + "Out of office" : "Надвор од канцеларија", + "Attendees:" : "Присутни:", + "Done" : "Готово", "Free" : "Слободен", "Busy (tentative)" : "Зафатен (привремено)", "Busy" : "Зафатен", - "Out of office" : "Надвор од канцеларија", "Unknown" : "Непознат", - "Accept" : "Прифати", - "Decline" : "Одбиј", - "Tentative" : "Пробно", "The invitation has been accepted successfully." : "Поканата е успешно прифатена.", "Failed to accept the invitation." : "Неуспешно прифаќање на поканата.", "The invitation has been declined successfully." : "Поканата е успешно одбиена.", "Failed to decline the invitation." : "Неуспешно одбивање на поканата.", "Your participation has been marked as tentative." : "Вашето учество е означено како пробно.", "Failed to set the participation status to tentative." : "Неуспешно поставување на статус за учество како пробен.", - "Create Talk room for this event" : "Креирај соба за разговор за овој настан", - "Show busy times" : "Прикажи ги зафатените термини", + "Accept" : "Прифати", + "Decline" : "Одбиј", + "Tentative" : "Пробно", "No attendees yet" : "Сè уште нема присутни", + "Successfully appended link to talk room to location." : "Успешно е додадена врска од собата за разговор во локација.", "Successfully appended link to talk room to description." : "Успешно додаден линк од собата за разговор во описот.", "Error creating Talk room" : "Грешка при креирање на соба за разговор", - "Send email" : "Испрати е-пошта", + "Attendees" : "Присутни", + "Remove group" : "Отстрани група", + "Remove attendee" : "Откажи присутност", "Chairperson" : "Претседавач", "Required participant" : "Задолжителен учесник", "Optional participant" : "Незадолжителен учесник", "Non-participant" : "Не-учесник", - "Remove attendee" : "Откажи присутност", - "Search for emails, users or contacts" : "Пребарување на е-пошта адреси, корисници или контакти", "No match found" : "Нема совпаѓања", "(organizer)" : "(organizer)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "За да испратите покана и да можете да добивате одговори, [linkopen]додадете ја вашата е-пошта адреса во личните податоци на сметката[linkclose].", "Remove color" : "Отстрани боја", "Event title" : "Наслов на настанот", - "All day" : "Цели денови", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Не може да се менуваат целодневните параметри за настани што се дел од множество за повторување.", - "from {startDate}" : "од {startDate}", - "from {startDate} at {startTime}" : "од {startDate} во {startTime}", - "to {endDate}" : "до {endDate}", - "to {endDate} at {endTime}" : "до {endDate} во {endTime}", + "From" : "Од", + "To" : "До", "Repeat" : "Повтори", - "End repeat" : "Крај на повторувањето", - "Select to end repeat" : "Избери крај на повторувањето", + "_time_::_times_" : ["еднаш","пати"], "never" : "никогаш", "on date" : "на датум", "after" : "после", - "_time_::_times_" : ["еднаш","пати"], + "End repeat" : "Крај на повторувањето", + "Select to end repeat" : "Избери крај на повторувањето", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Овој настан е повторување-исклучок на множество повторување. Не можете да додадете правило за повторување на него.", "first" : "прв", - "third" : "трети", - "fourth" : "четврти", - "fifth" : "петти", - "second to last" : "претпоследен", - "last" : "последен", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Промените на правилото за повторување ќе важат само за оваа и за сите идни појави.", "Repeat every" : "Повтори секој", "By day of the month" : "По ден во месецот", "On the" : "На", + "_day_::_days_" : ["ден","дена"], + "_week_::_weeks_" : ["недела","недели"], "_month_::_months_" : ["месец","месеци"], "_year_::_years_" : ["година","години"], - "weekday" : "недели", + "weekday" : "работен ден", "weekend day" : "ден од викенд", - "No recurrence" : "Нема повторување", + "Does not repeat" : "Не повторувај", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Дефиницијата за повторување на овој настан не е целосно поддржана од Nextcloud. Ако ги уредите опциите за повторување, одредени повторувања може да се изгубат.", - "Suggestions" : "Предлози", "No rooms or resources yet" : "Сè уште нема простории или ресурси", + "Resources" : "Ресурси", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["1 седиште","{seatingCapacity} седишта"], "Add resource" : "Додади ресурс", "Has a projector" : "Има проектор", "Has a whiteboard" : "Има табла", "Wheelchair accessible" : "Достапно за инвалидска количка", "Remove resource" : "Отстрани ресурс", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["1 седиште","{seatingCapacity} седишта"], - "Projector" : "Проектор", - "Whiteboard" : "Табла", "Search for resources or rooms" : "Пребарајте ресурси или простории", "available" : "достапно", "unavailable" : "недостапно", + "Projector" : "Проектор", + "Whiteboard" : "Табла", "Room type" : "Вид на соба", "Any" : "Било кој", "Minimum seating capacity" : "Минимален капацитет за седење", - "More" : "Повеќе", - "Update this occurrence" : "Ажурирајте ја оваа можност", "Update this and all future" : "Ажурирајте го овој и сите во иднина", + "Update this occurrence" : "Ажурирајте ја оваа можност", "Public calendar does not exist" : "Јавниот календар не постои", "Maybe the share was deleted or has expired?" : "Можеби споделувањето е избришано ики рокот му е поминат?", - "Please select a time zone:" : "Изберете временска зона:", - "Pick a time" : "Избери време", - "Pick a date" : "Избери датум", "from {formattedDate}" : "од {formattedDate}", "to {formattedDate}" : "до {formattedDate}", "on {formattedDate}" : "на {formattedDate}", @@ -342,41 +367,47 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} во {formattedTime}", "Please enter a valid date" : "Внесете валиден датум", "Please enter a valid date and time" : "Внесете валиден датум и време", + "Please select a time zone:" : "Изберете временска зона:", + "Pick a time" : "Избери време", + "Pick a date" : "Избери датум", "Type to search time zone" : "Пребарај временски зони", "Global" : "Глобално", - "Select date" : "Избери датум", + "Holidays in {region}" : "Празници во {region}", + "Public holiday calendars" : "Календар со државни празници", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Календарите за државни празници се обезбедени од Thunderbird. Податоците од календарот ќе се преземат од {website}", + "By {authors}" : "Од {authors}", + "Subscribed" : "Претплатени", + "Subscribe" : "Претплата", + "Select a date" : "Избери датум", "Select slot" : "Избери термин", "No slots available" : "Нема достапни термини", - "The slot for your appointment has been confirmed" : "Терминот за вашиот состанок е потврден", - "Appointment Details:" : "Детали за состанокот:", + "The slot for your appointment has been confirmed" : "Времето за вашиот термин е потврден", + "Appointment Details:" : "Детали за терминот:", "Time:" : "Време:", "Booked for:" : "Резервирано за:", "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Ви благодариме. Вашата резервација од {startDate} до {endDate} е потврдена.", - "Book another appointment:" : "Резервирај друг состанок:", + "Book another appointment:" : "Резервирај друг термин:", "See all available slots" : "Прегледај ги сите слободни термини", - "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Терминот за вашиот состанок од {startDate} до {endDate} не е достапен повеќе.", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Времето за вашиот термин од {startDate} до {endDate} не е достапен повеќе.", "Please book a different slot:" : "Ве молиме резервирајте друг термин:", - "Book an appointment with {name}" : "Закажан е состанок со {name}", - "No public appointments found for {name}" : "Нема пронајдено јавни состаноци за {name}", + "Book an appointment with {name}" : "Закажан е термин со {name}", + "No public appointments found for {name}" : "Нема пронајдено јавни термини за {name}", "Personal" : "Лично", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Автоматското откривање на временската зона утврди дека вашата временска зона е UTC.\nОва е најверојатно резултат на безбедносните мерки на вашиот веб прелистувач\nПоставете ја вашата временска зона во подесувањата за календарот.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Вашата временска зона ({timezoneId}) не е пронајдена. Поставена е (Координирано универзално време) UTC.\nПоставете ја вашата временска зона во подесувањата за календарот или пријавете го овој проблем.", - "No more events today" : "Нема настани за денес", - "No upcoming events" : "Нема престојни настани", - "Create a new event" : "Креирајте нов настан", - "[Today]" : "[Денес]", - "[Tomorrow]" : "[Утре]", - "[Yesterday]" : "[Вчера]", - "[Last] dddd" : "[Последна] dddd", + "Edit event" : "Уреди го настанот", "Event does not exist" : "Настанот не постои", "Duplicate" : "Дуплирај", "Delete this occurrence" : "Избришете ја оваа можност", "Delete this and all future" : "Избришете го овој и сите во иднина", - "Details" : "Детали", - "Attendees" : "Присутни", - "Resources" : "Ресурси", + "All day" : "Цели денови", + "Managing shared access" : "Управување со споделен пристап", + "Deny access" : "Забрани пристап", + "Invite" : "Покани", + "_User requires access to your file_::_Users require access to your file_" : ["Корисник бара пристап до вашата датотека","Корисници бараат пристап до вашата датотека"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Прилог за кој е потребен пристап","Прилози за кои е потребен пристап"], + "Untitled event" : "Неименуван настан", "Close" : "Затвори", - "Show more details" : "Прикажи повеќе детали", "Subscribe to {name}" : "Претплатете се на {name}", "Export {name}" : "Извези {name}", "Anniversary" : "Годишнина", @@ -406,30 +437,28 @@ OC.L10N.register( "on {time}" : "во {time}", "on {time} ({timezoneId})" : "во {time} ({timezoneId})", "Week {number} of {year}" : "{number} недела од {year}", - "Does not repeat" : "Не повторувај", "Daily" : "Дневно", "Weekly" : "Неделно", "Monthly" : "Месечно", "Yearly" : "Годишно", "_Every %n day_::_Every %n days_" : ["Секој ден","Секој %n дена"], "_Every %n week_::_Every %n weeks_" : ["Секоја недела","Секој %n недели"], - "_Every %n month_::_Every %n months_" : ["Секој месец","Секој %n месеци"], + "_Every %n month_::_Every %n months_" : ["Секој %n месец","Секој %n месеци"], "_Every %n year_::_Every %n years_" : ["Секоја година","Секој %n години"], "_on {weekday}_::_on {weekdays}_" : ["во {weekday}","во {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["на ден {dayOfMonthList}","на денови {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "на {ordinalNumber} {byDaySet}", - "in {monthNames}" : "во {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "во {monthNames} на {ordinalNumber} {byDaySet}", "until {untilDate}" : "до {untilDate}", "_%n time_::_%n times_" : ["уште еднаш","%n пати"], - "Untitled event" : "Неименуван настан", + "second" : "втор", + "third" : "трети", + "fourth" : "четврти", + "fifth" : "петти", + "second to last" : "претпоследен", + "last" : "последен", "Untitled task" : "Неименувана задача", "Please ask your administrator to enable the Tasks App." : "Замолете го сервер администраторот да ја овозможи апликацијата задачи.", - "Prev" : "Предходно", - "Next" : "Следно", - "Prev year" : "Предходна година", - "Next year" : "Следна година", - "Year" : "Година", "W" : "Н", "%n more" : "%n други", "No events to display" : "Нема настани за приказ", @@ -448,7 +477,6 @@ OC.L10N.register( "When shared hide this event" : "Кога е споделен, сокриј го настанот", "The visibility of this event in shared calendars." : "Видливост на овој настан во споделен календар.", "Add a location" : "Додади локација", - "Add a description" : "Додади опис", "Status" : "Статус", "Confirmed" : "Потврдено", "Canceled" : "Откажано", @@ -461,135 +489,18 @@ OC.L10N.register( "Add this as a new category" : "Додади како нова категорија", "Custom color" : "Прилагодена боја", "Special color of this event. Overrides the calendar-color." : "Специјална боја на овој настан. Ја отфрла бојата на календарот.", - "Chat room for event" : "Соба за разговор за настанот", + "Error while sharing file" : "Грешка при споделување на датотека", + "Error while sharing file with user" : "Грешка при споделување на датотека со корисник", + "Attachment {fileName} already exists!" : "Прилогот {fileName} веќе постои!", + "An error occurred during getting file information" : "Настана грешка при преземање на информации од датотека", + "An error occurred, unable to delete the calendar." : "Настана грешка, неможе да се избрише календарот.", "Imported {filename}" : "Импортирано {filename}", - "Meditation" : "Медитација", - "Relaxing" : "Релаксирање", - "Relax" : "Опуштање", - "Break" : "Пауза", - "Commute" : "Патување", - "Commuting" : "На пат", - "Shuttle" : "Шатл", - "Invoice" : "Фактура", - "Finance" : "Финансии", - "Bank" : "Банка", - "Money" : "Пари", - "Wedding" : "Свадба", - "Dog" : "Куче", - "Concert" : "Концерт", - "Festival" : "Фестивал", - "Theater" : "Наставник", - "Theatre" : "Театар", - "Presentation" : "Презентација", - "Talk" : "Разговор", - "Speech" : "Говор", - "Deadline" : "Краен рок", - "Submission" : "Поднесување", - "Reporting" : "Извештај", - "Camping" : "Кампување", - "Camp" : "Камп", - "Election" : "Избори", - "Voting" : "Гласање", - "Vote" : "Гласај", - "Barbecue" : "Скара", - "Barbeque" : "Скара", - "Garden" : "Градина", - "Farm" : "Фарма", - "Movie" : "Филм", - "Cinema" : "Кино", - "Graduation" : "Дипломирање", - "Brainstorm" : "Бура", - "Review" : "Преглед", - "Audit" : "Ревизија", - "Inspection" : "Инспекција", - "Proofreading" : "Лекторирање", - "Baseball" : "Бејзбол", - "Meet" : "Запознавање", - "Planning" : "Планирање", - "Pointing" : "Поентирање", - "Retrospective" : "Ретроспектива", - "Office" : "Канцеларија", - "Contributor week" : "Недела на соработници", - "Mail" : "Електронска пошта", - "Soccer" : "Фудбал", - "Football" : "Фудбал", - "Gaming" : "Играње", - "Drive" : "Возење", - "Driving" : "Возење", - "Bicycle" : "Велосипед", - "Cycle" : "Циклус", - "Cycling" : "Возење велосипед", - "Biking" : "Велосипедизам", - "Bike" : "Велосипед", - "Podcast" : "Подкаст", - "Basketball" : "Кошарка", - "Fishing" : "Риболов", - "Hiking" : "Пешачење", - "Hike" : "Пешачење", - "Art" : "Уметност", - "Exhibition" : "Изложба", - "Museum" : "Музеј", - "Pilates" : "Пилатес", - "Park" : "Парк", - "Walk" : "Пешачење", - "Studying" : "Учење", - "Doctor" : "Доктор", - "Health" : "Здравје", - "Dentist" : "Заболекар", - "Hospital" : "Болница", - "Interview" : "Интервју", - "Training" : "Тренинг", - "Practice" : "Пракса", - "Sports" : "Спорт", - "Exercise" : "Вежба", - "Work out" : "Работа", - "Working out" : "Работење", - "Gym" : "Теретана", - "Barber" : "Бербер", - "Haircut" : "Пострижување", - "Hairdresser" : "Фризер", - "Exam" : "Испит", - "Written test" : "Писмен тест", - "Oral test" : "Усно тестирање", - "Working" : "Работа", - "New Years Eve" : "Новогодишна ноќ", - "NYE" : "Нова година", - "Fireworks" : "Огномет", - "Running" : "Трчање", - "Go for a run" : "Одење на трчање", - "Marathon" : "Маратон", - "Video-conference" : "Видео-конференција", - "Conference-call" : "Конференција-повик", - "Video-call" : "Видео-повик", - "Video-chat" : "Видео-разговор", - "Video-meeting" : "Видео-состанок", - "Call" : "Повик", - "Calling" : "Повикувајќи", - "Christmas" : "Божиќ", - "Conference" : "Конференција", - "Pizza" : "Пица", - "Travelling" : "Патување", - "Trip" : "Патување", - "Journey" : "Патување", - "Collaborate" : "Соработка", - "Pair" : "Спари", - "Lecture" : "Читање", - "Seminar" : "Семинар", - "Teaching" : "Настава", - "Photograph" : "Фотографија", - "Party" : "Забава", - "Celebration" : "Прослава", - "Celebrate" : "Прослава", - "Birthday" : "Роденден", - "Shopping" : "Купување", - "Groceries" : "Намирници", - "Skate" : "Скејтбординг", - "Skateboard" : "Скејтбординг", - "Wine tasting" : "Дегустација на вино", - "Golf" : "Голф", - "Dinner" : "Вечера", - "Lunch" : "Ручек", - "Appointment not found" : "Состанокот не е пронајден", - "User not found" : "Корисникот не е пронајден" + "This is an event reminder." : "Ова е потсетник за настан.", + "Appointment not found" : "Терминот не е пронајден", + "User not found" : "Корисникот не е пронајден", + "Reminder" : "Потсетник", + "+ Add reminder" : "+ Додади потсетник", + "Suggestions" : "Предлози", + "Details" : "Детали" }, "nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;"); diff --git a/l10n/mk.json b/l10n/mk.json index 6afb4d30b597507a9e5257e2c40b2d74094cd6f0..249b5b3bcb162456ff940422c632a9c824e24098 100644 --- a/l10n/mk.json +++ b/l10n/mk.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "Внесената адреса на е-пошта е премногу долга", "User-Session unexpectedly expired" : "Корисничката-сесија е застарена", "Provided email-address is not valid" : "Адресата на е-пошта не е правилно внесена", "%s has published the calendar »%s«" : "%s Објави календар »%s«", @@ -9,129 +10,153 @@ "Open »%s«" : "Отвори »%s«", "Cheers!" : "Поздрав!", "Upcoming events" : "Престојни настани", + "No more events today" : "Нема настани за денес", + "No upcoming events" : "Нема престојни настани", + "More events" : "Повеќе настани", + "%1$s with %2$s" : "%1$s со %2$s", + "Calendar" : "Календар", + "New booking {booking}" : "Нова резервација {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) закажа состанок \"{config_display_name}\" на {date_time}.", "Appointments" : "Состаноци", "Schedule appointment \"%s\"" : "Закажан состанок \"%s\"", "Schedule an appointment" : "Закажи состанок", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Подготовки за %s", "Follow up for %s" : "Следи за %s", - "Your appointment \"%s\" needs confirmation" : "Потребна е потврда за состанокот \"%s\"", + "Your appointment \"%s\" with %s needs confirmation" : "Потребна е потврда за состанокот \"%s\" со %s", "Dear %s, please confirm your booking" : "Поритуван/а %s, ве молиме потврдете ја вашата резервација", "Confirm" : "Потврди", + "Description:" : "Опис:", "This confirmation link expires in %s hours." : "Овој линк за потврда истекува за %s часа.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Доколку сепак сакате да го откажете терминот, ве молиме контактирајте го вашиот организатор.", - "Appointment:" : "Состанок:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "И покрај се, ако сакате да го откажете состанокот, контактирајте го организаторот со тоа што ќе одговорите на оваа е-пошта или посетете го неговиот профил", + "Your appointment \"%s\" with %s has been accepted" : "Состанокот \"%s\" со %s е прифатен", + "Dear %s, your booking has been accepted." : "Почитуван/а %s, Вашата резервација е прифатена.", + "Appointment for:" : "Состанок за:", "Date:" : "Датум:", + "You will receive a link with the confirmation email" : "Ќе добиете линк со потврда на е-пошта", "Where:" : "Каде: ", - "Description:" : "Опис:", - "Calendar" : "Календар", + "Comment:" : "Коментар:", + "You have a new appointment booking \"%s\" from %s" : "Имате нов закажан состанок \"%s\" од %s", + "Dear %s, %s (%s) booked an appointment with you." : "Почитуван/а %s, %s (%s) закажа состанок со вас.", "A Calendar app for Nextcloud" : "Календар апликација за Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Апликацијата Calendar е кориснички интерфејс за серверот CalDAV на Nextcloud. Лесно синхронизирајте настани од различни уреди со вашиот Nextcloud и уредувајте ги онлајн.\n\n* 🚀 **Интеграција со други апликации Nextcloud!** Моментално Контакти - претстојат повеќе.\n* 🌐 **WebCal поддршка!** Сакате да ги видите натпреварите на вашиот омилен тим во вашиот календар? Нема проблем!\n* 🙋 **Присутни!** Поканете луѓе на вашите настани\n* ⌚️ **Слободно/Зафатено!** Погледнете кога вашите присутни се достапни за средба\n* ⏰ **Потсетници!** Добијте аларми за настани во вашиот прелистувач и преку е-пошта\n* 🔍 Барај! Најдете ги вашите настани лесно\n* ☑️ Задачи! Погледнете ги задачите со датум на доспевање директно во календарот\n* 🙈 **Ние не го измислуваме повторно тркалото!** Врз основа на одличната [c-dav библиотека](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/ mozilla-comm/ical.js) и библиотеки [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Предходен ден", "Previous week" : "Предходна недела", + "Previous year" : "Предходна година", "Previous month" : "Предходен месец", "Next day" : "Следен ден", "Next week" : "Следна недела", + "Next year" : "Следна година", "Next month" : "Следен месец", - "New event" : "Нов настан", + "Create new event" : "Креирај нов настан", + "Event" : "Настан", "Today" : "Денес", "Day" : "Ден", "Week" : "Недела", "Month" : "Месец", + "Year" : "Година", "List" : "Лист", + "Appointment link was copied to clipboard" : "Линкот за состанокот е копиран во клипборд", + "Appointment link could not be copied to clipboard" : "Линкот за состанокот неможе за се копира во клипборд", "Preview" : "Преглед", "Copy link" : "Копирај линк", "Edit" : "Уреди", "Delete" : "Избриши", - "Appointment link was copied to clipboard" : "Линкот за состанокот е копиран во клипборд", - "Appointment link could not be copied to clipboard" : "Линкот за состанокот неможе за се копира во клипборд", - "Add new" : "Додади нов", - "Untitled calendar" : "Неименуван календар", - "Edit name" : "Уреди име", - "Saving name …" : "Зачувување име …", - "Edit color" : "Уреди бои", - "Saving color …" : "Зачувување боја …", - "Copy private link" : "Копирај приватен линк", - "Export" : "Извези", - "Unshare from me" : "Не споделувај со мене", + "Create new" : "Креирај нова", "Disable calendar \"{calendar}\"" : "Оневозможи календар \"{calendar}\"", "Disable untitled calendar" : "Оневозможи неименуван календар", "Enable calendar \"{calendar}\"" : "Овозможи календар \"{calendar}\"", "Enable untitled calendar" : "Овозможи неименуван календар", "An error occurred, unable to change visibility of the calendar." : "Настана грешка, неможе да се промени видливоста на календарот.", - "An error occurred, unable to delete the calendar." : "Настана грешка, неможе да се избрише календарот.", - "Calendar link copied to clipboard." : "Линк до календарот е копиран во клипборд.", - "Calendar link could not be copied to clipboard." : "Линк до календарот неможе да се копира во клипборд.", - "An error occurred, unable to rename the calendar." : "Настана грешка, неможе да се преименува календарот.", - "An error occurred, unable to change the calendar's color." : "Настана грешка, неможе да се променат боите на календарот.", + "Untitled calendar" : "Неименуван календар", + "Shared with you by" : "Споделено со вас од", + "Edit and share calendar" : "Уреди и сподели календар", + "Edit calendar" : "Уреди календар", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Отстранување на споделување на календар за 1 секунда","Отстранување на споделување на календар за {countdown} секунди"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Бришење на календарот за 1 секунда","Бришење на календарот за {countdown} секунди"], + "An error occurred, unable to create the calendar." : "Настана грешка, неможе да се креира календар.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Внесете валиден линк (започнувајчи со http://, https://, webcal://, или webcals://)", + "Calendars" : "Календари", + "Add new" : "Додади нов", + "New calendar" : "Нов календар", + "Name for new calendar" : "Име за нов календар", + "Creating calendar …" : "Креирање календар …", + "New calendar with task list" : "Нов календар со листа на задачи", + "New subscription from link (read-only)" : "Нова претплата од линк (само за читање)", + "Creating subscription …" : "Креирање претплата  …", + "Add public holiday calendar" : "Додади календар со државни празници", + "Calendar link copied to clipboard." : "Линк до календарот е копиран во клипборд.", + "Calendar link could not be copied to clipboard." : "Линк до календарот неможе да се копира во клипборд.", + "Copy subscription link" : "Копирај линк за претплата", + "Copying link …" : "Копирање линк …", + "Copied link" : "Линкот е копиран", + "Could not copy link" : "Неможе да се копира линкот", + "Export" : "Извези", + "Untitled item" : "Неименуваи работи", + "Unknown calendar" : "Непознат календар", + "Could not load deleted calendars and objects" : "Неможат да се вчитаат избришаните календари и елементи", + "Could not delete calendar or event" : "Неможе да избришете календар или настан", + "Could not restore calendar or event" : "Неможе да се врати календар или настан", + "Do you really want to empty the trash bin?" : "Дали навистина сакате да ја испразните kорпаta за отпадоци?", + "Empty trash bin" : "Испразни ја корпата со отпадоци", + "Trash bin" : "Корпа за отпадоци", + "Loading deleted items." : "Вчитување на избришаните работи.", + "You do not have any deleted items." : "Немате избришани работи.", + "Name" : "Име", + "Deleted" : "Избришани", + "Restore" : "Врати", + "Delete permanently" : "Избриши", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Работите од корпата за отпадоци ќе бидат избришани после {numDays} ден","Работите од корпата за отпадоци ќе бидат избришани после {numDays} дена"], + "Could not update calendar order." : "Неможе да се ажурира редоследот на календарите.", + "Deck" : "Deck", + "Hidden" : "Сокриен", + "Internal link" : "Внатрешен линк", + "A private link that can be used with external clients" : "Приватен линк што може да се користи со надворешни клиенти", + "Copy internal link" : "Копирај внатрешен линк", + "An error occurred, unable to publish calendar." : "Настана грешка, неможе да се објави календарот.", + "An error occurred, unable to send email." : "Настана грешка, неможе да се испрати е-пошта.", + "Embed code copied to clipboard." : "Кодот за вградување е копиран во клипборд.", + "Embed code could not be copied to clipboard." : "Кодот за вградување неможе да се копира во клипборд.", + "Unpublishing calendar failed" : "Неуспешно од-објавување на календар", "Share link" : "Сподели линк", - "Publish calendar" : "Објави календар", - "Publishing calendar" : "Објавување на календар", "Copy public link" : "Копирај јавен линк", "Send link to calendar via email" : "Испрати линк до календарот преку е-пошта", "Enter one address" : "Внеси една адреса", "Sending email …" : "Испраќање е-пошта …", - "Copy subscription link" : "Копирај линк за претплата", - "Copying link …" : "Копирање линк …", - "Copied link" : "Линкот е копиран", - "Could not copy link" : "Неможе да се копира линкот", "Copy embedding code" : "Копирај код за вградување", "Copying code …" : "Копирање код …", "Copied code" : "Кодот е копиран", "Could not copy code" : "Неможе да се копира кодот", "Delete share link" : "Избриши го линкот за споделување", "Deleting share link …" : "Се брише линкот за споделување …", - "An error occurred, unable to publish calendar." : "Настана грешка, неможе да се објави календарот.", - "An error occurred, unable to send email." : "Настана грешка, неможе да се испрати е-пошта.", - "Embed code copied to clipboard." : "Кодот за вградување е копиран во клипборд.", - "Embed code could not be copied to clipboard." : "Кодот за вградување неможе да се копира во клипборд.", - "Unpublishing calendar failed" : "Неуспешно од-објавување на календар", - "Share with users or groups" : "Сподели со корисници или групи", - "No users or groups" : "Нема корисници или групи", + "An error occurred while unsharing the calendar." : "Настана грешка при откажување на споделување на календар.", + "An error occurred, unable to change the permission of the share." : "Настана грешка, неможе да се променат дозволите за споделување.", "can edit" : "може да се измени", "Unshare with {displayName}" : "Не споделувај со {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Настана грешка, неможе да се промени споделувањето на календарот.", - "An error occurred, unable to change the permission of the share." : "Настана грешка, неможе да се променат дозволите за споделување.", - "+ New calendar" : "+ Нов календар", - "New calendar" : "Нов календар", - "Name for new calendar" : "Име за нов календар", - "Creating calendar …" : "Креирање календар …", - "New calendar with task list" : "Нов календар со листа на задачи", - "New subscription from link (read-only)" : "Нова претплата од линк (само за читање)", - "Creating subscription …" : "Креирање претплата  …", - "An error occurred, unable to create the calendar." : "Настана грешка, неможе да се креира календар.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Внесете валиден линк (започнувајчи со http://, https://, webcal://, или webcals://)", - "Trash bin" : "Корпа за отпадоци", - "Loading deleted elements." : "Вчитување на избришаните елементи", - "You do not have any deleted elements." : "Немате избришани елементи", - "Name" : "Име", - "Deleted" : "Избришани", - "Restore" : "Врати", - "Delete permanently" : "Избриши", - "Empty trash bin" : "Испразни ја корпата со отпадоци", - "Untitled element" : "Неименувани елементи", - "Unknown calendar" : "Непознат календар", - "Could not load deleted calendars and objects" : "Неможат да се вчитаат избришаните календари и елементи", - "Could not restore calendar or event" : "Неможе да се врати календар или настан", - "Do you really want to empty the trash bin?" : "Дали навистина сакате да ја испразните kорпаta за отпадоци?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Елементите од корпата за отпадоци ќе бидат избришани после 1 ден","Елементите од корпата за отпадоци ќе бидат избришани после {numDays} дена"], - "Could not update calendar order." : "Неможе да се ажурира редоследот на календарите.", + "Share with users or groups" : "Сподели со корисници или групи", + "No users or groups" : "Нема корисници или групи", + "Failed to save calendar name and color" : "Неуспешно зачувување на име на календар и боја", + "Calendar name …" : "Име на календар ...", + "Share calendar" : "Сподели календар", + "Unshare from me" : "Не споделувај со мене", + "Save" : "Зачувај", "Import calendars" : "Увези календари", "Please select a calendar to import into …" : "Изберете календар за да направите увоз во него …", "Filename" : "Име на датотека", "Calendar to import into" : "Календар за да направите увоз во него", "Cancel" : "Откажи", "_Import calendar_::_Import calendars_" : ["Увези календар","Увези календари"], + "Select the default location for attachments" : "Избери стандардна локација за прилози", + "Invalid location selected" : "Избрана невалидна локација", + "Attachments folder successfully saved." : "Папката за прилози е успешно зачувана.", + "Error on saving attachments folder." : "Грешка при зачувување на папка за прилози.", + "Default attachments location" : "Стандардна локација за прилози", "{filename} could not be parsed" : "Датотеката {filename} не може да се анализира", "No valid files found, aborting import" : "Не е пронајдена валидна датотека, увозот е откажан", - "Import partially failed. Imported {accepted} out of {total}." : "Увозот е делумно неуспешен. Увезени {accepted} од вкупно {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Успешно увезен 1 настан","Успешно увезени %n настани"], + "Import partially failed. Imported {accepted} out of {total}." : "Увозот е делумно неуспешен. Увезени {accepted} од вкупно {total}.", "Automatic" : "Автоматски", "Automatic ({detected})" : "Автоматски ({detected})", "New setting was not saved successfully." : "Неуспешно зачувување на промените.", - "Shortcut overview" : "Преглед на кратенки преку тастатура", - "or" : "или", "Navigation" : "Навигација", "Previous period" : "Предходен период", "Next period" : "Следен период", @@ -139,6 +164,7 @@ "Day view" : "Дневен преглед", "Week view" : "Неделен преглед", "Month view" : "Месечен преглед", + "Year view" : "Годишен преглед", "List view" : "Листа", "Actions" : "Акции", "Create event" : "Креирај настан", @@ -148,10 +174,16 @@ "Save edited event" : "Зачувај го изменетиот настан", "Delete edited event" : "Избриши го изменетиот настан", "Duplicate event" : "Дуплицирај настај", + "Shortcut overview" : "Преглед на кратенки преку тастатура", + "or" : "или", + "Calendar settings" : "Параметри за календар", + "No reminder" : "Нема потсетник", + "CalDAV link copied to clipboard." : "CalDAV линкот е копиран.", + "CalDAV link could not be copied to clipboard." : "CalDAV линкот неможе да биде копиран.", "Enable birthday calendar" : "Овозможи календар со родендени", "Show tasks in calendar" : "Прикажи ги задачите во календарнот", "Enable simplified editor" : "Овозможи поедноставен уредувач", - "Limit visible events per view" : "Ограни ги видливите настани по преглед", + "Limit the number of events displayed in the monthly view" : "Ограничи број на настани прикажани во месечниот преглед", "Show weekends" : "Прикажи викенди", "Show week numbers" : "Прикажи броеви на неделите", "Time increments" : "Временско зголемување", @@ -160,29 +192,27 @@ "Copy iOS/macOS CalDAV address" : "Копирај iOS/macOS CalDAV адреса", "Personal availability settings" : "Параметри за лична достапност", "Show keyboard shortcuts" : "Прикажи кратенки преку тастатура", - "Calendar settings" : "Параметри за календар", - "No reminder" : "Нема потсетник", - "CalDAV link copied to clipboard." : "CalDAV линкот е копиран.", - "CalDAV link could not be copied to clipboard." : "CalDAV линкот неможе да биде копиран.", - "Appointment was created successfully" : "Состанокот е успешно креиран", - "Appointment was updated successfully" : "Состанокот е успешно ажуриран", "_{duration} minute_::_{duration} minutes_" : ["1 минута","{duration} минути"], "0 minutes" : "0 минути", "_{duration} hour_::_{duration} hours_" : ["1 час","{duration} часа"], "_{duration} day_::_{duration} days_" : ["1 ден","{duration} дена"], "_{duration} week_::_{duration} weeks_" : ["1 недела","{duration} недели"], - "_{duration} month_::_{duration} months_" : ["1 месец","{duration} месеци"], + "_{duration} month_::_{duration} months_" : ["{duration} месец","{duration} месеци"], "_{duration} year_::_{duration} years_" : ["1 година","{duration} години"], "To configure appointments, add your email address in personal settings." : "За да ги конфигурирате состаноците, додајте ја вашата адреса за е-пошта во личните поставки.", "Public – shown on the profile page" : "Јавен - Прикажи на профилната страница", "Private – only accessible via secret link" : "Приватен - пристап само со безбедносен линк", + "Update" : "Ажурирај", + "Appointment name" : "Име на состанокот", "Location" : "Локација", + "Create a Talk room" : "Креирај соба за разговор", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Уникатен линк ќе се генерира за секој резервиран термин и ќе се испрати потврда преку е-пошта", "Description" : "Опис", "Visibility" : "Видливост", "Duration" : "Времетраење", "Increments" : "Зголемување", "Additional calendars to check for conflicts" : "Дополнителни календари за проверка на конфликти", - "Pick time ranges where appointments are allowed" : "Изберете временски интервал кога состаноците се дозволени", + "Pick time ranges where appointments are allowed" : "Изберете временски интервал кога термините се дозволени", "to" : "до", "Delete slot" : "Избриши термин", "No times set" : "Нема поставени времиња", @@ -194,25 +224,25 @@ "Friday" : "Петок", "Saturday" : "Сабота", "Sunday" : "Недела", + "Weekdays" : "Работни денови", "Add time before and after the event" : "Додадете време пред и по настанот", "Before the event" : "Пред настанот", "After the event" : "После настанот", "Planning restrictions" : "Планирани рестрикции", "Minimum time before next available slot" : "Минимално време пред следниот достапен термин", "Max slots per day" : "Максимален број термини на ден", - "Limit how far in the future appointments can be booked" : "Ограничете колку далеку во иднина може да се резервираат состаноци", - "Create appointment" : "Креирајте состанок", - "Edit appointment" : "Уреди состанок", - "Save" : "Зачувај", - "Update" : "Ажурирај", + "Limit how far in the future appointments can be booked" : "Ограничете колку во иднина може да се резервираат термини", "Please confirm your reservation" : "Ве молиме потврдете ја вашата резервација", - "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Ви испративме е-пошта со детали. Ве молиме потврдете го вашиот состанок користејќи ја врската во е-поштата. Можете да ја затворите оваа страница сега.", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Ви испративме е-пошта со детали. Ве молиме потврдете го вашиот термин користејќи ја врската во е-поштата. Можете да ја затворите оваа страница сега.", "Your name" : "Вашето име", "Your email address" : "Вашата адреса за е-пошта", "Please share anything that will help prepare for our meeting" : "Ве молиме споделете сè што ќе помогне да се подготвиме за нашиот состанок", - "Could not book the appointment. Please try again later or contact the organizer." : "Не може да се резервира состанокот. Обидете се повторно подоцна или контактирајте со организаторот.", - "Book the appointment" : "Резервирајте состанок", - "Reminder" : "Потсетник", + "Could not book the appointment. Please try again later or contact the organizer." : "Не може да се резервира термин. Обидете се повторно подоцна или контактирајте со организаторот.", + "Back" : "Назад", + "Create a new conversation" : "Креирај нов разговор", + "Select conversation" : "Избери разговор", + "on" : "во", + "at" : "во", "before at" : "пред", "Notification" : "Известување", "Email" : "Е-пошта", @@ -223,114 +253,109 @@ "Edit time" : "Удери време", "Save time" : "Зачувај време", "Remove reminder" : "Отстрани потсетник", - "on" : "во", - "at" : "во", - "+ Add reminder" : "+ Додади потсетник", "Add reminder" : "Додади потсетник", - "_second_::_seconds_" : ["секунда","секунди"], - "_minute_::_minutes_" : ["минута","минути"], - "_hour_::_hours_" : ["час","часа"], - "_day_::_days_" : ["ден","дена"], - "_week_::_weeks_" : ["недела","недели"], + "seconds" : "секунди", + "minutes" : "минути", + "hours" : "часови", + "days" : "денови", + "weeks" : "недели", + "Choose a file to add as attachment" : "Избери датотека за да додадете прилог", + "Choose a file to share as a link" : "Избери датотека за да се сподели како линк", + "Attachment {name} already exist!" : "Прилогот {name} веќе постои!", + "No attachments" : "Нема прилози", + "Add from Files" : "Додади од датотеките", + "Upload from device" : "Прикачи од уред", + "Delete file" : "Избриши датотека", + "_{count} attachment_::_{count} attachments_" : ["{count} прилог","{count} прилози"], "Suggested" : "Предложено", "Available" : "Достапно", - "Not available" : "Недостапно", - "Checking availability" : "Проверување на достапност", "Invitation accepted" : "Поканата е прифатена", "Accepted {organizerName}'s invitation" : "Прифатена е покана од {organizerName}", + "Participation marked as tentative" : "Учеството е означено како пробно", + "Invitation is delegated" : "Поканата е делегирана", + "Not available" : "Недостапно", "Invitation declined" : "Поканата е одбиена", "Declined {organizerName}'s invitation" : "Одбиена е покана од {organizerName}", - "Invitation is delegated" : "Поканата е делегирана", - "Participation marked as tentative" : "Учеството е означено како пробно", - "Invitation sent" : "Испратена е покана", + "Checking availability" : "Проверување на достапност", "Has not responded to {organizerName}'s invitation yet" : "Сè уште не одговорил на поканата на {organizerName}", - "Availability of attendees, resources and rooms" : "Достапност на присутните, ресурси и соби", "{organizer} (organizer)" : "{organizer} (organizer)", + "Availability of attendees, resources and rooms" : "Достапност на присутните, ресурси и соби", + "Out of office" : "Надвор од канцеларија", + "Attendees:" : "Присутни:", + "Done" : "Готово", "Free" : "Слободен", "Busy (tentative)" : "Зафатен (привремено)", "Busy" : "Зафатен", - "Out of office" : "Надвор од канцеларија", "Unknown" : "Непознат", - "Accept" : "Прифати", - "Decline" : "Одбиј", - "Tentative" : "Пробно", "The invitation has been accepted successfully." : "Поканата е успешно прифатена.", "Failed to accept the invitation." : "Неуспешно прифаќање на поканата.", "The invitation has been declined successfully." : "Поканата е успешно одбиена.", "Failed to decline the invitation." : "Неуспешно одбивање на поканата.", "Your participation has been marked as tentative." : "Вашето учество е означено како пробно.", "Failed to set the participation status to tentative." : "Неуспешно поставување на статус за учество како пробен.", - "Create Talk room for this event" : "Креирај соба за разговор за овој настан", - "Show busy times" : "Прикажи ги зафатените термини", + "Accept" : "Прифати", + "Decline" : "Одбиј", + "Tentative" : "Пробно", "No attendees yet" : "Сè уште нема присутни", + "Successfully appended link to talk room to location." : "Успешно е додадена врска од собата за разговор во локација.", "Successfully appended link to talk room to description." : "Успешно додаден линк од собата за разговор во описот.", "Error creating Talk room" : "Грешка при креирање на соба за разговор", - "Send email" : "Испрати е-пошта", + "Attendees" : "Присутни", + "Remove group" : "Отстрани група", + "Remove attendee" : "Откажи присутност", "Chairperson" : "Претседавач", "Required participant" : "Задолжителен учесник", "Optional participant" : "Незадолжителен учесник", "Non-participant" : "Не-учесник", - "Remove attendee" : "Откажи присутност", - "Search for emails, users or contacts" : "Пребарување на е-пошта адреси, корисници или контакти", "No match found" : "Нема совпаѓања", "(organizer)" : "(organizer)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "За да испратите покана и да можете да добивате одговори, [linkopen]додадете ја вашата е-пошта адреса во личните податоци на сметката[linkclose].", "Remove color" : "Отстрани боја", "Event title" : "Наслов на настанот", - "All day" : "Цели денови", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Не може да се менуваат целодневните параметри за настани што се дел од множество за повторување.", - "from {startDate}" : "од {startDate}", - "from {startDate} at {startTime}" : "од {startDate} во {startTime}", - "to {endDate}" : "до {endDate}", - "to {endDate} at {endTime}" : "до {endDate} во {endTime}", + "From" : "Од", + "To" : "До", "Repeat" : "Повтори", - "End repeat" : "Крај на повторувањето", - "Select to end repeat" : "Избери крај на повторувањето", + "_time_::_times_" : ["еднаш","пати"], "never" : "никогаш", "on date" : "на датум", "after" : "после", - "_time_::_times_" : ["еднаш","пати"], + "End repeat" : "Крај на повторувањето", + "Select to end repeat" : "Избери крај на повторувањето", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Овој настан е повторување-исклучок на множество повторување. Не можете да додадете правило за повторување на него.", "first" : "прв", - "third" : "трети", - "fourth" : "четврти", - "fifth" : "петти", - "second to last" : "претпоследен", - "last" : "последен", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Промените на правилото за повторување ќе важат само за оваа и за сите идни појави.", "Repeat every" : "Повтори секој", "By day of the month" : "По ден во месецот", "On the" : "На", + "_day_::_days_" : ["ден","дена"], + "_week_::_weeks_" : ["недела","недели"], "_month_::_months_" : ["месец","месеци"], "_year_::_years_" : ["година","години"], - "weekday" : "недели", + "weekday" : "работен ден", "weekend day" : "ден од викенд", - "No recurrence" : "Нема повторување", + "Does not repeat" : "Не повторувај", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Дефиницијата за повторување на овој настан не е целосно поддржана од Nextcloud. Ако ги уредите опциите за повторување, одредени повторувања може да се изгубат.", - "Suggestions" : "Предлози", "No rooms or resources yet" : "Сè уште нема простории или ресурси", + "Resources" : "Ресурси", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["1 седиште","{seatingCapacity} седишта"], "Add resource" : "Додади ресурс", "Has a projector" : "Има проектор", "Has a whiteboard" : "Има табла", "Wheelchair accessible" : "Достапно за инвалидска количка", "Remove resource" : "Отстрани ресурс", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["1 седиште","{seatingCapacity} седишта"], - "Projector" : "Проектор", - "Whiteboard" : "Табла", "Search for resources or rooms" : "Пребарајте ресурси или простории", "available" : "достапно", "unavailable" : "недостапно", + "Projector" : "Проектор", + "Whiteboard" : "Табла", "Room type" : "Вид на соба", "Any" : "Било кој", "Minimum seating capacity" : "Минимален капацитет за седење", - "More" : "Повеќе", - "Update this occurrence" : "Ажурирајте ја оваа можност", "Update this and all future" : "Ажурирајте го овој и сите во иднина", + "Update this occurrence" : "Ажурирајте ја оваа можност", "Public calendar does not exist" : "Јавниот календар не постои", "Maybe the share was deleted or has expired?" : "Можеби споделувањето е избришано ики рокот му е поминат?", - "Please select a time zone:" : "Изберете временска зона:", - "Pick a time" : "Избери време", - "Pick a date" : "Избери датум", "from {formattedDate}" : "од {formattedDate}", "to {formattedDate}" : "до {formattedDate}", "on {formattedDate}" : "на {formattedDate}", @@ -340,41 +365,47 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} во {formattedTime}", "Please enter a valid date" : "Внесете валиден датум", "Please enter a valid date and time" : "Внесете валиден датум и време", + "Please select a time zone:" : "Изберете временска зона:", + "Pick a time" : "Избери време", + "Pick a date" : "Избери датум", "Type to search time zone" : "Пребарај временски зони", "Global" : "Глобално", - "Select date" : "Избери датум", + "Holidays in {region}" : "Празници во {region}", + "Public holiday calendars" : "Календар со државни празници", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Календарите за државни празници се обезбедени од Thunderbird. Податоците од календарот ќе се преземат од {website}", + "By {authors}" : "Од {authors}", + "Subscribed" : "Претплатени", + "Subscribe" : "Претплата", + "Select a date" : "Избери датум", "Select slot" : "Избери термин", "No slots available" : "Нема достапни термини", - "The slot for your appointment has been confirmed" : "Терминот за вашиот состанок е потврден", - "Appointment Details:" : "Детали за состанокот:", + "The slot for your appointment has been confirmed" : "Времето за вашиот термин е потврден", + "Appointment Details:" : "Детали за терминот:", "Time:" : "Време:", "Booked for:" : "Резервирано за:", "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Ви благодариме. Вашата резервација од {startDate} до {endDate} е потврдена.", - "Book another appointment:" : "Резервирај друг состанок:", + "Book another appointment:" : "Резервирај друг термин:", "See all available slots" : "Прегледај ги сите слободни термини", - "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Терминот за вашиот состанок од {startDate} до {endDate} не е достапен повеќе.", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Времето за вашиот термин од {startDate} до {endDate} не е достапен повеќе.", "Please book a different slot:" : "Ве молиме резервирајте друг термин:", - "Book an appointment with {name}" : "Закажан е состанок со {name}", - "No public appointments found for {name}" : "Нема пронајдено јавни состаноци за {name}", + "Book an appointment with {name}" : "Закажан е термин со {name}", + "No public appointments found for {name}" : "Нема пронајдено јавни термини за {name}", "Personal" : "Лично", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Автоматското откривање на временската зона утврди дека вашата временска зона е UTC.\nОва е најверојатно резултат на безбедносните мерки на вашиот веб прелистувач\nПоставете ја вашата временска зона во подесувањата за календарот.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Вашата временска зона ({timezoneId}) не е пронајдена. Поставена е (Координирано универзално време) UTC.\nПоставете ја вашата временска зона во подесувањата за календарот или пријавете го овој проблем.", - "No more events today" : "Нема настани за денес", - "No upcoming events" : "Нема престојни настани", - "Create a new event" : "Креирајте нов настан", - "[Today]" : "[Денес]", - "[Tomorrow]" : "[Утре]", - "[Yesterday]" : "[Вчера]", - "[Last] dddd" : "[Последна] dddd", + "Edit event" : "Уреди го настанот", "Event does not exist" : "Настанот не постои", "Duplicate" : "Дуплирај", "Delete this occurrence" : "Избришете ја оваа можност", "Delete this and all future" : "Избришете го овој и сите во иднина", - "Details" : "Детали", - "Attendees" : "Присутни", - "Resources" : "Ресурси", + "All day" : "Цели денови", + "Managing shared access" : "Управување со споделен пристап", + "Deny access" : "Забрани пристап", + "Invite" : "Покани", + "_User requires access to your file_::_Users require access to your file_" : ["Корисник бара пристап до вашата датотека","Корисници бараат пристап до вашата датотека"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Прилог за кој е потребен пристап","Прилози за кои е потребен пристап"], + "Untitled event" : "Неименуван настан", "Close" : "Затвори", - "Show more details" : "Прикажи повеќе детали", "Subscribe to {name}" : "Претплатете се на {name}", "Export {name}" : "Извези {name}", "Anniversary" : "Годишнина", @@ -404,30 +435,28 @@ "on {time}" : "во {time}", "on {time} ({timezoneId})" : "во {time} ({timezoneId})", "Week {number} of {year}" : "{number} недела од {year}", - "Does not repeat" : "Не повторувај", "Daily" : "Дневно", "Weekly" : "Неделно", "Monthly" : "Месечно", "Yearly" : "Годишно", "_Every %n day_::_Every %n days_" : ["Секој ден","Секој %n дена"], "_Every %n week_::_Every %n weeks_" : ["Секоја недела","Секој %n недели"], - "_Every %n month_::_Every %n months_" : ["Секој месец","Секој %n месеци"], + "_Every %n month_::_Every %n months_" : ["Секој %n месец","Секој %n месеци"], "_Every %n year_::_Every %n years_" : ["Секоја година","Секој %n години"], "_on {weekday}_::_on {weekdays}_" : ["во {weekday}","во {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["на ден {dayOfMonthList}","на денови {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "на {ordinalNumber} {byDaySet}", - "in {monthNames}" : "во {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "во {monthNames} на {ordinalNumber} {byDaySet}", "until {untilDate}" : "до {untilDate}", "_%n time_::_%n times_" : ["уште еднаш","%n пати"], - "Untitled event" : "Неименуван настан", + "second" : "втор", + "third" : "трети", + "fourth" : "четврти", + "fifth" : "петти", + "second to last" : "претпоследен", + "last" : "последен", "Untitled task" : "Неименувана задача", "Please ask your administrator to enable the Tasks App." : "Замолете го сервер администраторот да ја овозможи апликацијата задачи.", - "Prev" : "Предходно", - "Next" : "Следно", - "Prev year" : "Предходна година", - "Next year" : "Следна година", - "Year" : "Година", "W" : "Н", "%n more" : "%n други", "No events to display" : "Нема настани за приказ", @@ -446,7 +475,6 @@ "When shared hide this event" : "Кога е споделен, сокриј го настанот", "The visibility of this event in shared calendars." : "Видливост на овој настан во споделен календар.", "Add a location" : "Додади локација", - "Add a description" : "Додади опис", "Status" : "Статус", "Confirmed" : "Потврдено", "Canceled" : "Откажано", @@ -459,135 +487,18 @@ "Add this as a new category" : "Додади како нова категорија", "Custom color" : "Прилагодена боја", "Special color of this event. Overrides the calendar-color." : "Специјална боја на овој настан. Ја отфрла бојата на календарот.", - "Chat room for event" : "Соба за разговор за настанот", + "Error while sharing file" : "Грешка при споделување на датотека", + "Error while sharing file with user" : "Грешка при споделување на датотека со корисник", + "Attachment {fileName} already exists!" : "Прилогот {fileName} веќе постои!", + "An error occurred during getting file information" : "Настана грешка при преземање на информации од датотека", + "An error occurred, unable to delete the calendar." : "Настана грешка, неможе да се избрише календарот.", "Imported {filename}" : "Импортирано {filename}", - "Meditation" : "Медитација", - "Relaxing" : "Релаксирање", - "Relax" : "Опуштање", - "Break" : "Пауза", - "Commute" : "Патување", - "Commuting" : "На пат", - "Shuttle" : "Шатл", - "Invoice" : "Фактура", - "Finance" : "Финансии", - "Bank" : "Банка", - "Money" : "Пари", - "Wedding" : "Свадба", - "Dog" : "Куче", - "Concert" : "Концерт", - "Festival" : "Фестивал", - "Theater" : "Наставник", - "Theatre" : "Театар", - "Presentation" : "Презентација", - "Talk" : "Разговор", - "Speech" : "Говор", - "Deadline" : "Краен рок", - "Submission" : "Поднесување", - "Reporting" : "Извештај", - "Camping" : "Кампување", - "Camp" : "Камп", - "Election" : "Избори", - "Voting" : "Гласање", - "Vote" : "Гласај", - "Barbecue" : "Скара", - "Barbeque" : "Скара", - "Garden" : "Градина", - "Farm" : "Фарма", - "Movie" : "Филм", - "Cinema" : "Кино", - "Graduation" : "Дипломирање", - "Brainstorm" : "Бура", - "Review" : "Преглед", - "Audit" : "Ревизија", - "Inspection" : "Инспекција", - "Proofreading" : "Лекторирање", - "Baseball" : "Бејзбол", - "Meet" : "Запознавање", - "Planning" : "Планирање", - "Pointing" : "Поентирање", - "Retrospective" : "Ретроспектива", - "Office" : "Канцеларија", - "Contributor week" : "Недела на соработници", - "Mail" : "Електронска пошта", - "Soccer" : "Фудбал", - "Football" : "Фудбал", - "Gaming" : "Играње", - "Drive" : "Возење", - "Driving" : "Возење", - "Bicycle" : "Велосипед", - "Cycle" : "Циклус", - "Cycling" : "Возење велосипед", - "Biking" : "Велосипедизам", - "Bike" : "Велосипед", - "Podcast" : "Подкаст", - "Basketball" : "Кошарка", - "Fishing" : "Риболов", - "Hiking" : "Пешачење", - "Hike" : "Пешачење", - "Art" : "Уметност", - "Exhibition" : "Изложба", - "Museum" : "Музеј", - "Pilates" : "Пилатес", - "Park" : "Парк", - "Walk" : "Пешачење", - "Studying" : "Учење", - "Doctor" : "Доктор", - "Health" : "Здравје", - "Dentist" : "Заболекар", - "Hospital" : "Болница", - "Interview" : "Интервју", - "Training" : "Тренинг", - "Practice" : "Пракса", - "Sports" : "Спорт", - "Exercise" : "Вежба", - "Work out" : "Работа", - "Working out" : "Работење", - "Gym" : "Теретана", - "Barber" : "Бербер", - "Haircut" : "Пострижување", - "Hairdresser" : "Фризер", - "Exam" : "Испит", - "Written test" : "Писмен тест", - "Oral test" : "Усно тестирање", - "Working" : "Работа", - "New Years Eve" : "Новогодишна ноќ", - "NYE" : "Нова година", - "Fireworks" : "Огномет", - "Running" : "Трчање", - "Go for a run" : "Одење на трчање", - "Marathon" : "Маратон", - "Video-conference" : "Видео-конференција", - "Conference-call" : "Конференција-повик", - "Video-call" : "Видео-повик", - "Video-chat" : "Видео-разговор", - "Video-meeting" : "Видео-состанок", - "Call" : "Повик", - "Calling" : "Повикувајќи", - "Christmas" : "Божиќ", - "Conference" : "Конференција", - "Pizza" : "Пица", - "Travelling" : "Патување", - "Trip" : "Патување", - "Journey" : "Патување", - "Collaborate" : "Соработка", - "Pair" : "Спари", - "Lecture" : "Читање", - "Seminar" : "Семинар", - "Teaching" : "Настава", - "Photograph" : "Фотографија", - "Party" : "Забава", - "Celebration" : "Прослава", - "Celebrate" : "Прослава", - "Birthday" : "Роденден", - "Shopping" : "Купување", - "Groceries" : "Намирници", - "Skate" : "Скејтбординг", - "Skateboard" : "Скејтбординг", - "Wine tasting" : "Дегустација на вино", - "Golf" : "Голф", - "Dinner" : "Вечера", - "Lunch" : "Ручек", - "Appointment not found" : "Состанокот не е пронајден", - "User not found" : "Корисникот не е пронајден" + "This is an event reminder." : "Ова е потсетник за настан.", + "Appointment not found" : "Терминот не е пронајден", + "User not found" : "Корисникот не е пронајден", + "Reminder" : "Потсетник", + "+ Add reminder" : "+ Додади потсетник", + "Suggestions" : "Предлози", + "Details" : "Детали" },"pluralForm" :"nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;" } \ No newline at end of file diff --git a/l10n/mn.js b/l10n/mn.js index 9719c8ccb0e933f894ead545e8594a1919a26bfd..b5362afb673b7a810c46ab0360d974804960052b 100644 --- a/l10n/mn.js +++ b/l10n/mn.js @@ -6,30 +6,50 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "%s хэрэглэгч нь »%s« календарийг нийтэлснийг үүгээр мэдэгдэе.", "Open »%s«" : "»%s« нээх", "Cheers!" : "Болж байна!", - "Confirm" : "Батлах", + "Upcoming events" : "Удахгүй болох үйл явдлууд", "Calendar" : "Календарь", - "New event" : "Шинэ үйл явдал", + "Confirm" : "Батлах", + "This confirmation link expires in %s hours." : "Энэ баталгаажуулах холбоос %s цагийн дараа дуусна ", + "Date:" : "Огноо:", + "Where:" : " Хаана:", + "A Calendar app for Nextcloud" : "Нэкстклауд Календарь апп ", + "Previous day" : "Өмнөх өдөр", + "Previous week" : "Өнмөх 7 хоног", + "Previous month" : "Өмнөх сар", + "Next day" : "Маргааш", + "Next week" : "Дараа 7 хоног", + "Next month" : "Дараа сар", "Today" : "Өнөөдөр", "Day" : "Өдөр", "Week" : "Долоо хоног", "Month" : "Сар", + "List" : "Жагсаалт", "Preview" : "шалгах", "Copy link" : "Холбоос хуулах", "Edit" : "засварлах", "Delete" : "Устгах", - "Export" : "Экспорт", - "Share link" : "Холбоос хуваалцах", - "Share with users or groups" : "Бусад хэрэглэгч, бүлэгт хуваалцах", - "can edit" : "засаж чадна", + "Disable calendar \"{calendar}\"" : "Кадендарь Идэвхигүй болгох \"{calendar}\"", + "Shared with you by" : "Таньд хуваалцсан", + "Edit and share calendar" : " Календарь засварлах болон хуваалцах", + "Edit calendar" : "Календар засварлах", + "Add new" : "Шинээр нэмэх", "New calendar" : "Шинэ цагийн хуваарь", + "Export" : "Экспорт", "Name" : "Нэр", "Deleted" : "Устгагдсан", "Restore" : "Сэргээх", "Delete permanently" : "бүр мөсөн устгах", + "Deck" : "Ажлын талбар", + "Hidden" : "Далд", + "Share link" : "Холбоос хуваалцах", + "can edit" : "засаж чадна", + "Share with users or groups" : "Бусад хэрэглэгч, бүлэгт хуваалцах", + "Save" : "Хадгалах", "Filename" : "Файлын нэр", "Cancel" : "Цуцлах", "Actions" : "Үйл ажиллагаа", "Show week numbers" : "7 хоногийн дугаарыг харуулах", + "Update" : "Шинэчлэх", "Location" : "Байршил", "Description" : "Тодорхойлолт", "to" : "Дуусах нь", @@ -41,28 +61,30 @@ OC.L10N.register( "Friday" : "баасан", "Saturday" : "бямба", "Sunday" : "ням гариг", - "Save" : "Хадгалах", - "Update" : "Шинэчлэх", + "Back" : "Буцах", "Notification" : "Мэдэгдэл", "Email" : "Цахим шуудан", + "seconds" : "секунд", + "hours" : "хугацаа", + "days" : "өдрүүд", + "Delete file" : "Файл устгах", "Available" : "Боломжтой", "Unknown" : "Үл танигдах зүйл", "Accept" : "Хүлээн зөвшөөрөх", "Decline" : "Зөвшөөрөхгүй", "Tentative" : "Урьдчилсан тов", + "Attendees" : "Оролцогчид", "Repeat" : "Давтах", "never" : "хэзээ ч үгүй", "after" : "дараа", - "More" : "Дэлгэрэнгүй", "Global" : "Нийтийн", + "Subscribe" : "Захиалга", "Personal" : "Хувийн", - "Details" : "Дэлгэрэнгүй", - "Attendees" : "Оролцогчид", + "Edit event" : "Үйл явдлыг засварлах", "Close" : "Хаах", "Week {number} of {year}" : "{year} оны {number}-р долоо хоног ", "Daily" : "Өдөр бүр", "Weekly" : "Долоо хоног бүр", - "Next" : "дараагийх", "Other" : "Бусад", "When shared show full event" : "Түгээсэн тохиолдолд үйл явдлыг бүтнээр нь харуул", "When shared show only busy" : "Түгээсэн тохиолдолд зөвхөн завгүй гэж харуул", @@ -70,7 +92,6 @@ OC.L10N.register( "Status" : "төлөв", "Confirmed" : "Баталгаажсан", "Categories" : "төрөл", - "Mail" : "Цахим шуудан", - "Birthday" : "Төрсөн өдөр" + "Details" : "Дэлгэрэнгүй" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/mn.json b/l10n/mn.json index d94b9ce5df514fb9ab1869b74cd67790048910d6..05e8a38334ab2a2224863737fc3dc42b0e797baf 100644 --- a/l10n/mn.json +++ b/l10n/mn.json @@ -4,30 +4,50 @@ "We wanted to inform you that %s has published the calendar »%s«." : "%s хэрэглэгч нь »%s« календарийг нийтэлснийг үүгээр мэдэгдэе.", "Open »%s«" : "»%s« нээх", "Cheers!" : "Болж байна!", - "Confirm" : "Батлах", + "Upcoming events" : "Удахгүй болох үйл явдлууд", "Calendar" : "Календарь", - "New event" : "Шинэ үйл явдал", + "Confirm" : "Батлах", + "This confirmation link expires in %s hours." : "Энэ баталгаажуулах холбоос %s цагийн дараа дуусна ", + "Date:" : "Огноо:", + "Where:" : " Хаана:", + "A Calendar app for Nextcloud" : "Нэкстклауд Календарь апп ", + "Previous day" : "Өмнөх өдөр", + "Previous week" : "Өнмөх 7 хоног", + "Previous month" : "Өмнөх сар", + "Next day" : "Маргааш", + "Next week" : "Дараа 7 хоног", + "Next month" : "Дараа сар", "Today" : "Өнөөдөр", "Day" : "Өдөр", "Week" : "Долоо хоног", "Month" : "Сар", + "List" : "Жагсаалт", "Preview" : "шалгах", "Copy link" : "Холбоос хуулах", "Edit" : "засварлах", "Delete" : "Устгах", - "Export" : "Экспорт", - "Share link" : "Холбоос хуваалцах", - "Share with users or groups" : "Бусад хэрэглэгч, бүлэгт хуваалцах", - "can edit" : "засаж чадна", + "Disable calendar \"{calendar}\"" : "Кадендарь Идэвхигүй болгох \"{calendar}\"", + "Shared with you by" : "Таньд хуваалцсан", + "Edit and share calendar" : " Календарь засварлах болон хуваалцах", + "Edit calendar" : "Календар засварлах", + "Add new" : "Шинээр нэмэх", "New calendar" : "Шинэ цагийн хуваарь", + "Export" : "Экспорт", "Name" : "Нэр", "Deleted" : "Устгагдсан", "Restore" : "Сэргээх", "Delete permanently" : "бүр мөсөн устгах", + "Deck" : "Ажлын талбар", + "Hidden" : "Далд", + "Share link" : "Холбоос хуваалцах", + "can edit" : "засаж чадна", + "Share with users or groups" : "Бусад хэрэглэгч, бүлэгт хуваалцах", + "Save" : "Хадгалах", "Filename" : "Файлын нэр", "Cancel" : "Цуцлах", "Actions" : "Үйл ажиллагаа", "Show week numbers" : "7 хоногийн дугаарыг харуулах", + "Update" : "Шинэчлэх", "Location" : "Байршил", "Description" : "Тодорхойлолт", "to" : "Дуусах нь", @@ -39,28 +59,30 @@ "Friday" : "баасан", "Saturday" : "бямба", "Sunday" : "ням гариг", - "Save" : "Хадгалах", - "Update" : "Шинэчлэх", + "Back" : "Буцах", "Notification" : "Мэдэгдэл", "Email" : "Цахим шуудан", + "seconds" : "секунд", + "hours" : "хугацаа", + "days" : "өдрүүд", + "Delete file" : "Файл устгах", "Available" : "Боломжтой", "Unknown" : "Үл танигдах зүйл", "Accept" : "Хүлээн зөвшөөрөх", "Decline" : "Зөвшөөрөхгүй", "Tentative" : "Урьдчилсан тов", + "Attendees" : "Оролцогчид", "Repeat" : "Давтах", "never" : "хэзээ ч үгүй", "after" : "дараа", - "More" : "Дэлгэрэнгүй", "Global" : "Нийтийн", + "Subscribe" : "Захиалга", "Personal" : "Хувийн", - "Details" : "Дэлгэрэнгүй", - "Attendees" : "Оролцогчид", + "Edit event" : "Үйл явдлыг засварлах", "Close" : "Хаах", "Week {number} of {year}" : "{year} оны {number}-р долоо хоног ", "Daily" : "Өдөр бүр", "Weekly" : "Долоо хоног бүр", - "Next" : "дараагийх", "Other" : "Бусад", "When shared show full event" : "Түгээсэн тохиолдолд үйл явдлыг бүтнээр нь харуул", "When shared show only busy" : "Түгээсэн тохиолдолд зөвхөн завгүй гэж харуул", @@ -68,7 +90,6 @@ "Status" : "төлөв", "Confirmed" : "Баталгаажсан", "Categories" : "төрөл", - "Mail" : "Цахим шуудан", - "Birthday" : "Төрсөн өдөр" + "Details" : "Дэлгэрэнгүй" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/ms_MY.js b/l10n/ms_MY.js index fc551577048eb29667eafc2f8d2e2589f93a5172..d72ce4a5b5ad3238c91ef667699361ce1cf0546a 100644 --- a/l10n/ms_MY.js +++ b/l10n/ms_MY.js @@ -1,21 +1,58 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Alamat-mel yang diberikan terlalu panjang", + "User-Session unexpectedly expired" : "Sesi-Pengguna tamat secara tidak dijangka.", + "Provided email-address is not valid" : "Alamat-mel yang diberikan tidak sah", + "%s has published the calendar »%s«" : "%stelah telah menerbitkan kalendar%s", + "Unexpected error sending email. Please contact your administrator." : "Ralat tidak dijangka ketika menghantar e-mel. Sila hubungi admin anda.", + "Successfully sent email to %1$s" : "Berjaya menghantar e-mel ke %1$s", + "Hello," : "Helo,", + "We wanted to inform you that %s has published the calendar »%s«." : "Kami ingin memaklumkan kepada anda yang %s telah menerbitkan kalendar %s.", + "Open »%s«" : "Buka %s", + "Cheers!" : "Cheers!", + "Upcoming events" : "Acara yang akan datang", + "No more events today" : "Tiada lagi acara hari ini", + "No upcoming events" : "Tiada acara akan datang", + "More events" : "Lebih banyak acara", + "%1$s with %2$s" : "%1$sdengan %2$s", "Calendar" : "Kalendar", + "New booking {booking}" : "Janji temu baharu{booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email})telah membuat Janji temu\"{config_display_name}\" pada {date_time}.", + "Appointments" : "Janji temu", + "Schedule appointment \"%s\"" : "Jadual janji temu \"%s\"", + "Schedule an appointment" : "Jadualkan janji temu", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Menyediakan untuk %s", + "Appointment with:" : "Janji temu dengan:", + "Description:" : "Penerangan:", + "Date:" : "Tarikh:", + "Where:" : "Di mana:", + "Comment:" : "Komen:", + "A Calendar app for Nextcloud" : "Aplikasi kalendar untuk Nextcloud", + "Previous day" : "Semalam", + "Previous week" : "Minggu sebelumnya", + "Previous year" : "Tahun sebelumnya", + "Previous month" : "Bulan sebelumnya", + "Next day" : "Esok", + "Next week" : "Minggu seterusnya", + "Next year" : "Tahun seterusnya", "Today" : "Hari ini", "Day" : "Hari", "Week" : "Minggu", "Month" : "Bulan", "Edit" : "Sunting", "Delete" : "Padam", - "Export" : "Eksport", - "Share link" : "Share link", - "can edit" : "boleh mengubah", "New calendar" : "Kalendar baru", + "Export" : "Eksport", "Name" : "Nama", "Deleted" : "Dipadam", "Restore" : "Pulihkan", + "Share link" : "Share link", + "can edit" : "boleh mengubah", + "Save" : "Simpan", "Cancel" : "Batal", + "Update" : "Kemaskini", "Location" : "Lokasi", "Description" : "Keterangan", "to" : "kepada", @@ -27,21 +64,19 @@ OC.L10N.register( "Friday" : "Jumaat", "Saturday" : "Sabtu", "Sunday" : "Ahad", - "Save" : "Simpan", - "Update" : "Kemaskini", "Your email address" : "Alamat emel anda", + "Notification" : "Pemberitahuan", "Email" : "Email", + "Done" : "Selesai", + "Attendees" : "Jemputan", "Repeat" : "Ulang", "never" : "jangan", - "More" : "Lanjutan", "Personal" : "Peribadi", - "Attendees" : "Jemputan", + "Edit event" : "Ubah peristiwa", "Close" : "Tutup", "Daily" : "Setiap hari", "Weekly" : "Setiap minggu", - "Next" : "Seterus", - "Other" : "Lain", - "Mail" : "Mel", - "Birthday" : "Hari lahir" + "second" : "kedua", + "Other" : "Lain" }, "nplurals=1; plural=0;"); diff --git a/l10n/ms_MY.json b/l10n/ms_MY.json index 50bf8463659e8259bd41d44c8365e2f87014c742..99813e387b6779d2a192c9f1ef26c93ffcfc3030 100644 --- a/l10n/ms_MY.json +++ b/l10n/ms_MY.json @@ -1,19 +1,56 @@ { "translations": { + "Provided email-address is too long" : "Alamat-mel yang diberikan terlalu panjang", + "User-Session unexpectedly expired" : "Sesi-Pengguna tamat secara tidak dijangka.", + "Provided email-address is not valid" : "Alamat-mel yang diberikan tidak sah", + "%s has published the calendar »%s«" : "%stelah telah menerbitkan kalendar%s", + "Unexpected error sending email. Please contact your administrator." : "Ralat tidak dijangka ketika menghantar e-mel. Sila hubungi admin anda.", + "Successfully sent email to %1$s" : "Berjaya menghantar e-mel ke %1$s", + "Hello," : "Helo,", + "We wanted to inform you that %s has published the calendar »%s«." : "Kami ingin memaklumkan kepada anda yang %s telah menerbitkan kalendar %s.", + "Open »%s«" : "Buka %s", + "Cheers!" : "Cheers!", + "Upcoming events" : "Acara yang akan datang", + "No more events today" : "Tiada lagi acara hari ini", + "No upcoming events" : "Tiada acara akan datang", + "More events" : "Lebih banyak acara", + "%1$s with %2$s" : "%1$sdengan %2$s", "Calendar" : "Kalendar", + "New booking {booking}" : "Janji temu baharu{booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email})telah membuat Janji temu\"{config_display_name}\" pada {date_time}.", + "Appointments" : "Janji temu", + "Schedule appointment \"%s\"" : "Jadual janji temu \"%s\"", + "Schedule an appointment" : "Jadualkan janji temu", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Menyediakan untuk %s", + "Appointment with:" : "Janji temu dengan:", + "Description:" : "Penerangan:", + "Date:" : "Tarikh:", + "Where:" : "Di mana:", + "Comment:" : "Komen:", + "A Calendar app for Nextcloud" : "Aplikasi kalendar untuk Nextcloud", + "Previous day" : "Semalam", + "Previous week" : "Minggu sebelumnya", + "Previous year" : "Tahun sebelumnya", + "Previous month" : "Bulan sebelumnya", + "Next day" : "Esok", + "Next week" : "Minggu seterusnya", + "Next year" : "Tahun seterusnya", "Today" : "Hari ini", "Day" : "Hari", "Week" : "Minggu", "Month" : "Bulan", "Edit" : "Sunting", "Delete" : "Padam", - "Export" : "Eksport", - "Share link" : "Share link", - "can edit" : "boleh mengubah", "New calendar" : "Kalendar baru", + "Export" : "Eksport", "Name" : "Nama", "Deleted" : "Dipadam", "Restore" : "Pulihkan", + "Share link" : "Share link", + "can edit" : "boleh mengubah", + "Save" : "Simpan", "Cancel" : "Batal", + "Update" : "Kemaskini", "Location" : "Lokasi", "Description" : "Keterangan", "to" : "kepada", @@ -25,21 +62,19 @@ "Friday" : "Jumaat", "Saturday" : "Sabtu", "Sunday" : "Ahad", - "Save" : "Simpan", - "Update" : "Kemaskini", "Your email address" : "Alamat emel anda", + "Notification" : "Pemberitahuan", "Email" : "Email", + "Done" : "Selesai", + "Attendees" : "Jemputan", "Repeat" : "Ulang", "never" : "jangan", - "More" : "Lanjutan", "Personal" : "Peribadi", - "Attendees" : "Jemputan", + "Edit event" : "Ubah peristiwa", "Close" : "Tutup", "Daily" : "Setiap hari", "Weekly" : "Setiap minggu", - "Next" : "Seterus", - "Other" : "Lain", - "Mail" : "Mel", - "Birthday" : "Hari lahir" + "second" : "kedua", + "Other" : "Lain" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/nb.js b/l10n/nb.js index 304b9c3d75053975518a230962b8bae87d331940..a0599ac526100a62a18b39ac315e73efac496d18 100644 --- a/l10n/nb.js +++ b/l10n/nb.js @@ -1,135 +1,170 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Oppgitt e-postadresse er for lang", "User-Session unexpectedly expired" : "Brukerøkten utløp uventet", "Provided email-address is not valid" : "Oppgitt e-postadresse er ikke gyldig", "%s has published the calendar »%s«" : "%s har publisert kalenderen \"%s\"", - "Unexpected error sending email. Please contact your administrator." : "Det oppstod uventet feil under sending av e-post. Kontakt din administrator.", + "Unexpected error sending email. Please contact your administrator." : "Det oppsto uventet feil under sending av e-post. Kontakt din administrator.", "Successfully sent email to %1$s" : "Epost sendt til %1$s", "Hello," : "Hei,", "We wanted to inform you that %s has published the calendar »%s«." : "Vi ønsker å informere deg om at %s har publisert kalenderen \"%s\".", "Open »%s«" : "Åpne \"%s\"", "Cheers!" : "Ha det!", "Upcoming events" : "Kommende hendelser", + "No more events today" : "Ingen flere hendelser i dag", + "No upcoming events" : "Ingen kommende hendelser", + "More events" : "Flere hendelser", + "%1$s with %2$s" : "%1$s med %2$s", + "Calendar" : "Kalender", + "New booking {booking}" : "Ny bestilling {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) bestilte time \"{config_display_name}\" den {date_time}.", "Appointments" : "Avtaler", "Schedule appointment \"%s\"" : "Registrer avtale \"%s\"", "Schedule an appointment" : "Registrer en avtale", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Forbered for %s", "Follow up for %s" : "Følg opp for %s", - "Your appointment \"%s\" needs confirmation" : "Avtalen din \"%s\" trenger bekreftelse", + "Your appointment \"%s\" with %s needs confirmation" : "Avtalen din \"%s\" med %s trenger bekreftelse", "Dear %s, please confirm your booking" : "Kjære %s, vennligst bekreft bestillingen din", "Confirm" : "Bekreft", + "Appointment with:" : "Avtale med:", + "Description:" : "Beskrivelse:", "This confirmation link expires in %s hours." : "Denne bekreftelseslinken utgår om %stimer.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Hvis du ønsker å avlyse avtalen likevel, vennligst kontakt arrangøren din.", - "Appointment:" : "Avtale:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Hvis du ønsker å avbryte avtalen, vennligst kontakt arrangøren din ved å svare på denne e-posten eller ved å besøke deres profilside.", + "Your appointment \"%s\" with %s has been accepted" : "Avtalen din \"%s\" med %s har blitt akseptert", + "Dear %s, your booking has been accepted." : "Kjære%s, bestillingen din har blitt akseptert.", + "Appointment for:" : "Appointment for:", "Date:" : "Dato:", + "You will receive a link with the confirmation email" : "Du vil motta en lenke med bekreftelses-e-posten", "Where:" : "Hvor:", - "Description:" : "Beskrivelse:", - "Calendar" : "Kalender", + "Comment:" : "Kommentar:", + "You have a new appointment booking \"%s\" from %s" : "Du har en ny timebestilling \"%s\" fra %s", + "Dear %s, %s (%s) booked an appointment with you." : "Kjære %s, %s (%s) bestilte time hos deg.", "A Calendar app for Nextcloud" : "En kalender til Nextcloud", "Previous day" : "Forrige dag", "Previous week" : "Forrige uke", + "Previous year" : "Forrige år", "Previous month" : "Forrige måned", "Next day" : "Neste dag", "Next week" : "Neste uke", + "Next year" : "Neste år", "Next month" : "Neste måned", - "New event" : "Ny hendelse", + "Create new event" : "Opprett ny hendelse", + "Event" : "Begivenhet", "Today" : "I dag", "Day" : "Dag", "Week" : "Uke", "Month" : "Måned", + "Year" : "År", "List" : "Liste", + "Appointment link was copied to clipboard" : "Avtalelenke ble kopiert til utklippstavlen", + "Appointment link could not be copied to clipboard" : "Avtalelenken ble ikke kopiert til utklippstavlen", "Preview" : "Forhåndsvis", "Copy link" : "Kopier lenke", "Edit" : "Rediger", "Delete" : "Slett", - "Appointment link was copied to clipboard" : "Avtalelenke ble kopiert til utklippstavlen", - "Appointment link could not be copied to clipboard" : "Avtalelenken ble ikke kopiert til utklippstavlen", - "Add new" : "Legg til ny", - "Untitled calendar" : "Kalender uten tittel", - "Edit name" : "Rediger navn", - "Saving name …" : "Lagrer navn ...", - "Edit color" : "Rediger farge", - "Saving color …" : "Lagrer farge  ...", - "Copy private link" : "Kopier privat lenke", - "Export" : "Eksporter", - "Unshare from me" : "Fjern deling fra meg", + "Create new" : "Opprett ny", "Disable calendar \"{calendar}\"" : "Deaktiver kalender \"{calendar}\"", "Disable untitled calendar" : "Deaktiver kalender uten tittel", + "Enable calendar \"{calendar}\"" : "Aktiver kalenderen \"{calendar}\"", "Enable untitled calendar" : "Aktiver kalender uten tittel", - "An error occurred, unable to change visibility of the calendar." : "En feil oppstod, kan ikke endre synlighet til kalenderen.", - "An error occurred, unable to delete the calendar." : "En feil oppstod, kan ikke slette kalenderen. ", - "Calendar link copied to clipboard." : "Lenke til kalender kopiert til utklippstavle.", - "Calendar link could not be copied to clipboard." : "Lenke til kalender kunne ikke bli kopiert til utklippstavle.", - "An error occurred, unable to rename the calendar." : "Det oppstod en feil, klarte ikke å endre navn på kalenderen.", - "An error occurred, unable to change the calendar's color." : "En feil oppstod, kunne ikke endre fargen til kalenderen.", + "An error occurred, unable to change visibility of the calendar." : "En feil oppsto, kan ikke endre synlighet til kalenderen.", + "Untitled calendar" : "Kalender uten tittel", + "Shared with you by" : "Delt med deg av", + "Edit and share calendar" : "Rediger og del kalender", + "Edit calendar" : "Rediger kalender", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Fjerner deling av kalenderen om {countdown} sekund","Fjerner deling av kalenderen om {countdown} sekunder"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Sletter kalenderen om {countdown} sekund","Sletter kalenderen om {countdown} sekunder"], + "An error occurred, unable to create the calendar." : "En feil oppsto, kunne ikke opprette kalenderen", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vennligst angi gyldig lenke (starte med http://, https://, webcal://, eller webcals://)", + "Calendars" : "Kalendere", + "Add new" : "Legg til ny", + "New calendar" : "Ny kalender", + "Name for new calendar" : "Navn på ny kalender", + "Creating calendar …" : "Oppretter kalender ...", + "New calendar with task list" : "Ny kalender med oppgaveliste", + "New subscription from link (read-only)" : "Nytt abonnement fra lenke (kun lesing)", + "Creating subscription …" : "Oppretter abonnement ...", + "Add public holiday calendar" : "Legg til helligdagskalender", + "Add custom public calendar" : "Legg til egendefinert offentlig kalender", + "Calendar link copied to clipboard." : "Lenke til kalender kopiert til utklippstavle.", + "Calendar link could not be copied to clipboard." : "Lenke til kalender kunne ikke bli kopiert til utklippstavle.", + "Copy subscription link" : "Kopier abonnementslenke", + "Copying link …" : "Kopierer lenke ...", + "Copied link" : "Kopier lenke", + "Could not copy link" : "Klarte ikke å kopiere lenken", + "Export" : "Eksporter", + "Untitled item" : "Element uten navn", + "Unknown calendar" : "Ukjent kalender", + "Could not load deleted calendars and objects" : "Kunne ikke laste slettede kalendere og objekter", + "Could not delete calendar or event" : "Kunne ikke slette kalender eller hendelse", + "Could not restore calendar or event" : "Kunne ikke gjenopprette kalender eller hendelse", + "Do you really want to empty the trash bin?" : "Vil du virkelig tømme papirkurven?", + "Empty trash bin" : "Tøm papirkurv", + "Trash bin" : "Papirkurv", + "Loading deleted items." : "Laster inn slettede elementer.", + "You do not have any deleted items." : "Du har ingen slettede elementer.", + "Name" : "Navn", + "Deleted" : "Slettet", + "Restore" : "Gjenopprett", + "Delete permanently" : "Slett permanent", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Items in the trash bin are deleted after {numDays} day","Elementer i papirkurven slettes etter {numDays} dager"], + "Could not update calendar order." : "Kunne ikke oppdatere rekkefølgen på kalendere.", + "Shared calendars" : "Delte kalendere", + "Deck" : "Stokk", + "Hidden" : "Skjult", + "Internal link" : "Intern lenke", + "A private link that can be used with external clients" : "En privat lenke som kan brukes med eksterne klienter", + "Copy internal link" : "Kopier intern lenke", + "An error occurred, unable to publish calendar." : "Det oppsto en feil, klarte ikke å publisere kalenderen.", + "An error occurred, unable to send email." : "En feil oppsto, kan ikke sende e-post.", + "Embed code copied to clipboard." : "Innbyggingskode kopiert til utklippstavle.", + "Embed code could not be copied to clipboard." : "Innbyggingskode ble ikke kopiert til utklippstavle.", + "Unpublishing calendar failed" : "Fjerne publiseringen av kalenderen feilet.", "Share link" : "Del lenke", - "Publish calendar" : "Publiser kalender", - "Publishing calendar" : "Publiserer kalender", "Copy public link" : "Kopier offentlig lenke", "Send link to calendar via email" : "Sende lenke til kalenderen via e-post", "Enter one address" : "Tast inn en adresse", "Sending email …" : "Sender epost ...", - "Copy subscription link" : "Kopier abonnementslenke", - "Copying link …" : "Kopierer lenke ...", - "Copied link" : "Kopier lenke", - "Could not copy link" : "Klarte ikke å kopiere lenken", "Copy embedding code" : "Kopier innbyggingskode", "Copying code …" : "Kopierer kode ...", "Copied code" : "Kode kopiert", "Could not copy code" : "Klarte ikke å kopiere koden", "Delete share link" : "Slett delingslenke", "Deleting share link …" : "Sletter delingslenke ...", - "An error occurred, unable to publish calendar." : "Det oppstod en feil, klarte ikke å publisere kalenderen.", - "An error occurred, unable to send email." : "En feil oppstod, kan ikke sende e-post.", - "Embed code copied to clipboard." : "Innbyggingskode kopiert til utklippstavle.", - "Embed code could not be copied to clipboard." : "Innbyggingskode ble ikke kopiert til utklippstavle.", - "Unpublishing calendar failed" : "Fjerne publiseringen av kalenderen feilet.", - "Share with users or groups" : "Del med brukere eller grupper", - "No users or groups" : "Ingen brukere eller grupper", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Lag)", + "An error occurred while unsharing the calendar." : "Det oppstod en feil under oppheving av deling av kalenderen.", + "An error occurred, unable to change the permission of the share." : "En feil oppsto, kan ikke endre rettighetene til delingen.", "can edit" : "kan endre", "Unshare with {displayName}" : "Fjern deling med {displayName}", - "An error occurred, unable to change the unshare the calendar." : "En feil oppstod, kan ikke endre fjerning av deling av kalenderen.", - "An error occurred, unable to change the permission of the share." : "En feil oppstod, kan ikke endre rettighetene til delingen.", - "+ New calendar" : "+ Ny kalender", - "New calendar" : "Ny kalender", - "Name for new calendar" : "Navn på ny kalender", - "Creating calendar …" : "Oppretter kalender ...", - "New calendar with task list" : "Ny kalender med oppgaveliste", - "New subscription from link (read-only)" : "Nytt abonnement fra lenke (kun lesing)", - "Creating subscription …" : "Oppretter abonnement ...", - "An error occurred, unable to create the calendar." : "En feil oppstod, kunne ikke opprette kalenderen", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vennligst angi gyldig lenke (starte med http://, https://, webcal://, eller webcals://)", - "Trash bin" : "Papirkurv", - "Loading deleted elements." : "Laster slettede elementer.", - "You do not have any deleted elements." : "Du har ingen slettede elementer.", - "Name" : "Navn", - "Deleted" : "Slettet", - "Restore" : "Gjenopprett", - "Delete permanently" : "Slett permanent", - "Empty trash bin" : "Tøm papirkurv", - "Untitled element" : "Element uten tittel", - "Unknown calendar" : "Ukjent kalender", - "Could not load deleted calendars and objects" : "Kunne ikke laste slettede kalendere og objekter", - "Could not restore calendar or event" : "Kunne ikke gjenopprette kalender eller hendelse", - "Do you really want to empty the trash bin?" : "Vil du virkelig tømme papirkurven?", - "Could not update calendar order." : "Kunne ikke oppdatere rekkefølgen på kalendere.", + "Share with users or groups" : "Del med brukere eller grupper", + "No users or groups" : "Ingen brukere eller grupper", + "Failed to save calendar name and color" : "Lagring av kalendernavn og farge feilet", + "Calendar name …" : "Kalendernavn…", + "Never show me as busy (set this calendar to transparent)" : "Vis meg aldri som opptatt (sett denne kalenderen til gjennomsiktig)", + "Share calendar" : "Del kalender", + "Unshare from me" : "Fjern deling fra meg", + "Save" : "Lagre", "Import calendars" : "Importer kalendere", "Please select a calendar to import into …" : "Vennligst velg en kalender å importere til ...", "Filename" : "Filnavn", "Calendar to import into" : "Kalenderen det skal importeres til", "Cancel" : "Avbryt", "_Import calendar_::_Import calendars_" : ["Importer kalender","Importer kalendere"], + "Select the default location for attachments" : "Velg standardplassering for vedlegg", + "Pick" : "Velg", + "Invalid location selected" : "Invalid location selected", + "Attachments folder successfully saved." : "Vedleggsmappen er lagret.", + "Error on saving attachments folder." : "Feil ved lagring av vedleggsmappe.", + "Default attachments location" : "Standard plassering for vedlegg", "{filename} could not be parsed" : "{filename} kunne ikke leses", "No valid files found, aborting import" : "Ingen gyldig filer funnet, avbryter importering", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Vellykket importert %n hendelse","Vellykket importert %n hendelser"], "Import partially failed. Imported {accepted} out of {total}." : "Importen mislyktes delvis. Importerte {accepted} av {total}. ", "Automatic" : "Automatisk", "Automatic ({detected})" : "Automatisk ({detected})", "New setting was not saved successfully." : "Ny innstilling ble ikke lagret.", - "Shortcut overview" : "Oversikt over snarveier", - "or" : "eller", "Navigation" : "Navigasjon", "Previous period" : "Forrige periode", "Next period" : "Neste periode", @@ -137,28 +172,37 @@ OC.L10N.register( "Day view" : "Dagsvisning", "Week view" : "Ukesvisning", "Month view" : "Månedsvisning", + "Year view" : "Årsvisning", "List view" : "Listevisning", "Actions" : "Handlinger", "Create event" : "Opprett hendelse", "Show shortcuts" : "Vis snarveier", + "Editor" : "Tekstredigerer", + "Close editor" : "Lukk tekstredigerer", "Save edited event" : "Lagre endret hendelse", "Delete edited event" : "Slett endret hendelse", "Duplicate event" : "Dupliser hendelse", + "Shortcut overview" : "Oversikt over snarveier", + "or" : "eller", + "Calendar settings" : "Kalenderinnstillinger", + "At event start" : "Ved hendelsens start", + "No reminder" : "Ingen påminnelse", + "Failed to save default calendar" : "Lagring av standard kalender feilet", + "CalDAV link copied to clipboard." : "CalDAV-lenke kopiert til utklippstavlen.", + "CalDAV link could not be copied to clipboard." : "CalDAV-lenke kunne ikke bli kopiert til utklippstavlen.", "Enable birthday calendar" : "Aktiver fødselsdagkalender", "Show tasks in calendar" : "Vis oppgaver i kalender", "Enable simplified editor" : "Aktiver forenklet redigering", - "Limit visible events per view" : "Begrens synlige hendelser i brukerutsnitt", + "Limit the number of events displayed in the monthly view" : "Begrens antall hendelser som vises i månedsvisningen", "Show weekends" : "Vis helger", "Show week numbers" : "Vis ukenummer", "Time increments" : "Tidsøkninger", + "Default calendar for incoming invitations" : "Standard kalender for innkommende invitasjoner", "Default reminder" : "Standardpåminnelse", "Copy primary CalDAV address" : "Kopier primær CalDAV-adresse", "Copy iOS/macOS CalDAV address" : "Kopier CalDAV-lenke for iOS/macOS", + "Personal availability settings" : "Personlig ledighets-innstillinger", "Show keyboard shortcuts" : "Vis tastatursnarveier", - "Calendar settings" : "Kalenderinnstillinger", - "No reminder" : "Ingen påminnelse", - "CalDAV link copied to clipboard." : "CalDAV-lenke kopiert til utklippstavlen.", - "CalDAV link could not be copied to clipboard." : "CalDAV-lenke kunne ikke bli kopiert til utklippstavlen.", "_{duration} minute_::_{duration} minutes_" : ["{duration} minutt","{duration} minutter"], "0 minutes" : "0 minutter", "_{duration} hour_::_{duration} hours_" : ["{duration} time","{duration} timer"], @@ -166,7 +210,14 @@ OC.L10N.register( "_{duration} week_::_{duration} weeks_" : ["{duration} uke","{duration} uker"], "_{duration} month_::_{duration} months_" : ["{duration} måned","{duration} måneder"], "_{duration} year_::_{duration} years_" : ["{duration} år","{duration} år"], + "To configure appointments, add your email address in personal settings." : "For å konfigurere avtaler, legg til e-postadressen din i personlig innstillinger.", + "Public – shown on the profile page" : "Offentlig – vises på profilsiden", + "Private – only accessible via secret link" : "Privat – kun tilgjengelig via hemmelig lenke", + "Update" : "Oppdater", + "Appointment name" : "Navn på avtale", "Location" : "Sted", + "Create a Talk room" : "Opprett et Talk-rom", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "En unik lenke vil bli generert for hver bestilt time og sendt via bekreftelses-e-posten", "Description" : "Beskrivelse", "Visibility" : "Synlighet", "Duration" : "Varighet", @@ -184,20 +235,26 @@ OC.L10N.register( "Friday" : "Fredag", "Saturday" : "Lørdag", "Sunday" : "Søndag", + "Weekdays" : "Ukedager", + "Add time before and after the event" : "Legg til tid før og etter hendelsen", "Before the event" : "Før hendelsen", "After the event" : "Etter hendelsen", - "Minimum time before next available slot" : "Minimumstid før neste tilgjengelige tidsrom", + "Planning restrictions" : "Planleggingsbegrensninger", + "Minimum time before next available slot" : "Minimumstid før neste ledige tidsrom", "Max slots per day" : "Maks. antall tidsrom per dag", "Limit how far in the future appointments can be booked" : "Begrens hvor langt frem i tid avtaler kan bestilles", - "Create appointment" : "Opprett avtale", - "Edit appointment" : "Endre avtale", - "Save" : "Lagre", - "Update" : "Oppdater", + "It seems a rate limit has been reached. Please try again later." : "Det ser ut til at en satsgrense er nådd. Prøv igjen senere.", "Please confirm your reservation" : "Vennligst bekreft din reservasjon", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Vi har sendt deg en e-post med detaljer. Vennligst bekreft avtalen din ved å bruke lenken i e-posten. Du kan lukke denne siden nå.", "Your name" : "Ditt navn", "Your email address" : "Din e-postadresse", - "Book the appointment" : "Bestill avtalen", - "Reminder" : "Påminnelse", + "Please share anything that will help prepare for our meeting" : "Vennligst del alt som vil hjelpe deg med å forberede møtet vårt", + "Could not book the appointment. Please try again later or contact the organizer." : "Kunne ikke bestille time. Prøv igjen senere eller kontakt arrangøren.", + "Back" : "Tilbake", + "Create a new conversation" : "Opprett en ny samtale", + "Select conversation" : "Velg samtale", + "on" : "på", + "at" : "ved", "before at" : "før ved", "Notification" : "Varsel", "Email" : "E-post", @@ -208,85 +265,134 @@ OC.L10N.register( "Edit time" : "Rediger tidspunkt", "Save time" : "Lagre tidspunkt", "Remove reminder" : "Fjern påminnelse", - "on" : "på", - "at" : "ved", - "+ Add reminder" : "+ Legg til påminnelse", "Add reminder" : "Legg til påminnelse", - "_second_::_seconds_" : ["sekund","sekunder"], - "_minute_::_minutes_" : ["minutt","minutter"], - "_hour_::_hours_" : ["time","timer"], - "_day_::_days_" : ["dag","dager"], - "_week_::_weeks_" : ["uke","uker"], - "Available" : "Tilgjengelig", - "Not available" : "Ikke tilgjengelig", - "Invitation sent" : "Invitasjon er sendt", - "Availability of attendees, resources and rooms" : "Tilgjengelighet til deltagere, ressurser og rom", + "seconds" : "sekund", + "minutes" : "minutter", + "hours" : "timer", + "days" : "dager", + "weeks" : "uker", + "Choose a file to add as attachment" : "Velg en fil å legge til som vedlegg", + "Choose a file to share as a link" : "Velg en fil du vil dele som en lenke", + "Attachment {name} already exist!" : "Vedlegget {name} finnes allerede!", + "Could not upload attachment(s)" : "Kunne ikke laste opp vedlegg", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Du er i ferd med å navigere til {host}. Er du sikker på å fortsette? Lenke: {link}", + "Proceed" : "Fortsett", + "No attachments" : "Ingen vedlegg", + "Add from Files" : "Legg til fra filer", + "Upload from device" : "Last opp fra enhet", + "Delete file" : "Slett fil", + "Confirmation" : "Bekreftelse", + "_{count} attachment_::_{count} attachments_" : ["{count} vedlegg","{count} vedlegg"], + "Suggested" : "Foreslått", + "Available" : "Ledig", + "Invitation accepted" : "Invitasjon akseptert", + "Accepted {organizerName}'s invitation" : "Godtok invitasjonen til {organizerName}", + "Participation marked as tentative" : "Deltakelse markert som foreløpig", + "Invitation is delegated" : "Invitasjon er delegert", + "Not available" : "Ikke ledig", + "Invitation declined" : "Invitasjonen ble avslått", + "Declined {organizerName}'s invitation" : "Avviste invitasjonen til {organizerName}", + "Awaiting response" : "Venter på svar", + "Checking availability" : "Sjekker ledighet", + "Has not responded to {organizerName}'s invitation yet" : "Har ikke svart på {organizerName} sin invitasjon ennå", + "chairperson" : "ordstyrer", + "required participant" : "påkrevd deltaker", + "non-participant" : "ikke-deltaker", + "optional participant" : "valgfri deltaker", "{organizer} (organizer)" : "{organizer} (organisator)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Ledighet til deltagere, ressurser og rom", + "Suggestion accepted" : "Forslag akseptert", + "Legend" : "Legende", + "Out of office" : "Fraværende", + "Attendees:" : "Deltakere:", + "Done" : "Ferdig", + "Search room" : "Søk rom", + "Room name" : "Romnavn", + "Check room availability" : "Sjekk rom tilgjengelighet", "Free" : "Ledig", "Busy (tentative)" : "Opptatt (foreløpig)", "Busy" : "Opptatt", - "Out of office" : "Fraværende", "Unknown" : "Ukjent", + "Find a time" : "Finn et tidspunkt", + "The invitation has been accepted successfully." : "Invitasjonen er godtatt.", + "Failed to accept the invitation." : "Kunne ikke godta invitasjonen.", + "The invitation has been declined successfully." : "Invitasjonen har blitt avslått.", + "Failed to decline the invitation." : "Kunne ikke avslå invitasjonen.", + "Your participation has been marked as tentative." : "Din deltakelse er merket som foreløpig.", + "Failed to set the participation status to tentative." : "Kunne ikke sette deltakelsesstatusen til tentativ.", "Accept" : "Aksepter", "Decline" : "Avslå", "Tentative" : "Foreløpig", - "Create Talk room for this event" : "Opprett Talk-rom for denne hendelsen", - "Show busy times" : "Vis opptatte tider", "No attendees yet" : "Ingen deltakere enda", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} invitert, {confirmedCount} bekreftet", + "Successfully appended link to talk room to location." : "Lenke til talk-rom til plassering er lagt til.", "Successfully appended link to talk room to description." : "La til lenke til Talk-rom til beskrivelsen.", "Error creating Talk room" : "Feil ved opprettelse av Talk-rom", - "Send email" : "Send e-post", + "Attendees" : "Deltakere", + "_%n more guest_::_%n more guests_" : ["%n gjest til","%n flere gjester"], + "Remove group" : "Fjern gruppe", + "Remove attendee" : "Fjern deltaker", + "Request reply" : "Be om svar", "Chairperson" : "Ordstyrer", "Required participant" : "Påkrevd deltaker", "Optional participant" : "Valgfri deltaker", "Non-participant" : "Ikke-deltaker", - "Remove attendee" : "Fjern deltaker", - "Search for emails, users or contacts" : "Søk blant eposter, brukere eller kontaker", + "_%n member_::_%n members_" : ["%n medlem","%n medlemmer"], "No match found" : "Ingen treff", + "Note that members of circles get invited but are not synced yet." : "Merk at medlemmer av sirkler blir invitert, men ikke synkronisert enda.", "(organizer)" : "(organisator)", + "Make {label} the organizer" : "Gjør {label} til organisatoren", + "Make {label} the organizer and attend" : "Gjør {label} til organisatoren og delta", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "For å sende ut invitasjoner og håndtere svar, [linkopen]legg til e-postadressen din i personlige innstillinger[linkclose].", "Remove color" : "Fjern farge", "Event title" : "Tittel på hendelsen", - "All day" : "Hele dagen", - "from {startDate}" : "fra {startDate}", - "from {startDate} at {startTime}" : "fra {startDate}, {startTime}", - "to {endDate}" : "til {endDate}", - "to {endDate} at {endTime}" : "til {endDate}, {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Kan ikke endre \"hel dag\"-innstillingen for hendelser som er en del av et gjentakelsessett.", + "From" : "Fra", + "To" : "Til", "Repeat" : "Gjenta", - "End repeat" : "Avslutt gjentakelse", - "Select to end repeat" : "Velg for å avslutte gjentakelse", + "_time_::_times_" : ["gang","ganger"], "never" : "aldri", "on date" : "på dato", "after" : "etter", - "_time_::_times_" : ["gang","ganger"], + "End repeat" : "Avslutt gjentakelse", + "Select to end repeat" : "Velg for å avslutte gjentakelse", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Denne hendelsen er gjentakelsesunntaket for et gjentakelsessett. Du kan ikke legge til en gjentakelsesregel til den.", "first" : "første", - "third" : "tredje", - "fourth" : "fjerde", - "fifth" : "femte", - "last" : "siste", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Endringer i gjentakelsesregelen vil kun gjelde for denne og alle fremtidige hendelser.", "Repeat every" : "Gjenta hver", "By day of the month" : "På en dag i måneden", "On the" : "På den", + "_day_::_days_" : ["dag","dager"], + "_week_::_weeks_" : ["uke","uker"], "_month_::_months_" : ["måned","måneder"], "_year_::_years_" : ["år","år"], "weekday" : "ukedag", "weekend day" : "helgedag", - "No recurrence" : "Ingen gjentakelse", + "Does not repeat" : "Gjentas ikke", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Gjentakelsesregelen av denne hendelsen støttes ikke fullt ut av Nextcloud. Hvis du redigerer gjentakelsesalternativene, kan visse gjentakelser gå tapt.", "No rooms or resources yet" : "Ingen rom eller ressurser enda", + "Resources" : "Ressurser", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sete","{seatingCapacity} seter"], + "Add resource" : "Legg til ressurs", "Has a projector" : "Har en projektor", + "Has a whiteboard" : "Har en tavle", "Wheelchair accessible" : "Tilgjengelig for rullestol", - "Projector" : "Projektor", + "Remove resource" : "Fjern ressurs", "Search for resources or rooms" : "Søk etter ressurser eller rom", - "available" : "tilgjengelig", + "available" : "ledig", + "unavailable" : "ikke ledig", + "Show all rooms" : "Vis alle rom", + "Projector" : "Projektor", + "Whiteboard" : "Tavle", "Room type" : "Romtype", + "Any" : "Hva som helst", "Minimum seating capacity" : "Minimum sittekapasitet", - "More" : "Mer", - "Update this occurrence" : "Oppdater denne hendelsen", + "More details" : "Flere detaljer", "Update this and all future" : "Oppdater denne og fremtidige hendelser", + "Update this occurrence" : "Oppdater denne hendelsen", "Public calendar does not exist" : "Offentlig kalender finnes ikke", "Maybe the share was deleted or has expired?" : "Er deling slettet eller utløpt?", - "Please select a time zone:" : "Vennligst velg en tidssone:", - "Pick a time" : "Velg et tidspunkt", - "Pick a date" : "Velg en dato", "from {formattedDate}" : "fra {formattedDate}", "to {formattedDate}" : "til {formattedDate}", "on {formattedDate}" : "den {formattedDate}", @@ -296,32 +402,57 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} kl. {formattedTime}", "Please enter a valid date" : "Vennligst tast inn en gyldig dato", "Please enter a valid date and time" : "Vennligst tast inn en gyldig dato og et tidspunkt", + "Select a time zone" : "Velg en tidssone", + "Please select a time zone:" : "Vennligst velg en tidssone:", + "Pick a time" : "Velg et tidspunkt", + "Pick a date" : "Velg en dato", "Type to search time zone" : "Skriv for å søke etter tidssone", "Global" : "Global", - "Select date" : "Velg dato", + "Holidays in {region}" : "Helligdager i {region}", + "An error occurred, unable to read public calendars." : "Det oppstod en feil, kan ikke lese offentlige kalendere.", + "An error occurred, unable to subscribe to calendar." : "Det oppstod en feil, kan ikke abonnere på kalenderen.", + "Public holiday calendars" : "Helligdagskalendere", + "Public calendars" : "Offentlige kalendere", + "No valid public calendars configured" : "Ingen gyldige offentlige kalendere er konfigurert", + "Speak to the server administrator to resolve this issue." : "Snakk med serveradministratoren for å løse dette problemet.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Helligdagskalendere er levert av Thunderbird. Kalenderdata vil bli lastet ned fra {website}.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Disse offentlige kalenderne er foreslått av serveradministratoren. Kalenderdata vil bli lastet ned fra den respektive nettsiden.", + "By {authors}" : "Av {authors}", + "Subscribed" : "Abonnerer", + "Subscribe" : "Abonner", + "Could not fetch slots" : "Kunne ikke hente tidsluker", + "Select a date" : "Velg en dato", "Select slot" : "Velg tidsrom", - "No slots available" : "Ingen tidsrom tilgjengelig", + "No slots available" : "Ingen tidsrom ledig", "The slot for your appointment has been confirmed" : "Tidsrommet for din avtale har blitt bekreftet", + "Appointment Details:" : "Avtaledetaljer:", "Time:" : "Tid:", "Booked for:" : "Bestilt for:", "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Takk skal du ha. Bestillingen din fra {startDate} til {endDate} er bekreftet.", "Book another appointment:" : "Bestill en annen avtale:", - "See all available slots" : "Se tilgjengelige tidsrom", - "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Tidsrommet for din avtale fra {startDate} toø {endDate} er ikke tilgjengelig lengre.", + "See all available slots" : "Se ledige tidsrom", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Tidsrommet for din avtale fra {startDate} toø {endDate} er ikke ledig lengre.", "Please book a different slot:" : "Vennligst bestill et annet tidsrom:", "Book an appointment with {name}" : "Bestill en avtale med {name}", + "No public appointments found for {name}" : "Fant ingen offentlige avtaler for {name}", "Personal" : "Personlig", - "No more events today" : "Ingen flere hendelser i dag", - "No upcoming events" : "Ingen kommende hendelser", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Den automatiske tidssonegjenkjenningen bestemte at tidssonen din var UTC.\nDette er mest sannsynlig et resultat av sikkerhetstiltak i nettleseren din.\nVennligst still inn tidssonen manuelt i kalenderinnstillingene.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Din konfigurerte tidssone ({timezoneId}) ble ikke funnet. Faller tilbake til UTC.\nVennligst endre tidssonen din i innstillingene og rapporter dette problemet.", + "Edit event" : "Rediger hendelse", "Event does not exist" : "Hendelsen finnes ikke", + "Duplicate" : "Duplikat", "Delete this occurrence" : "Slett denne hendelsen", "Delete this and all future" : "Slett denne og fremtidige hendelser", - "Details" : "Detaljer", - "Attendees" : "Deltakere", - "Resources" : "Ressurser", + "All day" : "Hele dagen", + "Managing shared access" : "Administrere delt tilgang", + "Deny access" : "Nekte adgang", + "Invite" : "Invitere", + "_User requires access to your file_::_Users require access to your file_" : ["Bruker må ha tilgang til filen din","Brukere må ha tilgang til filen din"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Vedlegg som krever delt tilgang","Vedlegg som krever delt tilgang"], + "Untitled event" : "Hendelse uten tittel", "Close" : "Lukk", - "Show more details" : "Vis flere detaljer", "Subscribe to {name}" : "Abonner på {name}", + "Export {name}" : "Eksporter {name}", "Anniversary" : "Jubileum", "Appointment" : "Avtale", "Business" : "Forretninger", @@ -336,22 +467,53 @@ OC.L10N.register( "Special occasion" : "Spesiell anledning", "Travel" : "Reise", "Vacation" : "Ferie", + "Midnight on the day the event starts" : "Midnatt den dagen hendelsen starter", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dag før hendelsen kl. {formattedHourMinute}","%n dager før hendelsen kl. {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n uke før hendelsen kl. {formattedHourMinute}","%n uker før hendelsen kl. {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "på dagen for hendelsen kl. {formattedHourMinute}", + "at the event's start" : "ved hendelsens start", + "at the event's end" : "ved hendelsens slutt", + "{time} before the event starts" : "{time} før hendelsen starter", + "{time} before the event ends" : "{time} før hendelsen avsluttes", + "{time} after the event starts" : "{time} etter at hendelsen starter", + "{time} after the event ends" : "{time} etter at hendelsen avsluttes", + "on {time}" : "on {time}", + "on {time} ({timezoneId})" : "kl. {time} ({timezoneId})", "Week {number} of {year}" : "Uke {number} {year}", - "Does not repeat" : "Gjentas ikke", "Daily" : "Daglig", "Weekly" : "Ukentlig", "Monthly" : "Månedlig", "Yearly" : "Årlig", + "_Every %n day_::_Every %n days_" : ["Hver %n dag","Hver %n dager"], + "_Every %n week_::_Every %n weeks_" : ["Hver %n uke","Hver %n uker"], + "_Every %n month_::_Every %n months_" : ["Hver %n måned","Hver %n måned"], + "_Every %n year_::_Every %n years_" : ["Hvert %n år","Hvert %n år"], + "_on {weekday}_::_on {weekdays}_" : ["på {weekday}","på {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["på dag {dayOfMonthList}","på dager {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "den {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "i {monthNames} den {ordinalNumber} {byDaySet}", + "until {untilDate}" : "til {untilDate}", "_%n time_::_%n times_" : ["%n gang","%n ganger"], - "Untitled event" : "Hendelse uten tittel", + "second" : "sekund", + "third" : "tredje", + "fourth" : "fjerde", + "fifth" : "femte", + "second to last" : "nest sist", + "last" : "siste", "Untitled task" : "Oppgave uten tittel", "Please ask your administrator to enable the Tasks App." : "Ta kontakt med din administrator for å sette opp Oppgaver-appen.", - "Prev" : "Forrige", - "Next" : "Neste", - "Year" : "År", + "W" : "U", + "%n more" : "%n mer", "No events to display" : "Ingen hendelser å vise", + "_+%n more_::_+%n more_" : ["+%n mer","+%n mer"], "No events" : "Ingen hendelser", "Create a new event or change the visible time-range" : "Opprett en ny hendelse eller endre på valgt tidsrom", + "Failed to save event" : "Lagring av hendelse feilet", + "It might have been deleted, or there was a typo in a link" : "Det kan ha blitt slettet, eller det var en skrivefeil i en lenke", + "It might have been deleted, or there was a typo in the link" : "Det kan ha blitt slettet, eller det var en skrivefeil i lenken", + "Meeting room" : "Møterom", + "Lecture hall" : "Forelesningssal", + "Seminar room" : "Seminarrom", "Other" : "Annet", "When shared show" : "Når delt vis", "When shared show full event" : "Vis hele hendelsen om den deles", @@ -359,7 +521,6 @@ OC.L10N.register( "When shared hide this event" : "Skjul denne hendelsen om den deles", "The visibility of this event in shared calendars." : "Synlighet for denne oppføringen i delte kalendere", "Add a location" : "Legg til et sted", - "Add a description" : "Legg til en beskrivelse", "Status" : "Status", "Confirmed" : "Bekreftet", "Canceled" : "Avbrutt", @@ -372,82 +533,23 @@ OC.L10N.register( "Add this as a new category" : "Legg til som ny kategori", "Custom color" : "Tilpasset farge", "Special color of this event. Overrides the calendar-color." : "Spesial farge for denne hendelsen. Overstyrer kalenderfargen.", + "Error while sharing file" : "Feil under deling av fil", + "Error while sharing file with user" : "Feil under deling av fil med bruker", + "Error creating a folder {folder}" : "Feil ved opprettelse av mappen {mappe}", + "Attachment {fileName} already exists!" : "Vedlegget {fileName} eksisterer allerede!", + "An error occurred during getting file information" : "Det oppsto en feil under henting av filinformasjon", + "An error occurred, unable to delete the calendar." : "En feil oppsto, kan ikke slette kalenderen. ", "Imported {filename}" : "Importerte {filename}", - "Meditation" : "Meditasjon", - "Relaxing" : "Avslapping", - "Commuting" : "Pendler", - "Presentation" : "Presentasjon", - "Talk" : "Samtale", - "Camping" : "Camping", - "Movie" : "Film", - "Cinema" : "Kino", - "Brainstorm" : "Brainstorm", - "Review" : "Anmeldelse", - "Meet" : "Møte", - "Planning" : "Planlegge", - "Office" : "Kontor", - "Mail" : "E-post", - "Soccer" : "Fotball", - "Gaming" : "Gaming", - "Drive" : "Kjøre", - "Bicycle" : "Sykkel", - "Cycle" : "Sykle", - "Biking" : "Sykling", - "Podcast" : "Podkast", - "Fishing" : "Fisking", - "Hiking" : "Tur", - "Art" : "Kunst", - "Exhibition" : "Utstilling", - "Museum" : "Museum", - "Pilates" : "Pilates", - "Park" : "Park", - "Studying" : "Studere", - "Doctor" : "Doktor", - "Health" : "Helse", - "Dentist" : "Tannlege", - "Hospital" : "Sykehus", - "Interview" : "Intervju", - "Training" : "Trene", - "Practice" : "Øve", - "Sports" : "Sport", - "Gym" : "Gym", - "Barber" : "Barberer", - "Haircut" : "Frisør", - "Exam" : "Eksamen", - "Working" : "Jobb", - "New Years Eve" : "Nyttårsaften", - "Fireworks" : "Fyrverkeri", - "Running" : "Løpe", - "Go for a run" : "Løpetur", - "Marathon" : "Maraton", - "Video-conference" : "Videokonferanse", - "Conference-call" : "Telefonkonferanse", - "Video-call" : "Videosamtale", - "Video-chat" : "Videochat", - "Video-meeting" : "Videokonferanse", - "Call" : "Ringe", - "Calling" : "Ringer", - "Christmas" : "Jul", - "Conference" : "Konferanse", - "Pizza" : "Pizza", - "Travelling" : "Reise", - "Journey" : "Reise", - "Collaborate" : "Samarbeide", - "Pair" : "Par", - "Lecture" : "Forelesning", - "Seminar" : "Seminar", - "Photograph" : "Fotografere", - "Party" : "Fest", - "Celebration" : "Feiring", - "Celebrate" : "Feire", - "Birthday" : "Fødselsdag", - "Shopping" : "Shoppe", - "Skate" : "Skate", - "Skateboard" : "Skatebrett", - "Wine tasting" : "Vinsmaking", - "Golf" : "Golf", - "Dinner" : "Middag", - "Lunch" : "Lunsj", - "User not found" : "Fant ikke brukeren" + "This is an event reminder." : "Dette er en hendelsespåminnelse.", + "Error while parsing a PROPFIND error" : "Feil under analyse av en PROPFIND-feil", + "Appointment not found" : "Avtale ikke funnet", + "User not found" : "Fant ikke brukeren", + "Reminder" : "Påminnelse", + "+ Add reminder" : "+ Legg til påminnelse", + "Select automatic slot" : "Velg automatisk luke", + "with" : "med", + "Available times:" : "Tilgjengelige tidspunkter:", + "Suggestions" : "Forslag", + "Details" : "Detaljer" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/nb.json b/l10n/nb.json index 84eaeb4b0948848848ca87692140cf029657e77b..42418420e03f98f492481c4c5428ec0339038759 100644 --- a/l10n/nb.json +++ b/l10n/nb.json @@ -1,133 +1,168 @@ { "translations": { + "Provided email-address is too long" : "Oppgitt e-postadresse er for lang", "User-Session unexpectedly expired" : "Brukerøkten utløp uventet", "Provided email-address is not valid" : "Oppgitt e-postadresse er ikke gyldig", "%s has published the calendar »%s«" : "%s har publisert kalenderen \"%s\"", - "Unexpected error sending email. Please contact your administrator." : "Det oppstod uventet feil under sending av e-post. Kontakt din administrator.", + "Unexpected error sending email. Please contact your administrator." : "Det oppsto uventet feil under sending av e-post. Kontakt din administrator.", "Successfully sent email to %1$s" : "Epost sendt til %1$s", "Hello," : "Hei,", "We wanted to inform you that %s has published the calendar »%s«." : "Vi ønsker å informere deg om at %s har publisert kalenderen \"%s\".", "Open »%s«" : "Åpne \"%s\"", "Cheers!" : "Ha det!", "Upcoming events" : "Kommende hendelser", + "No more events today" : "Ingen flere hendelser i dag", + "No upcoming events" : "Ingen kommende hendelser", + "More events" : "Flere hendelser", + "%1$s with %2$s" : "%1$s med %2$s", + "Calendar" : "Kalender", + "New booking {booking}" : "Ny bestilling {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) bestilte time \"{config_display_name}\" den {date_time}.", "Appointments" : "Avtaler", "Schedule appointment \"%s\"" : "Registrer avtale \"%s\"", "Schedule an appointment" : "Registrer en avtale", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Forbered for %s", "Follow up for %s" : "Følg opp for %s", - "Your appointment \"%s\" needs confirmation" : "Avtalen din \"%s\" trenger bekreftelse", + "Your appointment \"%s\" with %s needs confirmation" : "Avtalen din \"%s\" med %s trenger bekreftelse", "Dear %s, please confirm your booking" : "Kjære %s, vennligst bekreft bestillingen din", "Confirm" : "Bekreft", + "Appointment with:" : "Avtale med:", + "Description:" : "Beskrivelse:", "This confirmation link expires in %s hours." : "Denne bekreftelseslinken utgår om %stimer.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Hvis du ønsker å avlyse avtalen likevel, vennligst kontakt arrangøren din.", - "Appointment:" : "Avtale:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Hvis du ønsker å avbryte avtalen, vennligst kontakt arrangøren din ved å svare på denne e-posten eller ved å besøke deres profilside.", + "Your appointment \"%s\" with %s has been accepted" : "Avtalen din \"%s\" med %s har blitt akseptert", + "Dear %s, your booking has been accepted." : "Kjære%s, bestillingen din har blitt akseptert.", + "Appointment for:" : "Appointment for:", "Date:" : "Dato:", + "You will receive a link with the confirmation email" : "Du vil motta en lenke med bekreftelses-e-posten", "Where:" : "Hvor:", - "Description:" : "Beskrivelse:", - "Calendar" : "Kalender", + "Comment:" : "Kommentar:", + "You have a new appointment booking \"%s\" from %s" : "Du har en ny timebestilling \"%s\" fra %s", + "Dear %s, %s (%s) booked an appointment with you." : "Kjære %s, %s (%s) bestilte time hos deg.", "A Calendar app for Nextcloud" : "En kalender til Nextcloud", "Previous day" : "Forrige dag", "Previous week" : "Forrige uke", + "Previous year" : "Forrige år", "Previous month" : "Forrige måned", "Next day" : "Neste dag", "Next week" : "Neste uke", + "Next year" : "Neste år", "Next month" : "Neste måned", - "New event" : "Ny hendelse", + "Create new event" : "Opprett ny hendelse", + "Event" : "Begivenhet", "Today" : "I dag", "Day" : "Dag", "Week" : "Uke", "Month" : "Måned", + "Year" : "År", "List" : "Liste", + "Appointment link was copied to clipboard" : "Avtalelenke ble kopiert til utklippstavlen", + "Appointment link could not be copied to clipboard" : "Avtalelenken ble ikke kopiert til utklippstavlen", "Preview" : "Forhåndsvis", "Copy link" : "Kopier lenke", "Edit" : "Rediger", "Delete" : "Slett", - "Appointment link was copied to clipboard" : "Avtalelenke ble kopiert til utklippstavlen", - "Appointment link could not be copied to clipboard" : "Avtalelenken ble ikke kopiert til utklippstavlen", - "Add new" : "Legg til ny", - "Untitled calendar" : "Kalender uten tittel", - "Edit name" : "Rediger navn", - "Saving name …" : "Lagrer navn ...", - "Edit color" : "Rediger farge", - "Saving color …" : "Lagrer farge  ...", - "Copy private link" : "Kopier privat lenke", - "Export" : "Eksporter", - "Unshare from me" : "Fjern deling fra meg", + "Create new" : "Opprett ny", "Disable calendar \"{calendar}\"" : "Deaktiver kalender \"{calendar}\"", "Disable untitled calendar" : "Deaktiver kalender uten tittel", + "Enable calendar \"{calendar}\"" : "Aktiver kalenderen \"{calendar}\"", "Enable untitled calendar" : "Aktiver kalender uten tittel", - "An error occurred, unable to change visibility of the calendar." : "En feil oppstod, kan ikke endre synlighet til kalenderen.", - "An error occurred, unable to delete the calendar." : "En feil oppstod, kan ikke slette kalenderen. ", - "Calendar link copied to clipboard." : "Lenke til kalender kopiert til utklippstavle.", - "Calendar link could not be copied to clipboard." : "Lenke til kalender kunne ikke bli kopiert til utklippstavle.", - "An error occurred, unable to rename the calendar." : "Det oppstod en feil, klarte ikke å endre navn på kalenderen.", - "An error occurred, unable to change the calendar's color." : "En feil oppstod, kunne ikke endre fargen til kalenderen.", + "An error occurred, unable to change visibility of the calendar." : "En feil oppsto, kan ikke endre synlighet til kalenderen.", + "Untitled calendar" : "Kalender uten tittel", + "Shared with you by" : "Delt med deg av", + "Edit and share calendar" : "Rediger og del kalender", + "Edit calendar" : "Rediger kalender", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Fjerner deling av kalenderen om {countdown} sekund","Fjerner deling av kalenderen om {countdown} sekunder"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Sletter kalenderen om {countdown} sekund","Sletter kalenderen om {countdown} sekunder"], + "An error occurred, unable to create the calendar." : "En feil oppsto, kunne ikke opprette kalenderen", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vennligst angi gyldig lenke (starte med http://, https://, webcal://, eller webcals://)", + "Calendars" : "Kalendere", + "Add new" : "Legg til ny", + "New calendar" : "Ny kalender", + "Name for new calendar" : "Navn på ny kalender", + "Creating calendar …" : "Oppretter kalender ...", + "New calendar with task list" : "Ny kalender med oppgaveliste", + "New subscription from link (read-only)" : "Nytt abonnement fra lenke (kun lesing)", + "Creating subscription …" : "Oppretter abonnement ...", + "Add public holiday calendar" : "Legg til helligdagskalender", + "Add custom public calendar" : "Legg til egendefinert offentlig kalender", + "Calendar link copied to clipboard." : "Lenke til kalender kopiert til utklippstavle.", + "Calendar link could not be copied to clipboard." : "Lenke til kalender kunne ikke bli kopiert til utklippstavle.", + "Copy subscription link" : "Kopier abonnementslenke", + "Copying link …" : "Kopierer lenke ...", + "Copied link" : "Kopier lenke", + "Could not copy link" : "Klarte ikke å kopiere lenken", + "Export" : "Eksporter", + "Untitled item" : "Element uten navn", + "Unknown calendar" : "Ukjent kalender", + "Could not load deleted calendars and objects" : "Kunne ikke laste slettede kalendere og objekter", + "Could not delete calendar or event" : "Kunne ikke slette kalender eller hendelse", + "Could not restore calendar or event" : "Kunne ikke gjenopprette kalender eller hendelse", + "Do you really want to empty the trash bin?" : "Vil du virkelig tømme papirkurven?", + "Empty trash bin" : "Tøm papirkurv", + "Trash bin" : "Papirkurv", + "Loading deleted items." : "Laster inn slettede elementer.", + "You do not have any deleted items." : "Du har ingen slettede elementer.", + "Name" : "Navn", + "Deleted" : "Slettet", + "Restore" : "Gjenopprett", + "Delete permanently" : "Slett permanent", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Items in the trash bin are deleted after {numDays} day","Elementer i papirkurven slettes etter {numDays} dager"], + "Could not update calendar order." : "Kunne ikke oppdatere rekkefølgen på kalendere.", + "Shared calendars" : "Delte kalendere", + "Deck" : "Stokk", + "Hidden" : "Skjult", + "Internal link" : "Intern lenke", + "A private link that can be used with external clients" : "En privat lenke som kan brukes med eksterne klienter", + "Copy internal link" : "Kopier intern lenke", + "An error occurred, unable to publish calendar." : "Det oppsto en feil, klarte ikke å publisere kalenderen.", + "An error occurred, unable to send email." : "En feil oppsto, kan ikke sende e-post.", + "Embed code copied to clipboard." : "Innbyggingskode kopiert til utklippstavle.", + "Embed code could not be copied to clipboard." : "Innbyggingskode ble ikke kopiert til utklippstavle.", + "Unpublishing calendar failed" : "Fjerne publiseringen av kalenderen feilet.", "Share link" : "Del lenke", - "Publish calendar" : "Publiser kalender", - "Publishing calendar" : "Publiserer kalender", "Copy public link" : "Kopier offentlig lenke", "Send link to calendar via email" : "Sende lenke til kalenderen via e-post", "Enter one address" : "Tast inn en adresse", "Sending email …" : "Sender epost ...", - "Copy subscription link" : "Kopier abonnementslenke", - "Copying link …" : "Kopierer lenke ...", - "Copied link" : "Kopier lenke", - "Could not copy link" : "Klarte ikke å kopiere lenken", "Copy embedding code" : "Kopier innbyggingskode", "Copying code …" : "Kopierer kode ...", "Copied code" : "Kode kopiert", "Could not copy code" : "Klarte ikke å kopiere koden", "Delete share link" : "Slett delingslenke", "Deleting share link …" : "Sletter delingslenke ...", - "An error occurred, unable to publish calendar." : "Det oppstod en feil, klarte ikke å publisere kalenderen.", - "An error occurred, unable to send email." : "En feil oppstod, kan ikke sende e-post.", - "Embed code copied to clipboard." : "Innbyggingskode kopiert til utklippstavle.", - "Embed code could not be copied to clipboard." : "Innbyggingskode ble ikke kopiert til utklippstavle.", - "Unpublishing calendar failed" : "Fjerne publiseringen av kalenderen feilet.", - "Share with users or groups" : "Del med brukere eller grupper", - "No users or groups" : "Ingen brukere eller grupper", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Lag)", + "An error occurred while unsharing the calendar." : "Det oppstod en feil under oppheving av deling av kalenderen.", + "An error occurred, unable to change the permission of the share." : "En feil oppsto, kan ikke endre rettighetene til delingen.", "can edit" : "kan endre", "Unshare with {displayName}" : "Fjern deling med {displayName}", - "An error occurred, unable to change the unshare the calendar." : "En feil oppstod, kan ikke endre fjerning av deling av kalenderen.", - "An error occurred, unable to change the permission of the share." : "En feil oppstod, kan ikke endre rettighetene til delingen.", - "+ New calendar" : "+ Ny kalender", - "New calendar" : "Ny kalender", - "Name for new calendar" : "Navn på ny kalender", - "Creating calendar …" : "Oppretter kalender ...", - "New calendar with task list" : "Ny kalender med oppgaveliste", - "New subscription from link (read-only)" : "Nytt abonnement fra lenke (kun lesing)", - "Creating subscription …" : "Oppretter abonnement ...", - "An error occurred, unable to create the calendar." : "En feil oppstod, kunne ikke opprette kalenderen", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vennligst angi gyldig lenke (starte med http://, https://, webcal://, eller webcals://)", - "Trash bin" : "Papirkurv", - "Loading deleted elements." : "Laster slettede elementer.", - "You do not have any deleted elements." : "Du har ingen slettede elementer.", - "Name" : "Navn", - "Deleted" : "Slettet", - "Restore" : "Gjenopprett", - "Delete permanently" : "Slett permanent", - "Empty trash bin" : "Tøm papirkurv", - "Untitled element" : "Element uten tittel", - "Unknown calendar" : "Ukjent kalender", - "Could not load deleted calendars and objects" : "Kunne ikke laste slettede kalendere og objekter", - "Could not restore calendar or event" : "Kunne ikke gjenopprette kalender eller hendelse", - "Do you really want to empty the trash bin?" : "Vil du virkelig tømme papirkurven?", - "Could not update calendar order." : "Kunne ikke oppdatere rekkefølgen på kalendere.", + "Share with users or groups" : "Del med brukere eller grupper", + "No users or groups" : "Ingen brukere eller grupper", + "Failed to save calendar name and color" : "Lagring av kalendernavn og farge feilet", + "Calendar name …" : "Kalendernavn…", + "Never show me as busy (set this calendar to transparent)" : "Vis meg aldri som opptatt (sett denne kalenderen til gjennomsiktig)", + "Share calendar" : "Del kalender", + "Unshare from me" : "Fjern deling fra meg", + "Save" : "Lagre", "Import calendars" : "Importer kalendere", "Please select a calendar to import into …" : "Vennligst velg en kalender å importere til ...", "Filename" : "Filnavn", "Calendar to import into" : "Kalenderen det skal importeres til", "Cancel" : "Avbryt", "_Import calendar_::_Import calendars_" : ["Importer kalender","Importer kalendere"], + "Select the default location for attachments" : "Velg standardplassering for vedlegg", + "Pick" : "Velg", + "Invalid location selected" : "Invalid location selected", + "Attachments folder successfully saved." : "Vedleggsmappen er lagret.", + "Error on saving attachments folder." : "Feil ved lagring av vedleggsmappe.", + "Default attachments location" : "Standard plassering for vedlegg", "{filename} could not be parsed" : "{filename} kunne ikke leses", "No valid files found, aborting import" : "Ingen gyldig filer funnet, avbryter importering", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Vellykket importert %n hendelse","Vellykket importert %n hendelser"], "Import partially failed. Imported {accepted} out of {total}." : "Importen mislyktes delvis. Importerte {accepted} av {total}. ", "Automatic" : "Automatisk", "Automatic ({detected})" : "Automatisk ({detected})", "New setting was not saved successfully." : "Ny innstilling ble ikke lagret.", - "Shortcut overview" : "Oversikt over snarveier", - "or" : "eller", "Navigation" : "Navigasjon", "Previous period" : "Forrige periode", "Next period" : "Neste periode", @@ -135,28 +170,37 @@ "Day view" : "Dagsvisning", "Week view" : "Ukesvisning", "Month view" : "Månedsvisning", + "Year view" : "Årsvisning", "List view" : "Listevisning", "Actions" : "Handlinger", "Create event" : "Opprett hendelse", "Show shortcuts" : "Vis snarveier", + "Editor" : "Tekstredigerer", + "Close editor" : "Lukk tekstredigerer", "Save edited event" : "Lagre endret hendelse", "Delete edited event" : "Slett endret hendelse", "Duplicate event" : "Dupliser hendelse", + "Shortcut overview" : "Oversikt over snarveier", + "or" : "eller", + "Calendar settings" : "Kalenderinnstillinger", + "At event start" : "Ved hendelsens start", + "No reminder" : "Ingen påminnelse", + "Failed to save default calendar" : "Lagring av standard kalender feilet", + "CalDAV link copied to clipboard." : "CalDAV-lenke kopiert til utklippstavlen.", + "CalDAV link could not be copied to clipboard." : "CalDAV-lenke kunne ikke bli kopiert til utklippstavlen.", "Enable birthday calendar" : "Aktiver fødselsdagkalender", "Show tasks in calendar" : "Vis oppgaver i kalender", "Enable simplified editor" : "Aktiver forenklet redigering", - "Limit visible events per view" : "Begrens synlige hendelser i brukerutsnitt", + "Limit the number of events displayed in the monthly view" : "Begrens antall hendelser som vises i månedsvisningen", "Show weekends" : "Vis helger", "Show week numbers" : "Vis ukenummer", "Time increments" : "Tidsøkninger", + "Default calendar for incoming invitations" : "Standard kalender for innkommende invitasjoner", "Default reminder" : "Standardpåminnelse", "Copy primary CalDAV address" : "Kopier primær CalDAV-adresse", "Copy iOS/macOS CalDAV address" : "Kopier CalDAV-lenke for iOS/macOS", + "Personal availability settings" : "Personlig ledighets-innstillinger", "Show keyboard shortcuts" : "Vis tastatursnarveier", - "Calendar settings" : "Kalenderinnstillinger", - "No reminder" : "Ingen påminnelse", - "CalDAV link copied to clipboard." : "CalDAV-lenke kopiert til utklippstavlen.", - "CalDAV link could not be copied to clipboard." : "CalDAV-lenke kunne ikke bli kopiert til utklippstavlen.", "_{duration} minute_::_{duration} minutes_" : ["{duration} minutt","{duration} minutter"], "0 minutes" : "0 minutter", "_{duration} hour_::_{duration} hours_" : ["{duration} time","{duration} timer"], @@ -164,7 +208,14 @@ "_{duration} week_::_{duration} weeks_" : ["{duration} uke","{duration} uker"], "_{duration} month_::_{duration} months_" : ["{duration} måned","{duration} måneder"], "_{duration} year_::_{duration} years_" : ["{duration} år","{duration} år"], + "To configure appointments, add your email address in personal settings." : "For å konfigurere avtaler, legg til e-postadressen din i personlig innstillinger.", + "Public – shown on the profile page" : "Offentlig – vises på profilsiden", + "Private – only accessible via secret link" : "Privat – kun tilgjengelig via hemmelig lenke", + "Update" : "Oppdater", + "Appointment name" : "Navn på avtale", "Location" : "Sted", + "Create a Talk room" : "Opprett et Talk-rom", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "En unik lenke vil bli generert for hver bestilt time og sendt via bekreftelses-e-posten", "Description" : "Beskrivelse", "Visibility" : "Synlighet", "Duration" : "Varighet", @@ -182,20 +233,26 @@ "Friday" : "Fredag", "Saturday" : "Lørdag", "Sunday" : "Søndag", + "Weekdays" : "Ukedager", + "Add time before and after the event" : "Legg til tid før og etter hendelsen", "Before the event" : "Før hendelsen", "After the event" : "Etter hendelsen", - "Minimum time before next available slot" : "Minimumstid før neste tilgjengelige tidsrom", + "Planning restrictions" : "Planleggingsbegrensninger", + "Minimum time before next available slot" : "Minimumstid før neste ledige tidsrom", "Max slots per day" : "Maks. antall tidsrom per dag", "Limit how far in the future appointments can be booked" : "Begrens hvor langt frem i tid avtaler kan bestilles", - "Create appointment" : "Opprett avtale", - "Edit appointment" : "Endre avtale", - "Save" : "Lagre", - "Update" : "Oppdater", + "It seems a rate limit has been reached. Please try again later." : "Det ser ut til at en satsgrense er nådd. Prøv igjen senere.", "Please confirm your reservation" : "Vennligst bekreft din reservasjon", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Vi har sendt deg en e-post med detaljer. Vennligst bekreft avtalen din ved å bruke lenken i e-posten. Du kan lukke denne siden nå.", "Your name" : "Ditt navn", "Your email address" : "Din e-postadresse", - "Book the appointment" : "Bestill avtalen", - "Reminder" : "Påminnelse", + "Please share anything that will help prepare for our meeting" : "Vennligst del alt som vil hjelpe deg med å forberede møtet vårt", + "Could not book the appointment. Please try again later or contact the organizer." : "Kunne ikke bestille time. Prøv igjen senere eller kontakt arrangøren.", + "Back" : "Tilbake", + "Create a new conversation" : "Opprett en ny samtale", + "Select conversation" : "Velg samtale", + "on" : "på", + "at" : "ved", "before at" : "før ved", "Notification" : "Varsel", "Email" : "E-post", @@ -206,85 +263,134 @@ "Edit time" : "Rediger tidspunkt", "Save time" : "Lagre tidspunkt", "Remove reminder" : "Fjern påminnelse", - "on" : "på", - "at" : "ved", - "+ Add reminder" : "+ Legg til påminnelse", "Add reminder" : "Legg til påminnelse", - "_second_::_seconds_" : ["sekund","sekunder"], - "_minute_::_minutes_" : ["minutt","minutter"], - "_hour_::_hours_" : ["time","timer"], - "_day_::_days_" : ["dag","dager"], - "_week_::_weeks_" : ["uke","uker"], - "Available" : "Tilgjengelig", - "Not available" : "Ikke tilgjengelig", - "Invitation sent" : "Invitasjon er sendt", - "Availability of attendees, resources and rooms" : "Tilgjengelighet til deltagere, ressurser og rom", + "seconds" : "sekund", + "minutes" : "minutter", + "hours" : "timer", + "days" : "dager", + "weeks" : "uker", + "Choose a file to add as attachment" : "Velg en fil å legge til som vedlegg", + "Choose a file to share as a link" : "Velg en fil du vil dele som en lenke", + "Attachment {name} already exist!" : "Vedlegget {name} finnes allerede!", + "Could not upload attachment(s)" : "Kunne ikke laste opp vedlegg", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Du er i ferd med å navigere til {host}. Er du sikker på å fortsette? Lenke: {link}", + "Proceed" : "Fortsett", + "No attachments" : "Ingen vedlegg", + "Add from Files" : "Legg til fra filer", + "Upload from device" : "Last opp fra enhet", + "Delete file" : "Slett fil", + "Confirmation" : "Bekreftelse", + "_{count} attachment_::_{count} attachments_" : ["{count} vedlegg","{count} vedlegg"], + "Suggested" : "Foreslått", + "Available" : "Ledig", + "Invitation accepted" : "Invitasjon akseptert", + "Accepted {organizerName}'s invitation" : "Godtok invitasjonen til {organizerName}", + "Participation marked as tentative" : "Deltakelse markert som foreløpig", + "Invitation is delegated" : "Invitasjon er delegert", + "Not available" : "Ikke ledig", + "Invitation declined" : "Invitasjonen ble avslått", + "Declined {organizerName}'s invitation" : "Avviste invitasjonen til {organizerName}", + "Awaiting response" : "Venter på svar", + "Checking availability" : "Sjekker ledighet", + "Has not responded to {organizerName}'s invitation yet" : "Har ikke svart på {organizerName} sin invitasjon ennå", + "chairperson" : "ordstyrer", + "required participant" : "påkrevd deltaker", + "non-participant" : "ikke-deltaker", + "optional participant" : "valgfri deltaker", "{organizer} (organizer)" : "{organizer} (organisator)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Ledighet til deltagere, ressurser og rom", + "Suggestion accepted" : "Forslag akseptert", + "Legend" : "Legende", + "Out of office" : "Fraværende", + "Attendees:" : "Deltakere:", + "Done" : "Ferdig", + "Search room" : "Søk rom", + "Room name" : "Romnavn", + "Check room availability" : "Sjekk rom tilgjengelighet", "Free" : "Ledig", "Busy (tentative)" : "Opptatt (foreløpig)", "Busy" : "Opptatt", - "Out of office" : "Fraværende", "Unknown" : "Ukjent", + "Find a time" : "Finn et tidspunkt", + "The invitation has been accepted successfully." : "Invitasjonen er godtatt.", + "Failed to accept the invitation." : "Kunne ikke godta invitasjonen.", + "The invitation has been declined successfully." : "Invitasjonen har blitt avslått.", + "Failed to decline the invitation." : "Kunne ikke avslå invitasjonen.", + "Your participation has been marked as tentative." : "Din deltakelse er merket som foreløpig.", + "Failed to set the participation status to tentative." : "Kunne ikke sette deltakelsesstatusen til tentativ.", "Accept" : "Aksepter", "Decline" : "Avslå", "Tentative" : "Foreløpig", - "Create Talk room for this event" : "Opprett Talk-rom for denne hendelsen", - "Show busy times" : "Vis opptatte tider", "No attendees yet" : "Ingen deltakere enda", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} invitert, {confirmedCount} bekreftet", + "Successfully appended link to talk room to location." : "Lenke til talk-rom til plassering er lagt til.", "Successfully appended link to talk room to description." : "La til lenke til Talk-rom til beskrivelsen.", "Error creating Talk room" : "Feil ved opprettelse av Talk-rom", - "Send email" : "Send e-post", + "Attendees" : "Deltakere", + "_%n more guest_::_%n more guests_" : ["%n gjest til","%n flere gjester"], + "Remove group" : "Fjern gruppe", + "Remove attendee" : "Fjern deltaker", + "Request reply" : "Be om svar", "Chairperson" : "Ordstyrer", "Required participant" : "Påkrevd deltaker", "Optional participant" : "Valgfri deltaker", "Non-participant" : "Ikke-deltaker", - "Remove attendee" : "Fjern deltaker", - "Search for emails, users or contacts" : "Søk blant eposter, brukere eller kontaker", + "_%n member_::_%n members_" : ["%n medlem","%n medlemmer"], "No match found" : "Ingen treff", + "Note that members of circles get invited but are not synced yet." : "Merk at medlemmer av sirkler blir invitert, men ikke synkronisert enda.", "(organizer)" : "(organisator)", + "Make {label} the organizer" : "Gjør {label} til organisatoren", + "Make {label} the organizer and attend" : "Gjør {label} til organisatoren og delta", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "For å sende ut invitasjoner og håndtere svar, [linkopen]legg til e-postadressen din i personlige innstillinger[linkclose].", "Remove color" : "Fjern farge", "Event title" : "Tittel på hendelsen", - "All day" : "Hele dagen", - "from {startDate}" : "fra {startDate}", - "from {startDate} at {startTime}" : "fra {startDate}, {startTime}", - "to {endDate}" : "til {endDate}", - "to {endDate} at {endTime}" : "til {endDate}, {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Kan ikke endre \"hel dag\"-innstillingen for hendelser som er en del av et gjentakelsessett.", + "From" : "Fra", + "To" : "Til", "Repeat" : "Gjenta", - "End repeat" : "Avslutt gjentakelse", - "Select to end repeat" : "Velg for å avslutte gjentakelse", + "_time_::_times_" : ["gang","ganger"], "never" : "aldri", "on date" : "på dato", "after" : "etter", - "_time_::_times_" : ["gang","ganger"], + "End repeat" : "Avslutt gjentakelse", + "Select to end repeat" : "Velg for å avslutte gjentakelse", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Denne hendelsen er gjentakelsesunntaket for et gjentakelsessett. Du kan ikke legge til en gjentakelsesregel til den.", "first" : "første", - "third" : "tredje", - "fourth" : "fjerde", - "fifth" : "femte", - "last" : "siste", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Endringer i gjentakelsesregelen vil kun gjelde for denne og alle fremtidige hendelser.", "Repeat every" : "Gjenta hver", "By day of the month" : "På en dag i måneden", "On the" : "På den", + "_day_::_days_" : ["dag","dager"], + "_week_::_weeks_" : ["uke","uker"], "_month_::_months_" : ["måned","måneder"], "_year_::_years_" : ["år","år"], "weekday" : "ukedag", "weekend day" : "helgedag", - "No recurrence" : "Ingen gjentakelse", + "Does not repeat" : "Gjentas ikke", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Gjentakelsesregelen av denne hendelsen støttes ikke fullt ut av Nextcloud. Hvis du redigerer gjentakelsesalternativene, kan visse gjentakelser gå tapt.", "No rooms or resources yet" : "Ingen rom eller ressurser enda", + "Resources" : "Ressurser", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sete","{seatingCapacity} seter"], + "Add resource" : "Legg til ressurs", "Has a projector" : "Har en projektor", + "Has a whiteboard" : "Har en tavle", "Wheelchair accessible" : "Tilgjengelig for rullestol", - "Projector" : "Projektor", + "Remove resource" : "Fjern ressurs", "Search for resources or rooms" : "Søk etter ressurser eller rom", - "available" : "tilgjengelig", + "available" : "ledig", + "unavailable" : "ikke ledig", + "Show all rooms" : "Vis alle rom", + "Projector" : "Projektor", + "Whiteboard" : "Tavle", "Room type" : "Romtype", + "Any" : "Hva som helst", "Minimum seating capacity" : "Minimum sittekapasitet", - "More" : "Mer", - "Update this occurrence" : "Oppdater denne hendelsen", + "More details" : "Flere detaljer", "Update this and all future" : "Oppdater denne og fremtidige hendelser", + "Update this occurrence" : "Oppdater denne hendelsen", "Public calendar does not exist" : "Offentlig kalender finnes ikke", "Maybe the share was deleted or has expired?" : "Er deling slettet eller utløpt?", - "Please select a time zone:" : "Vennligst velg en tidssone:", - "Pick a time" : "Velg et tidspunkt", - "Pick a date" : "Velg en dato", "from {formattedDate}" : "fra {formattedDate}", "to {formattedDate}" : "til {formattedDate}", "on {formattedDate}" : "den {formattedDate}", @@ -294,32 +400,57 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} kl. {formattedTime}", "Please enter a valid date" : "Vennligst tast inn en gyldig dato", "Please enter a valid date and time" : "Vennligst tast inn en gyldig dato og et tidspunkt", + "Select a time zone" : "Velg en tidssone", + "Please select a time zone:" : "Vennligst velg en tidssone:", + "Pick a time" : "Velg et tidspunkt", + "Pick a date" : "Velg en dato", "Type to search time zone" : "Skriv for å søke etter tidssone", "Global" : "Global", - "Select date" : "Velg dato", + "Holidays in {region}" : "Helligdager i {region}", + "An error occurred, unable to read public calendars." : "Det oppstod en feil, kan ikke lese offentlige kalendere.", + "An error occurred, unable to subscribe to calendar." : "Det oppstod en feil, kan ikke abonnere på kalenderen.", + "Public holiday calendars" : "Helligdagskalendere", + "Public calendars" : "Offentlige kalendere", + "No valid public calendars configured" : "Ingen gyldige offentlige kalendere er konfigurert", + "Speak to the server administrator to resolve this issue." : "Snakk med serveradministratoren for å løse dette problemet.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Helligdagskalendere er levert av Thunderbird. Kalenderdata vil bli lastet ned fra {website}.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Disse offentlige kalenderne er foreslått av serveradministratoren. Kalenderdata vil bli lastet ned fra den respektive nettsiden.", + "By {authors}" : "Av {authors}", + "Subscribed" : "Abonnerer", + "Subscribe" : "Abonner", + "Could not fetch slots" : "Kunne ikke hente tidsluker", + "Select a date" : "Velg en dato", "Select slot" : "Velg tidsrom", - "No slots available" : "Ingen tidsrom tilgjengelig", + "No slots available" : "Ingen tidsrom ledig", "The slot for your appointment has been confirmed" : "Tidsrommet for din avtale har blitt bekreftet", + "Appointment Details:" : "Avtaledetaljer:", "Time:" : "Tid:", "Booked for:" : "Bestilt for:", "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Takk skal du ha. Bestillingen din fra {startDate} til {endDate} er bekreftet.", "Book another appointment:" : "Bestill en annen avtale:", - "See all available slots" : "Se tilgjengelige tidsrom", - "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Tidsrommet for din avtale fra {startDate} toø {endDate} er ikke tilgjengelig lengre.", + "See all available slots" : "Se ledige tidsrom", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Tidsrommet for din avtale fra {startDate} toø {endDate} er ikke ledig lengre.", "Please book a different slot:" : "Vennligst bestill et annet tidsrom:", "Book an appointment with {name}" : "Bestill en avtale med {name}", + "No public appointments found for {name}" : "Fant ingen offentlige avtaler for {name}", "Personal" : "Personlig", - "No more events today" : "Ingen flere hendelser i dag", - "No upcoming events" : "Ingen kommende hendelser", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Den automatiske tidssonegjenkjenningen bestemte at tidssonen din var UTC.\nDette er mest sannsynlig et resultat av sikkerhetstiltak i nettleseren din.\nVennligst still inn tidssonen manuelt i kalenderinnstillingene.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Din konfigurerte tidssone ({timezoneId}) ble ikke funnet. Faller tilbake til UTC.\nVennligst endre tidssonen din i innstillingene og rapporter dette problemet.", + "Edit event" : "Rediger hendelse", "Event does not exist" : "Hendelsen finnes ikke", + "Duplicate" : "Duplikat", "Delete this occurrence" : "Slett denne hendelsen", "Delete this and all future" : "Slett denne og fremtidige hendelser", - "Details" : "Detaljer", - "Attendees" : "Deltakere", - "Resources" : "Ressurser", + "All day" : "Hele dagen", + "Managing shared access" : "Administrere delt tilgang", + "Deny access" : "Nekte adgang", + "Invite" : "Invitere", + "_User requires access to your file_::_Users require access to your file_" : ["Bruker må ha tilgang til filen din","Brukere må ha tilgang til filen din"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Vedlegg som krever delt tilgang","Vedlegg som krever delt tilgang"], + "Untitled event" : "Hendelse uten tittel", "Close" : "Lukk", - "Show more details" : "Vis flere detaljer", "Subscribe to {name}" : "Abonner på {name}", + "Export {name}" : "Eksporter {name}", "Anniversary" : "Jubileum", "Appointment" : "Avtale", "Business" : "Forretninger", @@ -334,22 +465,53 @@ "Special occasion" : "Spesiell anledning", "Travel" : "Reise", "Vacation" : "Ferie", + "Midnight on the day the event starts" : "Midnatt den dagen hendelsen starter", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dag før hendelsen kl. {formattedHourMinute}","%n dager før hendelsen kl. {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n uke før hendelsen kl. {formattedHourMinute}","%n uker før hendelsen kl. {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "på dagen for hendelsen kl. {formattedHourMinute}", + "at the event's start" : "ved hendelsens start", + "at the event's end" : "ved hendelsens slutt", + "{time} before the event starts" : "{time} før hendelsen starter", + "{time} before the event ends" : "{time} før hendelsen avsluttes", + "{time} after the event starts" : "{time} etter at hendelsen starter", + "{time} after the event ends" : "{time} etter at hendelsen avsluttes", + "on {time}" : "on {time}", + "on {time} ({timezoneId})" : "kl. {time} ({timezoneId})", "Week {number} of {year}" : "Uke {number} {year}", - "Does not repeat" : "Gjentas ikke", "Daily" : "Daglig", "Weekly" : "Ukentlig", "Monthly" : "Månedlig", "Yearly" : "Årlig", + "_Every %n day_::_Every %n days_" : ["Hver %n dag","Hver %n dager"], + "_Every %n week_::_Every %n weeks_" : ["Hver %n uke","Hver %n uker"], + "_Every %n month_::_Every %n months_" : ["Hver %n måned","Hver %n måned"], + "_Every %n year_::_Every %n years_" : ["Hvert %n år","Hvert %n år"], + "_on {weekday}_::_on {weekdays}_" : ["på {weekday}","på {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["på dag {dayOfMonthList}","på dager {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "den {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "i {monthNames} den {ordinalNumber} {byDaySet}", + "until {untilDate}" : "til {untilDate}", "_%n time_::_%n times_" : ["%n gang","%n ganger"], - "Untitled event" : "Hendelse uten tittel", + "second" : "sekund", + "third" : "tredje", + "fourth" : "fjerde", + "fifth" : "femte", + "second to last" : "nest sist", + "last" : "siste", "Untitled task" : "Oppgave uten tittel", "Please ask your administrator to enable the Tasks App." : "Ta kontakt med din administrator for å sette opp Oppgaver-appen.", - "Prev" : "Forrige", - "Next" : "Neste", - "Year" : "År", + "W" : "U", + "%n more" : "%n mer", "No events to display" : "Ingen hendelser å vise", + "_+%n more_::_+%n more_" : ["+%n mer","+%n mer"], "No events" : "Ingen hendelser", "Create a new event or change the visible time-range" : "Opprett en ny hendelse eller endre på valgt tidsrom", + "Failed to save event" : "Lagring av hendelse feilet", + "It might have been deleted, or there was a typo in a link" : "Det kan ha blitt slettet, eller det var en skrivefeil i en lenke", + "It might have been deleted, or there was a typo in the link" : "Det kan ha blitt slettet, eller det var en skrivefeil i lenken", + "Meeting room" : "Møterom", + "Lecture hall" : "Forelesningssal", + "Seminar room" : "Seminarrom", "Other" : "Annet", "When shared show" : "Når delt vis", "When shared show full event" : "Vis hele hendelsen om den deles", @@ -357,7 +519,6 @@ "When shared hide this event" : "Skjul denne hendelsen om den deles", "The visibility of this event in shared calendars." : "Synlighet for denne oppføringen i delte kalendere", "Add a location" : "Legg til et sted", - "Add a description" : "Legg til en beskrivelse", "Status" : "Status", "Confirmed" : "Bekreftet", "Canceled" : "Avbrutt", @@ -370,82 +531,23 @@ "Add this as a new category" : "Legg til som ny kategori", "Custom color" : "Tilpasset farge", "Special color of this event. Overrides the calendar-color." : "Spesial farge for denne hendelsen. Overstyrer kalenderfargen.", + "Error while sharing file" : "Feil under deling av fil", + "Error while sharing file with user" : "Feil under deling av fil med bruker", + "Error creating a folder {folder}" : "Feil ved opprettelse av mappen {mappe}", + "Attachment {fileName} already exists!" : "Vedlegget {fileName} eksisterer allerede!", + "An error occurred during getting file information" : "Det oppsto en feil under henting av filinformasjon", + "An error occurred, unable to delete the calendar." : "En feil oppsto, kan ikke slette kalenderen. ", "Imported {filename}" : "Importerte {filename}", - "Meditation" : "Meditasjon", - "Relaxing" : "Avslapping", - "Commuting" : "Pendler", - "Presentation" : "Presentasjon", - "Talk" : "Samtale", - "Camping" : "Camping", - "Movie" : "Film", - "Cinema" : "Kino", - "Brainstorm" : "Brainstorm", - "Review" : "Anmeldelse", - "Meet" : "Møte", - "Planning" : "Planlegge", - "Office" : "Kontor", - "Mail" : "E-post", - "Soccer" : "Fotball", - "Gaming" : "Gaming", - "Drive" : "Kjøre", - "Bicycle" : "Sykkel", - "Cycle" : "Sykle", - "Biking" : "Sykling", - "Podcast" : "Podkast", - "Fishing" : "Fisking", - "Hiking" : "Tur", - "Art" : "Kunst", - "Exhibition" : "Utstilling", - "Museum" : "Museum", - "Pilates" : "Pilates", - "Park" : "Park", - "Studying" : "Studere", - "Doctor" : "Doktor", - "Health" : "Helse", - "Dentist" : "Tannlege", - "Hospital" : "Sykehus", - "Interview" : "Intervju", - "Training" : "Trene", - "Practice" : "Øve", - "Sports" : "Sport", - "Gym" : "Gym", - "Barber" : "Barberer", - "Haircut" : "Frisør", - "Exam" : "Eksamen", - "Working" : "Jobb", - "New Years Eve" : "Nyttårsaften", - "Fireworks" : "Fyrverkeri", - "Running" : "Løpe", - "Go for a run" : "Løpetur", - "Marathon" : "Maraton", - "Video-conference" : "Videokonferanse", - "Conference-call" : "Telefonkonferanse", - "Video-call" : "Videosamtale", - "Video-chat" : "Videochat", - "Video-meeting" : "Videokonferanse", - "Call" : "Ringe", - "Calling" : "Ringer", - "Christmas" : "Jul", - "Conference" : "Konferanse", - "Pizza" : "Pizza", - "Travelling" : "Reise", - "Journey" : "Reise", - "Collaborate" : "Samarbeide", - "Pair" : "Par", - "Lecture" : "Forelesning", - "Seminar" : "Seminar", - "Photograph" : "Fotografere", - "Party" : "Fest", - "Celebration" : "Feiring", - "Celebrate" : "Feire", - "Birthday" : "Fødselsdag", - "Shopping" : "Shoppe", - "Skate" : "Skate", - "Skateboard" : "Skatebrett", - "Wine tasting" : "Vinsmaking", - "Golf" : "Golf", - "Dinner" : "Middag", - "Lunch" : "Lunsj", - "User not found" : "Fant ikke brukeren" + "This is an event reminder." : "Dette er en hendelsespåminnelse.", + "Error while parsing a PROPFIND error" : "Feil under analyse av en PROPFIND-feil", + "Appointment not found" : "Avtale ikke funnet", + "User not found" : "Fant ikke brukeren", + "Reminder" : "Påminnelse", + "+ Add reminder" : "+ Legg til påminnelse", + "Select automatic slot" : "Velg automatisk luke", + "with" : "med", + "Available times:" : "Tilgjengelige tidspunkter:", + "Suggestions" : "Forslag", + "Details" : "Detaljer" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/nl.js b/l10n/nl.js index 7c97fe28497288b9010da60de62fb26aaac1adf8..5e99cc0b2f1021e572b30e1bfb76ce13b71f5062 100644 --- a/l10n/nl.js +++ b/l10n/nl.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Opgegeven e-mailadres is te lang", "User-Session unexpectedly expired" : "Gebruikerssessie onverwacht vervallen", "Provided email-address is not valid" : "Het opgegeven e-mailadres is niet geldig", "%s has published the calendar »%s«" : "%s heeft de kalender gepubliceerd \"%s\"", @@ -11,125 +12,160 @@ OC.L10N.register( "Open »%s«" : "Open \"%s\"", "Cheers!" : "Proficiat!", "Upcoming events" : "Aanstaande activiteiten", + "No more events today" : "Geen activiteiten meer vandaag", + "No upcoming events" : "Geen aanstaande activiteiten", + "More events" : "Meer activiteiten", + "%1$s with %2$s" : "%1$s met %2$s", + "Calendar" : "Agenda", + "New booking {booking}" : "Nieuwe boeking {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) heeft de afspraak \"{config_display_name}\" geboekt op {date_time}.", "Appointments" : "Afspraken", "Schedule appointment \"%s\"" : "Plan afspraak \"%s\"", "Schedule an appointment" : "Plan een afspraak", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Voorbereiden op %s", "Follow up for %s" : "Follow-up voor %s", - "Your appointment \"%s\" needs confirmation" : "Je afspraak \"%s\" moet bevestigd worden", + "Your appointment \"%s\" with %s needs confirmation" : "Je afspraak \"%s\" met %s moet nog bevestigd worden", "Dear %s, please confirm your booking" : "Beste %s, bevestig alsjeblieft je boeking", "Confirm" : "Bevestigen", + "Appointment with:" : "Afspraak met:", + "Description:" : "Omschrijving:", "This confirmation link expires in %s hours." : "Deze bevestigingslink verloopt over %s uur.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Als je de afspraak wil afzeggen, neem contact op met de organisator.", - "Appointment:" : "Afspraak:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Als je de afspraak toch wilt annuleren, neem dan contact op met de organisator door te antwoorden op deze e-mail of door hun profielpagina te bezoeken.", + "Your appointment \"%s\" with %s has been accepted" : "Je afspraak \"%s\" met %sis geaccepteerd", + "Dear %s, your booking has been accepted." : "Beste %s, je boeking is aanvaard.", + "Appointment for:" : "Afspraak voor:", "Date:" : "Datum:", + "You will receive a link with the confirmation email" : "Je ontvangt een link met de bevestigingsmail", "Where:" : "Waar:", - "Description:" : "Omschrijving:", - "Calendar" : "Agenda", + "Comment:" : "Opmerking:", + "You have a new appointment booking \"%s\" from %s" : "Je hebt een nieuwe afspraakboeking \"%s\" van %s", + "Dear %s, %s (%s) booked an appointment with you." : "Beste %s, %s (%s) heeft een afspraak met je geboekt.", "A Calendar app for Nextcloud" : "Een agenda-app voor Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "De Calendar app is een toegang tot de Nextcloud CalDAV server. Synchroniseer makkelijk activiteiten tussen al je toestellen dank zij Nextcloud en wijzig ze online.\n\n* 🚀 **Integratie met andere Nextcloud apps!** Momenteel Contacten - er komen er nog.\n* 🌐 **WebCal Ondersteuning!** Wil je je de speeldagen van je favoriete ploeg in je calendar zien? Geen probleem!\n* 🙋 **Genodigden!** Nodig mensen uit op je activiteiten\n* ⌚️ **Beschikbaar/Bezet!** Zie wanneer je genodigden beschikbaar zijn om af te spreken\n* ⏰ **Herinneringen!** Ontvang waarschuwingen voor activiteiten in je browser en via email\n* 🔍 Zoek! Vind je activiteiten makkelijk terug\n* ☑️ Taken! Zie taken met een gewenste datum direct in de calendar\n* 🙈 **We gaan het wiel niet heruitvinden!** Gebaseerd op de krachtige [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) en [fullcalendar](https://github.com/fullcalendar/fullcalendar) bibliotheken.", "Previous day" : "Vorige dag", "Previous week" : "Vorige week", + "Previous year" : "Vorig jaar", "Previous month" : "Vorige maand", "Next day" : "Volgende dag", "Next week" : "Volgende week", + "Next year" : "Volgend jaar", "Next month" : "Volgende maand", - "New event" : "Nieuwe afspraak", + "Create new event" : "Maak nieuw evenement", + "Event" : "Evenement", "Today" : "Vandaag", "Day" : "Dag", "Week" : "Week", "Month" : "Maand", + "Year" : "Jaar", "List" : "Lijst", + "Appointment link was copied to clipboard" : "Afspraaklink gekopieerd naar klembord", + "Appointment link could not be copied to clipboard" : "Afspraaklink kon niet naar klembord gekopieerd worden", "Preview" : "Voorbeeld", "Copy link" : "Link kopiëren", "Edit" : "Bewerk", "Delete" : "Verwijderen", - "Appointment link was copied to clipboard" : "Afspraaklink gekopieerd naar klembord", - "Appointment link could not be copied to clipboard" : "Afspraaklink kon niet naar klembord gekopieerd worden", - "Add new" : "Nieuwe toevoegen", - "Untitled calendar" : "Naamloze calender", - "Edit name" : "Naam bewerken", - "Saving name …" : "Opslaan naam ...", - "Edit color" : "Kleur bewerken", - "Saving color …" : "Opslaan kleur ...", - "Copy private link" : "Privélink kopiëren", - "Export" : "Exporteren", - "Unshare from me" : "Stop delen met mij", + "Appointment schedules" : "Afspraakschema's", + "Create new" : "Maak nieuw", + "Disable calendar \"{calendar}\"" : "Maak agenda \"{calendar}\" onbeschikbaar", + "Disable untitled calendar" : "Maak naamloze agenda onbeschikbaar", + "Enable calendar \"{calendar}\"" : "Maak agenda \"{calendar}\" beschikbaar", + "Enable untitled calendar" : "Maak naamloze agenda beschikbaar", "An error occurred, unable to change visibility of the calendar." : "Er is een fout opgetreden waardoor de zichtbaarheid van de agenda niet kan worden gewijzigd.", - "An error occurred, unable to delete the calendar." : "Er is een fout opgetreden waardoor de agenda niet kan worden verwijderd.", - "Calendar link copied to clipboard." : "Agendalink gekopiëerd naar klembord", - "Calendar link could not be copied to clipboard." : "De agendalink kon niet naar het klembord worden gekopieerd.", - "An error occurred, unable to rename the calendar." : "Er is een fout opgetreden waardoor de agenda niet kan worden hernoemd.", - "An error occurred, unable to change the calendar's color." : "Er is een fout opgetreden, de kleur van de agenda kan niet worden gewijzigd.", + "Untitled calendar" : "Naamloze calender", + "Shared with you by" : "Gedeeld met jou door", + "Edit and share calendar" : "Bewerk en deel agenda", + "Edit calendar" : "Bewerk kalender", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Het delen van de agenda wordt in {countdown} seconde gestopt","Het delen van de agenda wordt in {countdown} seconden gestopt"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Agenda wordt verwijderd in {countdown} seconde","Agenda wordt verwijderd in {countdown} seconden"], - "Share link" : "Delen link", - "Publish calendar" : "Agenda publiceren", - "Publishing calendar" : "Agenda publiceren", - "Copy public link" : "Kopieer openbare link", - "Send link to calendar via email" : "Stuur link naar de agenda via e-mail", - "Enter one address" : "Geef één adres op", - "Sending email …" : "Versturen e-mail …", - "Copy subscription link" : "Kopieer abonnementslink", - "Copying link …" : "Kopiëren link …", - "Copied link" : "Link gekopieerd", - "Could not copy link" : "Kan link niet kopiëren", - "Copy embedding code" : "Kopieer embedded code", - "Copying code …" : "Kopiëren code  ...", - "Copied code" : "Code gekopieerd", - "Could not copy code" : "Kan code niet kopiëren", - "Delete share link" : "Verwijder deellink", - "Deleting share link …" : "Verwijderen deellink ...", - "An error occurred, unable to publish calendar." : "Er is een fout opgetreden, kan agenda niet publiceren.", - "An error occurred, unable to send email." : "Er is een fout opgetreden, kon e-mail niet versturen.", - "Embed code copied to clipboard." : "Embed code gekopieerd naar klembord", - "Embed code could not be copied to clipboard." : "Embed code kan niet gekopieerd worden naar klembord", - "Unpublishing calendar failed" : "Agenda depubliceren is niet gelukt", - "Share with users or groups" : "Deel met gebruikers of groepen", - "No users or groups" : "Geen gebruikers of groepen", - "can edit" : "kan wijzigen", - "Unshare with {displayName}" : "Stop delen met {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Er is een fout opgetreden waardoor het wijzigen van het delen van de agenda niet gelukt is.", - "An error occurred, unable to change the permission of the share." : "Er is een fout opgetreden, het is niet mogelijk om de machtiging van de share te wijzigen", - "+ New calendar" : "+ Nieuwe agenda", + "An error occurred, unable to create the calendar." : "Er is een fout opgetreden waardoor het niet mogelijk is om de agenda te creëren.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Geef geldige urls op - die moeten starten met http://, https://, webcal:// of webcals://", + "Calendars" : "Agenda's", + "Add new" : "Nieuwe toevoegen", "New calendar" : "Nieuwe agenda", "Name for new calendar" : "Naam van nieuwe kalender", "Creating calendar …" : "Creëren agenda ...", "New calendar with task list" : "Nieuwe agenda met taak lijst", "New subscription from link (read-only)" : "Nieuw abonnement via link (alleen lezen)", "Creating subscription …" : "Creëren abonnement ...", - "An error occurred, unable to create the calendar." : "Er is een fout opgetreden waardoor het niet mogelijk is om de agenda te creëren.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Geef geldige urls op - die moeten starten met http://, https://, webcal:// of webcals://", + "Add public holiday calendar" : "Voeg de kalender van openbare feestdagen toe.", + "Add custom public calendar" : "Voeg custom openbare agenda toe", + "Calendar link copied to clipboard." : "Agendalink gekopiëerd naar klembord", + "Calendar link could not be copied to clipboard." : "De agendalink kon niet naar het klembord worden gekopieerd.", + "Copy subscription link" : "Kopieer abonnementslink", + "Copying link …" : "Link kopiëren …", + "Copied link" : "Link gekopieerd", + "Could not copy link" : "Kan link niet kopiëren", + "Export" : "Exporteren", + "Untitled item" : "Object zonder titel", + "Unknown calendar" : "Onbekende kalender", + "Could not load deleted calendars and objects" : "Kon de verwijderde agenda en objecten niet herstellen", + "Could not delete calendar or event" : "Kon kalender of afspraak niet verwijderen", + "Could not restore calendar or event" : "Kon de agenda en objecten niet herstellen", + "Do you really want to empty the trash bin?" : "Wil je de prullenbak echt leegmaken?", + "Empty trash bin" : "Prullenbak legen", "Trash bin" : "Prullenbak", - "Loading deleted elements." : "Laden van verwijderde elementen.", - "You do not have any deleted elements." : "Je hebt geen verwijderde elementen.", + "Loading deleted items." : "Laden van verwijderde items.", + "You do not have any deleted items." : "Je hebt geen verwijderde items.", "Name" : "Naam", "Deleted" : "Verwijderd", "Restore" : "Herstellen", "Delete permanently" : "Definitief verwijderen", - "Empty trash bin" : "Leeg de prullenbak", - "Untitled element" : "Element zonder titel", - "Unknown calendar" : "Onbekende kalender", - "Could not load deleted calendars and objects" : "Kon de verwijderde agenda en objecten niet herstellen", - "Could not restore calendar or event" : "Kon de agenda en objecten niet herstellen", - "Do you really want to empty the trash bin?" : "Wil je de prullenbak echt leegmaken?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Objecten in de prullenbak worden na {numDays} dag verwijderd","Objecten in de prullenbak worden na {numDays} dagen verwijderd"], + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Items in de prullenmand worden na {numDays} dag verwijderd","Items in de prullenmand worden na {numDays} dagen verwijderd"], "Could not update calendar order." : "Kon de volgorde van agenda's niet bijwerken.", + "Shared calendars" : "Gedeelde agenda's", + "Deck" : "Deck", + "Hidden" : "Verborgen", + "Internal link" : "Interne link", + "A private link that can be used with external clients" : "Een privélink die kan worden gebruikt met externe clients", + "Copy internal link" : "Kopieer interne link", + "An error occurred, unable to publish calendar." : "Er is een fout opgetreden, kan agenda niet publiceren.", + "An error occurred, unable to send email." : "Er is een fout opgetreden, kon e-mail niet versturen.", + "Embed code copied to clipboard." : "Embed code gekopieerd naar klembord", + "Embed code could not be copied to clipboard." : "Embed code kan niet gekopieerd worden naar klembord", + "Unpublishing calendar failed" : "Agenda depubliceren is niet gelukt", + "Share link" : "Deel link", + "Copy public link" : "Kopieer openbare link", + "Send link to calendar via email" : "Stuur link naar de agenda via e-mail", + "Enter one address" : "Geef één adres op", + "Sending email …" : "Versturen e-mail …", + "Copy embedding code" : "Kopieer embedded code", + "Copying code …" : "Kopiëren code  ...", + "Copied code" : "Code gekopieerd", + "Could not copy code" : "Kan code niet kopiëren", + "Delete share link" : "Verwijder deellink", + "Deleting share link …" : "Verwijderen deellink ...", + "{teamDisplayName} (Team)" : "{teamDisplayName}(Team)", + "An error occurred while unsharing the calendar." : "Er is een fout opgetreden bij het delen van de kalender.", + "An error occurred, unable to change the permission of the share." : "Er is een fout opgetreden, het is niet mogelijk om de machtiging van de share te wijzigen", + "can edit" : "kan wijzigen", + "Unshare with {displayName}" : "Stop delen met {displayName}", + "Share with users or groups" : "Deel met gebruikers of groepen", + "No users or groups" : "Geen gebruikers of groepen", + "Failed to save calendar name and color" : "Niet gelukt om de naam en kleur van de kalender op te slaan", + "Calendar name …" : "Kalendernaam ...", + "Never show me as busy (set this calendar to transparent)" : "Toon mij nooit als bezet (stel deze agenda in als transparant)", + "Share calendar" : "Delen kalender", + "Unshare from me" : "Stop delen met mij", + "Save" : "Opslaan", "Import calendars" : "Importeer agenda's", "Please select a calendar to import into …" : "Selecteer een agenda om naar te importeren  ...", "Filename" : "Bestandsnaam", "Calendar to import into" : "Agenda om naar te importeren", "Cancel" : "Annuleren", "_Import calendar_::_Import calendars_" : ["Importeer agenda","Importeer agenda's"], + "Select the default location for attachments" : "Selecteer de standaardlocatie voor bijlagen", + "Pick" : "Kies", + "Invalid location selected" : "Ongeldige locatie geselecteerd", + "Attachments folder successfully saved." : "Bijlagenmap succesvol opgeslagen.", + "Error on saving attachments folder." : "Fout bij het opslaan van de bijlagenmap.", + "Default attachments location" : "Standaard bijlagenlocatie", "{filename} could not be parsed" : "{filename} kon niet worden geanalyseerd", "No valid files found, aborting import" : "Geen geldige bestand gevonden, import afgebroken", - "Import partially failed. Imported {accepted} out of {total}." : "Import is gedeeltelijk gelukt. Geïmporteerd {accepted} van de {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["%nafspraak succesvol geïmporteerd","%n afspraken succesvol geïmporteerd"], + "Import partially failed. Imported {accepted} out of {total}." : "Import is gedeeltelijk gelukt. Geïmporteerd {accepted} van de {total}.", "Automatic" : "Automatisch", "Automatic ({detected})" : "Automatisch ({detected})", "New setting was not saved successfully." : "De nieuwe instelling is niet goed opgeslagen.", - "Shortcut overview" : "Snelkoppeling overzicht", - "or" : "of", "Navigation" : "Navigatie", "Previous period" : "Vorige periode", "Next period" : "Volgende periode", @@ -137,29 +173,39 @@ OC.L10N.register( "Day view" : "Dagoverzicht", "Week view" : "Weekoverzicht", "Month view" : "Maandoverzicht", + "Year view" : "Jaaroverzicht", "List view" : "Lijstweergave", "Actions" : "Acties", "Create event" : "Creëer afspraak", "Show shortcuts" : "Toon sneltoetsen", + "Editor" : "Editor", + "Close editor" : "Sluit editor", "Save edited event" : "Aangepaste afspraak opslaan", "Delete edited event" : "Aangepaste afspraak verwijderen", + "Duplicate event" : "Duplicaat afspraak", + "Shortcut overview" : "Snelkoppeling overzicht", + "or" : "of", + "Calendar settings" : "Agenda instellingen", + "At event start" : "Bij start gebeurtenis", + "No reminder" : "Geen herinnering", + "Failed to save default calendar" : "Kon standaardagenda niet opslaan", + "CalDAV link copied to clipboard." : "CalDAV link gekopiëerd naar klembord.", + "CalDAV link could not be copied to clipboard." : "CalDAV link kon niet worden gekopieerd naar klembord.", "Enable birthday calendar" : "Verjaardagskalender inschakelen", "Show tasks in calendar" : "Toon taken in agenda", "Enable simplified editor" : "Eenvoudige editor inschakelen", - "Limit visible events per view" : "Beperk aantal zichtbare afspraken per overzicht", + "Limit the number of events displayed in the monthly view" : "Beperk het aantal evenementen dat wordt weergegeven in de maandweergave", "Show weekends" : "Toon weekenden", "Show week numbers" : "Tonen weeknummers", "Time increments" : "Time-toename", + "Default calendar for incoming invitations" : "Standaardagenda voor inkomende uitnodigingen", "Default reminder" : "Standaard herinnering", "Copy primary CalDAV address" : "Kopieer primair CalDAV adres", "Copy iOS/macOS CalDAV address" : "Kopieer iOS/macOS CalDAV adres", "Personal availability settings" : "Persoonlijke beschikbaarheidsinstellingen", "Show keyboard shortcuts" : "Toon sneltoetsen", - "No reminder" : "Geen herinnering", - "CalDAV link copied to clipboard." : "CalDAV link gekopiëerd naar klembord.", - "CalDAV link could not be copied to clipboard." : "CalDAV link kon niet worden gekopieerd naar klembord.", - "Appointment was created successfully" : "Afspraak succesvol gecreëerd", - "Appointment was updated successfully" : "Afspraak succesvol geüpdatet", + "Appointment schedule successfully created" : "Afspraakschema succesvol aangemaakt", + "Appointment schedule successfully updated" : "Afspraakschema succesvol aangepast", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuut","{duration} minuten"], "0 minutes" : "0 minuten", "_{duration} hour_::_{duration} hours_" : ["{duration} uur","{duration} uur"], @@ -170,7 +216,14 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Om afspraken te configureren, voeg je e-mailadres toe in persoonlijke instellingen.", "Public – shown on the profile page" : "Openbaar – zichtbaar op de profielpagina", "Private – only accessible via secret link" : "Privé – alleen toegankelijk via geheime link", + "Appointment schedule saved" : "Afspraakschema opgeslagen", + "Create appointment schedule" : "Maak afspraakschema", + "Edit appointment schedule" : "Bewerk afspraakschema", + "Update" : "Bijwerken", + "Appointment name" : "Afspraak benaming", "Location" : "Locatie", + "Create a Talk room" : "Maak een Talk ruimte", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Een unieke link wordt gegenereerd voor elke geboekte afspraak en verzonden via een bevestigingsemail.", "Description" : "Omschrijving", "Visibility" : "Zichtbaarheid", "Duration" : "Duur", @@ -188,23 +241,27 @@ OC.L10N.register( "Friday" : "vrijdag", "Saturday" : "zaterdag", "Sunday" : "zondag", + "Weekdays" : "Weekdagen", "Add time before and after the event" : "Voeg tijd voor en na afspraak toe", "Before the event" : "Voor de afspraak", "After the event" : "Na de afspraak", "Planning restrictions" : "Planningsbeperkingen", "Minimum time before next available slot" : "Minimale tijd voor volgend beschikbaar tijdslot", "Max slots per day" : "Max tijdsloten per dag", - "Create appointment" : "Creëer afspraak", - "Edit appointment" : "Bewerk afspraak", - "Save" : "Opslaan", - "Update" : "Bijwerken", + "Limit how far in the future appointments can be booked" : "Beperk hoe in de toekomst afspraken toegevoerd kunnen worden", + "It seems a rate limit has been reached. Please try again later." : "Het lijkt erop dat een limiet bereikt is. Probeer het later nog eens a.u.b.", + "Please confirm your reservation" : "Gelieve jouw reservatie te bevestigen.", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "We hebben je een e-mail met details verzonden. Bevestig je afspraak met de link in de e-mail. Je kunt deze pagina sluiten.", "Your name" : "Je naam", "Your email address" : "Je e-mailadres", "Please share anything that will help prepare for our meeting" : "Deel alsjeblieft alles wat kan helpen in de voorbereiding van de afspraak", "Could not book the appointment. Please try again later or contact the organizer." : "Kon afspraak niet boeken. Probeer later opnieuw of neem contact op met de organisator.", - "Book the appointment" : "Boek de afspraak", - "Reminder" : "Herinnering", + "Back" : "Terug", + "Book appointment" : "Boek afspraak", + "Create a new conversation" : "Maak een nieuw gesprek", + "Select conversation" : "Selecteer een gesprek", + "on" : "op", + "at" : "om", "before at" : "ervoor om", "Notification" : "Melding", "Email" : "Email", @@ -215,105 +272,134 @@ OC.L10N.register( "Edit time" : "Bewerk tijd", "Save time" : "Bewaar tijd", "Remove reminder" : "Verwijder herinnering", - "on" : "op", - "at" : "om", - "+ Add reminder" : "+ Toevoegen herinnering", "Add reminder" : "Voeg herinnering toe", - "_second_::_seconds_" : ["seconde","seconden"], - "_minute_::_minutes_" : ["minuut","minuten"], - "_hour_::_hours_" : ["uur","uren"], - "_day_::_days_" : ["dag","dagen"], - "_week_::_weeks_" : ["week","weken"], + "seconds" : "seconden", + "minutes" : "minuten", + "hours" : "uur", + "days" : "dagen", + "weeks" : "weken", + "Choose a file to add as attachment" : "Kies een bestand om als bijlage toe te voegen", + "Choose a file to share as a link" : "Kies een bestand om als link te delen", + "Attachment {name} already exist!" : "Bijlage {name} bestaat al!", + "Could not upload attachment(s)" : "Kon geen bijlage(n) uploaden", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Je gaat naar {host}. Wil je doorgaan? Link: {link}", + "Proceed" : "Doorgaan", + "No attachments" : "Geen bijlagen", + "Add from Files" : "Toevoegen uit bestanden", + "Upload from device" : "Uploaden vanaf apparaat", + "Delete file" : "Verwijder bestand", + "Confirmation" : "Bevestiging", + "_{count} attachment_::_{count} attachments_" : ["{count} bijlagen","{count} bijlagen"], "Suggested" : "Aanbevolen", "Available" : "Beschikbaar", - "Not available" : "Niet beschikbaar", - "Checking availability" : "Beschikbaarheid controleren", "Invitation accepted" : "Uitnodiging geaccepteerd", + "Accepted {organizerName}'s invitation" : "Uitnodiging van {organizerName} aanvaard", + "Participation marked as tentative" : "Deelname gemarkeerd als voorlopig", + "Invitation is delegated" : "Uitnodiging is gedelegeerd", + "Not available" : "Niet beschikbaar", "Invitation declined" : "Uitnodiging geweigerd", - "Invitation sent" : "Uitnodiging verstuurd", - "Availability of attendees, resources and rooms" : "Beschikbaarheid van aanwezigen, objecten en ruimtes", + "Declined {organizerName}'s invitation" : "Uitnodiging van {organizerName} geweigerd", + "Awaiting response" : "Wachten op antwoord", + "Checking availability" : "Beschikbaarheid controleren", + "Has not responded to {organizerName}'s invitation yet" : "Er is nog niet gereageerd op de uitnodiging van {organizerName}.", + "chairperson" : "voorzitter", + "required participant" : "vereiste deelnemer", + "non-participant" : "geen-deelnemer", + "optional participant" : "optionele deelnemer", "{organizer} (organizer)" : "{organizer} (organizer)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Beschikbaarheid van aanwezigen, objecten en ruimtes", + "Suggestion accepted" : "Voorstel geaccepteerd", + "Legend" : "Legenda", + "Out of office" : "Niet op kantoor", + "Attendees:" : "Deelnemers:", + "Done" : "Klaar", + "Search room" : "Zoek ruimte", + "Room name" : "Kamernaam", + "Check room availability" : "Beschikbaarheid ruimtes controleren", "Free" : "Vrij", "Busy (tentative)" : "Bezig (voorlopig)", "Busy" : "Bezet", - "Out of office" : "Niet op kantoor", "Unknown" : "Onbekend", + "Find a time" : "Vind een tijdstip", + "The invitation has been accepted successfully." : "De uitnodiging is succesvol geaccepteerd.", + "Failed to accept the invitation." : "Aanemen van uitnodiging is mislukt", + "The invitation has been declined successfully." : "De uitnodiging is succesvol geweigerd.", + "Failed to decline the invitation." : "Afwijzen van uitnodiging is mislukt", + "Your participation has been marked as tentative." : "Uw deelname is aangeduid als voorlopig.", + "Failed to set the participation status to tentative." : "Niet gelukt om de deelname status op voorlopig in te stellen.", "Accept" : "Accepteren", "Decline" : "Afwijzen", "Tentative" : "Voorlopig", - "The invitation has been accepted successfully." : "De uitnodiging is succesvol geaccepteerd.", - "The invitation has been declined successfully." : "De uitnodiging is succesvol geweigerd.", - "Create Talk room for this event" : "Creëer Talk-ruimte voor deze afspraak", - "Show busy times" : "Toon drukke tijden", "No attendees yet" : "Nog geen deelnemers", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} uitgenodigd, {confirmedCount} bevestigd", + "Successfully appended link to talk room to location." : "Succesvol de link naar de Talk ruimte aan de locatie toegevoegd.", "Successfully appended link to talk room to description." : "Met succes een link naar de gespreksruimte toegevoegd aan de beschrijving.", "Error creating Talk room" : "Fout tijdens aanmaken gespreksruimte", - "Send email" : "Verstuur e-mail", + "Attendees" : "Deelnemers", + "Remove group" : "Groep verwijderen", + "Remove attendee" : "Verwijder genodigde", + "Request reply" : "Vraag antwoord", "Chairperson" : "Voorzitter", "Required participant" : "Vereiste deelnemer", "Optional participant" : "Optionele deelnemer", "Non-participant" : "Geen deelnemer", - "Remove attendee" : "Verwijder genodigde", - "Search for emails, users or contacts" : "Zoek naar e-mails, gebruikers of contactpersonen", + "_%n member_::_%n members_" : ["%n leden","1%n leden"], "No match found" : "Geen overeenkomst gevonden", + "Note that members of circles get invited but are not synced yet." : "Bedenk dat deenemers aan cirkels uitgenodigd, maar niet gesynchroniseerd worden.", + "Note that members of contact groups get invited but are not synced yet." : "Bedenk dat deenemers van contactgroepen uitgenodigd, maar niet gesynchroniseerd worden.", "(organizer)" : "(organisator)", + "Make {label} the organizer" : "Maak {label} de organisator", + "Make {label} the organizer and attend" : "Maak {label} de organisator en neem deel", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Om uitnodigingen te versturen en antwoorden te behandelen, [linkopen]voeg je e-mailadres toe in persoonlijke instellingen[linkclose].", "Remove color" : "Verwijderen kleur", "Event title" : "Afspraaknaam", - "All day" : "Hele dag", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Het lukt niet om de gehele-dag instelling aan te passen voor afspraken die onderdeel zijn van een herhaalde-set.", - "from {startDate}" : "vanaf {startDate}", - "from {startDate} at {startTime}" : "vanaf {startDate} om {startTime}", - "to {endDate}" : "tot {endDate}", - "to {endDate} at {endTime}" : "tot {endDate} om {endTime}", + "From" : "Van", + "To" : "Naar", "Repeat" : "Herhaling", - "End repeat" : "Beëindig herhalen", - "Select to end repeat" : "Selecteer om herhaling te beëindigen", + "_time_::_times_" : ["keer","keer"], "never" : "geen", "on date" : "op datum", "after" : "na", - "_time_::_times_" : ["keer","keer"], + "End repeat" : "Beëindig herhalen", + "Select to end repeat" : "Selecteer om herhaling te beëindigen", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Deze afspraak is een uitzondering van een herhaalde-set. Je kunt hieraan geen herhalingsregel toevoegen.", "first" : "eerste", - "third" : "derde", - "fourth" : "vierde", - "fifth" : "vijfde", - "second to last" : "op 2 na laatste", - "last" : "laatste", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Wijzigingen op de herhaling zal alleen worden toegepast op deze en toekomstige afspraken.", "Repeat every" : "Herhaal elke", "By day of the month" : "Op dag van de maand", "On the" : "Op de", + "_day_::_days_" : ["dag","dagen"], + "_week_::_weeks_" : ["week","weken"], "_month_::_months_" : ["maand","maanden"], "_year_::_years_" : ["jaar","jaren"], "weekday" : "weekdag", "weekend day" : "weekend dag", - "No recurrence" : "Geen herhaling", + "Does not repeat" : "Niet herhalen", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "De herhaal instelling van deze afspraak wordt niet volledig ondersteund door Nextcloud. Als je de herhaal instellingen wijzigt, gaan bepaalde herhalingen mogelijk verloren.", - "Suggestions" : "Suggesties", "No rooms or resources yet" : "Nog geen kamers of bronnen", + "Resources" : "Bronnen", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} plaats","{seatingCapacity} plaatsen"], "Add resource" : "Voeg resource toe", "Has a projector" : "Heeft een projector", "Has a whiteboard" : "Heeft een whiteboard", "Wheelchair accessible" : "Rolstoel toegangelijk", "Remove resource" : "Verwijder bron", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} plaats","{seatingCapacity} plaatsen"], - "Projector" : "Projector", - "Whiteboard" : "Whiteboard", "Search for resources or rooms" : "Zoeken naar bronnen of kamers", "available" : "beschikbaar", "unavailable" : "niet beschikbaar", + "Show all rooms" : "Toon alle ruimtes", + "Projector" : "Projector", + "Whiteboard" : "Whiteboard", "Room type" : "Kamer type", "Any" : "Alle", "Minimum seating capacity" : "Minimale zit capaciteit", - "More" : "Meer", - "Update this occurrence" : "Update deze afspraak", - "Update this and all future" : "Update deze en toekomstige", + "More details" : "Meer details", + "Update this and all future" : "Deze en toekomstige afspraken bijwerken", + "Update this occurrence" : "Deze afspraak bijwerken", "Public calendar does not exist" : "Publieke agenda bestaat niet", "Maybe the share was deleted or has expired?" : "Mogelijk is het gedeelde item verwijderd of verlopen?", - "Please select a time zone:" : "Selecteer een tijdzone:", - "Pick a time" : "Kies een tijd", - "Pick a date" : "Kies een datum", "from {formattedDate}" : "van {formattedDate}", "to {formattedDate}" : "tot {formattedDate}", "on {formattedDate}" : "op {formattedDate}", @@ -323,9 +409,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} om {formattedTime}", "Please enter a valid date" : "Geef een geldige datum op", "Please enter a valid date and time" : "Geef een geldige datum en tijdstip op", + "Select a time zone" : "Selecteer een tijdzone", + "Please select a time zone:" : "Selecteer een tijdzone:", + "Pick a time" : "Kies een tijd", + "Pick a date" : "Kies een datum", "Type to search time zone" : "Type om tijdzone te zoeken", "Global" : "Globaal", - "Select date" : "Selecteer datum", + "Holidays in {region}" : "Vakanties in {regio}", + "An error occurred, unable to read public calendars." : "Er is een fout opgetreden, kan openbare agenda's niet lezen.", + "An error occurred, unable to subscribe to calendar." : "Er is een fout opgetreden, kan niet abonneren op de agenda.", + "Public holiday calendars" : "Openbare vakantie kalenders", + "Public calendars" : "Openbare agenda's", + "No valid public calendars configured" : "Geen juiste openbare agenda's ingesteld", + "Speak to the server administrator to resolve this issue." : "Vraag je beheerder om dit probleem op te lossen.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Openbare feestdagenkalenders worden verstrekt door Thunderbird. Kalendergegevens worden gedownload van {website}.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Deze openbare agenda's zijn voorgesteld door de beheerder van de server. Agandagegevens worden gedownload van de respectievelijke website.", + "By {authors}" : "Door {authors}", + "Subscribed" : "Geabonneerd", + "Subscribe" : "Abonneren", + "Could not fetch slots" : "Kon slots niet ophalen", + "Select a date" : "Selecteer een datum", "Select slot" : "Selecteer tijdslot", "No slots available" : "Geen tijdsloten beschikbaar", "The slot for your appointment has been confirmed" : "Het tijdslot van je afspraak is bevestigd", @@ -342,21 +445,19 @@ OC.L10N.register( "Personal" : "Persoonlijk", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "De automatisch gedetecteerde tijdzone is UTC.\nDit komt waarschijnlijk door beveiligingsmaatregelen van je webbrowser. Stel de tijdzone handmatig in bij de agenda-instellingen.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Je ingestelde tijdzone ({timezoneId}) werd niet gevonden. Er wordt teruggevallen op UTC.\nWijzig je tijdzone in instellingen en meld het incident.", - "No more events today" : "Geen activiteiten meer vandaag", - "No upcoming events" : "Geen aanstaande activiteiten", - "Create a new event" : "Maak een nieuwe activiteit", - "[Today]" : "[Vandaag]", - "[Tomorrow]" : "[Morgen]", - "[Yesterday]" : "[Gisteren]", - "[Last] dddd" : "[Last] dddd", + "Edit event" : "Bewerk gebeurtenis", "Event does not exist" : "Activiteit bestaat niet", + "Duplicate" : "Duplicaat", "Delete this occurrence" : "Verwijder deze afspraak", "Delete this and all future" : "Verwijder deze en toekomstige", - "Details" : "Details", - "Attendees" : "Deelnemers", - "Resources" : "Bronnen", + "All day" : "Hele dag", + "Managing shared access" : "Beheren van gedeelde toegang", + "Deny access" : "Weiger toegang", + "Invite" : "Uitnodigen", + "_User requires access to your file_::_Users require access to your file_" : ["Gebruikers hebben toegang nodig tot uw bestand","Gebruikers hebben toegang nodig tot uw bestand"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Bijlagen die gedeelde toegang vereisen","Bijlagen die gedeelde toegang vereisen"], + "Untitled event" : "Afspraken zonder naam", "Close" : "Sluiten", - "Show more details" : "Toon meer details", "Subscribe to {name}" : "Abonneren op {name}", "Export {name}" : "Exporteer {name}", "Anniversary" : "Verjaardag", @@ -386,7 +487,6 @@ OC.L10N.register( "on {time}" : "om {time}", "on {time} ({timezoneId})" : "om {time} ({timezoneId})", "Week {number} of {year}" : "Week {number} van {year}", - "Does not repeat" : "Niet herhalen", "Daily" : "Dagelijks", "Weekly" : "Wekelijks", "Monthly" : "Maandelijks", @@ -398,24 +498,24 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["op {weekday}","op {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["op dag {dayOfMonthList}","op de dagen {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "op de {ordinalNumber} {byDaySet}", - "in {monthNames}" : "in {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} op de {ordinalNumber} {byDaySet}", "until {untilDate}" : "tot {untilDate}", "_%n time_::_%n times_" : ["%n keer","%n keer"], - "Untitled event" : "Afspraken zonder naam", + "second" : "tweede", + "third" : "derde", + "fourth" : "vierde", + "fifth" : "vijfde", + "second to last" : "op 2 na laatste", + "last" : "laatste", "Untitled task" : "Naamloze taak", "Please ask your administrator to enable the Tasks App." : "Vraag je beheerder om de Taken App te installeren.", - "Prev" : "Vorig", - "Next" : "Volg.", - "Prev year" : "Vorig jaar", - "Next year" : "Volgend jaar", - "Year" : "Jaar", "W" : "W", "%n more" : "+%n meer", "No events to display" : "Geen activiteiten meer te tonen", "_+%n more_::_+%n more_" : ["+%n meer","+%n meer"], "No events" : "Geen activiteiten", "Create a new event or change the visible time-range" : "Maak een nieuwe activiteit of wijzig de zichtbare tijdsperiode", + "Failed to save event" : "Opslaan van gebeurtenis mislukt", "It might have been deleted, or there was a typo in a link" : "Het zou kunnen verwijderd zijn, of er stond een typfout in de link.", "It might have been deleted, or there was a typo in the link" : "Het zou kunnen verwijderd zijn, of er stond een typfout in de link.", "Meeting room" : "Meetingroom", @@ -428,7 +528,6 @@ OC.L10N.register( "When shared hide this event" : "Wanneer gedeeld, verberg deze afspraak", "The visibility of this event in shared calendars." : "De zichtbaarheid van deze afspraak in gedeelde agenda's.", "Add a location" : "Een locatie toevoegen", - "Add a description" : "Voeg een omschrijving toe", "Status" : "Status", "Confirmed" : "Bevestigd", "Canceled" : "Geannuleerd", @@ -441,135 +540,21 @@ OC.L10N.register( "Add this as a new category" : "Voeg dit toe als een nieuwe categorie", "Custom color" : "Kleur op maat", "Special color of this event. Overrides the calendar-color." : "Bijzondere kleur van deze afspraak. Overschrijft de agenda kleur.", - "Chat room for event" : "Spreekkamer voor afspraak", + "Error while sharing file" : "Fout bij delen bestand", + "Error while sharing file with user" : "Fout bij het delen van het bestand met de gebruiker", + "Attachment {fileName} already exists!" : "Bijlage {fileName} bestaat al!", + "An error occurred during getting file information" : "Er is een fout opgetreden tijdens het ophalen van bestandsinformatie.", + "An error occurred, unable to delete the calendar." : "Er is een fout opgetreden waardoor de agenda niet kan worden verwijderd.", "Imported {filename}" : "Geïmporteerd {filename}", - "Meditation" : "Meditatie", - "Relaxing" : "Relaxen", - "Relax" : "Relax", - "Break" : "Pauze", - "Commute" : "Woon-werk", - "Commuting" : "Woon-werk", - "Shuttle" : "Shuttle", - "Invoice" : "Factuur", - "Finance" : "Financieel", - "Bank" : "Bank", - "Money" : "Geld", - "Wedding" : "Bruiloft", - "Dog" : "Hond", - "Concert" : "Concert", - "Festival" : "Festival", - "Theater" : "Theater", - "Theatre" : "Theater", - "Presentation" : "Presentatie", - "Talk" : "Talk", - "Speech" : "Speech", - "Deadline" : "Deadline", - "Submission" : "Aanlevering", - "Reporting" : "Rapportage", - "Camping" : "Camping", - "Camp" : "Kamp", - "Election" : "Verkiezing", - "Voting" : "Stemming", - "Vote" : "Stemmen", - "Barbecue" : "Barbecue", - "Barbeque" : "Barbeque", - "Garden" : "Tuin", - "Farm" : "Boerderij", - "Movie" : "Film", - "Cinema" : "Bioscoop", - "Graduation" : "Uitreiking", - "Brainstorm" : "Brainstorm", - "Review" : "Voorbeeld", - "Audit" : "Audit", - "Inspection" : "Inspectie", - "Proofreading" : "Proofreading", - "Baseball" : "Baseball", - "Meet" : "Afspraak", - "Planning" : "Planning", - "Pointing" : "Wijzend naar", - "Retrospective" : "Terugblikkend", - "Office" : "Kantoor", - "Contributor week" : "Bijdrager week", - "Mail" : "E-mail", - "Soccer" : "Voetbal", - "Football" : "Voetballen", - "Gaming" : "Gaming", - "Drive" : "Rijdend", - "Driving" : "Rijden", - "Bicycle" : "Fiets", - "Cycle" : "Fietsen", - "Cycling" : "Fietsen", - "Biking" : "Fietsen", - "Bike" : "Fiets", - "Podcast" : "Podcast", - "Basketball" : "Basketball", - "Fishing" : "Vissen", - "Hiking" : "Hiking", - "Hike" : "Hike", - "Art" : "Kunst", - "Exhibition" : "Tentoonstelling", - "Museum" : "Museum", - "Pilates" : "Pilates", - "Park" : "Park", - "Walk" : "Wandelen", - "Studying" : "Studeren", - "Doctor" : "Dokter", - "Health" : "Gezondheid", - "Dentist" : "Tandarts", - "Hospital" : "Ziekenhuis", - "Interview" : "Interview", - "Training" : "Training", - "Practice" : "Praktijk", - "Sports" : "Sport", - "Exercise" : "Oefenen", - "Work out" : "Trainen", - "Working out" : "Trainen", - "Gym" : "Turnles", - "Barber" : "Kapper", - "Haircut" : "Kapper", - "Hairdresser" : "Kapper", - "Exam" : "Examen", - "Written test" : "Schrifteleijke overhoring", - "Oral test" : "Mondelinge overhoring", - "Working" : "Werk", - "New Years Eve" : "Oudejaarsavond", - "NYE" : "Oud en nieuw", - "Fireworks" : "Vuurwerk", - "Running" : "Hardlopen", - "Go for a run" : "Een eindje gaan lopen", - "Marathon" : "Marathon", - "Video-conference" : "Video conference", - "Conference-call" : "Conference call", - "Video-call" : "Videogesprek", - "Video-chat" : "Video chat", - "Video-meeting" : "Video vergadering", - "Call" : "Gesprek", - "Calling" : "Bellen", - "Christmas" : "Kerst", - "Conference" : "Conferentie", - "Pizza" : "Pizza", - "Travelling" : "Reizen", - "Trip" : "Reis", - "Journey" : "Reis", - "Collaborate" : "Samenwerken", - "Pair" : "Paar", - "Lecture" : "Lezing", - "Seminar" : "Seminarie", - "Teaching" : "Lesgeven", - "Photograph" : "Foto", - "Party" : "Party", - "Celebration" : "Viering", - "Celebrate" : "Vieren", - "Birthday" : "Verjaardag", - "Shopping" : "Winkelen", - "Groceries" : "Boodschappen", - "Skate" : "Skate", - "Skateboard" : "Skateboard", - "Wine tasting" : "Wijnproeverij", - "Golf" : "Golf", - "Dinner" : "Diner", - "Lunch" : "Lunch", + "This is an event reminder." : "Dit is een herinnering aan een evenement.", "Appointment not found" : "Afspraak niet gevonden", - "User not found" : "Gebruiker niet gevonden" + "User not found" : "Gebruiker niet gevonden", + "Reminder" : "Herinnering", + "+ Add reminder" : "+ Toevoegen herinnering", + "Select automatic slot" : "Selecteer automatisch tijdsblok", + "with" : "met", + "Available times:" : "Beschikbare tijden:", + "Suggestions" : "Suggesties", + "Details" : "Details" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/nl.json b/l10n/nl.json index 20ccc15b0a3cc3a52ae288bcdda4c81cb9e7260b..9f023316352f6b9c6bff97254a3140a408691747 100644 --- a/l10n/nl.json +++ b/l10n/nl.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "Opgegeven e-mailadres is te lang", "User-Session unexpectedly expired" : "Gebruikerssessie onverwacht vervallen", "Provided email-address is not valid" : "Het opgegeven e-mailadres is niet geldig", "%s has published the calendar »%s«" : "%s heeft de kalender gepubliceerd \"%s\"", @@ -9,125 +10,160 @@ "Open »%s«" : "Open \"%s\"", "Cheers!" : "Proficiat!", "Upcoming events" : "Aanstaande activiteiten", + "No more events today" : "Geen activiteiten meer vandaag", + "No upcoming events" : "Geen aanstaande activiteiten", + "More events" : "Meer activiteiten", + "%1$s with %2$s" : "%1$s met %2$s", + "Calendar" : "Agenda", + "New booking {booking}" : "Nieuwe boeking {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) heeft de afspraak \"{config_display_name}\" geboekt op {date_time}.", "Appointments" : "Afspraken", "Schedule appointment \"%s\"" : "Plan afspraak \"%s\"", "Schedule an appointment" : "Plan een afspraak", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Voorbereiden op %s", "Follow up for %s" : "Follow-up voor %s", - "Your appointment \"%s\" needs confirmation" : "Je afspraak \"%s\" moet bevestigd worden", + "Your appointment \"%s\" with %s needs confirmation" : "Je afspraak \"%s\" met %s moet nog bevestigd worden", "Dear %s, please confirm your booking" : "Beste %s, bevestig alsjeblieft je boeking", "Confirm" : "Bevestigen", + "Appointment with:" : "Afspraak met:", + "Description:" : "Omschrijving:", "This confirmation link expires in %s hours." : "Deze bevestigingslink verloopt over %s uur.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Als je de afspraak wil afzeggen, neem contact op met de organisator.", - "Appointment:" : "Afspraak:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Als je de afspraak toch wilt annuleren, neem dan contact op met de organisator door te antwoorden op deze e-mail of door hun profielpagina te bezoeken.", + "Your appointment \"%s\" with %s has been accepted" : "Je afspraak \"%s\" met %sis geaccepteerd", + "Dear %s, your booking has been accepted." : "Beste %s, je boeking is aanvaard.", + "Appointment for:" : "Afspraak voor:", "Date:" : "Datum:", + "You will receive a link with the confirmation email" : "Je ontvangt een link met de bevestigingsmail", "Where:" : "Waar:", - "Description:" : "Omschrijving:", - "Calendar" : "Agenda", + "Comment:" : "Opmerking:", + "You have a new appointment booking \"%s\" from %s" : "Je hebt een nieuwe afspraakboeking \"%s\" van %s", + "Dear %s, %s (%s) booked an appointment with you." : "Beste %s, %s (%s) heeft een afspraak met je geboekt.", "A Calendar app for Nextcloud" : "Een agenda-app voor Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "De Calendar app is een toegang tot de Nextcloud CalDAV server. Synchroniseer makkelijk activiteiten tussen al je toestellen dank zij Nextcloud en wijzig ze online.\n\n* 🚀 **Integratie met andere Nextcloud apps!** Momenteel Contacten - er komen er nog.\n* 🌐 **WebCal Ondersteuning!** Wil je je de speeldagen van je favoriete ploeg in je calendar zien? Geen probleem!\n* 🙋 **Genodigden!** Nodig mensen uit op je activiteiten\n* ⌚️ **Beschikbaar/Bezet!** Zie wanneer je genodigden beschikbaar zijn om af te spreken\n* ⏰ **Herinneringen!** Ontvang waarschuwingen voor activiteiten in je browser en via email\n* 🔍 Zoek! Vind je activiteiten makkelijk terug\n* ☑️ Taken! Zie taken met een gewenste datum direct in de calendar\n* 🙈 **We gaan het wiel niet heruitvinden!** Gebaseerd op de krachtige [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) en [fullcalendar](https://github.com/fullcalendar/fullcalendar) bibliotheken.", "Previous day" : "Vorige dag", "Previous week" : "Vorige week", + "Previous year" : "Vorig jaar", "Previous month" : "Vorige maand", "Next day" : "Volgende dag", "Next week" : "Volgende week", + "Next year" : "Volgend jaar", "Next month" : "Volgende maand", - "New event" : "Nieuwe afspraak", + "Create new event" : "Maak nieuw evenement", + "Event" : "Evenement", "Today" : "Vandaag", "Day" : "Dag", "Week" : "Week", "Month" : "Maand", + "Year" : "Jaar", "List" : "Lijst", + "Appointment link was copied to clipboard" : "Afspraaklink gekopieerd naar klembord", + "Appointment link could not be copied to clipboard" : "Afspraaklink kon niet naar klembord gekopieerd worden", "Preview" : "Voorbeeld", "Copy link" : "Link kopiëren", "Edit" : "Bewerk", "Delete" : "Verwijderen", - "Appointment link was copied to clipboard" : "Afspraaklink gekopieerd naar klembord", - "Appointment link could not be copied to clipboard" : "Afspraaklink kon niet naar klembord gekopieerd worden", - "Add new" : "Nieuwe toevoegen", - "Untitled calendar" : "Naamloze calender", - "Edit name" : "Naam bewerken", - "Saving name …" : "Opslaan naam ...", - "Edit color" : "Kleur bewerken", - "Saving color …" : "Opslaan kleur ...", - "Copy private link" : "Privélink kopiëren", - "Export" : "Exporteren", - "Unshare from me" : "Stop delen met mij", + "Appointment schedules" : "Afspraakschema's", + "Create new" : "Maak nieuw", + "Disable calendar \"{calendar}\"" : "Maak agenda \"{calendar}\" onbeschikbaar", + "Disable untitled calendar" : "Maak naamloze agenda onbeschikbaar", + "Enable calendar \"{calendar}\"" : "Maak agenda \"{calendar}\" beschikbaar", + "Enable untitled calendar" : "Maak naamloze agenda beschikbaar", "An error occurred, unable to change visibility of the calendar." : "Er is een fout opgetreden waardoor de zichtbaarheid van de agenda niet kan worden gewijzigd.", - "An error occurred, unable to delete the calendar." : "Er is een fout opgetreden waardoor de agenda niet kan worden verwijderd.", - "Calendar link copied to clipboard." : "Agendalink gekopiëerd naar klembord", - "Calendar link could not be copied to clipboard." : "De agendalink kon niet naar het klembord worden gekopieerd.", - "An error occurred, unable to rename the calendar." : "Er is een fout opgetreden waardoor de agenda niet kan worden hernoemd.", - "An error occurred, unable to change the calendar's color." : "Er is een fout opgetreden, de kleur van de agenda kan niet worden gewijzigd.", + "Untitled calendar" : "Naamloze calender", + "Shared with you by" : "Gedeeld met jou door", + "Edit and share calendar" : "Bewerk en deel agenda", + "Edit calendar" : "Bewerk kalender", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Het delen van de agenda wordt in {countdown} seconde gestopt","Het delen van de agenda wordt in {countdown} seconden gestopt"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Agenda wordt verwijderd in {countdown} seconde","Agenda wordt verwijderd in {countdown} seconden"], - "Share link" : "Delen link", - "Publish calendar" : "Agenda publiceren", - "Publishing calendar" : "Agenda publiceren", - "Copy public link" : "Kopieer openbare link", - "Send link to calendar via email" : "Stuur link naar de agenda via e-mail", - "Enter one address" : "Geef één adres op", - "Sending email …" : "Versturen e-mail …", - "Copy subscription link" : "Kopieer abonnementslink", - "Copying link …" : "Kopiëren link …", - "Copied link" : "Link gekopieerd", - "Could not copy link" : "Kan link niet kopiëren", - "Copy embedding code" : "Kopieer embedded code", - "Copying code …" : "Kopiëren code  ...", - "Copied code" : "Code gekopieerd", - "Could not copy code" : "Kan code niet kopiëren", - "Delete share link" : "Verwijder deellink", - "Deleting share link …" : "Verwijderen deellink ...", - "An error occurred, unable to publish calendar." : "Er is een fout opgetreden, kan agenda niet publiceren.", - "An error occurred, unable to send email." : "Er is een fout opgetreden, kon e-mail niet versturen.", - "Embed code copied to clipboard." : "Embed code gekopieerd naar klembord", - "Embed code could not be copied to clipboard." : "Embed code kan niet gekopieerd worden naar klembord", - "Unpublishing calendar failed" : "Agenda depubliceren is niet gelukt", - "Share with users or groups" : "Deel met gebruikers of groepen", - "No users or groups" : "Geen gebruikers of groepen", - "can edit" : "kan wijzigen", - "Unshare with {displayName}" : "Stop delen met {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Er is een fout opgetreden waardoor het wijzigen van het delen van de agenda niet gelukt is.", - "An error occurred, unable to change the permission of the share." : "Er is een fout opgetreden, het is niet mogelijk om de machtiging van de share te wijzigen", - "+ New calendar" : "+ Nieuwe agenda", + "An error occurred, unable to create the calendar." : "Er is een fout opgetreden waardoor het niet mogelijk is om de agenda te creëren.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Geef geldige urls op - die moeten starten met http://, https://, webcal:// of webcals://", + "Calendars" : "Agenda's", + "Add new" : "Nieuwe toevoegen", "New calendar" : "Nieuwe agenda", "Name for new calendar" : "Naam van nieuwe kalender", "Creating calendar …" : "Creëren agenda ...", "New calendar with task list" : "Nieuwe agenda met taak lijst", "New subscription from link (read-only)" : "Nieuw abonnement via link (alleen lezen)", "Creating subscription …" : "Creëren abonnement ...", - "An error occurred, unable to create the calendar." : "Er is een fout opgetreden waardoor het niet mogelijk is om de agenda te creëren.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Geef geldige urls op - die moeten starten met http://, https://, webcal:// of webcals://", + "Add public holiday calendar" : "Voeg de kalender van openbare feestdagen toe.", + "Add custom public calendar" : "Voeg custom openbare agenda toe", + "Calendar link copied to clipboard." : "Agendalink gekopiëerd naar klembord", + "Calendar link could not be copied to clipboard." : "De agendalink kon niet naar het klembord worden gekopieerd.", + "Copy subscription link" : "Kopieer abonnementslink", + "Copying link …" : "Link kopiëren …", + "Copied link" : "Link gekopieerd", + "Could not copy link" : "Kan link niet kopiëren", + "Export" : "Exporteren", + "Untitled item" : "Object zonder titel", + "Unknown calendar" : "Onbekende kalender", + "Could not load deleted calendars and objects" : "Kon de verwijderde agenda en objecten niet herstellen", + "Could not delete calendar or event" : "Kon kalender of afspraak niet verwijderen", + "Could not restore calendar or event" : "Kon de agenda en objecten niet herstellen", + "Do you really want to empty the trash bin?" : "Wil je de prullenbak echt leegmaken?", + "Empty trash bin" : "Prullenbak legen", "Trash bin" : "Prullenbak", - "Loading deleted elements." : "Laden van verwijderde elementen.", - "You do not have any deleted elements." : "Je hebt geen verwijderde elementen.", + "Loading deleted items." : "Laden van verwijderde items.", + "You do not have any deleted items." : "Je hebt geen verwijderde items.", "Name" : "Naam", "Deleted" : "Verwijderd", "Restore" : "Herstellen", "Delete permanently" : "Definitief verwijderen", - "Empty trash bin" : "Leeg de prullenbak", - "Untitled element" : "Element zonder titel", - "Unknown calendar" : "Onbekende kalender", - "Could not load deleted calendars and objects" : "Kon de verwijderde agenda en objecten niet herstellen", - "Could not restore calendar or event" : "Kon de agenda en objecten niet herstellen", - "Do you really want to empty the trash bin?" : "Wil je de prullenbak echt leegmaken?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Objecten in de prullenbak worden na {numDays} dag verwijderd","Objecten in de prullenbak worden na {numDays} dagen verwijderd"], + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Items in de prullenmand worden na {numDays} dag verwijderd","Items in de prullenmand worden na {numDays} dagen verwijderd"], "Could not update calendar order." : "Kon de volgorde van agenda's niet bijwerken.", + "Shared calendars" : "Gedeelde agenda's", + "Deck" : "Deck", + "Hidden" : "Verborgen", + "Internal link" : "Interne link", + "A private link that can be used with external clients" : "Een privélink die kan worden gebruikt met externe clients", + "Copy internal link" : "Kopieer interne link", + "An error occurred, unable to publish calendar." : "Er is een fout opgetreden, kan agenda niet publiceren.", + "An error occurred, unable to send email." : "Er is een fout opgetreden, kon e-mail niet versturen.", + "Embed code copied to clipboard." : "Embed code gekopieerd naar klembord", + "Embed code could not be copied to clipboard." : "Embed code kan niet gekopieerd worden naar klembord", + "Unpublishing calendar failed" : "Agenda depubliceren is niet gelukt", + "Share link" : "Deel link", + "Copy public link" : "Kopieer openbare link", + "Send link to calendar via email" : "Stuur link naar de agenda via e-mail", + "Enter one address" : "Geef één adres op", + "Sending email …" : "Versturen e-mail …", + "Copy embedding code" : "Kopieer embedded code", + "Copying code …" : "Kopiëren code  ...", + "Copied code" : "Code gekopieerd", + "Could not copy code" : "Kan code niet kopiëren", + "Delete share link" : "Verwijder deellink", + "Deleting share link …" : "Verwijderen deellink ...", + "{teamDisplayName} (Team)" : "{teamDisplayName}(Team)", + "An error occurred while unsharing the calendar." : "Er is een fout opgetreden bij het delen van de kalender.", + "An error occurred, unable to change the permission of the share." : "Er is een fout opgetreden, het is niet mogelijk om de machtiging van de share te wijzigen", + "can edit" : "kan wijzigen", + "Unshare with {displayName}" : "Stop delen met {displayName}", + "Share with users or groups" : "Deel met gebruikers of groepen", + "No users or groups" : "Geen gebruikers of groepen", + "Failed to save calendar name and color" : "Niet gelukt om de naam en kleur van de kalender op te slaan", + "Calendar name …" : "Kalendernaam ...", + "Never show me as busy (set this calendar to transparent)" : "Toon mij nooit als bezet (stel deze agenda in als transparant)", + "Share calendar" : "Delen kalender", + "Unshare from me" : "Stop delen met mij", + "Save" : "Opslaan", "Import calendars" : "Importeer agenda's", "Please select a calendar to import into …" : "Selecteer een agenda om naar te importeren  ...", "Filename" : "Bestandsnaam", "Calendar to import into" : "Agenda om naar te importeren", "Cancel" : "Annuleren", "_Import calendar_::_Import calendars_" : ["Importeer agenda","Importeer agenda's"], + "Select the default location for attachments" : "Selecteer de standaardlocatie voor bijlagen", + "Pick" : "Kies", + "Invalid location selected" : "Ongeldige locatie geselecteerd", + "Attachments folder successfully saved." : "Bijlagenmap succesvol opgeslagen.", + "Error on saving attachments folder." : "Fout bij het opslaan van de bijlagenmap.", + "Default attachments location" : "Standaard bijlagenlocatie", "{filename} could not be parsed" : "{filename} kon niet worden geanalyseerd", "No valid files found, aborting import" : "Geen geldige bestand gevonden, import afgebroken", - "Import partially failed. Imported {accepted} out of {total}." : "Import is gedeeltelijk gelukt. Geïmporteerd {accepted} van de {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["%nafspraak succesvol geïmporteerd","%n afspraken succesvol geïmporteerd"], + "Import partially failed. Imported {accepted} out of {total}." : "Import is gedeeltelijk gelukt. Geïmporteerd {accepted} van de {total}.", "Automatic" : "Automatisch", "Automatic ({detected})" : "Automatisch ({detected})", "New setting was not saved successfully." : "De nieuwe instelling is niet goed opgeslagen.", - "Shortcut overview" : "Snelkoppeling overzicht", - "or" : "of", "Navigation" : "Navigatie", "Previous period" : "Vorige periode", "Next period" : "Volgende periode", @@ -135,29 +171,39 @@ "Day view" : "Dagoverzicht", "Week view" : "Weekoverzicht", "Month view" : "Maandoverzicht", + "Year view" : "Jaaroverzicht", "List view" : "Lijstweergave", "Actions" : "Acties", "Create event" : "Creëer afspraak", "Show shortcuts" : "Toon sneltoetsen", + "Editor" : "Editor", + "Close editor" : "Sluit editor", "Save edited event" : "Aangepaste afspraak opslaan", "Delete edited event" : "Aangepaste afspraak verwijderen", + "Duplicate event" : "Duplicaat afspraak", + "Shortcut overview" : "Snelkoppeling overzicht", + "or" : "of", + "Calendar settings" : "Agenda instellingen", + "At event start" : "Bij start gebeurtenis", + "No reminder" : "Geen herinnering", + "Failed to save default calendar" : "Kon standaardagenda niet opslaan", + "CalDAV link copied to clipboard." : "CalDAV link gekopiëerd naar klembord.", + "CalDAV link could not be copied to clipboard." : "CalDAV link kon niet worden gekopieerd naar klembord.", "Enable birthday calendar" : "Verjaardagskalender inschakelen", "Show tasks in calendar" : "Toon taken in agenda", "Enable simplified editor" : "Eenvoudige editor inschakelen", - "Limit visible events per view" : "Beperk aantal zichtbare afspraken per overzicht", + "Limit the number of events displayed in the monthly view" : "Beperk het aantal evenementen dat wordt weergegeven in de maandweergave", "Show weekends" : "Toon weekenden", "Show week numbers" : "Tonen weeknummers", "Time increments" : "Time-toename", + "Default calendar for incoming invitations" : "Standaardagenda voor inkomende uitnodigingen", "Default reminder" : "Standaard herinnering", "Copy primary CalDAV address" : "Kopieer primair CalDAV adres", "Copy iOS/macOS CalDAV address" : "Kopieer iOS/macOS CalDAV adres", "Personal availability settings" : "Persoonlijke beschikbaarheidsinstellingen", "Show keyboard shortcuts" : "Toon sneltoetsen", - "No reminder" : "Geen herinnering", - "CalDAV link copied to clipboard." : "CalDAV link gekopiëerd naar klembord.", - "CalDAV link could not be copied to clipboard." : "CalDAV link kon niet worden gekopieerd naar klembord.", - "Appointment was created successfully" : "Afspraak succesvol gecreëerd", - "Appointment was updated successfully" : "Afspraak succesvol geüpdatet", + "Appointment schedule successfully created" : "Afspraakschema succesvol aangemaakt", + "Appointment schedule successfully updated" : "Afspraakschema succesvol aangepast", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuut","{duration} minuten"], "0 minutes" : "0 minuten", "_{duration} hour_::_{duration} hours_" : ["{duration} uur","{duration} uur"], @@ -168,7 +214,14 @@ "To configure appointments, add your email address in personal settings." : "Om afspraken te configureren, voeg je e-mailadres toe in persoonlijke instellingen.", "Public – shown on the profile page" : "Openbaar – zichtbaar op de profielpagina", "Private – only accessible via secret link" : "Privé – alleen toegankelijk via geheime link", + "Appointment schedule saved" : "Afspraakschema opgeslagen", + "Create appointment schedule" : "Maak afspraakschema", + "Edit appointment schedule" : "Bewerk afspraakschema", + "Update" : "Bijwerken", + "Appointment name" : "Afspraak benaming", "Location" : "Locatie", + "Create a Talk room" : "Maak een Talk ruimte", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Een unieke link wordt gegenereerd voor elke geboekte afspraak en verzonden via een bevestigingsemail.", "Description" : "Omschrijving", "Visibility" : "Zichtbaarheid", "Duration" : "Duur", @@ -186,23 +239,27 @@ "Friday" : "vrijdag", "Saturday" : "zaterdag", "Sunday" : "zondag", + "Weekdays" : "Weekdagen", "Add time before and after the event" : "Voeg tijd voor en na afspraak toe", "Before the event" : "Voor de afspraak", "After the event" : "Na de afspraak", "Planning restrictions" : "Planningsbeperkingen", "Minimum time before next available slot" : "Minimale tijd voor volgend beschikbaar tijdslot", "Max slots per day" : "Max tijdsloten per dag", - "Create appointment" : "Creëer afspraak", - "Edit appointment" : "Bewerk afspraak", - "Save" : "Opslaan", - "Update" : "Bijwerken", + "Limit how far in the future appointments can be booked" : "Beperk hoe in de toekomst afspraken toegevoerd kunnen worden", + "It seems a rate limit has been reached. Please try again later." : "Het lijkt erop dat een limiet bereikt is. Probeer het later nog eens a.u.b.", + "Please confirm your reservation" : "Gelieve jouw reservatie te bevestigen.", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "We hebben je een e-mail met details verzonden. Bevestig je afspraak met de link in de e-mail. Je kunt deze pagina sluiten.", "Your name" : "Je naam", "Your email address" : "Je e-mailadres", "Please share anything that will help prepare for our meeting" : "Deel alsjeblieft alles wat kan helpen in de voorbereiding van de afspraak", "Could not book the appointment. Please try again later or contact the organizer." : "Kon afspraak niet boeken. Probeer later opnieuw of neem contact op met de organisator.", - "Book the appointment" : "Boek de afspraak", - "Reminder" : "Herinnering", + "Back" : "Terug", + "Book appointment" : "Boek afspraak", + "Create a new conversation" : "Maak een nieuw gesprek", + "Select conversation" : "Selecteer een gesprek", + "on" : "op", + "at" : "om", "before at" : "ervoor om", "Notification" : "Melding", "Email" : "Email", @@ -213,105 +270,134 @@ "Edit time" : "Bewerk tijd", "Save time" : "Bewaar tijd", "Remove reminder" : "Verwijder herinnering", - "on" : "op", - "at" : "om", - "+ Add reminder" : "+ Toevoegen herinnering", "Add reminder" : "Voeg herinnering toe", - "_second_::_seconds_" : ["seconde","seconden"], - "_minute_::_minutes_" : ["minuut","minuten"], - "_hour_::_hours_" : ["uur","uren"], - "_day_::_days_" : ["dag","dagen"], - "_week_::_weeks_" : ["week","weken"], + "seconds" : "seconden", + "minutes" : "minuten", + "hours" : "uur", + "days" : "dagen", + "weeks" : "weken", + "Choose a file to add as attachment" : "Kies een bestand om als bijlage toe te voegen", + "Choose a file to share as a link" : "Kies een bestand om als link te delen", + "Attachment {name} already exist!" : "Bijlage {name} bestaat al!", + "Could not upload attachment(s)" : "Kon geen bijlage(n) uploaden", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Je gaat naar {host}. Wil je doorgaan? Link: {link}", + "Proceed" : "Doorgaan", + "No attachments" : "Geen bijlagen", + "Add from Files" : "Toevoegen uit bestanden", + "Upload from device" : "Uploaden vanaf apparaat", + "Delete file" : "Verwijder bestand", + "Confirmation" : "Bevestiging", + "_{count} attachment_::_{count} attachments_" : ["{count} bijlagen","{count} bijlagen"], "Suggested" : "Aanbevolen", "Available" : "Beschikbaar", - "Not available" : "Niet beschikbaar", - "Checking availability" : "Beschikbaarheid controleren", "Invitation accepted" : "Uitnodiging geaccepteerd", + "Accepted {organizerName}'s invitation" : "Uitnodiging van {organizerName} aanvaard", + "Participation marked as tentative" : "Deelname gemarkeerd als voorlopig", + "Invitation is delegated" : "Uitnodiging is gedelegeerd", + "Not available" : "Niet beschikbaar", "Invitation declined" : "Uitnodiging geweigerd", - "Invitation sent" : "Uitnodiging verstuurd", - "Availability of attendees, resources and rooms" : "Beschikbaarheid van aanwezigen, objecten en ruimtes", + "Declined {organizerName}'s invitation" : "Uitnodiging van {organizerName} geweigerd", + "Awaiting response" : "Wachten op antwoord", + "Checking availability" : "Beschikbaarheid controleren", + "Has not responded to {organizerName}'s invitation yet" : "Er is nog niet gereageerd op de uitnodiging van {organizerName}.", + "chairperson" : "voorzitter", + "required participant" : "vereiste deelnemer", + "non-participant" : "geen-deelnemer", + "optional participant" : "optionele deelnemer", "{organizer} (organizer)" : "{organizer} (organizer)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Beschikbaarheid van aanwezigen, objecten en ruimtes", + "Suggestion accepted" : "Voorstel geaccepteerd", + "Legend" : "Legenda", + "Out of office" : "Niet op kantoor", + "Attendees:" : "Deelnemers:", + "Done" : "Klaar", + "Search room" : "Zoek ruimte", + "Room name" : "Kamernaam", + "Check room availability" : "Beschikbaarheid ruimtes controleren", "Free" : "Vrij", "Busy (tentative)" : "Bezig (voorlopig)", "Busy" : "Bezet", - "Out of office" : "Niet op kantoor", "Unknown" : "Onbekend", + "Find a time" : "Vind een tijdstip", + "The invitation has been accepted successfully." : "De uitnodiging is succesvol geaccepteerd.", + "Failed to accept the invitation." : "Aanemen van uitnodiging is mislukt", + "The invitation has been declined successfully." : "De uitnodiging is succesvol geweigerd.", + "Failed to decline the invitation." : "Afwijzen van uitnodiging is mislukt", + "Your participation has been marked as tentative." : "Uw deelname is aangeduid als voorlopig.", + "Failed to set the participation status to tentative." : "Niet gelukt om de deelname status op voorlopig in te stellen.", "Accept" : "Accepteren", "Decline" : "Afwijzen", "Tentative" : "Voorlopig", - "The invitation has been accepted successfully." : "De uitnodiging is succesvol geaccepteerd.", - "The invitation has been declined successfully." : "De uitnodiging is succesvol geweigerd.", - "Create Talk room for this event" : "Creëer Talk-ruimte voor deze afspraak", - "Show busy times" : "Toon drukke tijden", "No attendees yet" : "Nog geen deelnemers", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} uitgenodigd, {confirmedCount} bevestigd", + "Successfully appended link to talk room to location." : "Succesvol de link naar de Talk ruimte aan de locatie toegevoegd.", "Successfully appended link to talk room to description." : "Met succes een link naar de gespreksruimte toegevoegd aan de beschrijving.", "Error creating Talk room" : "Fout tijdens aanmaken gespreksruimte", - "Send email" : "Verstuur e-mail", + "Attendees" : "Deelnemers", + "Remove group" : "Groep verwijderen", + "Remove attendee" : "Verwijder genodigde", + "Request reply" : "Vraag antwoord", "Chairperson" : "Voorzitter", "Required participant" : "Vereiste deelnemer", "Optional participant" : "Optionele deelnemer", "Non-participant" : "Geen deelnemer", - "Remove attendee" : "Verwijder genodigde", - "Search for emails, users or contacts" : "Zoek naar e-mails, gebruikers of contactpersonen", + "_%n member_::_%n members_" : ["%n leden","1%n leden"], "No match found" : "Geen overeenkomst gevonden", + "Note that members of circles get invited but are not synced yet." : "Bedenk dat deenemers aan cirkels uitgenodigd, maar niet gesynchroniseerd worden.", + "Note that members of contact groups get invited but are not synced yet." : "Bedenk dat deenemers van contactgroepen uitgenodigd, maar niet gesynchroniseerd worden.", "(organizer)" : "(organisator)", + "Make {label} the organizer" : "Maak {label} de organisator", + "Make {label} the organizer and attend" : "Maak {label} de organisator en neem deel", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Om uitnodigingen te versturen en antwoorden te behandelen, [linkopen]voeg je e-mailadres toe in persoonlijke instellingen[linkclose].", "Remove color" : "Verwijderen kleur", "Event title" : "Afspraaknaam", - "All day" : "Hele dag", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Het lukt niet om de gehele-dag instelling aan te passen voor afspraken die onderdeel zijn van een herhaalde-set.", - "from {startDate}" : "vanaf {startDate}", - "from {startDate} at {startTime}" : "vanaf {startDate} om {startTime}", - "to {endDate}" : "tot {endDate}", - "to {endDate} at {endTime}" : "tot {endDate} om {endTime}", + "From" : "Van", + "To" : "Naar", "Repeat" : "Herhaling", - "End repeat" : "Beëindig herhalen", - "Select to end repeat" : "Selecteer om herhaling te beëindigen", + "_time_::_times_" : ["keer","keer"], "never" : "geen", "on date" : "op datum", "after" : "na", - "_time_::_times_" : ["keer","keer"], + "End repeat" : "Beëindig herhalen", + "Select to end repeat" : "Selecteer om herhaling te beëindigen", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Deze afspraak is een uitzondering van een herhaalde-set. Je kunt hieraan geen herhalingsregel toevoegen.", "first" : "eerste", - "third" : "derde", - "fourth" : "vierde", - "fifth" : "vijfde", - "second to last" : "op 2 na laatste", - "last" : "laatste", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Wijzigingen op de herhaling zal alleen worden toegepast op deze en toekomstige afspraken.", "Repeat every" : "Herhaal elke", "By day of the month" : "Op dag van de maand", "On the" : "Op de", + "_day_::_days_" : ["dag","dagen"], + "_week_::_weeks_" : ["week","weken"], "_month_::_months_" : ["maand","maanden"], "_year_::_years_" : ["jaar","jaren"], "weekday" : "weekdag", "weekend day" : "weekend dag", - "No recurrence" : "Geen herhaling", + "Does not repeat" : "Niet herhalen", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "De herhaal instelling van deze afspraak wordt niet volledig ondersteund door Nextcloud. Als je de herhaal instellingen wijzigt, gaan bepaalde herhalingen mogelijk verloren.", - "Suggestions" : "Suggesties", "No rooms or resources yet" : "Nog geen kamers of bronnen", + "Resources" : "Bronnen", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} plaats","{seatingCapacity} plaatsen"], "Add resource" : "Voeg resource toe", "Has a projector" : "Heeft een projector", "Has a whiteboard" : "Heeft een whiteboard", "Wheelchair accessible" : "Rolstoel toegangelijk", "Remove resource" : "Verwijder bron", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} plaats","{seatingCapacity} plaatsen"], - "Projector" : "Projector", - "Whiteboard" : "Whiteboard", "Search for resources or rooms" : "Zoeken naar bronnen of kamers", "available" : "beschikbaar", "unavailable" : "niet beschikbaar", + "Show all rooms" : "Toon alle ruimtes", + "Projector" : "Projector", + "Whiteboard" : "Whiteboard", "Room type" : "Kamer type", "Any" : "Alle", "Minimum seating capacity" : "Minimale zit capaciteit", - "More" : "Meer", - "Update this occurrence" : "Update deze afspraak", - "Update this and all future" : "Update deze en toekomstige", + "More details" : "Meer details", + "Update this and all future" : "Deze en toekomstige afspraken bijwerken", + "Update this occurrence" : "Deze afspraak bijwerken", "Public calendar does not exist" : "Publieke agenda bestaat niet", "Maybe the share was deleted or has expired?" : "Mogelijk is het gedeelde item verwijderd of verlopen?", - "Please select a time zone:" : "Selecteer een tijdzone:", - "Pick a time" : "Kies een tijd", - "Pick a date" : "Kies een datum", "from {formattedDate}" : "van {formattedDate}", "to {formattedDate}" : "tot {formattedDate}", "on {formattedDate}" : "op {formattedDate}", @@ -321,9 +407,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} om {formattedTime}", "Please enter a valid date" : "Geef een geldige datum op", "Please enter a valid date and time" : "Geef een geldige datum en tijdstip op", + "Select a time zone" : "Selecteer een tijdzone", + "Please select a time zone:" : "Selecteer een tijdzone:", + "Pick a time" : "Kies een tijd", + "Pick a date" : "Kies een datum", "Type to search time zone" : "Type om tijdzone te zoeken", "Global" : "Globaal", - "Select date" : "Selecteer datum", + "Holidays in {region}" : "Vakanties in {regio}", + "An error occurred, unable to read public calendars." : "Er is een fout opgetreden, kan openbare agenda's niet lezen.", + "An error occurred, unable to subscribe to calendar." : "Er is een fout opgetreden, kan niet abonneren op de agenda.", + "Public holiday calendars" : "Openbare vakantie kalenders", + "Public calendars" : "Openbare agenda's", + "No valid public calendars configured" : "Geen juiste openbare agenda's ingesteld", + "Speak to the server administrator to resolve this issue." : "Vraag je beheerder om dit probleem op te lossen.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Openbare feestdagenkalenders worden verstrekt door Thunderbird. Kalendergegevens worden gedownload van {website}.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Deze openbare agenda's zijn voorgesteld door de beheerder van de server. Agandagegevens worden gedownload van de respectievelijke website.", + "By {authors}" : "Door {authors}", + "Subscribed" : "Geabonneerd", + "Subscribe" : "Abonneren", + "Could not fetch slots" : "Kon slots niet ophalen", + "Select a date" : "Selecteer een datum", "Select slot" : "Selecteer tijdslot", "No slots available" : "Geen tijdsloten beschikbaar", "The slot for your appointment has been confirmed" : "Het tijdslot van je afspraak is bevestigd", @@ -340,21 +443,19 @@ "Personal" : "Persoonlijk", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "De automatisch gedetecteerde tijdzone is UTC.\nDit komt waarschijnlijk door beveiligingsmaatregelen van je webbrowser. Stel de tijdzone handmatig in bij de agenda-instellingen.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Je ingestelde tijdzone ({timezoneId}) werd niet gevonden. Er wordt teruggevallen op UTC.\nWijzig je tijdzone in instellingen en meld het incident.", - "No more events today" : "Geen activiteiten meer vandaag", - "No upcoming events" : "Geen aanstaande activiteiten", - "Create a new event" : "Maak een nieuwe activiteit", - "[Today]" : "[Vandaag]", - "[Tomorrow]" : "[Morgen]", - "[Yesterday]" : "[Gisteren]", - "[Last] dddd" : "[Last] dddd", + "Edit event" : "Bewerk gebeurtenis", "Event does not exist" : "Activiteit bestaat niet", + "Duplicate" : "Duplicaat", "Delete this occurrence" : "Verwijder deze afspraak", "Delete this and all future" : "Verwijder deze en toekomstige", - "Details" : "Details", - "Attendees" : "Deelnemers", - "Resources" : "Bronnen", + "All day" : "Hele dag", + "Managing shared access" : "Beheren van gedeelde toegang", + "Deny access" : "Weiger toegang", + "Invite" : "Uitnodigen", + "_User requires access to your file_::_Users require access to your file_" : ["Gebruikers hebben toegang nodig tot uw bestand","Gebruikers hebben toegang nodig tot uw bestand"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Bijlagen die gedeelde toegang vereisen","Bijlagen die gedeelde toegang vereisen"], + "Untitled event" : "Afspraken zonder naam", "Close" : "Sluiten", - "Show more details" : "Toon meer details", "Subscribe to {name}" : "Abonneren op {name}", "Export {name}" : "Exporteer {name}", "Anniversary" : "Verjaardag", @@ -384,7 +485,6 @@ "on {time}" : "om {time}", "on {time} ({timezoneId})" : "om {time} ({timezoneId})", "Week {number} of {year}" : "Week {number} van {year}", - "Does not repeat" : "Niet herhalen", "Daily" : "Dagelijks", "Weekly" : "Wekelijks", "Monthly" : "Maandelijks", @@ -396,24 +496,24 @@ "_on {weekday}_::_on {weekdays}_" : ["op {weekday}","op {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["op dag {dayOfMonthList}","op de dagen {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "op de {ordinalNumber} {byDaySet}", - "in {monthNames}" : "in {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} op de {ordinalNumber} {byDaySet}", "until {untilDate}" : "tot {untilDate}", "_%n time_::_%n times_" : ["%n keer","%n keer"], - "Untitled event" : "Afspraken zonder naam", + "second" : "tweede", + "third" : "derde", + "fourth" : "vierde", + "fifth" : "vijfde", + "second to last" : "op 2 na laatste", + "last" : "laatste", "Untitled task" : "Naamloze taak", "Please ask your administrator to enable the Tasks App." : "Vraag je beheerder om de Taken App te installeren.", - "Prev" : "Vorig", - "Next" : "Volg.", - "Prev year" : "Vorig jaar", - "Next year" : "Volgend jaar", - "Year" : "Jaar", "W" : "W", "%n more" : "+%n meer", "No events to display" : "Geen activiteiten meer te tonen", "_+%n more_::_+%n more_" : ["+%n meer","+%n meer"], "No events" : "Geen activiteiten", "Create a new event or change the visible time-range" : "Maak een nieuwe activiteit of wijzig de zichtbare tijdsperiode", + "Failed to save event" : "Opslaan van gebeurtenis mislukt", "It might have been deleted, or there was a typo in a link" : "Het zou kunnen verwijderd zijn, of er stond een typfout in de link.", "It might have been deleted, or there was a typo in the link" : "Het zou kunnen verwijderd zijn, of er stond een typfout in de link.", "Meeting room" : "Meetingroom", @@ -426,7 +526,6 @@ "When shared hide this event" : "Wanneer gedeeld, verberg deze afspraak", "The visibility of this event in shared calendars." : "De zichtbaarheid van deze afspraak in gedeelde agenda's.", "Add a location" : "Een locatie toevoegen", - "Add a description" : "Voeg een omschrijving toe", "Status" : "Status", "Confirmed" : "Bevestigd", "Canceled" : "Geannuleerd", @@ -439,135 +538,21 @@ "Add this as a new category" : "Voeg dit toe als een nieuwe categorie", "Custom color" : "Kleur op maat", "Special color of this event. Overrides the calendar-color." : "Bijzondere kleur van deze afspraak. Overschrijft de agenda kleur.", - "Chat room for event" : "Spreekkamer voor afspraak", + "Error while sharing file" : "Fout bij delen bestand", + "Error while sharing file with user" : "Fout bij het delen van het bestand met de gebruiker", + "Attachment {fileName} already exists!" : "Bijlage {fileName} bestaat al!", + "An error occurred during getting file information" : "Er is een fout opgetreden tijdens het ophalen van bestandsinformatie.", + "An error occurred, unable to delete the calendar." : "Er is een fout opgetreden waardoor de agenda niet kan worden verwijderd.", "Imported {filename}" : "Geïmporteerd {filename}", - "Meditation" : "Meditatie", - "Relaxing" : "Relaxen", - "Relax" : "Relax", - "Break" : "Pauze", - "Commute" : "Woon-werk", - "Commuting" : "Woon-werk", - "Shuttle" : "Shuttle", - "Invoice" : "Factuur", - "Finance" : "Financieel", - "Bank" : "Bank", - "Money" : "Geld", - "Wedding" : "Bruiloft", - "Dog" : "Hond", - "Concert" : "Concert", - "Festival" : "Festival", - "Theater" : "Theater", - "Theatre" : "Theater", - "Presentation" : "Presentatie", - "Talk" : "Talk", - "Speech" : "Speech", - "Deadline" : "Deadline", - "Submission" : "Aanlevering", - "Reporting" : "Rapportage", - "Camping" : "Camping", - "Camp" : "Kamp", - "Election" : "Verkiezing", - "Voting" : "Stemming", - "Vote" : "Stemmen", - "Barbecue" : "Barbecue", - "Barbeque" : "Barbeque", - "Garden" : "Tuin", - "Farm" : "Boerderij", - "Movie" : "Film", - "Cinema" : "Bioscoop", - "Graduation" : "Uitreiking", - "Brainstorm" : "Brainstorm", - "Review" : "Voorbeeld", - "Audit" : "Audit", - "Inspection" : "Inspectie", - "Proofreading" : "Proofreading", - "Baseball" : "Baseball", - "Meet" : "Afspraak", - "Planning" : "Planning", - "Pointing" : "Wijzend naar", - "Retrospective" : "Terugblikkend", - "Office" : "Kantoor", - "Contributor week" : "Bijdrager week", - "Mail" : "E-mail", - "Soccer" : "Voetbal", - "Football" : "Voetballen", - "Gaming" : "Gaming", - "Drive" : "Rijdend", - "Driving" : "Rijden", - "Bicycle" : "Fiets", - "Cycle" : "Fietsen", - "Cycling" : "Fietsen", - "Biking" : "Fietsen", - "Bike" : "Fiets", - "Podcast" : "Podcast", - "Basketball" : "Basketball", - "Fishing" : "Vissen", - "Hiking" : "Hiking", - "Hike" : "Hike", - "Art" : "Kunst", - "Exhibition" : "Tentoonstelling", - "Museum" : "Museum", - "Pilates" : "Pilates", - "Park" : "Park", - "Walk" : "Wandelen", - "Studying" : "Studeren", - "Doctor" : "Dokter", - "Health" : "Gezondheid", - "Dentist" : "Tandarts", - "Hospital" : "Ziekenhuis", - "Interview" : "Interview", - "Training" : "Training", - "Practice" : "Praktijk", - "Sports" : "Sport", - "Exercise" : "Oefenen", - "Work out" : "Trainen", - "Working out" : "Trainen", - "Gym" : "Turnles", - "Barber" : "Kapper", - "Haircut" : "Kapper", - "Hairdresser" : "Kapper", - "Exam" : "Examen", - "Written test" : "Schrifteleijke overhoring", - "Oral test" : "Mondelinge overhoring", - "Working" : "Werk", - "New Years Eve" : "Oudejaarsavond", - "NYE" : "Oud en nieuw", - "Fireworks" : "Vuurwerk", - "Running" : "Hardlopen", - "Go for a run" : "Een eindje gaan lopen", - "Marathon" : "Marathon", - "Video-conference" : "Video conference", - "Conference-call" : "Conference call", - "Video-call" : "Videogesprek", - "Video-chat" : "Video chat", - "Video-meeting" : "Video vergadering", - "Call" : "Gesprek", - "Calling" : "Bellen", - "Christmas" : "Kerst", - "Conference" : "Conferentie", - "Pizza" : "Pizza", - "Travelling" : "Reizen", - "Trip" : "Reis", - "Journey" : "Reis", - "Collaborate" : "Samenwerken", - "Pair" : "Paar", - "Lecture" : "Lezing", - "Seminar" : "Seminarie", - "Teaching" : "Lesgeven", - "Photograph" : "Foto", - "Party" : "Party", - "Celebration" : "Viering", - "Celebrate" : "Vieren", - "Birthday" : "Verjaardag", - "Shopping" : "Winkelen", - "Groceries" : "Boodschappen", - "Skate" : "Skate", - "Skateboard" : "Skateboard", - "Wine tasting" : "Wijnproeverij", - "Golf" : "Golf", - "Dinner" : "Diner", - "Lunch" : "Lunch", + "This is an event reminder." : "Dit is een herinnering aan een evenement.", "Appointment not found" : "Afspraak niet gevonden", - "User not found" : "Gebruiker niet gevonden" + "User not found" : "Gebruiker niet gevonden", + "Reminder" : "Herinnering", + "+ Add reminder" : "+ Toevoegen herinnering", + "Select automatic slot" : "Selecteer automatisch tijdsblok", + "with" : "met", + "Available times:" : "Beschikbare tijden:", + "Suggestions" : "Suggesties", + "Details" : "Details" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/nn_NO.js b/l10n/nn_NO.js index e9d8e531a46fcbb727899296bfbe18278e9f8ece..a194610acf1d748410aae7fef23f2e1563aa9c3a 100644 --- a/l10n/nn_NO.js +++ b/l10n/nn_NO.js @@ -6,28 +6,30 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Me vil sei ifrå om at %shar lagt ut kalenderen »%s«.", "Open »%s«" : "Opna »%s«", "Cheers!" : "Tudelu!", - "Prepare for %s" : "Klargjer for %s", "Calendar" : "Kalender", - "New event" : "Ny hending", + "Prepare for %s" : "Klargjer for %s", "Today" : "I dag", "Day" : "Dag", "Week" : "Veke", "Month" : "Månad", + "Year" : "År", "Copy link" : "Kopier lenkje", "Edit" : "Rediger", "Delete" : "Slett", - "Export" : "Eksporter", - "Share link" : "Del lenkje", - "can edit" : "kan endra", "New calendar" : "Ny kalender", + "Export" : "Eksporter", + "Empty trash bin" : "Tøm søppel korg", "Name" : "Namn", "Deleted" : "Sletta", "Restore" : "Gjenopprett", "Delete permanently" : "Slett for godt", - "Empty trash bin" : "Tøm søppel korg", + "Share link" : "Del lenkje", + "can edit" : "kan endra", + "Save" : "Lagre", "Cancel" : "Avbryt", "List view" : "Liste visning", "Actions" : "Handlingar", + "Update" : "Oppdater", "Location" : "Stad", "Description" : "Skildring", "to" : "til", @@ -39,28 +41,25 @@ OC.L10N.register( "Friday" : "Fredag", "Saturday" : "Laurdag", "Sunday" : "Søndag", - "Save" : "Lagre", - "Update" : "Oppdater", "Your email address" : "Di epost-adresse", "Email" : "E-post", + "days" : "dagar", + "Delete file" : "Slett fil", "Unknown" : "Ukjend", "Tentative" : "Førebels", - "Send email" : "Send e-post", + "Attendees" : "Deltakarar", "Repeat" : "Gjenta", "never" : "aldri", "after" : "etter", - "last" : "siste", "Room type" : "Romtype", - "More" : "Meir", "Global" : "Global", "Personal" : "Personleg", - "Details" : "Detaljar", - "Attendees" : "Deltakarar", + "Edit event" : "Rediger hending", "Close" : "Lukk", "Daily" : "Kvar dag", "Weekly" : "Kvar veke", - "Next" : "Neste", - "Year" : "År", + "second" : "andre", + "last" : "siste", "Meeting room" : "Møterom", "Other" : "Anna", "When shared show full event" : "Når delt, vis heile hendinga", @@ -68,8 +67,6 @@ OC.L10N.register( "When shared hide this event" : "Når delt, gøym denne hendinga", "Status" : "Status", "Confirmed" : "Stadfesta", - "Talk" : "Prat", - "Mail" : "Post", - "Birthday" : "Bursdag" + "Details" : "Detaljar" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/nn_NO.json b/l10n/nn_NO.json index f79fdeb6f35a6f58e75108ba789f5b1e535aac83..67809bd30328077828947c3a713e95f6cc3744fc 100644 --- a/l10n/nn_NO.json +++ b/l10n/nn_NO.json @@ -4,28 +4,30 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Me vil sei ifrå om at %shar lagt ut kalenderen »%s«.", "Open »%s«" : "Opna »%s«", "Cheers!" : "Tudelu!", - "Prepare for %s" : "Klargjer for %s", "Calendar" : "Kalender", - "New event" : "Ny hending", + "Prepare for %s" : "Klargjer for %s", "Today" : "I dag", "Day" : "Dag", "Week" : "Veke", "Month" : "Månad", + "Year" : "År", "Copy link" : "Kopier lenkje", "Edit" : "Rediger", "Delete" : "Slett", - "Export" : "Eksporter", - "Share link" : "Del lenkje", - "can edit" : "kan endra", "New calendar" : "Ny kalender", + "Export" : "Eksporter", + "Empty trash bin" : "Tøm søppel korg", "Name" : "Namn", "Deleted" : "Sletta", "Restore" : "Gjenopprett", "Delete permanently" : "Slett for godt", - "Empty trash bin" : "Tøm søppel korg", + "Share link" : "Del lenkje", + "can edit" : "kan endra", + "Save" : "Lagre", "Cancel" : "Avbryt", "List view" : "Liste visning", "Actions" : "Handlingar", + "Update" : "Oppdater", "Location" : "Stad", "Description" : "Skildring", "to" : "til", @@ -37,28 +39,25 @@ "Friday" : "Fredag", "Saturday" : "Laurdag", "Sunday" : "Søndag", - "Save" : "Lagre", - "Update" : "Oppdater", "Your email address" : "Di epost-adresse", "Email" : "E-post", + "days" : "dagar", + "Delete file" : "Slett fil", "Unknown" : "Ukjend", "Tentative" : "Førebels", - "Send email" : "Send e-post", + "Attendees" : "Deltakarar", "Repeat" : "Gjenta", "never" : "aldri", "after" : "etter", - "last" : "siste", "Room type" : "Romtype", - "More" : "Meir", "Global" : "Global", "Personal" : "Personleg", - "Details" : "Detaljar", - "Attendees" : "Deltakarar", + "Edit event" : "Rediger hending", "Close" : "Lukk", "Daily" : "Kvar dag", "Weekly" : "Kvar veke", - "Next" : "Neste", - "Year" : "År", + "second" : "andre", + "last" : "siste", "Meeting room" : "Møterom", "Other" : "Anna", "When shared show full event" : "Når delt, vis heile hendinga", @@ -66,8 +65,6 @@ "When shared hide this event" : "Når delt, gøym denne hendinga", "Status" : "Status", "Confirmed" : "Stadfesta", - "Talk" : "Prat", - "Mail" : "Post", - "Birthday" : "Bursdag" + "Details" : "Detaljar" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/oc.js b/l10n/oc.js index a8fc92198350066620615675089b8e04d925db56..5f0f07241046b2b42e544f23878cde8f1324a583 100644 --- a/l10n/oc.js +++ b/l10n/oc.js @@ -5,12 +5,12 @@ OC.L10N.register( "Open »%s«" : "Dobrir « %s »", "Cheers!" : "A lèu !", "Upcoming events" : "Eveniments venents", + "Calendar" : "Calendièr", "Appointments" : "Rendetz-vos", "Confirm" : "Confirmar", + "Description:" : "Descripcion :", "Date:" : "Data :", "Where:" : "Ont :", - "Description:" : "Descripcion :", - "Calendar" : "Calendièr", "A Calendar app for Nextcloud" : "Una aplicacion de calendièr per Nextcloud", "Previous day" : "Jorn passat", "Previous week" : "Setmana passada", @@ -18,53 +18,52 @@ OC.L10N.register( "Next day" : "Jorn seguent", "Next week" : "Setmana seguenta", "Next month" : "Mes seguent", - "New event" : "Eveniment novèl", "Today" : "Uèi", "Day" : "Jorn", "Week" : "Aquesta setmana", "Month" : "Mes", + "Year" : "Annada", "List" : "Tièra", "Preview" : "Apercebut", "Copy link" : "Copiar lo ligam", "Edit" : "Modificar", "Delete" : "Suprimir", - "Add new" : "Apondre novèl", "Untitled calendar" : "Calendièr sens nom", - "Edit name" : "Modificar lo nom", - "Saving name …" : "Enregistrament del nom …", - "Edit color" : "Modificar la color", - "Saving color …" : "Enregistrament de la color …", - "Copy private link" : "Copiar lo ligam privat", - "Export" : "Exportar", - "Share link" : "Partejar lo ligam", - "Publish calendar" : "Publicar lo calendièr", - "Copy public link" : "Copiar lo ligam public", - "Copied link" : "Ligam copiat", - "Copied code" : "Còdi copiat", - "Could not copy code" : "Se poguèt pas copiar lo còdi", - "can edit" : "pòt modificar", - "+ New calendar" : "+ Calendièr novèl", + "Calendars" : "Calendièrs", + "Add new" : "Apondre novèl", "New calendar" : "Calendièr novèl", "Name for new calendar" : "Nom del calendièr novèl", "Creating calendar …" : "Creacion del calendièr…", + "Copied link" : "Ligam copiat", + "Export" : "Exportar", "Name" : "Nom", "Deleted" : "Suprimit", "Restore" : "Restaurar", "Delete permanently" : "Suprimir definitivament", + "Hidden" : "Amagat", + "Share link" : "Partejar lo ligam", + "Copy public link" : "Copiar lo ligam public", + "Copied code" : "Còdi copiat", + "Could not copy code" : "Se poguèt pas copiar lo còdi", + "Delete share link" : "Suprimir lo ligam de partatge", + "Deleting share link …" : "Supression del ligam de partatge …", + "can edit" : "pòt modificar", + "Save" : "Salvar", "Import calendars" : "Importar de calendièrs", "Filename" : "Nom de fichièr", "Cancel" : "Anullar", "_Import calendar_::_Import calendars_" : ["Importar un calendièr","Importar de calendièrs"], "Automatic" : "Automatic", - "or" : "o", "Navigation" : "Navegacion", "Views" : "Vistas", "Day view" : "Mostrar un jorn", "Week view" : "Monstrar una setmana", "Month view" : "Monstrar un mes", "Actions" : "Accions", + "or" : "o", "Show weekends" : "Monstrar las dimenjadas", "0 minutes" : "0 minuta", + "Update" : "Metre a jorn", "Location" : "Emplaçament", "Description" : "Descripcion", "Visibility" : "Visibilitat", @@ -78,72 +77,67 @@ OC.L10N.register( "Friday" : "Divendres", "Saturday" : "Dissabte", "Sunday" : "Dimenge", - "Save" : "Salvar", - "Update" : "Metre a jorn", "Your name" : "Vòstre nom", "Your email address" : "Vòstra adreça electronica", - "Reminder" : "Recòrd", + "Create a new conversation" : "Crear una conversacion novèla", + "Select conversation" : "Seleccionar una conversacion", + "on" : "lo", + "at" : "a", "Notification" : "Notificacion", "Email" : "Adreça corrièl", "Audio notification" : "Notificacion àudio", "Other notification" : "Autras notificacions", "Edit time" : "Modificar l’ora", "Remove reminder" : "Suprimir lo rapèl", - "on" : "lo", - "at" : "a", - "+ Add reminder" : "+ Apondre un rapèl", - "_second_::_seconds_" : ["segonda","segondas"], - "_minute_::_minutes_" : ["minuta","minutas"], - "_hour_::_hours_" : ["ora","oras"], - "_day_::_days_" : ["jorn","jorns"], - "_week_::_weeks_" : ["setmana","setmanas"], + "seconds" : "segondas", + "minutes" : "minutas", + "hours" : "oras", + "days" : "jorns", + "weeks" : "setmanas", + "Choose a file to add as attachment" : "Causissètz un fichièr de jónher al messatge", + "Delete file" : "Suprimir fichièr", "Available" : "Disponible", + "Out of office" : "Fòra del burèu", + "Room name" : "Nom de la sala", "Free" : "Liure", "Busy (tentative)" : "Ocupat (provisòri)", "Busy" : "Ocupat", - "Out of office" : "Fòra del burèu", "Unknown" : "Desconegut", "Accept" : "Acceptar", "Decline" : "Declinar", "Tentative" : "Provisòri", - "Send email" : "Enviar email", + "Attendees" : "Convidats", + "Remove group" : "Suprimir lo grop", + "Remove color" : "Suprimir la color", "Event title" : "Títol de l’eveniment", - "All day" : "Tota la jornada", + "From" : "De", "Repeat" : "Repetir", + "_time_::_times_" : ["còp","còps"], "never" : "pas jamai", "after" : "aprèp", - "_time_::_times_" : ["còp","còps"], "first" : "primièr", - "third" : "tresen", - "fourth" : "quatren", - "fifth" : "cinquen", - "last" : "darrièr", + "_day_::_days_" : ["jorn","jorns"], + "_week_::_weeks_" : ["setmana","setmanas"], "_month_::_months_" : ["mes","mese"], "_year_::_years_" : ["annada","annadas"], "weekday" : "dimenjada", "weekend day" : "jorn de la setmana", - "No recurrence" : "Cap d’ocurréncia", - "Suggestions" : "Suggestions", "Add resource" : "Apondre ressorsa", "available" : "disponible", "unavailable" : "indisponible", "Room type" : "Tipe de sala", "Any" : "Quina que siá", - "More" : "Mai", - "Pick a time" : "Causir una ora", - "Pick a date" : "Causir una data", "from {formattedDate}" : "a partir de {formattedDate}", "to {formattedDate}" : "cap a {formattedDate}", + "Pick a time" : "Causir una ora", + "Pick a date" : "Causir una data", "Type to search time zone" : "Picar per cercar un fus orari", "Global" : "Global", + "Subscribe" : "S'abonar", "Personal" : "Personal", - "Create a new event" : "Crear un eveniment novèl", - "[Today]" : "[Uèi]", - "[Tomorrow]" : "[Deman]", - "[Yesterday]" : "[Ièr]", - "[Last] dddd" : "dddd [passat]", - "Details" : "Detalhs", - "Attendees" : "Convidats", + "Edit event" : "Editar un eveniment", + "All day" : "Tota la jornada", + "Untitled event" : "Eveniment sens nom", "Close" : "Tampar", "Anniversary" : "Anniversari", "Appointment" : "Rendetz-vos", @@ -162,66 +156,24 @@ OC.L10N.register( "_Every %n month_::_Every %n months_" : ["Cada %n mes","Cada %n meses"], "_Every %n year_::_Every %n years_" : ["Cada %n an","Cada %n ans"], "_%n time_::_%n times_" : ["%n còp","%n còps"], - "Untitled event" : "Eveniment sens nom", + "second" : "segonda", + "third" : "tresen", + "fourth" : "quatren", + "fifth" : "cinquen", + "last" : "darrièr", "Untitled task" : "Prètzfach sens nom", - "Next" : "Seguent", - "Year" : "Annada", "Other" : "Autre", "Add a location" : "Apondre un lòc", - "Add a description" : "Apondre una descripcion", "Status" : "Estat", "Confirmed" : "Confirmat", "Canceled" : "Anullat", "Categories" : "Categorias", "Custom color" : "Color personalizada", - "Commuting" : "En comunicacion", - "Invoice" : "Factura", - "Finance" : "Finança", - "Bank" : "Banca", - "Money" : "Moneda", - "Wedding" : "Maridatge", - "Dog" : "Can", - "Concert" : "Concèrt", - "Festival" : "Festenal", - "Theater" : "Teatre", - "Theatre" : "Teatre", - "Presentation" : "Presentacion", - "Talk" : "Talk", - "Speech" : "Discutida", - "Election" : "Eleccion", - "Voting" : "Vòte", - "Vote" : "Vòte", - "Garden" : "Òrt", - "Farm" : "Bòria", - "Movie" : "Film", - "Cinema" : "Cinèma", - "Graduation" : "Remesa dels diplòmas", - "Brainstorm" : "Pluèja d’idèa", - "Audit" : "Audit", - "Inspection" : "Inspeccion", - "Mail" : "Mail", - "Gaming" : "Vidèo-jòc", - "Bicycle" : "Bicicleta", - "Bike" : "Bicicleta", - "Fishing" : "Pesca", - "Hiking" : "Escalada", - "Art" : "Arts", - "Museum" : "Musèu", - "Studying" : "Estudis", - "Doctor" : "Mètge", - "Health" : "Santat", - "Dentist" : "Dentista", - "Training" : "Entraïnament", - "Sports" : "Espòrt", - "Written test" : "Test escrich", - "Oral test" : "Test oral", - "Christmas" : "Nadal", - "Conference" : "Conferéncia", - "Pizza" : "Pizza", - "Travelling" : "Viatge", - "Party" : "Fèsta", - "Birthday" : "Data de naissença", - "Shopping" : "Crompas", - "User not found" : "Utilizaire pas trobat" + "Error while sharing file" : "Error pendent lo partiment del fichièr", + "User not found" : "Utilizaire pas trobat", + "Reminder" : "Recòrd", + "+ Add reminder" : "+ Apondre un rapèl", + "Suggestions" : "Suggestions", + "Details" : "Detalhs" }, "nplurals=2; plural=(n > 1);"); diff --git a/l10n/oc.json b/l10n/oc.json index 4c00bfa98c3a52f558e25f53279aa76884fdfacc..50534d95b5560cdac5f5cc66db343d3a3e313837 100644 --- a/l10n/oc.json +++ b/l10n/oc.json @@ -3,12 +3,12 @@ "Open »%s«" : "Dobrir « %s »", "Cheers!" : "A lèu !", "Upcoming events" : "Eveniments venents", + "Calendar" : "Calendièr", "Appointments" : "Rendetz-vos", "Confirm" : "Confirmar", + "Description:" : "Descripcion :", "Date:" : "Data :", "Where:" : "Ont :", - "Description:" : "Descripcion :", - "Calendar" : "Calendièr", "A Calendar app for Nextcloud" : "Una aplicacion de calendièr per Nextcloud", "Previous day" : "Jorn passat", "Previous week" : "Setmana passada", @@ -16,53 +16,52 @@ "Next day" : "Jorn seguent", "Next week" : "Setmana seguenta", "Next month" : "Mes seguent", - "New event" : "Eveniment novèl", "Today" : "Uèi", "Day" : "Jorn", "Week" : "Aquesta setmana", "Month" : "Mes", + "Year" : "Annada", "List" : "Tièra", "Preview" : "Apercebut", "Copy link" : "Copiar lo ligam", "Edit" : "Modificar", "Delete" : "Suprimir", - "Add new" : "Apondre novèl", "Untitled calendar" : "Calendièr sens nom", - "Edit name" : "Modificar lo nom", - "Saving name …" : "Enregistrament del nom …", - "Edit color" : "Modificar la color", - "Saving color …" : "Enregistrament de la color …", - "Copy private link" : "Copiar lo ligam privat", - "Export" : "Exportar", - "Share link" : "Partejar lo ligam", - "Publish calendar" : "Publicar lo calendièr", - "Copy public link" : "Copiar lo ligam public", - "Copied link" : "Ligam copiat", - "Copied code" : "Còdi copiat", - "Could not copy code" : "Se poguèt pas copiar lo còdi", - "can edit" : "pòt modificar", - "+ New calendar" : "+ Calendièr novèl", + "Calendars" : "Calendièrs", + "Add new" : "Apondre novèl", "New calendar" : "Calendièr novèl", "Name for new calendar" : "Nom del calendièr novèl", "Creating calendar …" : "Creacion del calendièr…", + "Copied link" : "Ligam copiat", + "Export" : "Exportar", "Name" : "Nom", "Deleted" : "Suprimit", "Restore" : "Restaurar", "Delete permanently" : "Suprimir definitivament", + "Hidden" : "Amagat", + "Share link" : "Partejar lo ligam", + "Copy public link" : "Copiar lo ligam public", + "Copied code" : "Còdi copiat", + "Could not copy code" : "Se poguèt pas copiar lo còdi", + "Delete share link" : "Suprimir lo ligam de partatge", + "Deleting share link …" : "Supression del ligam de partatge …", + "can edit" : "pòt modificar", + "Save" : "Salvar", "Import calendars" : "Importar de calendièrs", "Filename" : "Nom de fichièr", "Cancel" : "Anullar", "_Import calendar_::_Import calendars_" : ["Importar un calendièr","Importar de calendièrs"], "Automatic" : "Automatic", - "or" : "o", "Navigation" : "Navegacion", "Views" : "Vistas", "Day view" : "Mostrar un jorn", "Week view" : "Monstrar una setmana", "Month view" : "Monstrar un mes", "Actions" : "Accions", + "or" : "o", "Show weekends" : "Monstrar las dimenjadas", "0 minutes" : "0 minuta", + "Update" : "Metre a jorn", "Location" : "Emplaçament", "Description" : "Descripcion", "Visibility" : "Visibilitat", @@ -76,72 +75,67 @@ "Friday" : "Divendres", "Saturday" : "Dissabte", "Sunday" : "Dimenge", - "Save" : "Salvar", - "Update" : "Metre a jorn", "Your name" : "Vòstre nom", "Your email address" : "Vòstra adreça electronica", - "Reminder" : "Recòrd", + "Create a new conversation" : "Crear una conversacion novèla", + "Select conversation" : "Seleccionar una conversacion", + "on" : "lo", + "at" : "a", "Notification" : "Notificacion", "Email" : "Adreça corrièl", "Audio notification" : "Notificacion àudio", "Other notification" : "Autras notificacions", "Edit time" : "Modificar l’ora", "Remove reminder" : "Suprimir lo rapèl", - "on" : "lo", - "at" : "a", - "+ Add reminder" : "+ Apondre un rapèl", - "_second_::_seconds_" : ["segonda","segondas"], - "_minute_::_minutes_" : ["minuta","minutas"], - "_hour_::_hours_" : ["ora","oras"], - "_day_::_days_" : ["jorn","jorns"], - "_week_::_weeks_" : ["setmana","setmanas"], + "seconds" : "segondas", + "minutes" : "minutas", + "hours" : "oras", + "days" : "jorns", + "weeks" : "setmanas", + "Choose a file to add as attachment" : "Causissètz un fichièr de jónher al messatge", + "Delete file" : "Suprimir fichièr", "Available" : "Disponible", + "Out of office" : "Fòra del burèu", + "Room name" : "Nom de la sala", "Free" : "Liure", "Busy (tentative)" : "Ocupat (provisòri)", "Busy" : "Ocupat", - "Out of office" : "Fòra del burèu", "Unknown" : "Desconegut", "Accept" : "Acceptar", "Decline" : "Declinar", "Tentative" : "Provisòri", - "Send email" : "Enviar email", + "Attendees" : "Convidats", + "Remove group" : "Suprimir lo grop", + "Remove color" : "Suprimir la color", "Event title" : "Títol de l’eveniment", - "All day" : "Tota la jornada", + "From" : "De", "Repeat" : "Repetir", + "_time_::_times_" : ["còp","còps"], "never" : "pas jamai", "after" : "aprèp", - "_time_::_times_" : ["còp","còps"], "first" : "primièr", - "third" : "tresen", - "fourth" : "quatren", - "fifth" : "cinquen", - "last" : "darrièr", + "_day_::_days_" : ["jorn","jorns"], + "_week_::_weeks_" : ["setmana","setmanas"], "_month_::_months_" : ["mes","mese"], "_year_::_years_" : ["annada","annadas"], "weekday" : "dimenjada", "weekend day" : "jorn de la setmana", - "No recurrence" : "Cap d’ocurréncia", - "Suggestions" : "Suggestions", "Add resource" : "Apondre ressorsa", "available" : "disponible", "unavailable" : "indisponible", "Room type" : "Tipe de sala", "Any" : "Quina que siá", - "More" : "Mai", - "Pick a time" : "Causir una ora", - "Pick a date" : "Causir una data", "from {formattedDate}" : "a partir de {formattedDate}", "to {formattedDate}" : "cap a {formattedDate}", + "Pick a time" : "Causir una ora", + "Pick a date" : "Causir una data", "Type to search time zone" : "Picar per cercar un fus orari", "Global" : "Global", + "Subscribe" : "S'abonar", "Personal" : "Personal", - "Create a new event" : "Crear un eveniment novèl", - "[Today]" : "[Uèi]", - "[Tomorrow]" : "[Deman]", - "[Yesterday]" : "[Ièr]", - "[Last] dddd" : "dddd [passat]", - "Details" : "Detalhs", - "Attendees" : "Convidats", + "Edit event" : "Editar un eveniment", + "All day" : "Tota la jornada", + "Untitled event" : "Eveniment sens nom", "Close" : "Tampar", "Anniversary" : "Anniversari", "Appointment" : "Rendetz-vos", @@ -160,66 +154,24 @@ "_Every %n month_::_Every %n months_" : ["Cada %n mes","Cada %n meses"], "_Every %n year_::_Every %n years_" : ["Cada %n an","Cada %n ans"], "_%n time_::_%n times_" : ["%n còp","%n còps"], - "Untitled event" : "Eveniment sens nom", + "second" : "segonda", + "third" : "tresen", + "fourth" : "quatren", + "fifth" : "cinquen", + "last" : "darrièr", "Untitled task" : "Prètzfach sens nom", - "Next" : "Seguent", - "Year" : "Annada", "Other" : "Autre", "Add a location" : "Apondre un lòc", - "Add a description" : "Apondre una descripcion", "Status" : "Estat", "Confirmed" : "Confirmat", "Canceled" : "Anullat", "Categories" : "Categorias", "Custom color" : "Color personalizada", - "Commuting" : "En comunicacion", - "Invoice" : "Factura", - "Finance" : "Finança", - "Bank" : "Banca", - "Money" : "Moneda", - "Wedding" : "Maridatge", - "Dog" : "Can", - "Concert" : "Concèrt", - "Festival" : "Festenal", - "Theater" : "Teatre", - "Theatre" : "Teatre", - "Presentation" : "Presentacion", - "Talk" : "Talk", - "Speech" : "Discutida", - "Election" : "Eleccion", - "Voting" : "Vòte", - "Vote" : "Vòte", - "Garden" : "Òrt", - "Farm" : "Bòria", - "Movie" : "Film", - "Cinema" : "Cinèma", - "Graduation" : "Remesa dels diplòmas", - "Brainstorm" : "Pluèja d’idèa", - "Audit" : "Audit", - "Inspection" : "Inspeccion", - "Mail" : "Mail", - "Gaming" : "Vidèo-jòc", - "Bicycle" : "Bicicleta", - "Bike" : "Bicicleta", - "Fishing" : "Pesca", - "Hiking" : "Escalada", - "Art" : "Arts", - "Museum" : "Musèu", - "Studying" : "Estudis", - "Doctor" : "Mètge", - "Health" : "Santat", - "Dentist" : "Dentista", - "Training" : "Entraïnament", - "Sports" : "Espòrt", - "Written test" : "Test escrich", - "Oral test" : "Test oral", - "Christmas" : "Nadal", - "Conference" : "Conferéncia", - "Pizza" : "Pizza", - "Travelling" : "Viatge", - "Party" : "Fèsta", - "Birthday" : "Data de naissença", - "Shopping" : "Crompas", - "User not found" : "Utilizaire pas trobat" + "Error while sharing file" : "Error pendent lo partiment del fichièr", + "User not found" : "Utilizaire pas trobat", + "Reminder" : "Recòrd", + "+ Add reminder" : "+ Apondre un rapèl", + "Suggestions" : "Suggestions", + "Details" : "Detalhs" },"pluralForm" :"nplurals=2; plural=(n > 1);" } \ No newline at end of file diff --git a/l10n/pl.js b/l10n/pl.js index cc386718d7062beb9576a5f75efdfe9f48e76ffa..d76cb847ed51d34b3b4479346922edfb781c46d3 100644 --- a/l10n/pl.js +++ b/l10n/pl.js @@ -1,139 +1,172 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Podany adres e-mail jest za długi", "User-Session unexpectedly expired" : "Sesja użytkownika nieoczekiwanie wygasła", "Provided email-address is not valid" : "Podany adres e-mail jest nieprawidłowy", - "%s has published the calendar »%s«" : "%s opublikował kalendarz »%s«", + "%s has published the calendar »%s«" : "%s publikuje kalendarz »%s«", "Unexpected error sending email. Please contact your administrator." : "Nieoczekiwany błąd podczas wysyłania wiadomości e-mail. Skontaktuj się z administratorem.", "Successfully sent email to %1$s" : "Pomyślnie wysłano wiadomość e-mail do %1$s", "Hello," : "Witaj,", - "We wanted to inform you that %s has published the calendar »%s«." : "Chcieliśmy poinformować, że %s opublikował kalendarz %s.", + "We wanted to inform you that %s has published the calendar »%s«." : "Chcieliśmy poinformować, że %s udostępnia kalendarz %s.", "Open »%s«" : "Otwórz »%s«", "Cheers!" : "Zdrówko!", "Upcoming events" : "Nadchodzące wydarzenia", + "No more events today" : "Nie ma więcej wydarzeń na dzisiaj", + "No upcoming events" : "Brak nadchodzących wydarzeń", + "More events" : "Więcej wydarzeń", + "%1$s with %2$s" : "%1$s przez %2$s", + "Calendar" : "Kalendarz", + "New booking {booking}" : "Mowa rezerwacja {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) rezerwuje spotkanie \"{config_display_name}\" dnia {date_time}.", "Appointments" : "Spotkania", "Schedule appointment \"%s\"" : "Umówione spotkanie \"%s\"", "Schedule an appointment" : "Umów się na spotkanie", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Przygotuj się na %s", "Follow up for %s" : "Obserwuj %s", - "Your appointment \"%s\" needs confirmation" : "Twoje spotkanie \"%s\" wymaga potwierdzenia", - "Dear %s, please confirm your booking" : "Drogi %s, proszę o potwierdzenie rezerwacji", + "Your appointment \"%s\" with %s needs confirmation" : "Twoje spotkanie \"%s\" z %s wymaga potwierdzenia", + "Dear %s, please confirm your booking" : "%s, proszę o potwierdzenie rezerwacji", "Confirm" : "Potwierdź", + "Appointment with:" : "Spotkanie z:", + "Description:" : "Opis:", "This confirmation link expires in %s hours." : "Ten link potwierdzający wygaśnie za %s godzin.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Jeśli mimo wszystko chcesz odwołać spotkanie, skontaktuj się z organizatorem.", - "Appointment:" : "Spotkanie:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Jeśli mimo wszystko chcesz anulować spotkanie, skontaktuj się z organizującą je osobą, odpowiadając na ten e-mail lub odwiedzając jej stronę profilu.", + "Your appointment \"%s\" with %s has been accepted" : "Twoje spotkanie \"%s\" z %s zostało zaakceptowane", + "Dear %s, your booking has been accepted." : "%s, Twoja rezerwacja została zaakceptowana.", + "Appointment for:" : "Spotkanie na:", "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Otrzymasz wiadomość e-mail z linkiem weryfikacyjnym", "Where:" : "Gdzie:", - "Description:" : "Opis:", - "Calendar" : "Kalendarz", + "Comment:" : "Komentarz:", + "You have a new appointment booking \"%s\" from %s" : "Masz nową rezerwację spotkania \"%s\" z %s", + "Dear %s, %s (%s) booked an appointment with you." : "%s, %s (%s) rezerwuje czas na spotkanie z tobą.", "A Calendar app for Nextcloud" : "Aplikacja Kalendarz dla Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aplikacja Kalendarz to interfejs użytkownika CalDAV dla serwera Nextcloud. Z łatwością synchronizuj wydarzenia z różnych urządzeń z Nextcloud i edytuj je online.\n\n* 🚀 **Integracja z innymi aplikacjami Nextcloud!** Obecnie Kontakty - więcej w przyszłości.\n* 🌐 **Wsparcie WebCal!** Chcesz widzieć mecze swojej ulubionej drużyny w swoim kalendarzu? Nie ma problemu!\n* 🙋 **Uczestnicy!** Zapraszaj ludzi na swoje wydarzenia\n* ⌚️ **Wolny/Zajęty!** Zobacz, kiedy Twoi uczestnicy są dostępni\n* ⏰ **Przypomnienia!** Otrzymuj alarmy o wydarzeniach w przeglądarce i e-mailem\n* 🔍 **Szukaj!** Łatwo znajdź swoje wydarzenia\n* ☑️ **Zadania!** Zobacz zadania z terminem bezpośrednio w kalendarzu\n* 🙈 **Nie wymyślamy na nowo koła!** Na podstawie wspaniałej [biblioteki c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) i [fullcalendar](https://github.com/fullcalendar/fullcalendar).", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aplikacja kalendarza dla Nextcloud. Łatwo synchronizuj wydarzenia z różnych urządzeń z Nextcloud i edytuj je online.\n\n* 🚀 **Integracja z innymi aplikacjami Nextcloud, takimi jak Kontakty, Talk, Zadania, Deck i Kręgi.\n* 🌐 **Wsparcie WebCal!** Chcesz zobaczyć dni meczów swojej ulubionej drużyny w kalendarzu? Nie ma problemu! \n* 🙋 **Uczestnicy!** Zapraszaj ludzi na swoje wydarzenia\n* ⌚ **Wolny/zajęty!** Zobacz, kiedy potencjalni uczestnicy są dostępni, aby się spotkać\n* ⏰ **Przypomnienia!** Otrzymuj alarmy o wydarzeniach w przeglądarce i przez e-mail\n* 🔍 **Szukaj!** Znajdź swoje wydarzenia z łatwością\n* ☑️ **Zadania!** Zobacz zadania lub karty Deck z terminem realizacji bezpośrednio w kalendarzu\n* 🔈 **Pokoje rozmów!** Utwórz powiązany pokój rozmów podczas rezerwacji spotkania jednym kliknięciem\n* 📆 **Bookowanie spotkań** Wyślij ludziom link, pozwalający zarezerwować spotkanie z Tobą [za pomocą tej aplikacji] (https://apps.nextcloud.com/apps/appointments)\n* 📎 **Załączniki!** Dodawanie, przesyłanie i przeglądanie załączników do wydarzeń\n* 🙈 **Nie wymyślamy nic od zera** oparte na świetnych bibliotekach [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) i [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Poprzedni dzień", "Previous week" : "Poprzedni tydzień", + "Previous year" : "Poprzedni rok", "Previous month" : "Poprzedni miesiąc", "Next day" : "Następny dzień", "Next week" : "Następny tydzień", + "Next year" : "Następny rok", "Next month" : "Następny miesiąc", - "New event" : "Nowe zdarzenie", + "Create new event" : "Utwórz nowe wydarzenie", + "Event" : "Wydarzenie", "Today" : "Dzisiaj", "Day" : "Dzień", "Week" : "Tydzień", "Month" : "Miesiąc", + "Year" : "Rok", "List" : "Lista", + "Appointment link was copied to clipboard" : "Link do spotkania został skopiowany do schowka", + "Appointment link could not be copied to clipboard" : "Nie udało się skopiować linku do spotkania do schowka", "Preview" : "Podgląd", "Copy link" : "Kopiuj link", "Edit" : "Edytuj", "Delete" : "Usuń", - "Appointment link was copied to clipboard" : "Link do spotkania został skopiowany do schowka", - "Appointment link could not be copied to clipboard" : "Nie udało się skopiować linku do spotkania do schowka", - "Add new" : "Dodaj nowe", - "Untitled calendar" : "Kalendarz bez tytułu", - "Edit name" : "Edytuj nazwę", - "Saving name …" : "Zapisywanie nazwy…", - "Edit color" : "Edytuj kolor", - "Saving color …" : "Zapisywanie koloru…", - "Copy private link" : "Kopiuj link prywatny", - "Export" : "Eksportuj", - "Unshare from me" : "Nie udostępniaj mi", + "Appointment schedules" : "Harmonogramy spotkań", + "Create new" : "Utwórz nowy", "Disable calendar \"{calendar}\"" : "Wyłącz kalendarz \"{calendar}\"", "Disable untitled calendar" : "Wyłącz kalendarz bez tytułu", "Enable calendar \"{calendar}\"" : "Włącz kalendarz \"{calendar}\"", "Enable untitled calendar" : "Włącz kalendarz bez tytułu", "An error occurred, unable to change visibility of the calendar." : "Wystąpił błąd, nie można zmienić widoczności kalendarza.", - "An error occurred, unable to delete the calendar." : "Wystąpił błąd, nie można usunąć kalendarza.", + "Untitled calendar" : "Kalendarz bez tytułu", + "Shared with you by" : "Udostępnione Tobie przez", + "Edit and share calendar" : "Edytuj i udostępnij kalendarz", + "Edit calendar" : "Edytuj kalendarz", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Zatrzymywanie udostępnienia kalendarza za {countdown} sekundę","Zatrzymywanie udostępnienia kalendarza za {countdown} sekundy","Zatrzymywanie udostępnienia kalendarza za {countdown} sekund","Zatrzymywanie udostępnienia kalendarza za {countdown} sekund"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Usuwanie kalendarza za {countdown} sekundę","Usuwanie kalendarza za {countdown} sekundy","Usuwanie kalendarza za {countdown} sekund","Usunięcie kalendarza za {countdown} sekund"], + "An error occurred, unable to create the calendar." : "Wystąpił błąd, nie można utworzyć kalendarza.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Wprowadź poprawny link (zaczynający się od http://, https://, webcal://, lub webcals://)", + "Calendars" : "Kalendarze", + "Add new" : "Dodaj nowe", + "New calendar" : "Nowy kalendarz", + "Name for new calendar" : "Nazwa nowego kalendarza", + "Creating calendar …" : "Tworzenie kalendarza…", + "New calendar with task list" : "Nowy kalendarz z listą zadań", + "New subscription from link (read-only)" : "Nowa subskrypcja z linku (tylko do odczytu)", + "Creating subscription …" : "Tworzenie subskrypcji…", + "Add public holiday calendar" : "Dodaj kalendarz świąt państwowych", + "Add custom public calendar" : "Dodaj personalizowany publiczny kalendarz", "Calendar link copied to clipboard." : "Link do kalendarza skopiowany do schowka.", "Calendar link could not be copied to clipboard." : "Nie można skopiować linku kalendarza do schowka.", - "An error occurred, unable to rename the calendar." : "Wystąpił błąd, nie można zmienić nazwy kalendarza.", - "An error occurred, unable to change the calendar's color." : "Wystąpił błąd, nie można zmienić koloru kalendarza.", - "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Zatrzymywanie udostępnienia kalendarza za {countdown} sekundę","Zatrzymywanie udostępnienia kalendarza za {countdown} sekundy","Zatrzymywanie udostępnienia kalendarza za {countdown} sekund","Zatrzymywanie udostępnienia kalendarza za {countdown} sekund"], - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Usuwanie kalendarza za {countdown} sekundę","Usuwanie kalendarza za {countdown} sekundy","Usuwanie kalendarza za {countdown} sekund","Usuwanie kalendarza za {countdown} sekund"], + "Copy subscription link" : "Kopiuj link do subskrypcji", + "Copying link …" : "Kopiowanie linku…", + "Copied link" : "Skopiowano link", + "Could not copy link" : "Nie można skopiować linku", + "Export" : "Eksportuj", + "Untitled item" : "Pozycja bez tytułu", + "Unknown calendar" : "Kalendarz nieznany", + "Could not load deleted calendars and objects" : "Nie udało się wczytać usuniętych kalendarzy i obiektów", + "Could not delete calendar or event" : "Nie udało się usunąć kalendarza lub wydarzenia", + "Could not restore calendar or event" : "Nie udało się przywrócić kalendarza lub wydarzenia", + "Do you really want to empty the trash bin?" : "Czy na pewno chcesz opróżnić kosz?", + "Empty trash bin" : "Opróżnij kosz", + "Trash bin" : "Kosz", + "Loading deleted items." : "Wczytuję usunięte pozycje.", + "You do not have any deleted items." : "Nie masz żadnych usuniętych pozycji.", + "Name" : "Nazwa", + "Deleted" : "Usunięto", + "Restore" : "Przywróć", + "Delete permanently" : "Usuń trwale", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Pozycje w koszu są usuwane po {numDays} dniu","Pozycje w koszu są usuwane po {numDays} dniach","Pozycje w koszu są usuwane po {numDays} dniach","Pozycje w koszu są usuwane po {numDays} dniach"], + "Could not update calendar order." : "Nie można zaktualizować kolejności kalendarza.", + "Shared calendars" : "Udostępnione kalendarze", + "Deck" : "Tablica", + "Hidden" : "Ukryty", + "Internal link" : "Link wewnętrzny", + "A private link that can be used with external clients" : "Prywatny link, którego można używać z klientami zewnętrznymi", + "Copy internal link" : "Kopiuj link wewnętrzny", + "An error occurred, unable to publish calendar." : "Wystąpił błąd, nie można opublikować kalendarza.", + "An error occurred, unable to send email." : "Wystąpił błąd, nie można wysłać wiadomości e-mail.", + "Embed code copied to clipboard." : "Kod do wstawienia został skopiowany do schowka.", + "Embed code could not be copied to clipboard." : "Nie można skopiować do schowka kodu do wstawienia.", + "Unpublishing calendar failed" : "Nie można cofnąć publikacji kalendarza", "Share link" : "Udostępnij link", - "Publish calendar" : "Opublikuj kalendarz", - "Publishing calendar" : "Publikowanie kalendarza", "Copy public link" : "Kopiuj link publiczny", "Send link to calendar via email" : "Wyślij e-mailem link do kalendarza", "Enter one address" : "Wpisz jeden z adresów", "Sending email …" : "Wysyłanie e-maila…", - "Copy subscription link" : "Kopiuj link do subskrypcji", - "Copying link …" : "Kopiowanie linku…", - "Copied link" : "Skopiowano link", - "Could not copy link" : "Nie można skopiować linku", "Copy embedding code" : "Kopiuj kod osadzania", "Copying code …" : "Kopiowanie kodu…", "Copied code" : "Skopiowano kod", "Could not copy code" : "Nie można skopiować kodu", "Delete share link" : "Usuń link udostępnienia", "Deleting share link …" : "Usuwanie linku udostępnienia…", - "An error occurred, unable to publish calendar." : "Wystąpił błąd, nie można opublikować kalendarza.", - "An error occurred, unable to send email." : "Wystąpił błąd, nie można wysłać wiadomości e-mail.", - "Embed code copied to clipboard." : "Kod do wstawienia został skopiowany do schowka.", - "Embed code could not be copied to clipboard." : "Nie można skopiować do schowka kodu do wstawienia.", - "Unpublishing calendar failed" : "Nie można cofnąć publikacji kalendarza", - "Share with users or groups" : "Udostępnij użytkownikom lub grupom", - "No users or groups" : "Brak użytkowników lub grup", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Zespół)", + "An error occurred while unsharing the calendar." : "Wystąpił błąd podczas wyłączania udostępniania kalendarza.", + "An error occurred, unable to change the permission of the share." : "Wystąpił błąd, nie można zmienić uprawnień do udostępnienia.", "can edit" : "może edytować", "Unshare with {displayName}" : "Zatrzymaj udostępnianie z {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Wystąpił błąd, nie można zmienić cofnięcia udostępnienia kalendarza.", - "An error occurred, unable to change the permission of the share." : "Wystąpił błąd, nie można zmienić uprawnień do udostępnienia.", - "+ New calendar" : "+ Nowy kalendarz", - "New calendar" : "Nowy kalendarz", - "Name for new calendar" : "Nazwa nowego kalendarza", - "Creating calendar …" : "Tworzenie kalendarza…", - "New calendar with task list" : "Nowy kalendarz z listą zadań", - "New subscription from link (read-only)" : "Nowa subskrypcja z linku (tylko do odczytu)", - "Creating subscription …" : "Tworzenie subskrypcji…", - "An error occurred, unable to create the calendar." : "Wystąpił błąd, nie można utworzyć kalendarza.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Wprowadź poprawny link (zaczynający się od http://, https://, webcal://, lub webcals://)", - "Trash bin" : "Kosz", - "Loading deleted elements." : "Wczytuję usunięte elementy.", - "You do not have any deleted elements." : "Nie masz żadnych usuniętych elementów.", - "Name" : "Nazwa", - "Deleted" : "Usunięto", - "Restore" : "Przywróć", - "Delete permanently" : "Usuń trwale", - "Empty trash bin" : "Opróżnij kosz", - "Untitled element" : "Element bez tytułu", - "Unknown calendar" : "Kalendarz nieznany", - "Could not load deleted calendars and objects" : "Nie udało się wczytać usuniętych kalendarzy i obiektów", - "Could not restore calendar or event" : "Nie udało się przywrócić kalendarza lub wydarzenia", - "Do you really want to empty the trash bin?" : "Czy na pewno chcesz opróżnić kosz?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Elementy w koszu są usuwane po {numDays} dniu","Elementy w koszu są usuwane po {numDays} dniach","Elementy w koszu są usuwane po {numDays} dniach","Elementy w koszu są usuwane po {numDays} dniach"], - "Could not update calendar order." : "Nie można zaktualizować kolejności kalendarza.", + "Share with users or groups" : "Udostępnij użytkownikom lub grupom", + "No users or groups" : "Brak użytkowników lub grup", + "Failed to save calendar name and color" : "Nie udało się zapisać nazwy i koloru kalendarza", + "Calendar name …" : "Nazwa kalendarza…", + "Never show me as busy (set this calendar to transparent)" : "Nigdy nie pokazuj mnie jako zajętego (ustaw ten kalendarz jako przezroczysty)", + "Share calendar" : "Udostępnij kalendarz", + "Unshare from me" : "Nie udostępniaj mi", + "Save" : "Zapisz", "Import calendars" : "Importuj kalendarze", "Please select a calendar to import into …" : "Wybierz kalendarz do zaimportowania do…", "Filename" : "Nazwa pliku", "Calendar to import into" : "Kalendarz do zaimportowania", "Cancel" : "Anuluj", "_Import calendar_::_Import calendars_" : ["Importuj kalendarz","Importuj kalendarze","Importuj kalendarze","Importuj kalendarze"], + "Select the default location for attachments" : "Wybierz domyślną lokalizację załączników", + "Pick" : "Wybierz", + "Invalid location selected" : "Wybrano nieprawidłową lokalizację", + "Attachments folder successfully saved." : "Pomyślnie zapisano katalog załączników.", + "Error on saving attachments folder." : "Błąd podczas zapisywania katalogu załączników.", + "Default attachments location" : "Domyślna lokalizacja załączników", "{filename} could not be parsed" : "Nie można przeanalizować {filename}", "No valid files found, aborting import" : "Nie znaleziono prawidłowych plików, przerywanie importu", - "Import partially failed. Imported {accepted} out of {total}." : "Import częściowo nieudany. Zaimportowano {accepted} z {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Pomyślnie zaimportowano %n wydarzenie","Pomyślnie zaimportowano %n wydarzenia","Pomyślnie zaimportowano %n wydarzeń","Pomyślnie zaimportowano %n wydarzeń"], + "Import partially failed. Imported {accepted} out of {total}." : "Import częściowo nieudany. Zaimportowano {accepted} z {total}.", "Automatic" : "Automatycznie", "Automatic ({detected})" : "Automatycznie ({detected})", "New setting was not saved successfully." : "Nowe ustawienie nie zostało pomyślnie zapisane.", - "Shortcut overview" : "Przegląd skrótu", - "or" : "lub", "Navigation" : "Nawigacja", "Previous period" : "Poprzedni okres", "Next period" : "Następny okres", @@ -141,6 +174,7 @@ OC.L10N.register( "Day view" : "Widok dnia", "Week view" : "Widok tygodnia", "Month view" : "Widok miesiąca", + "Year view" : "Widok roku", "List view" : "Widok listy", "Actions" : "Akcje", "Create event" : "Utwórz wydarzenie", @@ -150,24 +184,29 @@ OC.L10N.register( "Save edited event" : "Zapisz edytowane wydarzenie", "Delete edited event" : "Usuń edytowane wydarzenie", "Duplicate event" : "Zduplikowane wydarzenie", - "Enable birthday calendar" : "Włącz kalendarz urodzinowy", + "Shortcut overview" : "Przegląd skrótu", + "or" : "lub", + "Calendar settings" : "Ustawienia Kalendarza", + "At event start" : "Na początku wydarzenia", + "No reminder" : "Bez przypomnienia", + "Failed to save default calendar" : "Nie udało się zapisać domyślnego kalendarza", + "CalDAV link copied to clipboard." : "Link CalDAV skopiowany do schowka.", + "CalDAV link could not be copied to clipboard." : "Nie można skopiować linku CalDAV do schowka.", + "Enable birthday calendar" : "Włącz kalendarz urodzin", "Show tasks in calendar" : "Pokaż zadania w kalendarzu", "Enable simplified editor" : "Włącz uproszczony edytor", - "Limit visible events per view" : "Ogranicz widoczne wydarzenia na widok", + "Limit the number of events displayed in the monthly view" : "Ogranicz liczbę zdarzeń wyświetlanych w widoku miesięcznym", "Show weekends" : "Pokaż weekendy", "Show week numbers" : "Pokaż numery tygodni", "Time increments" : "Przyrosty czasu", + "Default calendar for incoming invitations" : "Domyślny kalendarz dla przychodzących zaproszeń", "Default reminder" : "Przypomnienie domyślne", "Copy primary CalDAV address" : "Kopiuj główny adres CalDAV", "Copy iOS/macOS CalDAV address" : "Kopiuj adres CalDAV dla iOS/macOS", "Personal availability settings" : "Osobiste ustawienia dostępności", "Show keyboard shortcuts" : "Pokaż skróty klawiaturowe", - "Calendar settings" : "Ustawienia Kalendarza", - "No reminder" : "Bez przypomnienia", - "CalDAV link copied to clipboard." : "Link CalDAV skopiowany do schowka.", - "CalDAV link could not be copied to clipboard." : "Nie można skopiować linku CalDAV do schowka.", - "Appointment was created successfully" : "Spotkanie zostało pomyślnie utworzone", - "Appointment was updated successfully" : "Spotkanie zostało pomyślnie zaktualizowane", + "Appointment schedule successfully created" : "Harmonogram spotkań został pomyślnie utworzony", + "Appointment schedule successfully updated" : "Harmonogram spotkań został pomyślnie zaktualizowany", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuta","{duration} minuty","{duration} minut","{duration} minut"], "0 minutes" : "0 minut", "_{duration} hour_::_{duration} hours_" : ["{duration} godzina","{duration} godziny","{duration} godzin","{duration} godzin"], @@ -178,7 +217,14 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Aby skonfigurować spotkania, dodaj swój adres e-mail w ustawieniach osobistych.", "Public – shown on the profile page" : "Publiczny – wyświetlane na stronie profilu", "Private – only accessible via secret link" : "Prywatny – dostępne tylko przez tajny link", + "Appointment schedule saved" : "Harmonogram spotkań zapisany", + "Create appointment schedule" : "Utwórz harmonogram spotkań", + "Edit appointment schedule" : "Edytuj harmonogram spotkań", + "Update" : "Aktualizuj", + "Appointment name" : "Nazwa spotkania", "Location" : "Lokalizacja", + "Create a Talk room" : "Stwórz pokój do rozmów", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Dla każdej zarezerwowanej wizyty zostanie wygenerowany unikalny link, który zostanie wysłany w wiadomości e-mail z potwierdzeniem", "Description" : "Opis", "Visibility" : "Widoczne", "Duration" : "Czas trwania", @@ -196,6 +242,7 @@ OC.L10N.register( "Friday" : "Piątek", "Saturday" : "Sobota", "Sunday" : "Niedziela", + "Weekdays" : "Dni powszednie", "Add time before and after the event" : "Dodaj czas przed i po wydarzeniu", "Before the event" : "Przed wydarzeniem", "After the event" : "Po wydarzeniu", @@ -203,18 +250,29 @@ OC.L10N.register( "Minimum time before next available slot" : "Minimalny czas przed następnym dostępnym terminem", "Max slots per day" : "Maksymalna liczba terminów na dzień", "Limit how far in the future appointments can be booked" : "Ogranicz, jak daleko w przyszłości można rezerwować spotkania", - "Create appointment" : "Utwórz spotkanie", - "Edit appointment" : "Edytuj spotkanie", - "Save" : "Zapisz", - "Update" : "Aktualizuj", + "It seems a rate limit has been reached. Please try again later." : "Wygląda na to, że osiągnięto limit zapytań. Spróbuj ponownie później.", "Please confirm your reservation" : "Proszę o potwierdzenie rezerwacji", - "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Wysłaliśmy Tobie wiadomość e-mail ze szczegółami. Potwierdź wizytę, korzystając z linku w e-mailu. Możesz teraz zamknąć tę stronę.", - "Your name" : "Twoja nazwa", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Wysłaliśmy do Ciebie wiadomość e-mail ze szczegółami. Potwierdź wizytę, korzystając z linku w e-mailu. Możesz teraz zamknąć tę stronę.", + "Your name" : "Jak się nazywasz", "Your email address" : "Twój adres e-mail", "Please share anything that will help prepare for our meeting" : "Udostępnij coś, co pomoże przygotować się do spotkania", "Could not book the appointment. Please try again later or contact the organizer." : "Nie udało się zarezerwować spotkania. Spróbuj ponownie później lub skontaktuj się z organizatorem.", - "Book the appointment" : "Zarezerwuj spotkanie", - "Reminder" : "Przypomnienie", + "Back" : "Poprzednia", + "Book appointment" : "Zarezerwuj spotkanie", + "Error fetching Talk conversations." : "Błąd w pobieraniu rozmów z Talk.", + "Conversation does not have a valid URL." : "Konwersacja nie ma poprawnego adresu URL.", + "Successfully added Talk conversation link to location." : "Pomyślnie dodano lik rozmowy Talk do lokalizacji.", + "Successfully added Talk conversation link to description." : "Pomyślnie dodano link rozmowy Talk do do opisu.", + "Failed to apply Talk room." : "Nie udało się zastosować pokoju Talk.", + "Error creating Talk conversation" : "Błąd przy tworzeniu rozmowy Talk", + "Select a Talk Room" : "Wybierz Pokój Talk.", + "Add Talk conversation" : "Dodaj rozmowę Talk", + "Fetching Talk rooms…" : "Pobieram listę pokojów Talk...", + "No Talk room available" : "Brak dostępnych pokojów Talk", + "Create a new conversation" : "Utwórz nową rozmowę", + "Select conversation" : "Wybierz rozmowę", + "on" : "o", + "at" : "o", "before at" : "przed", "Notification" : "Powiadomienie", "Email" : "E-mail", @@ -225,114 +283,143 @@ OC.L10N.register( "Edit time" : "Edytuj czas", "Save time" : "Zapisz czas", "Remove reminder" : "Usuń przypomnienie", - "on" : "o", - "at" : "o", - "+ Add reminder" : "+ Dodaj przypomnienie", "Add reminder" : "Dodaj przypomnienie", - "_second_::_seconds_" : ["sekunda","sekundy","sekund","sekundy"], - "_minute_::_minutes_" : ["minuta","minuty","minut","minuty"], - "_hour_::_hours_" : ["godzina","godziny","godzin","godziny"], - "_day_::_days_" : ["dzień","dni","dni","dni"], - "_week_::_weeks_" : ["tydzień","tygodnie","tygodni","tygodnie"], - "Suggested" : "Zasugerował", - "Available" : "Dostępny", - "Not available" : "Niedostępny", - "Checking availability" : "Sprawdzanie dostępności", + "seconds" : "sekund", + "minutes" : "minut", + "hours" : "godzin", + "days" : "dniach", + "weeks" : "tygodni", + "Choose a file to add as attachment" : "Wybierz plik, aby dodać jako załącznik", + "Choose a file to share as a link" : "Wybierz plik do udostępnienia przez link", + "Attachment {name} already exist!" : "Załącznik {name} już istnieje!", + "Could not upload attachment(s)" : "Nie można przesłać załącznika(ów)", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Zamierzasz pobrać plik. Prosimy sprawdź jego nazwę przed pobraniem. Czy na pewno kontynuować?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Zamierzasz przejść do {host}. Czy na pewno chcesz kontynuować? Link: {link}", + "Proceed" : "Kontynuuj", + "No attachments" : "Brak załączników", + "Add from Files" : "Dodaj z plików", + "Upload from device" : "Wyślij z urządzenia", + "Delete file" : "Usuń plik", + "Confirmation" : "Potwierdzenie", + "_{count} attachment_::_{count} attachments_" : ["{count} załącznik","{count} załączniki","{count} załączników","{count} załączników"], + "Suggested" : "Sugeruje", + "Available" : "Dostępność", "Invitation accepted" : "Zaproszenie przyjęte", "Accepted {organizerName}'s invitation" : "Zaakceptowano zaproszenie od {organizerName}", + "Participation marked as tentative" : "Uczestnictwo oznaczone jako niepewne", + "Invitation is delegated" : "Zaproszenie oddelegowane", + "Not available" : "Brak dostępności", "Invitation declined" : "Zaproszenie odrzucone", "Declined {organizerName}'s invitation" : "Odrzucono zaproszenie od {organizerName}", - "Invitation is delegated" : "Zaproszenie jest oddelegowane", - "Participation marked as tentative" : "Uczestnictwo oznaczone jako niepewne", - "Invitation sent" : "Zaproszenie wysłane", - "Has not responded to {organizerName}'s invitation yet" : "Nie odpowiedział jeszcze na zaproszenie od {organizerName}", - "Availability of attendees, resources and rooms" : "Dostępność uczestników, zasobów i pokoi", + "Availability will be checked" : "Dostępność zostanie sprawdzona", + "Invitation will be sent" : "Zaproszenie zostanie wysłane", + "Failed to check availability" : "Nie udało się sprawdzić dostępności", + "Failed to deliver invitation" : "Nie udało się dostarczyć zaproszenia", + "Awaiting response" : "Oczekiwanie na odpowiedź", + "Checking availability" : "Sprawdzanie dostępności", + "Has not responded to {organizerName}'s invitation yet" : "Bez odpowiedzi na zaproszenie od {organizerName}", + "chairperson" : "przewodniczy", + "required participant" : "uczestnictwo wymagane", + "non-participant" : "nie uczestniczy", + "optional participant" : "opcjonalne uczestnictwo", "{organizer} (organizer)" : "{organizer} (organizator)", - "Free" : "Wolny", - "Busy (tentative)" : "Zajęty (wstępnie)", - "Busy" : "Zajęty", + "{attendee} ({role})" : "{attendee}({role})", + "Availability of attendees, resources and rooms" : "Dostępność uczestników, zasobów i pokoi", + "Suggestion accepted" : "Sugestia zaakceptowana", + "Legend" : "Legenda", "Out of office" : "Biuro nie funkcjonuje", - "Unknown" : "Nieznany", - "Accept" : "Akceptuj", - "Decline" : "Odrzuć", - "Tentative" : "Niepewne", + "Attendees:" : "Uczestnicy:", + "Done" : "Gotowe", + "Search room" : "Wyszukaj pokój", + "Room name" : "Nazwa pokoju", + "Check room availability" : "Sprawdź dostępność pokoju", + "Free" : "Dostępność", + "Busy (tentative)" : "Brak dostępności (wstępnie)", + "Busy" : "Brak dostępności", + "Unknown" : "Nieznana", + "Find a time" : "Znajdź czas", "The invitation has been accepted successfully." : "Zaproszenie zostało pomyślnie przyjęte.", "Failed to accept the invitation." : "Nie udało się zaakceptować zaproszenia.", "The invitation has been declined successfully." : "Zaproszenie zostało pomyślnie odrzucone.", "Failed to decline the invitation." : "Nie udało się odrzucić zaproszenia.", - "Your participation has been marked as tentative." : "Twoje uczestniczenie zostało oznaczone jako niepewne.", + "Your participation has been marked as tentative." : "Twoje uczestnictwo zostało oznaczone jako niepewne.", "Failed to set the participation status to tentative." : "Nie udało się ustawić statusu uczestnictwa na niepewne.", - "Create Talk room for this event" : "Utwórz pokój w Talku dla tego wydarzenia", - "Show busy times" : "Pokaż zajęte czasy", + "Accept" : "Akceptuj", + "Decline" : "Odrzuć", + "Tentative" : "Niepewne", "No attendees yet" : "Brak uczestników", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount}zaproszony/ch, {confirmedCount}potwierdził/o", + "Please add at least one attendee to use the \"Find a time\" feature." : "Proszę dodaj chociaż jedną osobę mającą uczestniczyć, żeby użyć funkcji \"Znajdź czas\".", + "Successfully appended link to talk room to location." : "Pomyślnie dodano link do pokoju rozmów do lokalizacji.", "Successfully appended link to talk room to description." : "Pomyślnie dołączono do opisu link do pokoju rozmów.", "Error creating Talk room" : "Błąd podczas tworzenia pokoju w Talku", - "Send email" : "Wyślij e-mail", + "Attendees" : "Uczestnicy", + "_%n more guest_::_%n more guests_" : ["%n gość więcej","%n gości więcej","%n gości więcej","%n gości więcej"], + "Remove group" : "Usuń grupę", + "Remove attendee" : "Usuń uczestnika", + "Request reply" : "Poproś o odpowiedź", "Chairperson" : "Przewodniczący", "Required participant" : "Wymagany uczestnik", "Optional participant" : "Opcjonalny uczestnik", "Non-participant" : "Nieuczestniczący", - "Remove attendee" : "Usuń uczestnika", - "Search for emails, users or contacts" : "Szukaj e-maili, użytkowników lub kontaktów", + "_%n member_::_%n members_" : ["%n członek","%n członków","%n członków","%n członków"], + "Search for emails, users, contacts, contact groups or teams" : "Szukaj mejli, użytkowników, kontaktów, grup kontaktów lub zespołów.", "No match found" : "Nie znaleziono pasujących", + "Note that members of circles get invited but are not synced yet." : "Pamiętaj, że członkowie kręgów są zapraszani, ale nie są jeszcze synchronizowani.", + "Note that members of contact groups get invited but are not synced yet." : "Pamiętaj, że członkowie grup kontaktów są zapraszani, ale nie są jeszcze synchronizowani.", "(organizer)" : "(organizator)", + "Make {label} the organizer" : "Mianuj {label} organizatorem", + "Make {label} the organizer and attend" : "Mianuj {label} organizatorem i weź udział", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Aby wysyłać zaproszenia i otrzymywać odpowiedzi, [linkopen]dodaj swój adres e-mail w ustawieniach osobistych[linkclose].", "Remove color" : "Usuń kolor", "Event title" : "Tytuł wydarzenia", - "All day" : "Cały dzień", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Nie można zmodyfikować ustawienia całodziennego dla wydarzeń, które są częścią zestawu cyklicznego.", - "from {startDate}" : "od {startDate}", - "from {startDate} at {startTime}" : "od {startDate} o {startTime}", - "to {endDate}" : "do {endDate}", - "to {endDate} at {endTime}" : "do {endDate} o {endTime}", + "From" : "Od", + "To" : "Do", "Repeat" : "Powtarzaj", - "End repeat" : "Zakończ powtarzanie", - "Select to end repeat" : "Wybierz, aby zakończyć powtarzanie", + "_time_::_times_" : ["raz","razy","razy","razy"], "never" : "nigdy", "on date" : "o czasie", "after" : "po", - "_time_::_times_" : ["raz","razy","razy","razy"], + "End repeat" : "Zakończ powtarzanie", + "Select to end repeat" : "Wybierz, aby zakończyć powtarzanie", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "To wydarzenie stanowi wyjątek powtarzalności zestawu cyklicznego. Nie można do niego dodać reguły powtarzalności.", "first" : "pierwszy", - "third" : "trzeci", - "fourth" : "czwarty", - "fifth" : "piąty", - "second to last" : "przedostatni", - "last" : "ostatni", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Zmiany w regule powtarzalności będą miały zastosowanie tylko do tego i wszystkich przyszłych wydarzeń.", - "Repeat every" : "Powtórz każdy", + "Repeat every" : "Powtórz co", "By day of the month" : "Według dnia miesiąca", "On the" : "Na", + "_day_::_days_" : ["dzień","dni","dni","dni"], + "_week_::_weeks_" : ["tydzień","tygodnie","tygodni","tygodnie"], "_month_::_months_" : ["miesiąc","miesiące","miesięcy","miesiące"], "_year_::_years_" : ["rok","lata","lat","lata"], + "On specific day" : "O konkretnej dacie", "weekday" : "dzień powszedni", "weekend day" : "dzień weekendu", - "No recurrence" : "Brak powtarzalności", + "Does not repeat" : "Nie powtarza się", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Definicja tego wydarzenia nie jest w pełni obsługiwana przez Nextcloud. W przypadku edycji opcji cyklicznej niektóre powtórzenia mogą zostać utracone.", - "Suggestions" : "Propozycje", "No rooms or resources yet" : "Nie ma jeszcze pokoi ani zasobów", + "Resources" : "Zasoby", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} miejsce","{seatingCapacity} miejsca","{seatingCapacity} miejsc","{seatingCapacity} miejsc"], "Add resource" : "Dodaj zasób", "Has a projector" : "Ma projektor", "Has a whiteboard" : "Posiada białą tablicę", "Wheelchair accessible" : "Dostęp dla wózków inwalidzkich", "Remove resource" : "Usuń zasób", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} miejsce","{seatingCapacity} miejsca","{seatingCapacity} miejsc","{seatingCapacity} miejsc"], - "Projector" : "Projektor", - "Whiteboard" : "Biała tablica", "Search for resources or rooms" : "Szukaj zasoby lub pokoje", "available" : "dostępny", "unavailable" : "niedostępny", + "Show all rooms" : "Pokaż wszystkie pokoje", + "Projector" : "Projektor", + "Whiteboard" : "Biała tablica", "Room type" : "Rodzaj pokoju", "Any" : "Dowolny", "Minimum seating capacity" : "Minimalna ilość miejsc", - "More" : "Więcej", - "Update this occurrence" : "Zaktualizuj to wydarzenie", + "More details" : "Więcej szczegółów", "Update this and all future" : "Zaktualizuj to i wszystkie przyszłe", + "Update this occurrence" : "Zaktualizuj to wydarzenie", "Public calendar does not exist" : "Kalendarz publiczny nie istnieje", "Maybe the share was deleted or has expired?" : "Może udostępnienie zostało usunięte lub wygasło?", - "Please select a time zone:" : "Wybierz strefę czasową:", - "Pick a time" : "Wybierz czas", - "Pick a date" : "Wybierz datę", "from {formattedDate}" : "od {formattedDate}", "to {formattedDate}" : "do {formattedDate}", "on {formattedDate}" : "w dniu {formattedDate}", @@ -342,9 +429,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} o {formattedTime}", "Please enter a valid date" : "Podaj prawidłową datę", "Please enter a valid date and time" : "Podaj prawidłową datę i godzinę", + "Select a time zone" : "Wybierz strefę czasową", + "Please select a time zone:" : "Wybierz strefę czasową:", + "Pick a time" : "Wybierz czas", + "Pick a date" : "Wybierz datę", "Type to search time zone" : "Wpisz, aby wyszukać strefę czasową", "Global" : "Globalnie", - "Select date" : "Wybierz datę", + "Holidays in {region}" : "Święta w {region}", + "An error occurred, unable to read public calendars." : "Wystąpił błąd, nie można odczytać publicznych kalendarzy.", + "An error occurred, unable to subscribe to calendar." : "Wystąpił błąd, nie można subskrybować kalendarza.", + "Public holiday calendars" : "Kalendarze świąt państwowych", + "Public calendars" : "Publiczne kalendarze", + "No valid public calendars configured" : "Nie skonfigurowano żadnych prawidłowych kalendarzy publicznych", + "Speak to the server administrator to resolve this issue." : "Poproś administrację serwera o rozwiązanie problemu.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Kalendarze świąt państwowych są dostarczane przez Thunderbirda. Dane kalendarza zostaną pobrane z witryny {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Te publiczne kalendarze są sugerowane przez administrację serwera. Dane kalendarza zostaną pobrane z odpowiedniej strony internetowej.", + "By {authors}" : "Autorstwa {authors}", + "Subscribed" : "Zasubskrybowano", + "Subscribe" : "Subskrybuj", + "Could not fetch slots" : "Nie udało się pobrać przedziałów", + "Select a date" : "Wybierz datę", "Select slot" : "Wybierz przedział czasowy", "No slots available" : "Brak dostępnych terminów", "The slot for your appointment has been confirmed" : "Termin Twojego spotkania został potwierdzony", @@ -361,24 +465,25 @@ OC.L10N.register( "Personal" : "Osobiste", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Automatyczne wykrywanie strefy czasowej określiło Twoją strefę czasową jako UTC.\nNajprawdopodobniej wynika to ze środków bezpieczeństwa przeglądarki internetowej.\nUstaw strefę czasową ręcznie w ustawieniach kalendarza.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Skonfigurowana strefa czasowa ({timezoneId}) nie została znaleziona. Powrót do UTC.\nZmień strefę czasową w ustawieniach i zgłoś ten problem.", - "No more events today" : "Nie ma więcej wydarzeń na dzisiaj", - "No upcoming events" : "Brak nadchodzących wydarzeń", - "Create a new event" : "Utwórz nowe wydarzenie", - "[Today]" : "[Dzisiaj]", - "[Tomorrow]" : "[Jutro]", - "[Yesterday]" : "[Wczoraj]", - "[Last] dddd" : "[Ostatni] dddd", + "Availability of {displayName}" : "Dostępność {displayName}", + "Edit event" : "Edytuj zdarzenie", "Event does not exist" : "Wydarzenie nie istnieje", "Duplicate" : "Zduplikuj", "Delete this occurrence" : "Usuń to wydarzenie", "Delete this and all future" : "Usuń to i wszystkie przyszłe", - "Details" : "Szczegóły", - "Attendees" : "Uczestnicy", - "Resources" : "Zasoby", + "All day" : "Cały dzień", + "Modifications wont get propagated to the organizer and other attendees" : "Zmiany nie zostaną przekazane do osoby organizującej ani innych uczestniczących.", + "Managing shared access" : "Zarządzanie dostępem", + "Deny access" : "Brak dostępu", + "Invite" : "Zaproś", + "_User requires access to your file_::_Users require access to your file_" : ["Użytkownik wymaga dostępu do pliku","Użytkownicy wymagają dostępu do pliku","Użytkownicy wymagają dostępu do pliku","Użytkownicy wymagają dostępu do pliku"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Załącznik wymaga uprawnień do udostępniania","Załączniki wymagają uprawnień do udostępniania","Załączniki wymagają uprawnień do udostępniania","Załączniki wymagają uprawnień do udostępniania"], + "Untitled event" : "Wydarzenie bez tytułu", "Close" : "Zamknij", - "Show more details" : "Pokaż więcej szczegółów", + "Modifications will not get propagated to the organizer and other attendees" : "Zmiany nie zostaną przekazane do osoby organizującej ani innych uczestniczących.", "Subscribe to {name}" : "Subskrybuj dla {name}", - "Export {name}" : "Eksportuj {nazwa}", + "Export {name}" : "Eksportuj {name}", + "Show availability" : "Pokaż dostępność", "Anniversary" : "Rocznica", "Appointment" : "Spotkanie", "Business" : "Biznes", @@ -393,7 +498,7 @@ OC.L10N.register( "Special occasion" : "Specjalna okazja", "Travel" : "Podróż", "Vacation" : "Urlop", - "Midnight on the day the event starts" : "O północy rozpocznie się wydarzenie", + "Midnight on the day the event starts" : "Północ dnia rozpoczęcia wydarzenia", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dzień przed wydarzeniem o {formattedHourMinute}","%n dni przed wydarzeniem o {formattedHourMinute}","%n dni przed wydarzeniem o {formattedHourMinute}","%n dni przed wydarzeniem o {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n tydzień przed wydarzeniem o {formattedHourMinute}","%n tygodnie przed wydarzeniem o {formattedHourMinute}","%n tygodni przed wydarzeniem o {formattedHourMinute}","%n tygodni przed wydarzeniem o {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "w dniu wydarzenia o {formattedHourMinute}", @@ -406,7 +511,6 @@ OC.L10N.register( "on {time}" : "o {time}", "on {time} ({timezoneId})" : "o {time} ({timezoneId})", "Week {number} of {year}" : "Tydzień {number} w {year}", - "Does not repeat" : "Nie powtarza się", "Daily" : "Codziennie", "Weekly" : "Co tydzień", "Monthly" : "Co miesiąc", @@ -418,24 +522,30 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["w {weekdays}","w {weekdays}","w {weekdays}","w {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["w dzień {dayOfMonthList}","w dni {dayOfMonthList}","w dni {dayOfMonthList}","w dni {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "w dniu {ordinalNumber} {byDaySet}", - "in {monthNames}" : "za {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "{dayOfMonthList} w {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "za {monthNames} w dniu {ordinalNumber} {byDaySet}", "until {untilDate}" : "do {untilDate}", "_%n time_::_%n times_" : ["%n raz","%n razy","%n razy","%n razy"], - "Untitled event" : "Wydarzenie bez tytułu", + "second" : "drugi", + "third" : "trzeci", + "fourth" : "czwarty", + "fifth" : "piąty", + "second to last" : "przedostatni", + "last" : "ostatni", "Untitled task" : "Zadanie bez tytułu", - "Please ask your administrator to enable the Tasks App." : "Poproś administratora o włączenie aplikacji Zadania.", - "Prev" : "Poprzedni", - "Next" : "Następny", - "Prev year" : "Poprzedni rok", - "Next year" : "Następny rok", - "Year" : "Rok", + "Please ask your administrator to enable the Tasks App." : "Poproś administrację o włączenie aplikacji Zadania.", + "You are not allowed to edit this event as an attendee." : "Jako osoba uczestnicząca nie możesz edytować tego wydarzenia.", "W" : "T", "%n more" : "%n więcej", "No events to display" : "Brak wydarzeń do wyświetlenia", + "All participants declined" : "Wszystkie zaproszone osoby odmówiły", + "Please confirm your participation" : "Prosimy o potwierdzenie Twojego uczestnictwa", + "You declined this event" : "Zaproszenie zostało przez Ciebie odrzucone", + "Your participation is tentative" : "Uczestnictwo zostało przez Ciebie oznaczone jako niepewne", "_+%n more_::_+%n more_" : ["+%n więcej","+%n więcej","+%n więcej","+%n więcej"], "No events" : "Brak wydarzeń", "Create a new event or change the visible time-range" : "Utwórz nowe wydarzenie lub zmień widoczny zakres czasu", + "Failed to save event" : "Nie udało się zapisać wydarzenia", "It might have been deleted, or there was a typo in a link" : "Mogło zostać usunięte lub w linku była literówka", "It might have been deleted, or there was a typo in the link" : "Mogło zostać usunięte lub w linku była literówka", "Meeting room" : "Pokój spotkań", @@ -448,7 +558,7 @@ OC.L10N.register( "When shared hide this event" : "Gdy udostępniony ukryj to wydarzenie", "The visibility of this event in shared calendars." : "Widoczność tego wydarzenia w udostępnianych kalendarzach.", "Add a location" : "Dodaj lokalizację", - "Add a description" : "Dodaj opis", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Dodaj opis\n\n- Czego dotyczy to spotkanie\n- Punkty do omówienia\n- Co muszą przygotować osoby uczestniczące", "Status" : "Status", "Confirmed" : "Potwierdzone", "Canceled" : "Anulowane", @@ -461,135 +571,23 @@ OC.L10N.register( "Add this as a new category" : "Dodaj to jako nową kategorię", "Custom color" : "Kolor niestandardowy", "Special color of this event. Overrides the calendar-color." : "Specjalny kolor tego wydarzenia. Zastępuje kolor kalendarza.", - "Chat room for event" : "Pokój rozmów dla wydarzenia", + "Error while sharing file" : "Błąd podczas udostępniania pliku", + "Error while sharing file with user" : "Błąd podczas udostępniania pliku użytkownikowi", + "Attachment {fileName} already exists!" : "Załącznik {fileName} już istnieje!", + "An error occurred during getting file information" : "Błąd podczas pobierania informacji o pliku.", + "Talk conversation for event" : "Rozpocznij rozmowę dotyczącą wydarzenia", + "An error occurred, unable to delete the calendar." : "Wystąpił błąd, nie można usunąć kalendarza.", "Imported {filename}" : "Zaimportowano {filename}", - "Meditation" : "Medytacja", - "Relaxing" : "Odprężenie", - "Relax" : "Relaks", - "Break" : "Przerwa", - "Commute" : "Dojazd", - "Commuting" : "Dojeżdżanie", - "Shuttle" : "Transport", - "Invoice" : "Faktura", - "Finance" : "Finanse", - "Bank" : "Bank", - "Money" : "Pieniądze", - "Wedding" : "Ślub", - "Dog" : "Pies", - "Concert" : "Koncert", - "Festival" : "Festiwal", - "Theater" : "Teatr", - "Theatre" : "Kino", - "Presentation" : "Prezentacja", - "Talk" : "Rozmowa", - "Speech" : "Przemówienie", - "Deadline" : "Ostateczny termin", - "Submission" : "Przedłożona praca", - "Reporting" : "Sprawozdanie", - "Camping" : "Kemping", - "Camp" : "Obóz", - "Election" : "Wybory", - "Voting" : "Głosowanie", - "Vote" : "Wyniki głosowania", - "Barbecue" : "Grill", - "Barbeque" : "Przyjęcie", - "Garden" : "Ogród", - "Farm" : "Gospodarstwo rolne", - "Movie" : "Film", - "Cinema" : "Kino", - "Graduation" : "Ukończenie szkoły", - "Brainstorm" : "Burza mózgów", - "Review" : "Przegląd", - "Audit" : "Audyt", - "Inspection" : "Kontrola", - "Proofreading" : "Korekta", - "Baseball" : "Baseball", - "Meet" : "Spotkanie", - "Planning" : "Planowanie", - "Pointing" : "Wskazywanie", - "Retrospective" : "Z mocą wsteczną", - "Office" : "Biuro", - "Contributor week" : "Tydzień współpracownika", - "Mail" : "Poczta", - "Soccer" : "Piłka nożna", - "Football" : "Futbol", - "Gaming" : "Hazard", - "Drive" : "Przejażdżka", - "Driving" : "Podróż", - "Bicycle" : "Rower", - "Cycle" : "Kolarzówka", - "Cycling" : "Rower", - "Biking" : "Jazda rowerem", - "Bike" : "Rower", - "Podcast" : "Pogawędka", - "Basketball" : "Koszykówka", - "Fishing" : "Wędkowanie", - "Hiking" : "Wędrówka", - "Hike" : "Wycieczka", - "Art" : "Sztuka", - "Exhibition" : "Wystawa", - "Museum" : "Muzeum", - "Pilates" : "Pilates", - "Park" : "Park", - "Walk" : "Spacer", - "Studying" : "Studia", - "Doctor" : "Lekarz", - "Health" : "Zdrowie", - "Dentist" : "Dentysta", - "Hospital" : "Szpital", - "Interview" : "Wywiad", - "Training" : "Trening", - "Practice" : "Praktyka", - "Sports" : "Sport", - "Exercise" : "Ćwiczenia", - "Work out" : "Odrabianie", - "Working out" : "Wypracowanie", - "Gym" : "Siłownia", - "Barber" : "Fryzjer", - "Haircut" : "Strzyżenie", - "Hairdresser" : "Fryzjer", - "Exam" : "Egzamin", - "Written test" : "Test pisemny", - "Oral test" : "Test ustny", - "Working" : "Praca", - "New Years Eve" : "Sylwester", - "NYE" : "Nowy Rok", - "Fireworks" : "Fajerwerki", - "Running" : "Bieganie", - "Go for a run" : "Iść pobiegać", - "Marathon" : "Maraton", - "Video-conference" : "Konferencja wideo", - "Conference-call" : "Połączenie konferencyjne", - "Video-call" : "Połączenie wideo", - "Video-chat" : "Rozmowa wideo", - "Video-meeting" : "Spotkanie wideo", - "Call" : "Połącz", - "Calling" : "Zadzwonić", - "Christmas" : "Boże Narodzenie", - "Conference" : "Konferencja", - "Pizza" : "Pizza", - "Travelling" : "Wyjazd", - "Trip" : "Wycieczka", - "Journey" : "Podróż", - "Collaborate" : "Współpraca", - "Pair" : "Para", - "Lecture" : "Wykład", - "Seminar" : "Seminarium", - "Teaching" : "Nauka", - "Photograph" : "Fotografowanie", - "Party" : "Przyjęcie", - "Celebration" : "Uroczystość", - "Celebrate" : "Świętować", - "Birthday" : "Urodziny", - "Shopping" : "Zakupy", - "Groceries" : "Zakupy spożywcze", - "Skate" : "Łyżwy", - "Skateboard" : "Deskorolka", - "Wine tasting" : "Degustacja wina", - "Golf" : "Golf", - "Dinner" : "Obiad", - "Lunch" : "Lunch", + "This is an event reminder." : "Przypomnienie o wydarzeniu.", + "Error while parsing a PROPFIND error" : "Wystąpił błąd podczas analizowania błędu PROPFIND", "Appointment not found" : "Nie znaleziono spotkania", - "User not found" : "Nie znaleziono użytkownika" + "User not found" : "Nie znaleziono użytkownika", + "Reminder" : "Przypomnienie", + "+ Add reminder" : "+ Dodaj przypomnienie", + "Select automatic slot" : "Wybierz pozycję automatycznie", + "with" : "z", + "Available times:" : "Dostępne terminy:", + "Suggestions" : "Propozycje", + "Details" : "Szczegóły" }, "nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);"); diff --git a/l10n/pl.json b/l10n/pl.json index aa091f14c024b7ec8b509d7169b7a47fe0374197..9eb7055dffa19f2ee16a9c93dbd5255ed9f2023b 100644 --- a/l10n/pl.json +++ b/l10n/pl.json @@ -1,137 +1,170 @@ { "translations": { + "Provided email-address is too long" : "Podany adres e-mail jest za długi", "User-Session unexpectedly expired" : "Sesja użytkownika nieoczekiwanie wygasła", "Provided email-address is not valid" : "Podany adres e-mail jest nieprawidłowy", - "%s has published the calendar »%s«" : "%s opublikował kalendarz »%s«", + "%s has published the calendar »%s«" : "%s publikuje kalendarz »%s«", "Unexpected error sending email. Please contact your administrator." : "Nieoczekiwany błąd podczas wysyłania wiadomości e-mail. Skontaktuj się z administratorem.", "Successfully sent email to %1$s" : "Pomyślnie wysłano wiadomość e-mail do %1$s", "Hello," : "Witaj,", - "We wanted to inform you that %s has published the calendar »%s«." : "Chcieliśmy poinformować, że %s opublikował kalendarz %s.", + "We wanted to inform you that %s has published the calendar »%s«." : "Chcieliśmy poinformować, że %s udostępnia kalendarz %s.", "Open »%s«" : "Otwórz »%s«", "Cheers!" : "Zdrówko!", "Upcoming events" : "Nadchodzące wydarzenia", + "No more events today" : "Nie ma więcej wydarzeń na dzisiaj", + "No upcoming events" : "Brak nadchodzących wydarzeń", + "More events" : "Więcej wydarzeń", + "%1$s with %2$s" : "%1$s przez %2$s", + "Calendar" : "Kalendarz", + "New booking {booking}" : "Mowa rezerwacja {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) rezerwuje spotkanie \"{config_display_name}\" dnia {date_time}.", "Appointments" : "Spotkania", "Schedule appointment \"%s\"" : "Umówione spotkanie \"%s\"", "Schedule an appointment" : "Umów się na spotkanie", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Przygotuj się na %s", "Follow up for %s" : "Obserwuj %s", - "Your appointment \"%s\" needs confirmation" : "Twoje spotkanie \"%s\" wymaga potwierdzenia", - "Dear %s, please confirm your booking" : "Drogi %s, proszę o potwierdzenie rezerwacji", + "Your appointment \"%s\" with %s needs confirmation" : "Twoje spotkanie \"%s\" z %s wymaga potwierdzenia", + "Dear %s, please confirm your booking" : "%s, proszę o potwierdzenie rezerwacji", "Confirm" : "Potwierdź", + "Appointment with:" : "Spotkanie z:", + "Description:" : "Opis:", "This confirmation link expires in %s hours." : "Ten link potwierdzający wygaśnie za %s godzin.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Jeśli mimo wszystko chcesz odwołać spotkanie, skontaktuj się z organizatorem.", - "Appointment:" : "Spotkanie:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Jeśli mimo wszystko chcesz anulować spotkanie, skontaktuj się z organizującą je osobą, odpowiadając na ten e-mail lub odwiedzając jej stronę profilu.", + "Your appointment \"%s\" with %s has been accepted" : "Twoje spotkanie \"%s\" z %s zostało zaakceptowane", + "Dear %s, your booking has been accepted." : "%s, Twoja rezerwacja została zaakceptowana.", + "Appointment for:" : "Spotkanie na:", "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Otrzymasz wiadomość e-mail z linkiem weryfikacyjnym", "Where:" : "Gdzie:", - "Description:" : "Opis:", - "Calendar" : "Kalendarz", + "Comment:" : "Komentarz:", + "You have a new appointment booking \"%s\" from %s" : "Masz nową rezerwację spotkania \"%s\" z %s", + "Dear %s, %s (%s) booked an appointment with you." : "%s, %s (%s) rezerwuje czas na spotkanie z tobą.", "A Calendar app for Nextcloud" : "Aplikacja Kalendarz dla Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aplikacja Kalendarz to interfejs użytkownika CalDAV dla serwera Nextcloud. Z łatwością synchronizuj wydarzenia z różnych urządzeń z Nextcloud i edytuj je online.\n\n* 🚀 **Integracja z innymi aplikacjami Nextcloud!** Obecnie Kontakty - więcej w przyszłości.\n* 🌐 **Wsparcie WebCal!** Chcesz widzieć mecze swojej ulubionej drużyny w swoim kalendarzu? Nie ma problemu!\n* 🙋 **Uczestnicy!** Zapraszaj ludzi na swoje wydarzenia\n* ⌚️ **Wolny/Zajęty!** Zobacz, kiedy Twoi uczestnicy są dostępni\n* ⏰ **Przypomnienia!** Otrzymuj alarmy o wydarzeniach w przeglądarce i e-mailem\n* 🔍 **Szukaj!** Łatwo znajdź swoje wydarzenia\n* ☑️ **Zadania!** Zobacz zadania z terminem bezpośrednio w kalendarzu\n* 🙈 **Nie wymyślamy na nowo koła!** Na podstawie wspaniałej [biblioteki c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) i [fullcalendar](https://github.com/fullcalendar/fullcalendar).", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aplikacja kalendarza dla Nextcloud. Łatwo synchronizuj wydarzenia z różnych urządzeń z Nextcloud i edytuj je online.\n\n* 🚀 **Integracja z innymi aplikacjami Nextcloud, takimi jak Kontakty, Talk, Zadania, Deck i Kręgi.\n* 🌐 **Wsparcie WebCal!** Chcesz zobaczyć dni meczów swojej ulubionej drużyny w kalendarzu? Nie ma problemu! \n* 🙋 **Uczestnicy!** Zapraszaj ludzi na swoje wydarzenia\n* ⌚ **Wolny/zajęty!** Zobacz, kiedy potencjalni uczestnicy są dostępni, aby się spotkać\n* ⏰ **Przypomnienia!** Otrzymuj alarmy o wydarzeniach w przeglądarce i przez e-mail\n* 🔍 **Szukaj!** Znajdź swoje wydarzenia z łatwością\n* ☑️ **Zadania!** Zobacz zadania lub karty Deck z terminem realizacji bezpośrednio w kalendarzu\n* 🔈 **Pokoje rozmów!** Utwórz powiązany pokój rozmów podczas rezerwacji spotkania jednym kliknięciem\n* 📆 **Bookowanie spotkań** Wyślij ludziom link, pozwalający zarezerwować spotkanie z Tobą [za pomocą tej aplikacji] (https://apps.nextcloud.com/apps/appointments)\n* 📎 **Załączniki!** Dodawanie, przesyłanie i przeglądanie załączników do wydarzeń\n* 🙈 **Nie wymyślamy nic od zera** oparte na świetnych bibliotekach [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) i [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Poprzedni dzień", "Previous week" : "Poprzedni tydzień", + "Previous year" : "Poprzedni rok", "Previous month" : "Poprzedni miesiąc", "Next day" : "Następny dzień", "Next week" : "Następny tydzień", + "Next year" : "Następny rok", "Next month" : "Następny miesiąc", - "New event" : "Nowe zdarzenie", + "Create new event" : "Utwórz nowe wydarzenie", + "Event" : "Wydarzenie", "Today" : "Dzisiaj", "Day" : "Dzień", "Week" : "Tydzień", "Month" : "Miesiąc", + "Year" : "Rok", "List" : "Lista", + "Appointment link was copied to clipboard" : "Link do spotkania został skopiowany do schowka", + "Appointment link could not be copied to clipboard" : "Nie udało się skopiować linku do spotkania do schowka", "Preview" : "Podgląd", "Copy link" : "Kopiuj link", "Edit" : "Edytuj", "Delete" : "Usuń", - "Appointment link was copied to clipboard" : "Link do spotkania został skopiowany do schowka", - "Appointment link could not be copied to clipboard" : "Nie udało się skopiować linku do spotkania do schowka", - "Add new" : "Dodaj nowe", - "Untitled calendar" : "Kalendarz bez tytułu", - "Edit name" : "Edytuj nazwę", - "Saving name …" : "Zapisywanie nazwy…", - "Edit color" : "Edytuj kolor", - "Saving color …" : "Zapisywanie koloru…", - "Copy private link" : "Kopiuj link prywatny", - "Export" : "Eksportuj", - "Unshare from me" : "Nie udostępniaj mi", + "Appointment schedules" : "Harmonogramy spotkań", + "Create new" : "Utwórz nowy", "Disable calendar \"{calendar}\"" : "Wyłącz kalendarz \"{calendar}\"", "Disable untitled calendar" : "Wyłącz kalendarz bez tytułu", "Enable calendar \"{calendar}\"" : "Włącz kalendarz \"{calendar}\"", "Enable untitled calendar" : "Włącz kalendarz bez tytułu", "An error occurred, unable to change visibility of the calendar." : "Wystąpił błąd, nie można zmienić widoczności kalendarza.", - "An error occurred, unable to delete the calendar." : "Wystąpił błąd, nie można usunąć kalendarza.", + "Untitled calendar" : "Kalendarz bez tytułu", + "Shared with you by" : "Udostępnione Tobie przez", + "Edit and share calendar" : "Edytuj i udostępnij kalendarz", + "Edit calendar" : "Edytuj kalendarz", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Zatrzymywanie udostępnienia kalendarza za {countdown} sekundę","Zatrzymywanie udostępnienia kalendarza za {countdown} sekundy","Zatrzymywanie udostępnienia kalendarza za {countdown} sekund","Zatrzymywanie udostępnienia kalendarza za {countdown} sekund"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Usuwanie kalendarza za {countdown} sekundę","Usuwanie kalendarza za {countdown} sekundy","Usuwanie kalendarza za {countdown} sekund","Usunięcie kalendarza za {countdown} sekund"], + "An error occurred, unable to create the calendar." : "Wystąpił błąd, nie można utworzyć kalendarza.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Wprowadź poprawny link (zaczynający się od http://, https://, webcal://, lub webcals://)", + "Calendars" : "Kalendarze", + "Add new" : "Dodaj nowe", + "New calendar" : "Nowy kalendarz", + "Name for new calendar" : "Nazwa nowego kalendarza", + "Creating calendar …" : "Tworzenie kalendarza…", + "New calendar with task list" : "Nowy kalendarz z listą zadań", + "New subscription from link (read-only)" : "Nowa subskrypcja z linku (tylko do odczytu)", + "Creating subscription …" : "Tworzenie subskrypcji…", + "Add public holiday calendar" : "Dodaj kalendarz świąt państwowych", + "Add custom public calendar" : "Dodaj personalizowany publiczny kalendarz", "Calendar link copied to clipboard." : "Link do kalendarza skopiowany do schowka.", "Calendar link could not be copied to clipboard." : "Nie można skopiować linku kalendarza do schowka.", - "An error occurred, unable to rename the calendar." : "Wystąpił błąd, nie można zmienić nazwy kalendarza.", - "An error occurred, unable to change the calendar's color." : "Wystąpił błąd, nie można zmienić koloru kalendarza.", - "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Zatrzymywanie udostępnienia kalendarza za {countdown} sekundę","Zatrzymywanie udostępnienia kalendarza za {countdown} sekundy","Zatrzymywanie udostępnienia kalendarza za {countdown} sekund","Zatrzymywanie udostępnienia kalendarza za {countdown} sekund"], - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Usuwanie kalendarza za {countdown} sekundę","Usuwanie kalendarza za {countdown} sekundy","Usuwanie kalendarza za {countdown} sekund","Usuwanie kalendarza za {countdown} sekund"], + "Copy subscription link" : "Kopiuj link do subskrypcji", + "Copying link …" : "Kopiowanie linku…", + "Copied link" : "Skopiowano link", + "Could not copy link" : "Nie można skopiować linku", + "Export" : "Eksportuj", + "Untitled item" : "Pozycja bez tytułu", + "Unknown calendar" : "Kalendarz nieznany", + "Could not load deleted calendars and objects" : "Nie udało się wczytać usuniętych kalendarzy i obiektów", + "Could not delete calendar or event" : "Nie udało się usunąć kalendarza lub wydarzenia", + "Could not restore calendar or event" : "Nie udało się przywrócić kalendarza lub wydarzenia", + "Do you really want to empty the trash bin?" : "Czy na pewno chcesz opróżnić kosz?", + "Empty trash bin" : "Opróżnij kosz", + "Trash bin" : "Kosz", + "Loading deleted items." : "Wczytuję usunięte pozycje.", + "You do not have any deleted items." : "Nie masz żadnych usuniętych pozycji.", + "Name" : "Nazwa", + "Deleted" : "Usunięto", + "Restore" : "Przywróć", + "Delete permanently" : "Usuń trwale", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Pozycje w koszu są usuwane po {numDays} dniu","Pozycje w koszu są usuwane po {numDays} dniach","Pozycje w koszu są usuwane po {numDays} dniach","Pozycje w koszu są usuwane po {numDays} dniach"], + "Could not update calendar order." : "Nie można zaktualizować kolejności kalendarza.", + "Shared calendars" : "Udostępnione kalendarze", + "Deck" : "Tablica", + "Hidden" : "Ukryty", + "Internal link" : "Link wewnętrzny", + "A private link that can be used with external clients" : "Prywatny link, którego można używać z klientami zewnętrznymi", + "Copy internal link" : "Kopiuj link wewnętrzny", + "An error occurred, unable to publish calendar." : "Wystąpił błąd, nie można opublikować kalendarza.", + "An error occurred, unable to send email." : "Wystąpił błąd, nie można wysłać wiadomości e-mail.", + "Embed code copied to clipboard." : "Kod do wstawienia został skopiowany do schowka.", + "Embed code could not be copied to clipboard." : "Nie można skopiować do schowka kodu do wstawienia.", + "Unpublishing calendar failed" : "Nie można cofnąć publikacji kalendarza", "Share link" : "Udostępnij link", - "Publish calendar" : "Opublikuj kalendarz", - "Publishing calendar" : "Publikowanie kalendarza", "Copy public link" : "Kopiuj link publiczny", "Send link to calendar via email" : "Wyślij e-mailem link do kalendarza", "Enter one address" : "Wpisz jeden z adresów", "Sending email …" : "Wysyłanie e-maila…", - "Copy subscription link" : "Kopiuj link do subskrypcji", - "Copying link …" : "Kopiowanie linku…", - "Copied link" : "Skopiowano link", - "Could not copy link" : "Nie można skopiować linku", "Copy embedding code" : "Kopiuj kod osadzania", "Copying code …" : "Kopiowanie kodu…", "Copied code" : "Skopiowano kod", "Could not copy code" : "Nie można skopiować kodu", "Delete share link" : "Usuń link udostępnienia", "Deleting share link …" : "Usuwanie linku udostępnienia…", - "An error occurred, unable to publish calendar." : "Wystąpił błąd, nie można opublikować kalendarza.", - "An error occurred, unable to send email." : "Wystąpił błąd, nie można wysłać wiadomości e-mail.", - "Embed code copied to clipboard." : "Kod do wstawienia został skopiowany do schowka.", - "Embed code could not be copied to clipboard." : "Nie można skopiować do schowka kodu do wstawienia.", - "Unpublishing calendar failed" : "Nie można cofnąć publikacji kalendarza", - "Share with users or groups" : "Udostępnij użytkownikom lub grupom", - "No users or groups" : "Brak użytkowników lub grup", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Zespół)", + "An error occurred while unsharing the calendar." : "Wystąpił błąd podczas wyłączania udostępniania kalendarza.", + "An error occurred, unable to change the permission of the share." : "Wystąpił błąd, nie można zmienić uprawnień do udostępnienia.", "can edit" : "może edytować", "Unshare with {displayName}" : "Zatrzymaj udostępnianie z {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Wystąpił błąd, nie można zmienić cofnięcia udostępnienia kalendarza.", - "An error occurred, unable to change the permission of the share." : "Wystąpił błąd, nie można zmienić uprawnień do udostępnienia.", - "+ New calendar" : "+ Nowy kalendarz", - "New calendar" : "Nowy kalendarz", - "Name for new calendar" : "Nazwa nowego kalendarza", - "Creating calendar …" : "Tworzenie kalendarza…", - "New calendar with task list" : "Nowy kalendarz z listą zadań", - "New subscription from link (read-only)" : "Nowa subskrypcja z linku (tylko do odczytu)", - "Creating subscription …" : "Tworzenie subskrypcji…", - "An error occurred, unable to create the calendar." : "Wystąpił błąd, nie można utworzyć kalendarza.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Wprowadź poprawny link (zaczynający się od http://, https://, webcal://, lub webcals://)", - "Trash bin" : "Kosz", - "Loading deleted elements." : "Wczytuję usunięte elementy.", - "You do not have any deleted elements." : "Nie masz żadnych usuniętych elementów.", - "Name" : "Nazwa", - "Deleted" : "Usunięto", - "Restore" : "Przywróć", - "Delete permanently" : "Usuń trwale", - "Empty trash bin" : "Opróżnij kosz", - "Untitled element" : "Element bez tytułu", - "Unknown calendar" : "Kalendarz nieznany", - "Could not load deleted calendars and objects" : "Nie udało się wczytać usuniętych kalendarzy i obiektów", - "Could not restore calendar or event" : "Nie udało się przywrócić kalendarza lub wydarzenia", - "Do you really want to empty the trash bin?" : "Czy na pewno chcesz opróżnić kosz?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Elementy w koszu są usuwane po {numDays} dniu","Elementy w koszu są usuwane po {numDays} dniach","Elementy w koszu są usuwane po {numDays} dniach","Elementy w koszu są usuwane po {numDays} dniach"], - "Could not update calendar order." : "Nie można zaktualizować kolejności kalendarza.", + "Share with users or groups" : "Udostępnij użytkownikom lub grupom", + "No users or groups" : "Brak użytkowników lub grup", + "Failed to save calendar name and color" : "Nie udało się zapisać nazwy i koloru kalendarza", + "Calendar name …" : "Nazwa kalendarza…", + "Never show me as busy (set this calendar to transparent)" : "Nigdy nie pokazuj mnie jako zajętego (ustaw ten kalendarz jako przezroczysty)", + "Share calendar" : "Udostępnij kalendarz", + "Unshare from me" : "Nie udostępniaj mi", + "Save" : "Zapisz", "Import calendars" : "Importuj kalendarze", "Please select a calendar to import into …" : "Wybierz kalendarz do zaimportowania do…", "Filename" : "Nazwa pliku", "Calendar to import into" : "Kalendarz do zaimportowania", "Cancel" : "Anuluj", "_Import calendar_::_Import calendars_" : ["Importuj kalendarz","Importuj kalendarze","Importuj kalendarze","Importuj kalendarze"], + "Select the default location for attachments" : "Wybierz domyślną lokalizację załączników", + "Pick" : "Wybierz", + "Invalid location selected" : "Wybrano nieprawidłową lokalizację", + "Attachments folder successfully saved." : "Pomyślnie zapisano katalog załączników.", + "Error on saving attachments folder." : "Błąd podczas zapisywania katalogu załączników.", + "Default attachments location" : "Domyślna lokalizacja załączników", "{filename} could not be parsed" : "Nie można przeanalizować {filename}", "No valid files found, aborting import" : "Nie znaleziono prawidłowych plików, przerywanie importu", - "Import partially failed. Imported {accepted} out of {total}." : "Import częściowo nieudany. Zaimportowano {accepted} z {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Pomyślnie zaimportowano %n wydarzenie","Pomyślnie zaimportowano %n wydarzenia","Pomyślnie zaimportowano %n wydarzeń","Pomyślnie zaimportowano %n wydarzeń"], + "Import partially failed. Imported {accepted} out of {total}." : "Import częściowo nieudany. Zaimportowano {accepted} z {total}.", "Automatic" : "Automatycznie", "Automatic ({detected})" : "Automatycznie ({detected})", "New setting was not saved successfully." : "Nowe ustawienie nie zostało pomyślnie zapisane.", - "Shortcut overview" : "Przegląd skrótu", - "or" : "lub", "Navigation" : "Nawigacja", "Previous period" : "Poprzedni okres", "Next period" : "Następny okres", @@ -139,6 +172,7 @@ "Day view" : "Widok dnia", "Week view" : "Widok tygodnia", "Month view" : "Widok miesiąca", + "Year view" : "Widok roku", "List view" : "Widok listy", "Actions" : "Akcje", "Create event" : "Utwórz wydarzenie", @@ -148,24 +182,29 @@ "Save edited event" : "Zapisz edytowane wydarzenie", "Delete edited event" : "Usuń edytowane wydarzenie", "Duplicate event" : "Zduplikowane wydarzenie", - "Enable birthday calendar" : "Włącz kalendarz urodzinowy", + "Shortcut overview" : "Przegląd skrótu", + "or" : "lub", + "Calendar settings" : "Ustawienia Kalendarza", + "At event start" : "Na początku wydarzenia", + "No reminder" : "Bez przypomnienia", + "Failed to save default calendar" : "Nie udało się zapisać domyślnego kalendarza", + "CalDAV link copied to clipboard." : "Link CalDAV skopiowany do schowka.", + "CalDAV link could not be copied to clipboard." : "Nie można skopiować linku CalDAV do schowka.", + "Enable birthday calendar" : "Włącz kalendarz urodzin", "Show tasks in calendar" : "Pokaż zadania w kalendarzu", "Enable simplified editor" : "Włącz uproszczony edytor", - "Limit visible events per view" : "Ogranicz widoczne wydarzenia na widok", + "Limit the number of events displayed in the monthly view" : "Ogranicz liczbę zdarzeń wyświetlanych w widoku miesięcznym", "Show weekends" : "Pokaż weekendy", "Show week numbers" : "Pokaż numery tygodni", "Time increments" : "Przyrosty czasu", + "Default calendar for incoming invitations" : "Domyślny kalendarz dla przychodzących zaproszeń", "Default reminder" : "Przypomnienie domyślne", "Copy primary CalDAV address" : "Kopiuj główny adres CalDAV", "Copy iOS/macOS CalDAV address" : "Kopiuj adres CalDAV dla iOS/macOS", "Personal availability settings" : "Osobiste ustawienia dostępności", "Show keyboard shortcuts" : "Pokaż skróty klawiaturowe", - "Calendar settings" : "Ustawienia Kalendarza", - "No reminder" : "Bez przypomnienia", - "CalDAV link copied to clipboard." : "Link CalDAV skopiowany do schowka.", - "CalDAV link could not be copied to clipboard." : "Nie można skopiować linku CalDAV do schowka.", - "Appointment was created successfully" : "Spotkanie zostało pomyślnie utworzone", - "Appointment was updated successfully" : "Spotkanie zostało pomyślnie zaktualizowane", + "Appointment schedule successfully created" : "Harmonogram spotkań został pomyślnie utworzony", + "Appointment schedule successfully updated" : "Harmonogram spotkań został pomyślnie zaktualizowany", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuta","{duration} minuty","{duration} minut","{duration} minut"], "0 minutes" : "0 minut", "_{duration} hour_::_{duration} hours_" : ["{duration} godzina","{duration} godziny","{duration} godzin","{duration} godzin"], @@ -176,7 +215,14 @@ "To configure appointments, add your email address in personal settings." : "Aby skonfigurować spotkania, dodaj swój adres e-mail w ustawieniach osobistych.", "Public – shown on the profile page" : "Publiczny – wyświetlane na stronie profilu", "Private – only accessible via secret link" : "Prywatny – dostępne tylko przez tajny link", + "Appointment schedule saved" : "Harmonogram spotkań zapisany", + "Create appointment schedule" : "Utwórz harmonogram spotkań", + "Edit appointment schedule" : "Edytuj harmonogram spotkań", + "Update" : "Aktualizuj", + "Appointment name" : "Nazwa spotkania", "Location" : "Lokalizacja", + "Create a Talk room" : "Stwórz pokój do rozmów", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Dla każdej zarezerwowanej wizyty zostanie wygenerowany unikalny link, który zostanie wysłany w wiadomości e-mail z potwierdzeniem", "Description" : "Opis", "Visibility" : "Widoczne", "Duration" : "Czas trwania", @@ -194,6 +240,7 @@ "Friday" : "Piątek", "Saturday" : "Sobota", "Sunday" : "Niedziela", + "Weekdays" : "Dni powszednie", "Add time before and after the event" : "Dodaj czas przed i po wydarzeniu", "Before the event" : "Przed wydarzeniem", "After the event" : "Po wydarzeniu", @@ -201,18 +248,29 @@ "Minimum time before next available slot" : "Minimalny czas przed następnym dostępnym terminem", "Max slots per day" : "Maksymalna liczba terminów na dzień", "Limit how far in the future appointments can be booked" : "Ogranicz, jak daleko w przyszłości można rezerwować spotkania", - "Create appointment" : "Utwórz spotkanie", - "Edit appointment" : "Edytuj spotkanie", - "Save" : "Zapisz", - "Update" : "Aktualizuj", + "It seems a rate limit has been reached. Please try again later." : "Wygląda na to, że osiągnięto limit zapytań. Spróbuj ponownie później.", "Please confirm your reservation" : "Proszę o potwierdzenie rezerwacji", - "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Wysłaliśmy Tobie wiadomość e-mail ze szczegółami. Potwierdź wizytę, korzystając z linku w e-mailu. Możesz teraz zamknąć tę stronę.", - "Your name" : "Twoja nazwa", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Wysłaliśmy do Ciebie wiadomość e-mail ze szczegółami. Potwierdź wizytę, korzystając z linku w e-mailu. Możesz teraz zamknąć tę stronę.", + "Your name" : "Jak się nazywasz", "Your email address" : "Twój adres e-mail", "Please share anything that will help prepare for our meeting" : "Udostępnij coś, co pomoże przygotować się do spotkania", "Could not book the appointment. Please try again later or contact the organizer." : "Nie udało się zarezerwować spotkania. Spróbuj ponownie później lub skontaktuj się z organizatorem.", - "Book the appointment" : "Zarezerwuj spotkanie", - "Reminder" : "Przypomnienie", + "Back" : "Poprzednia", + "Book appointment" : "Zarezerwuj spotkanie", + "Error fetching Talk conversations." : "Błąd w pobieraniu rozmów z Talk.", + "Conversation does not have a valid URL." : "Konwersacja nie ma poprawnego adresu URL.", + "Successfully added Talk conversation link to location." : "Pomyślnie dodano lik rozmowy Talk do lokalizacji.", + "Successfully added Talk conversation link to description." : "Pomyślnie dodano link rozmowy Talk do do opisu.", + "Failed to apply Talk room." : "Nie udało się zastosować pokoju Talk.", + "Error creating Talk conversation" : "Błąd przy tworzeniu rozmowy Talk", + "Select a Talk Room" : "Wybierz Pokój Talk.", + "Add Talk conversation" : "Dodaj rozmowę Talk", + "Fetching Talk rooms…" : "Pobieram listę pokojów Talk...", + "No Talk room available" : "Brak dostępnych pokojów Talk", + "Create a new conversation" : "Utwórz nową rozmowę", + "Select conversation" : "Wybierz rozmowę", + "on" : "o", + "at" : "o", "before at" : "przed", "Notification" : "Powiadomienie", "Email" : "E-mail", @@ -223,114 +281,143 @@ "Edit time" : "Edytuj czas", "Save time" : "Zapisz czas", "Remove reminder" : "Usuń przypomnienie", - "on" : "o", - "at" : "o", - "+ Add reminder" : "+ Dodaj przypomnienie", "Add reminder" : "Dodaj przypomnienie", - "_second_::_seconds_" : ["sekunda","sekundy","sekund","sekundy"], - "_minute_::_minutes_" : ["minuta","minuty","minut","minuty"], - "_hour_::_hours_" : ["godzina","godziny","godzin","godziny"], - "_day_::_days_" : ["dzień","dni","dni","dni"], - "_week_::_weeks_" : ["tydzień","tygodnie","tygodni","tygodnie"], - "Suggested" : "Zasugerował", - "Available" : "Dostępny", - "Not available" : "Niedostępny", - "Checking availability" : "Sprawdzanie dostępności", + "seconds" : "sekund", + "minutes" : "minut", + "hours" : "godzin", + "days" : "dniach", + "weeks" : "tygodni", + "Choose a file to add as attachment" : "Wybierz plik, aby dodać jako załącznik", + "Choose a file to share as a link" : "Wybierz plik do udostępnienia przez link", + "Attachment {name} already exist!" : "Załącznik {name} już istnieje!", + "Could not upload attachment(s)" : "Nie można przesłać załącznika(ów)", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Zamierzasz pobrać plik. Prosimy sprawdź jego nazwę przed pobraniem. Czy na pewno kontynuować?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Zamierzasz przejść do {host}. Czy na pewno chcesz kontynuować? Link: {link}", + "Proceed" : "Kontynuuj", + "No attachments" : "Brak załączników", + "Add from Files" : "Dodaj z plików", + "Upload from device" : "Wyślij z urządzenia", + "Delete file" : "Usuń plik", + "Confirmation" : "Potwierdzenie", + "_{count} attachment_::_{count} attachments_" : ["{count} załącznik","{count} załączniki","{count} załączników","{count} załączników"], + "Suggested" : "Sugeruje", + "Available" : "Dostępność", "Invitation accepted" : "Zaproszenie przyjęte", "Accepted {organizerName}'s invitation" : "Zaakceptowano zaproszenie od {organizerName}", + "Participation marked as tentative" : "Uczestnictwo oznaczone jako niepewne", + "Invitation is delegated" : "Zaproszenie oddelegowane", + "Not available" : "Brak dostępności", "Invitation declined" : "Zaproszenie odrzucone", "Declined {organizerName}'s invitation" : "Odrzucono zaproszenie od {organizerName}", - "Invitation is delegated" : "Zaproszenie jest oddelegowane", - "Participation marked as tentative" : "Uczestnictwo oznaczone jako niepewne", - "Invitation sent" : "Zaproszenie wysłane", - "Has not responded to {organizerName}'s invitation yet" : "Nie odpowiedział jeszcze na zaproszenie od {organizerName}", - "Availability of attendees, resources and rooms" : "Dostępność uczestników, zasobów i pokoi", + "Availability will be checked" : "Dostępność zostanie sprawdzona", + "Invitation will be sent" : "Zaproszenie zostanie wysłane", + "Failed to check availability" : "Nie udało się sprawdzić dostępności", + "Failed to deliver invitation" : "Nie udało się dostarczyć zaproszenia", + "Awaiting response" : "Oczekiwanie na odpowiedź", + "Checking availability" : "Sprawdzanie dostępności", + "Has not responded to {organizerName}'s invitation yet" : "Bez odpowiedzi na zaproszenie od {organizerName}", + "chairperson" : "przewodniczy", + "required participant" : "uczestnictwo wymagane", + "non-participant" : "nie uczestniczy", + "optional participant" : "opcjonalne uczestnictwo", "{organizer} (organizer)" : "{organizer} (organizator)", - "Free" : "Wolny", - "Busy (tentative)" : "Zajęty (wstępnie)", - "Busy" : "Zajęty", + "{attendee} ({role})" : "{attendee}({role})", + "Availability of attendees, resources and rooms" : "Dostępność uczestników, zasobów i pokoi", + "Suggestion accepted" : "Sugestia zaakceptowana", + "Legend" : "Legenda", "Out of office" : "Biuro nie funkcjonuje", - "Unknown" : "Nieznany", - "Accept" : "Akceptuj", - "Decline" : "Odrzuć", - "Tentative" : "Niepewne", + "Attendees:" : "Uczestnicy:", + "Done" : "Gotowe", + "Search room" : "Wyszukaj pokój", + "Room name" : "Nazwa pokoju", + "Check room availability" : "Sprawdź dostępność pokoju", + "Free" : "Dostępność", + "Busy (tentative)" : "Brak dostępności (wstępnie)", + "Busy" : "Brak dostępności", + "Unknown" : "Nieznana", + "Find a time" : "Znajdź czas", "The invitation has been accepted successfully." : "Zaproszenie zostało pomyślnie przyjęte.", "Failed to accept the invitation." : "Nie udało się zaakceptować zaproszenia.", "The invitation has been declined successfully." : "Zaproszenie zostało pomyślnie odrzucone.", "Failed to decline the invitation." : "Nie udało się odrzucić zaproszenia.", - "Your participation has been marked as tentative." : "Twoje uczestniczenie zostało oznaczone jako niepewne.", + "Your participation has been marked as tentative." : "Twoje uczestnictwo zostało oznaczone jako niepewne.", "Failed to set the participation status to tentative." : "Nie udało się ustawić statusu uczestnictwa na niepewne.", - "Create Talk room for this event" : "Utwórz pokój w Talku dla tego wydarzenia", - "Show busy times" : "Pokaż zajęte czasy", + "Accept" : "Akceptuj", + "Decline" : "Odrzuć", + "Tentative" : "Niepewne", "No attendees yet" : "Brak uczestników", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount}zaproszony/ch, {confirmedCount}potwierdził/o", + "Please add at least one attendee to use the \"Find a time\" feature." : "Proszę dodaj chociaż jedną osobę mającą uczestniczyć, żeby użyć funkcji \"Znajdź czas\".", + "Successfully appended link to talk room to location." : "Pomyślnie dodano link do pokoju rozmów do lokalizacji.", "Successfully appended link to talk room to description." : "Pomyślnie dołączono do opisu link do pokoju rozmów.", "Error creating Talk room" : "Błąd podczas tworzenia pokoju w Talku", - "Send email" : "Wyślij e-mail", + "Attendees" : "Uczestnicy", + "_%n more guest_::_%n more guests_" : ["%n gość więcej","%n gości więcej","%n gości więcej","%n gości więcej"], + "Remove group" : "Usuń grupę", + "Remove attendee" : "Usuń uczestnika", + "Request reply" : "Poproś o odpowiedź", "Chairperson" : "Przewodniczący", "Required participant" : "Wymagany uczestnik", "Optional participant" : "Opcjonalny uczestnik", "Non-participant" : "Nieuczestniczący", - "Remove attendee" : "Usuń uczestnika", - "Search for emails, users or contacts" : "Szukaj e-maili, użytkowników lub kontaktów", + "_%n member_::_%n members_" : ["%n członek","%n członków","%n członków","%n członków"], + "Search for emails, users, contacts, contact groups or teams" : "Szukaj mejli, użytkowników, kontaktów, grup kontaktów lub zespołów.", "No match found" : "Nie znaleziono pasujących", + "Note that members of circles get invited but are not synced yet." : "Pamiętaj, że członkowie kręgów są zapraszani, ale nie są jeszcze synchronizowani.", + "Note that members of contact groups get invited but are not synced yet." : "Pamiętaj, że członkowie grup kontaktów są zapraszani, ale nie są jeszcze synchronizowani.", "(organizer)" : "(organizator)", + "Make {label} the organizer" : "Mianuj {label} organizatorem", + "Make {label} the organizer and attend" : "Mianuj {label} organizatorem i weź udział", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Aby wysyłać zaproszenia i otrzymywać odpowiedzi, [linkopen]dodaj swój adres e-mail w ustawieniach osobistych[linkclose].", "Remove color" : "Usuń kolor", "Event title" : "Tytuł wydarzenia", - "All day" : "Cały dzień", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Nie można zmodyfikować ustawienia całodziennego dla wydarzeń, które są częścią zestawu cyklicznego.", - "from {startDate}" : "od {startDate}", - "from {startDate} at {startTime}" : "od {startDate} o {startTime}", - "to {endDate}" : "do {endDate}", - "to {endDate} at {endTime}" : "do {endDate} o {endTime}", + "From" : "Od", + "To" : "Do", "Repeat" : "Powtarzaj", - "End repeat" : "Zakończ powtarzanie", - "Select to end repeat" : "Wybierz, aby zakończyć powtarzanie", + "_time_::_times_" : ["raz","razy","razy","razy"], "never" : "nigdy", "on date" : "o czasie", "after" : "po", - "_time_::_times_" : ["raz","razy","razy","razy"], + "End repeat" : "Zakończ powtarzanie", + "Select to end repeat" : "Wybierz, aby zakończyć powtarzanie", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "To wydarzenie stanowi wyjątek powtarzalności zestawu cyklicznego. Nie można do niego dodać reguły powtarzalności.", "first" : "pierwszy", - "third" : "trzeci", - "fourth" : "czwarty", - "fifth" : "piąty", - "second to last" : "przedostatni", - "last" : "ostatni", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Zmiany w regule powtarzalności będą miały zastosowanie tylko do tego i wszystkich przyszłych wydarzeń.", - "Repeat every" : "Powtórz każdy", + "Repeat every" : "Powtórz co", "By day of the month" : "Według dnia miesiąca", "On the" : "Na", + "_day_::_days_" : ["dzień","dni","dni","dni"], + "_week_::_weeks_" : ["tydzień","tygodnie","tygodni","tygodnie"], "_month_::_months_" : ["miesiąc","miesiące","miesięcy","miesiące"], "_year_::_years_" : ["rok","lata","lat","lata"], + "On specific day" : "O konkretnej dacie", "weekday" : "dzień powszedni", "weekend day" : "dzień weekendu", - "No recurrence" : "Brak powtarzalności", + "Does not repeat" : "Nie powtarza się", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Definicja tego wydarzenia nie jest w pełni obsługiwana przez Nextcloud. W przypadku edycji opcji cyklicznej niektóre powtórzenia mogą zostać utracone.", - "Suggestions" : "Propozycje", "No rooms or resources yet" : "Nie ma jeszcze pokoi ani zasobów", + "Resources" : "Zasoby", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} miejsce","{seatingCapacity} miejsca","{seatingCapacity} miejsc","{seatingCapacity} miejsc"], "Add resource" : "Dodaj zasób", "Has a projector" : "Ma projektor", "Has a whiteboard" : "Posiada białą tablicę", "Wheelchair accessible" : "Dostęp dla wózków inwalidzkich", "Remove resource" : "Usuń zasób", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} miejsce","{seatingCapacity} miejsca","{seatingCapacity} miejsc","{seatingCapacity} miejsc"], - "Projector" : "Projektor", - "Whiteboard" : "Biała tablica", "Search for resources or rooms" : "Szukaj zasoby lub pokoje", "available" : "dostępny", "unavailable" : "niedostępny", + "Show all rooms" : "Pokaż wszystkie pokoje", + "Projector" : "Projektor", + "Whiteboard" : "Biała tablica", "Room type" : "Rodzaj pokoju", "Any" : "Dowolny", "Minimum seating capacity" : "Minimalna ilość miejsc", - "More" : "Więcej", - "Update this occurrence" : "Zaktualizuj to wydarzenie", + "More details" : "Więcej szczegółów", "Update this and all future" : "Zaktualizuj to i wszystkie przyszłe", + "Update this occurrence" : "Zaktualizuj to wydarzenie", "Public calendar does not exist" : "Kalendarz publiczny nie istnieje", "Maybe the share was deleted or has expired?" : "Może udostępnienie zostało usunięte lub wygasło?", - "Please select a time zone:" : "Wybierz strefę czasową:", - "Pick a time" : "Wybierz czas", - "Pick a date" : "Wybierz datę", "from {formattedDate}" : "od {formattedDate}", "to {formattedDate}" : "do {formattedDate}", "on {formattedDate}" : "w dniu {formattedDate}", @@ -340,9 +427,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} o {formattedTime}", "Please enter a valid date" : "Podaj prawidłową datę", "Please enter a valid date and time" : "Podaj prawidłową datę i godzinę", + "Select a time zone" : "Wybierz strefę czasową", + "Please select a time zone:" : "Wybierz strefę czasową:", + "Pick a time" : "Wybierz czas", + "Pick a date" : "Wybierz datę", "Type to search time zone" : "Wpisz, aby wyszukać strefę czasową", "Global" : "Globalnie", - "Select date" : "Wybierz datę", + "Holidays in {region}" : "Święta w {region}", + "An error occurred, unable to read public calendars." : "Wystąpił błąd, nie można odczytać publicznych kalendarzy.", + "An error occurred, unable to subscribe to calendar." : "Wystąpił błąd, nie można subskrybować kalendarza.", + "Public holiday calendars" : "Kalendarze świąt państwowych", + "Public calendars" : "Publiczne kalendarze", + "No valid public calendars configured" : "Nie skonfigurowano żadnych prawidłowych kalendarzy publicznych", + "Speak to the server administrator to resolve this issue." : "Poproś administrację serwera o rozwiązanie problemu.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Kalendarze świąt państwowych są dostarczane przez Thunderbirda. Dane kalendarza zostaną pobrane z witryny {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Te publiczne kalendarze są sugerowane przez administrację serwera. Dane kalendarza zostaną pobrane z odpowiedniej strony internetowej.", + "By {authors}" : "Autorstwa {authors}", + "Subscribed" : "Zasubskrybowano", + "Subscribe" : "Subskrybuj", + "Could not fetch slots" : "Nie udało się pobrać przedziałów", + "Select a date" : "Wybierz datę", "Select slot" : "Wybierz przedział czasowy", "No slots available" : "Brak dostępnych terminów", "The slot for your appointment has been confirmed" : "Termin Twojego spotkania został potwierdzony", @@ -359,24 +463,25 @@ "Personal" : "Osobiste", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Automatyczne wykrywanie strefy czasowej określiło Twoją strefę czasową jako UTC.\nNajprawdopodobniej wynika to ze środków bezpieczeństwa przeglądarki internetowej.\nUstaw strefę czasową ręcznie w ustawieniach kalendarza.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Skonfigurowana strefa czasowa ({timezoneId}) nie została znaleziona. Powrót do UTC.\nZmień strefę czasową w ustawieniach i zgłoś ten problem.", - "No more events today" : "Nie ma więcej wydarzeń na dzisiaj", - "No upcoming events" : "Brak nadchodzących wydarzeń", - "Create a new event" : "Utwórz nowe wydarzenie", - "[Today]" : "[Dzisiaj]", - "[Tomorrow]" : "[Jutro]", - "[Yesterday]" : "[Wczoraj]", - "[Last] dddd" : "[Ostatni] dddd", + "Availability of {displayName}" : "Dostępność {displayName}", + "Edit event" : "Edytuj zdarzenie", "Event does not exist" : "Wydarzenie nie istnieje", "Duplicate" : "Zduplikuj", "Delete this occurrence" : "Usuń to wydarzenie", "Delete this and all future" : "Usuń to i wszystkie przyszłe", - "Details" : "Szczegóły", - "Attendees" : "Uczestnicy", - "Resources" : "Zasoby", + "All day" : "Cały dzień", + "Modifications wont get propagated to the organizer and other attendees" : "Zmiany nie zostaną przekazane do osoby organizującej ani innych uczestniczących.", + "Managing shared access" : "Zarządzanie dostępem", + "Deny access" : "Brak dostępu", + "Invite" : "Zaproś", + "_User requires access to your file_::_Users require access to your file_" : ["Użytkownik wymaga dostępu do pliku","Użytkownicy wymagają dostępu do pliku","Użytkownicy wymagają dostępu do pliku","Użytkownicy wymagają dostępu do pliku"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Załącznik wymaga uprawnień do udostępniania","Załączniki wymagają uprawnień do udostępniania","Załączniki wymagają uprawnień do udostępniania","Załączniki wymagają uprawnień do udostępniania"], + "Untitled event" : "Wydarzenie bez tytułu", "Close" : "Zamknij", - "Show more details" : "Pokaż więcej szczegółów", + "Modifications will not get propagated to the organizer and other attendees" : "Zmiany nie zostaną przekazane do osoby organizującej ani innych uczestniczących.", "Subscribe to {name}" : "Subskrybuj dla {name}", - "Export {name}" : "Eksportuj {nazwa}", + "Export {name}" : "Eksportuj {name}", + "Show availability" : "Pokaż dostępność", "Anniversary" : "Rocznica", "Appointment" : "Spotkanie", "Business" : "Biznes", @@ -391,7 +496,7 @@ "Special occasion" : "Specjalna okazja", "Travel" : "Podróż", "Vacation" : "Urlop", - "Midnight on the day the event starts" : "O północy rozpocznie się wydarzenie", + "Midnight on the day the event starts" : "Północ dnia rozpoczęcia wydarzenia", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n dzień przed wydarzeniem o {formattedHourMinute}","%n dni przed wydarzeniem o {formattedHourMinute}","%n dni przed wydarzeniem o {formattedHourMinute}","%n dni przed wydarzeniem o {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n tydzień przed wydarzeniem o {formattedHourMinute}","%n tygodnie przed wydarzeniem o {formattedHourMinute}","%n tygodni przed wydarzeniem o {formattedHourMinute}","%n tygodni przed wydarzeniem o {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "w dniu wydarzenia o {formattedHourMinute}", @@ -404,7 +509,6 @@ "on {time}" : "o {time}", "on {time} ({timezoneId})" : "o {time} ({timezoneId})", "Week {number} of {year}" : "Tydzień {number} w {year}", - "Does not repeat" : "Nie powtarza się", "Daily" : "Codziennie", "Weekly" : "Co tydzień", "Monthly" : "Co miesiąc", @@ -416,24 +520,30 @@ "_on {weekday}_::_on {weekdays}_" : ["w {weekdays}","w {weekdays}","w {weekdays}","w {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["w dzień {dayOfMonthList}","w dni {dayOfMonthList}","w dni {dayOfMonthList}","w dni {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "w dniu {ordinalNumber} {byDaySet}", - "in {monthNames}" : "za {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "{dayOfMonthList} w {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "za {monthNames} w dniu {ordinalNumber} {byDaySet}", "until {untilDate}" : "do {untilDate}", "_%n time_::_%n times_" : ["%n raz","%n razy","%n razy","%n razy"], - "Untitled event" : "Wydarzenie bez tytułu", + "second" : "drugi", + "third" : "trzeci", + "fourth" : "czwarty", + "fifth" : "piąty", + "second to last" : "przedostatni", + "last" : "ostatni", "Untitled task" : "Zadanie bez tytułu", - "Please ask your administrator to enable the Tasks App." : "Poproś administratora o włączenie aplikacji Zadania.", - "Prev" : "Poprzedni", - "Next" : "Następny", - "Prev year" : "Poprzedni rok", - "Next year" : "Następny rok", - "Year" : "Rok", + "Please ask your administrator to enable the Tasks App." : "Poproś administrację o włączenie aplikacji Zadania.", + "You are not allowed to edit this event as an attendee." : "Jako osoba uczestnicząca nie możesz edytować tego wydarzenia.", "W" : "T", "%n more" : "%n więcej", "No events to display" : "Brak wydarzeń do wyświetlenia", + "All participants declined" : "Wszystkie zaproszone osoby odmówiły", + "Please confirm your participation" : "Prosimy o potwierdzenie Twojego uczestnictwa", + "You declined this event" : "Zaproszenie zostało przez Ciebie odrzucone", + "Your participation is tentative" : "Uczestnictwo zostało przez Ciebie oznaczone jako niepewne", "_+%n more_::_+%n more_" : ["+%n więcej","+%n więcej","+%n więcej","+%n więcej"], "No events" : "Brak wydarzeń", "Create a new event or change the visible time-range" : "Utwórz nowe wydarzenie lub zmień widoczny zakres czasu", + "Failed to save event" : "Nie udało się zapisać wydarzenia", "It might have been deleted, or there was a typo in a link" : "Mogło zostać usunięte lub w linku była literówka", "It might have been deleted, or there was a typo in the link" : "Mogło zostać usunięte lub w linku była literówka", "Meeting room" : "Pokój spotkań", @@ -446,7 +556,7 @@ "When shared hide this event" : "Gdy udostępniony ukryj to wydarzenie", "The visibility of this event in shared calendars." : "Widoczność tego wydarzenia w udostępnianych kalendarzach.", "Add a location" : "Dodaj lokalizację", - "Add a description" : "Dodaj opis", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Dodaj opis\n\n- Czego dotyczy to spotkanie\n- Punkty do omówienia\n- Co muszą przygotować osoby uczestniczące", "Status" : "Status", "Confirmed" : "Potwierdzone", "Canceled" : "Anulowane", @@ -459,135 +569,23 @@ "Add this as a new category" : "Dodaj to jako nową kategorię", "Custom color" : "Kolor niestandardowy", "Special color of this event. Overrides the calendar-color." : "Specjalny kolor tego wydarzenia. Zastępuje kolor kalendarza.", - "Chat room for event" : "Pokój rozmów dla wydarzenia", + "Error while sharing file" : "Błąd podczas udostępniania pliku", + "Error while sharing file with user" : "Błąd podczas udostępniania pliku użytkownikowi", + "Attachment {fileName} already exists!" : "Załącznik {fileName} już istnieje!", + "An error occurred during getting file information" : "Błąd podczas pobierania informacji o pliku.", + "Talk conversation for event" : "Rozpocznij rozmowę dotyczącą wydarzenia", + "An error occurred, unable to delete the calendar." : "Wystąpił błąd, nie można usunąć kalendarza.", "Imported {filename}" : "Zaimportowano {filename}", - "Meditation" : "Medytacja", - "Relaxing" : "Odprężenie", - "Relax" : "Relaks", - "Break" : "Przerwa", - "Commute" : "Dojazd", - "Commuting" : "Dojeżdżanie", - "Shuttle" : "Transport", - "Invoice" : "Faktura", - "Finance" : "Finanse", - "Bank" : "Bank", - "Money" : "Pieniądze", - "Wedding" : "Ślub", - "Dog" : "Pies", - "Concert" : "Koncert", - "Festival" : "Festiwal", - "Theater" : "Teatr", - "Theatre" : "Kino", - "Presentation" : "Prezentacja", - "Talk" : "Rozmowa", - "Speech" : "Przemówienie", - "Deadline" : "Ostateczny termin", - "Submission" : "Przedłożona praca", - "Reporting" : "Sprawozdanie", - "Camping" : "Kemping", - "Camp" : "Obóz", - "Election" : "Wybory", - "Voting" : "Głosowanie", - "Vote" : "Wyniki głosowania", - "Barbecue" : "Grill", - "Barbeque" : "Przyjęcie", - "Garden" : "Ogród", - "Farm" : "Gospodarstwo rolne", - "Movie" : "Film", - "Cinema" : "Kino", - "Graduation" : "Ukończenie szkoły", - "Brainstorm" : "Burza mózgów", - "Review" : "Przegląd", - "Audit" : "Audyt", - "Inspection" : "Kontrola", - "Proofreading" : "Korekta", - "Baseball" : "Baseball", - "Meet" : "Spotkanie", - "Planning" : "Planowanie", - "Pointing" : "Wskazywanie", - "Retrospective" : "Z mocą wsteczną", - "Office" : "Biuro", - "Contributor week" : "Tydzień współpracownika", - "Mail" : "Poczta", - "Soccer" : "Piłka nożna", - "Football" : "Futbol", - "Gaming" : "Hazard", - "Drive" : "Przejażdżka", - "Driving" : "Podróż", - "Bicycle" : "Rower", - "Cycle" : "Kolarzówka", - "Cycling" : "Rower", - "Biking" : "Jazda rowerem", - "Bike" : "Rower", - "Podcast" : "Pogawędka", - "Basketball" : "Koszykówka", - "Fishing" : "Wędkowanie", - "Hiking" : "Wędrówka", - "Hike" : "Wycieczka", - "Art" : "Sztuka", - "Exhibition" : "Wystawa", - "Museum" : "Muzeum", - "Pilates" : "Pilates", - "Park" : "Park", - "Walk" : "Spacer", - "Studying" : "Studia", - "Doctor" : "Lekarz", - "Health" : "Zdrowie", - "Dentist" : "Dentysta", - "Hospital" : "Szpital", - "Interview" : "Wywiad", - "Training" : "Trening", - "Practice" : "Praktyka", - "Sports" : "Sport", - "Exercise" : "Ćwiczenia", - "Work out" : "Odrabianie", - "Working out" : "Wypracowanie", - "Gym" : "Siłownia", - "Barber" : "Fryzjer", - "Haircut" : "Strzyżenie", - "Hairdresser" : "Fryzjer", - "Exam" : "Egzamin", - "Written test" : "Test pisemny", - "Oral test" : "Test ustny", - "Working" : "Praca", - "New Years Eve" : "Sylwester", - "NYE" : "Nowy Rok", - "Fireworks" : "Fajerwerki", - "Running" : "Bieganie", - "Go for a run" : "Iść pobiegać", - "Marathon" : "Maraton", - "Video-conference" : "Konferencja wideo", - "Conference-call" : "Połączenie konferencyjne", - "Video-call" : "Połączenie wideo", - "Video-chat" : "Rozmowa wideo", - "Video-meeting" : "Spotkanie wideo", - "Call" : "Połącz", - "Calling" : "Zadzwonić", - "Christmas" : "Boże Narodzenie", - "Conference" : "Konferencja", - "Pizza" : "Pizza", - "Travelling" : "Wyjazd", - "Trip" : "Wycieczka", - "Journey" : "Podróż", - "Collaborate" : "Współpraca", - "Pair" : "Para", - "Lecture" : "Wykład", - "Seminar" : "Seminarium", - "Teaching" : "Nauka", - "Photograph" : "Fotografowanie", - "Party" : "Przyjęcie", - "Celebration" : "Uroczystość", - "Celebrate" : "Świętować", - "Birthday" : "Urodziny", - "Shopping" : "Zakupy", - "Groceries" : "Zakupy spożywcze", - "Skate" : "Łyżwy", - "Skateboard" : "Deskorolka", - "Wine tasting" : "Degustacja wina", - "Golf" : "Golf", - "Dinner" : "Obiad", - "Lunch" : "Lunch", + "This is an event reminder." : "Przypomnienie o wydarzeniu.", + "Error while parsing a PROPFIND error" : "Wystąpił błąd podczas analizowania błędu PROPFIND", "Appointment not found" : "Nie znaleziono spotkania", - "User not found" : "Nie znaleziono użytkownika" + "User not found" : "Nie znaleziono użytkownika", + "Reminder" : "Przypomnienie", + "+ Add reminder" : "+ Dodaj przypomnienie", + "Select automatic slot" : "Wybierz pozycję automatycznie", + "with" : "z", + "Available times:" : "Dostępne terminy:", + "Suggestions" : "Propozycje", + "Details" : "Szczegóły" },"pluralForm" :"nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);" } \ No newline at end of file diff --git a/l10n/pt_BR.js b/l10n/pt_BR.js index b5444bd267f6623b7f046d1e02dc76b8854b7f25..7704e9e3fb26f86ffe2a45ee6c3b751a0a96f56f 100644 --- a/l10n/pt_BR.js +++ b/l10n/pt_BR.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "O endereço de e-mail fornecido é muito longo", "User-Session unexpectedly expired" : "Sessão do usuário expirou inesperadamente", "Provided email-address is not valid" : "O e-mail fornecido não é válido", "%s has published the calendar »%s«" : "%s publicou o calendário »%s«", @@ -11,137 +12,170 @@ OC.L10N.register( "Open »%s«" : "Abrir »%s«", "Cheers!" : "Saudações!", "Upcoming events" : "Próximos eventos", - "Appointments" : "Agendamentos", - "Schedule appointment \"%s\"" : "Agendar compromisso \"1%s\"", - "Schedule an appointment" : "Agende um compromisso", - "Prepare for %s" : "Prepare para 1%s", - "Follow up for %s" : "Acompanhamento para 1%s", - "Your appointment \"%s\" needs confirmation" : "Seu compromisso \"1%s\" precisa de confirmação", - "Dear %s, please confirm your booking" : "Caro 1%s, por favor confirme a sua reserva", + "No more events today" : "Sem mais eventos para hoje", + "No upcoming events" : "Nenhum evento próximo", + "More events" : "Mais eventos", + "%1$s with %2$s" : "%1$s com %2$s", + "Calendar" : "Calendário", + "New booking {booking}" : "Nova reserva {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) marcou o compromisso \"{config_display_name}\" em {date_time}.", + "Appointments" : "Compromissos", + "Schedule appointment \"%s\"" : "Marcar compromisso \"%s\"", + "Schedule an appointment" : "Marcar compromisso", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Preparar para %s", + "Follow up for %s" : "Seguimento para %s", + "Your appointment \"%s\" with %s needs confirmation" : "Seu compromisso \"%s\" com %s precisa de confirmação", + "Dear %s, please confirm your booking" : "Olá %s, por favor confirme a sua reserva", "Confirm" : "Confirmar", - "This confirmation link expires in %s hours." : "Este link de confirmação expira 1%s em horas.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Se você deseja cancelar o compromisso, por favor, entre em contato com o seu organizador.", - "Appointment:" : "Agendamento:", + "Appointment with:" : "Compromisso com:", + "Description:" : "Descrição:", + "This confirmation link expires in %s hours." : "Este link de confirmação expirará em %s horas.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Se quiser cancelar o compromisso, entre em contato com o organizador respondendo a este e-mail ou visitando a página de perfil dele.", + "Your appointment \"%s\" with %s has been accepted" : "Seu compromisso \"%s\" com %s foi aceito", + "Dear %s, your booking has been accepted." : "Olá %s, sua reserva foi aceito.", + "Appointment for:" : "Compromisso para:", "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Você receberá um link no e-mail de confirmação", "Where:" : "Local:", - "Description:" : "Descrição:", - "Calendar" : "Calendário", + "Comment:" : "Comentário:", + "You have a new appointment booking \"%s\" from %s" : "Você tem um novo compromisso \"%s\" de %s", + "Dear %s, %s (%s) booked an appointment with you." : "Bom dia %s, %s (%s) marcou um compromisso com você.", "A Calendar app for Nextcloud" : "Um aplicativo de Calendário para Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "O aplicativo Calendário é uma interface de usuário para o servidor CalDAV do Nextcloud. Sincronize facilmente eventos de vários dispositivos com o Nextcloud e edite-os online.\n\n* 🚀 **Integração com outros aplicativos Nextcloud!** Atualmente Contatos - mais por vir.\n* 🌐 **Suporte WebCal!** Deseja ver as partidas do seu time no calendário? Sem problemas!\n* 🙋 **Participantes!** Convide pessoas para seus eventos\n* ⌚️ **Disponibilidade:** Veja quando seus participantes estarão disponíveis para atender\n* ⏰ **Lembretes!** Receba alarmes para eventos no seu navegador e via e-mail.\n* 🔍 Pesquise! Encontre seus eventos facilmente\n* ☑️ Tarefas! Veja as tarefas com a data de entrega diretamente no calendário\n* 🙈 **Não estamos reinventando a roda!** Baseado nas excelentes bibliotecas [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) e [fullcalendar](https://github.com/fullcalendar/fullcalendar).", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Um aplicativo de Calendário para Nextcloud. Sincronize facilmente eventos de vários dispositivos com seu Nextcloud e edite-os on-line.\n\n* 🚀 **Integração com outros aplicativos Nextcloud!** Como Contatos, Talk, Tarefas, Deck e Círculos\n* 🌐 **Suporte WebCal!** Quer ver os jogos do seu time favorito no seu calendário? Sem problemas!\n* 🙋 **Participantes!** Convide pessoas para seus eventos\n* ⌚ **Livre/Ocupado!** Veja quando seus participantes estão disponíveis para se reunir\n* ⏰ **Lembretes!** Receba alarmes para eventos no seu navegador e por e-mail\n* 🔍 **Pesquisar!** Encontre seus eventos com facilidade\n* ☑️ **Tarefas!** Veja tarefas ou cartões do Deck com data de vencimento diretamente no calendário\n* 🔈 **Salas do Talk!** Crie uma sala do Talk associada ao agendar uma reunião com apenas um clique\n* 📆 **Agendamento de compromissos** Envie às pessoas um link para que elas possam agendar uma consulta com você [usando este aplicativo](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Anexos!** Adicione, carregue e visualize anexos de eventos\n* 🙈 **Não estamos reinventando a roda!** Baseado nas excelentes bibliotecas [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) e [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Dia anterior", "Previous week" : "Semana anterior", + "Previous year" : "Ano anterior", "Previous month" : "Mês anterior", "Next day" : "Próximo dia", "Next week" : "Próxima semana", + "Next year" : "Próximo ano", "Next month" : "Próximo mês", - "New event" : "Novo evento", + "Create new event" : "Criar novo evento", + "Event" : "Evento", "Today" : "Hoje", "Day" : "Dia", "Week" : "Semana", "Month" : "Mês", + "Year" : "Ano", "List" : "Lista", - "Preview" : "Previsão", - "Copy link" : "Copiar o link", + "Appointment link was copied to clipboard" : "O link do compromisso foi copiado para a área de transferência", + "Appointment link could not be copied to clipboard" : "Não foi possível copiar o link do compromisso para a área de transferência", + "Preview" : "Pré-visualização", + "Copy link" : "Copiar link", "Edit" : "Editar", "Delete" : "Excluir", - "Appointment link was copied to clipboard" : "O link do agendamento foi copiado para a área de transferência", - "Appointment link could not be copied to clipboard" : "Não foi possível copiar o link do compromisso para a área de transferência", - "Add new" : "Adicionar novo", - "Untitled calendar" : "Calendário sem título", - "Edit name" : "Editar nome", - "Saving name …" : "Salvando nome...", - "Edit color" : "Editar cor", - "Saving color …" : "Salvando cor...", - "Copy private link" : "Copiar link privado", - "Export" : "Exportar", - "Unshare from me" : "Descompartilhar comigo", + "Appointment schedules" : "Agendamentos de compromissos", + "Create new" : "Criar novo", "Disable calendar \"{calendar}\"" : "Desativar calendário \"{calendar}\"", "Disable untitled calendar" : "Desativar calendário sem título", "Enable calendar \"{calendar}\"" : "Ativar calendário \"{calendar}\"", "Enable untitled calendar" : "Ativar calendário sem título", "An error occurred, unable to change visibility of the calendar." : "Erro ao alterar a visibilidade do calendário.", - "An error occurred, unable to delete the calendar." : "Erro ao excluir o calendário.", - "Calendar link copied to clipboard." : "Link do calendário copiado para a área de transferência.", - "Calendar link could not be copied to clipboard." : "Não foi possível copiar o link da agenda para a área de transferência.", - "An error occurred, unable to rename the calendar." : "Erro ao renomear o calendário.", - "An error occurred, unable to change the calendar's color." : "Erro ao alterar a cor do calendário.", + "Untitled calendar" : "Calendário sem título", + "Shared with you by" : "Compartilhado com você por", + "Edit and share calendar" : "Editar e compartilhar calendário", + "Edit calendar" : "Editar calendário", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Descompartilhando o calendário em {countdown} segundo","Descompartilhando o calendário em {countdown} segundos","Descompartilhando o calendário em {countdown} segundos"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Excluindo o calendário em {countdown} segundo","Excluindo o calendário em {countdown} segundos","Excluindo o calendário em {countdown} segundos"], + "An error occurred, unable to create the calendar." : "Erro ao criar o calendário.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Digite um link válido (começando com http://, https://, webcal://, ou webcals://)", + "Calendars" : "Calendários ", + "Add new" : "Adicionar novo", + "New calendar" : "Novo calendário", + "Name for new calendar" : "Nome do novo calendário", + "Creating calendar …" : "Criando calendário...", + "New calendar with task list" : "Novo calendário com lista de tarefas", + "New subscription from link (read-only)" : "Nova assinatura de link (somente leitura)", + "Creating subscription …" : "Criando assinatura …", + "Add public holiday calendar" : "Adicionar calendário de feriados", + "Add custom public calendar" : "Adicionar calendário público personalizado", + "Calendar link copied to clipboard." : "Link do calendário copiado para a área de transferência.", + "Calendar link could not be copied to clipboard." : "Não foi possível copiar o link da agenda para a área de transferência.", + "Copy subscription link" : "Copiar link de assinatura", + "Copying link …" : "Copiando link...", + "Copied link" : "Link copiado", + "Could not copy link" : "Não foi possível copiar o link", + "Export" : "Exportar", + "Untitled item" : "Item sem título ", + "Unknown calendar" : "Calendário desconhecido", + "Could not load deleted calendars and objects" : "Não foi possível carregar calendários e objetos excluídos", + "Could not delete calendar or event" : "Não foi possível excluir calendário ou evento", + "Could not restore calendar or event" : "Não foi possível restaurar o calendário ou evento", + "Do you really want to empty the trash bin?" : "Você realmente deseja esvaziar a lixeira?", + "Empty trash bin" : "Esvaziar lixeira", + "Trash bin" : "Lixeira", + "Loading deleted items." : "Carregando itens excluídos.", + "You do not have any deleted items." : "Você não tem itens excluídos.", + "Name" : "Nome", + "Deleted" : "Excluído", + "Restore" : "Restaurar", + "Delete permanently" : "Excluir permanentemente", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Os itens na lixeira são excluídos após {numDays} dia","Os itens na lixeira são excluídos após {numDays} dias","Os itens na lixeira são excluídos após {numDays} dias"], + "Could not update calendar order." : "Não foi possível atualizar o pedido da agenda.", + "Shared calendars" : "Calendários compartilhados", + "Deck" : "Deck", + "Hidden" : "Ocultos", + "Internal link" : "Link interno", + "A private link that can be used with external clients" : "Um link privado que pode ser usado com clientes externos", + "Copy internal link" : "Copiar link interno", + "An error occurred, unable to publish calendar." : "Erro ao publicar calendário.", + "An error occurred, unable to send email." : "Erro ao tentar enviar o e-mail.", + "Embed code copied to clipboard." : "Código de incorporação copiado para a área de transferência.", + "Embed code could not be copied to clipboard." : "O código de incorporação não pôde ser copiado para a área de transferência.", + "Unpublishing calendar failed" : "Erro ao remover a publicação do calendário", "Share link" : "Compartilhar link", - "Publish calendar" : "Publicar calendário", - "Publishing calendar" : "Calendário de publicação", "Copy public link" : "Copiar link público", "Send link to calendar via email" : "Enviar link para o calendário via e-mail", "Enter one address" : "Digite um endereço", "Sending email …" : "Enviando e-mail...", - "Copy subscription link" : "Copiar link de inscrição", - "Copying link …" : "Copiando link...", - "Copied link" : "Link copiado", - "Could not copy link" : "Não foi possível copiar o link", "Copy embedding code" : "Copiar código de incorporação", "Copying code …" : "Copiando código...", "Copied code" : "Código copiado", "Could not copy code" : "Não foi possível copiar o código", "Delete share link" : "Excluir compartilhamento do link", "Deleting share link …" : "Excluindo link de compartilhamento...", - "An error occurred, unable to publish calendar." : "Erro ao publicar calendário.", - "An error occurred, unable to send email." : "Erro ao tentar enviar o e-mail.", - "Embed code copied to clipboard." : "Código de incorporação copiado para a área de transferência.", - "Embed code could not be copied to clipboard." : "O código de incorporação não pôde ser copiado para a área de transferência.", - "Unpublishing calendar failed" : "Erro ao remover a publicação do calendário", - "Share with users or groups" : "Compartilhar com usuários ou grupos", - "No users or groups" : "Nenhum usuário ou grupo", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Equipe)", + "An error occurred while unsharing the calendar." : "Ocorreu um erro ao cancelar o compartilhamento do calendário.", + "An error occurred, unable to change the permission of the share." : "Erro ao alterar a permissão do compartilhamento.", "can edit" : "pode editar", "Unshare with {displayName}" : "Descompartilhar com {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Erro ao descompartilhar o calendário.", - "An error occurred, unable to change the permission of the share." : "Erro ao alterar a permissão do compartilhamento.", - "+ New calendar" : "+ Novo calendário", - "New calendar" : "Novo calendário", - "Name for new calendar" : "Nome para o calendário", - "Creating calendar …" : "Criando calendário...", - "New calendar with task list" : "Novo calendário com lista de tarefas", - "New subscription from link (read-only)" : "Nova subscrição do link (somente leitura)", - "Creating subscription …" : "Criando assinatura...", - "An error occurred, unable to create the calendar." : "Erro ao criar o calendário.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Digite um link válido (começando com http://, https://, webcal://, ou webcals://)", - "Trash bin" : "Lixeira", - "Loading deleted elements." : "Carregando elementos excluídos. ", - "You do not have any deleted elements." : "Você não tem nenhum elemento excluído. ", - "Name" : "Nome", - "Deleted" : "Excluído", - "Restore" : "Restaurar", - "Delete permanently" : "Excluir permanentemente", - "Empty trash bin" : "Esvaziar lixeira", - "Untitled element" : "Elemento sem título", - "Unknown calendar" : "Calendário desconhecido", - "Could not load deleted calendars and objects" : "Não foi possível carregar calendários e objetos excluídos", - "Could not restore calendar or event" : "Não foi possível restaurar o calendário ou evento", - "Do you really want to empty the trash bin?" : "Tem certeza de que deseja esvaziar a lixeira?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["O elemento da lixeira será excluído após {numDays} dia","Os elementos da lixeira são excluídos após {numDays} dias","Os elementos da lixeira são excluídos após {numDays} dias"], - "Could not update calendar order." : "Não foi possível atualizar o pedido da agenda.", + "Share with users or groups" : "Compartilhar com usuários ou grupos", + "No users or groups" : "Nenhum usuário ou grupo", + "Failed to save calendar name and color" : "Falha ao salvar o nome e a cor do calendário", + "Calendar name …" : "Nome do calendário …", + "Never show me as busy (set this calendar to transparent)" : "Nunca me mostrar como ocupado (definir este calendário como transparente)", + "Share calendar" : "Compartilhar calendário", + "Unshare from me" : "Descompartilhar comigo", + "Save" : "Salvar", "Import calendars" : "Importar calendários", - "Please select a calendar to import into …" : "Selecione o calendário para onde importar...", + "Please select a calendar to import into …" : "Selecione o calendário no qual importar …", "Filename" : "Nome de arquivo", - "Calendar to import into" : "Calendário a importar", + "Calendar to import into" : "Calendário no qual importar", "Cancel" : "Cancelar", "_Import calendar_::_Import calendars_" : ["Importar calendário","Importar calendários","Importar calendários"], + "Select the default location for attachments" : "Selecione o local padrão para os anexos", + "Pick" : "Escolher", + "Invalid location selected" : "Local inválido selecionado", + "Attachments folder successfully saved." : "Pasta de anexos salva com sucesso.", + "Error on saving attachments folder." : "Erro ao salvar a pasta de anexos.", + "Default attachments location" : "Local padrão dos anexos", "{filename} could not be parsed" : "{filename} não pôde ser analisado", "No valid files found, aborting import" : "Nenhum arquivo válido encontrado, importação interrompida", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Importou %n evento com sucesso","Importou %n eventos com sucesso","Importou %n eventos com sucesso"], "Import partially failed. Imported {accepted} out of {total}." : "Erro na importação. Importado {accepted} de {total}.", - "_Successfully imported %n event_::_Successfully imported %n events_" : ["Importado com sucesso %n evento","Importados com sucesso %n eventos","Importados com sucesso %n eventos"], "Automatic" : "Automático", "Automatic ({detected})" : "Automático ({detected})", "New setting was not saved successfully." : "A nova configuração não foi salva.", - "Shortcut overview" : "Visão geral de atalhos", - "or" : "ou", "Navigation" : "Navegação", "Previous period" : "Período anterior", "Next period" : "Próximo período", "Views" : "Visualizações", "Day view" : "Visão diária", - "Week view" : "Visão semanal", - "Month view" : "Visão mensal", - "List view" : "Exibição de lista", + "Week view" : "Visualização de semana", + "Month view" : "Visualização de mês", + "Year view" : "Visualização de ano", + "List view" : "Visualização de lista", "Actions" : "Ações", "Create event" : "Criar evento", "Show shortcuts" : "Mostrar atalhos", @@ -149,25 +183,30 @@ OC.L10N.register( "Close editor" : "Fechar editor", "Save edited event" : "Salvar evento editado", "Delete edited event" : "Excluir evento editado", - "Duplicate event" : "Evento duplicado", + "Duplicate event" : "Duplicar evento", + "Shortcut overview" : "Visão geral de atalhos", + "or" : "ou", + "Calendar settings" : "Configurações do calendário", + "At event start" : "No início do evento", + "No reminder" : "Nenhum lembrete", + "Failed to save default calendar" : "Falha ao salvar o calendário padrão", + "CalDAV link copied to clipboard." : "Link CalDAV copiado para a área de transferência.", + "CalDAV link could not be copied to clipboard." : "Link CalDAV não copiado para a área de transferência.", "Enable birthday calendar" : "Ativar calendário de aniversários", "Show tasks in calendar" : "Mostrar tarefas no calendário", "Enable simplified editor" : "Ativar o editor simplificado", - "Limit visible events per view" : "Limitar eventos visíveis por visualização", + "Limit the number of events displayed in the monthly view" : "Limitar número de eventos mostrados no modo de visualização mensal", "Show weekends" : "Mostrar fins de semana", "Show week numbers" : "Exibir o número das semanas", "Time increments" : "Incrementos de tempo", + "Default calendar for incoming invitations" : "Calendário padrão para convites recebidos", "Default reminder" : "Lembrete padrão", "Copy primary CalDAV address" : "Copiar endereço CalDAV primário", "Copy iOS/macOS CalDAV address" : "Copiar endereço iOS/macOS CalDAV", "Personal availability settings" : "Configurações de disponibilidade pessoal", "Show keyboard shortcuts" : "Mostrar atalhos de teclado", - "Calendar settings" : "Configurações do calendário", - "No reminder" : "Nenhum lembrete", - "CalDAV link copied to clipboard." : "Link CalDAV copiado para a área de transferência.", - "CalDAV link could not be copied to clipboard." : "Link CalDAV não copiado para a área de transferência.", - "Appointment was created successfully" : "O compromisso foi criado com sucesso", - "Appointment was updated successfully" : "Agendamento atualizado com sucesso", + "Appointment schedule successfully created" : "Agendamento de compromissos criado com sucesso", + "Appointment schedule successfully updated" : "Agendamento de compromissos atualizado com sucesso", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuto","{duration} minutos","{duration} minutos"], "0 minutes" : "0 minutos", "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} horas","{duration} horas"], @@ -176,16 +215,23 @@ OC.L10N.register( "_{duration} month_::_{duration} months_" : ["{duration} mês","{duration} meses","{duration} meses"], "_{duration} year_::_{duration} years_" : ["{duration} ano","{duration} anos","{duration} anos"], "To configure appointments, add your email address in personal settings." : "Para configurar compromissos, adicione seu endereço de e-mail nas configurações pessoais.", - "Public – shown on the profile page" : "Público - mostrado na página do perfil", - "Private – only accessible via secret link" : "Privado - acessível apenas por meio de link secreto", + "Public – shown on the profile page" : "Público – mostrado na página do perfil", + "Private – only accessible via secret link" : "Privado – acessível apenas por meio de link secreto", + "Appointment schedule saved" : "Agendamento de compromissos salvo", + "Create appointment schedule" : "Criar agendamento de compromissos", + "Edit appointment schedule" : "Editar agendamento de compromissos", + "Update" : "Atualizar", + "Appointment name" : "Nome do compromisso", "Location" : "Localização", + "Create a Talk room" : "Criar uma sala do Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Um link exclusivo será gerado para cada compromisso agendado e enviado por e-mail de confirmação", "Description" : "Descrição", "Visibility" : "Visibilidade", "Duration" : "Duração:", "Increments" : "Incrementos", "Additional calendars to check for conflicts" : "Calendários adicionais para verificar conflitos", - "Pick time ranges where appointments are allowed" : "Escolha os intervalos de tempo onde os compromissos são permitidos", - "to" : "para", + "Pick time ranges where appointments are allowed" : "Selecione intervalos de tempo em que os compromissos são permitidos", + "to" : "às", "Delete slot" : "Excluir vaga", "No times set" : "Nenhum horário definido", "Add" : "Adicionar", @@ -196,26 +242,38 @@ OC.L10N.register( "Friday" : "Sexta-feira", "Saturday" : "Sábado", "Sunday" : "Domingo", + "Weekdays" : "Dias de semana", "Add time before and after the event" : "Adicionar um tempo antes e depois do evento", "Before the event" : "Antes do evento", "After the event" : "Depois do evento", "Planning restrictions" : "Restrições de planejamento", - "Minimum time before next available slot" : "Tempo mínimo antes do próximo vaga disponível", + "Minimum time before next available slot" : "Tempo mínimo antes da próxima vaga disponível", "Max slots per day" : "Máximo de vagas por dia", - "Limit how far in the future appointments can be booked" : "Limite em quanto tempo os compromissos futuros podem ser reservados", - "Create appointment" : "Criar compromisso", - "Edit appointment" : "Editar compromisso", - "Save" : "Salvar", - "Update" : "Atualizar", + "Limit how far in the future appointments can be booked" : "Limite de tempo para reserva de agendamentos futuros", + "It seems a rate limit has been reached. Please try again later." : "Parece que um limite de taxa foi atingido. Por favor, tente novamente mais tarde.", "Please confirm your reservation" : "Por favor, confirme sua reserva", - "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Enviamos a você um e-mail com os detalhes. Por favor, confirme seu agendamento usando o link no e-mail. Você pode fechar esta página agora.", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Enviamos a você um e-mail com os detalhes. Por favor, confirme seu compromisso usando o link no e-mail. Você pode fechar esta página agora.", "Your name" : "Seu nome", "Your email address" : "Seu endereço de e-mail", "Please share anything that will help prepare for our meeting" : "Por favor, compartilhe qualquer coisa que ajude a se preparar para nosso encontro", "Could not book the appointment. Please try again later or contact the organizer." : "Não foi possível agendar o compromisso. Tente novamente mais tarde ou entre em contato com o organizador.", - "Book the appointment" : "Agendar o compromisso", - "Reminder" : "Lembrete", - "before at" : "antes das", + "Back" : "Voltar", + "Book appointment" : "Marcar agendamento", + "Error fetching Talk conversations." : "Erro ao buscar conversas do Talk.", + "Conversation does not have a valid URL." : "A conversa não tem um URL válido.", + "Successfully added Talk conversation link to location." : "Adicionado com sucesso o link da conversa do Talk à localização.", + "Successfully added Talk conversation link to description." : "Adicionado com sucesso o link da conversa do Talk na descrição.", + "Failed to apply Talk room." : "Falha ao aplicar a sala do Talk.", + "Error creating Talk conversation" : "Erro ao criar conversa do Talk", + "Select a Talk Room" : "Selecione uma Sala do Talk", + "Add Talk conversation" : "Adicionar conversa do Talk", + "Fetching Talk rooms…" : "Buscando salas do Talk…", + "No Talk room available" : "Nenhuma sala do Talk disponível", + "Create a new conversation" : "Criar uma nova conversa", + "Select conversation" : "Selecione conversa", + "on" : "ligado", + "at" : "em", + "before at" : "antes às", "Notification" : "Notificação", "Email" : "E-mail", "Audio notification" : "Notificação de áudio", @@ -225,114 +283,147 @@ OC.L10N.register( "Edit time" : "Editar horário", "Save time" : "Salvar horário", "Remove reminder" : "Remover lembrete", - "on" : "ligado", - "at" : "em", - "+ Add reminder" : "+ Adicionar lembrete", "Add reminder" : "Adicionar lembrete ", - "_second_::_seconds_" : ["segundo","segundos","segundos"], - "_minute_::_minutes_" : ["minuto","minutos","minutos"], - "_hour_::_hours_" : ["hora","horas","horas"], - "_day_::_days_" : ["dia","dias","dias"], - "_week_::_weeks_" : ["semana","semanas","semanas"], + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "dias", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Escolha um arquivo para adicionar como anexo", + "Choose a file to share as a link" : "Escolha um arquivo para compartilhar como link", + "Attachment {name} already exist!" : "Anexo {name} já existe!", + "Could not upload attachment(s)" : "Não foi possível carregar anexo(s)", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Você está prestes a fazer download de um arquivo. Verifique o nome do arquivo antes de abri-lo. Tem certeza de que pode prosseguir?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Você está prestes a navegar para {host}. Tem certeza de que deseja prosseguir? Link: {link}", + "Proceed" : "Prosseguir", + "No attachments" : "Sem anexos", + "Add from Files" : "Adicionar de Arquivos", + "Upload from device" : "Fazer upload do dispositivo", + "Delete file" : "Excluir arquivo", + "Confirmation" : "Confirmação", + "_{count} attachment_::_{count} attachments_" : ["{count} anexo","{count} anexos","{count} anexos"], "Suggested" : "Sugerido", "Available" : "Disponível", - "Not available" : "Indisponível", - "Checking availability" : "Verificando disponibilidade", "Invitation accepted" : "Convite aceito", "Accepted {organizerName}'s invitation" : "Aceitou o convite de {organizerName}", + "Participation marked as tentative" : "Participação marcada como tentativa", + "Invitation is delegated" : "O convite é delegado", + "Not available" : "Indisponível", "Invitation declined" : "Convite recusado", "Declined {organizerName}'s invitation" : "Recusou o convite de {organizerName}", - "Invitation is delegated" : "O convite é delegado", - "Participation marked as tentative" : "Participação marcada como provisória", - "Invitation sent" : "Convite enviado", + "Availability will be checked" : "A disponibilidade será verificada", + "Invitation will be sent" : "O convite será enviado", + "Failed to check availability" : "Falha ao verificar a disponibilidade", + "Failed to deliver invitation" : "Falha na entrega do convite", + "Awaiting response" : "Esperando resposta", + "Checking availability" : "Verificando disponibilidade", "Has not responded to {organizerName}'s invitation yet" : "Ainda não respondeu ao convite de {organizerName}", - "Availability of attendees, resources and rooms" : "Disponibilidade de participantes, recursos e salas", + "Suggested times" : "Horários sugeridos", + "chairperson" : "presidente", + "required participant" : "participante obrigatório", + "non-participant" : "não participante", + "optional participant" : "participante opcional", "{organizer} (organizer)" : "{organizer} (organizador)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Disponibilidade de participantes, recursos e salas", + "Suggestion accepted" : "Sugestão aceita", + "Previous date" : "Data anterior", + "Next date" : "Próxima data", + "Legend" : "Legenda", + "Out of office" : "Fora do escritório", + "Attendees:" : "Participantes:", + "Done" : "Concluído", + "Search room" : "Pesquisar sala", + "Room name" : "Nome da sala", + "Check room availability" : "Verificar disponibilidade da sala", "Free" : "Livre", - "Busy (tentative)" : "Ocupado (talvez)", + "Busy (tentative)" : "Ocupado (tentativa)", "Busy" : "Ocupado", - "Out of office" : "Fora do escritório", "Unknown" : "Desconhecido", - "Accept" : "Aceitar", - "Decline" : "Recusar", - "Tentative" : "Talvez", - "The invitation has been accepted successfully." : "O convite foi aceito.", + "Find a time" : "Encontrar um horário", + "The invitation has been accepted successfully." : "O convite foi aceito com sucesso.", "Failed to accept the invitation." : "Falha ao aceitar o convite.", - "The invitation has been declined successfully." : "O convite foi recusado.", + "The invitation has been declined successfully." : "O convite foi recusado com sucesso.", "Failed to decline the invitation." : "Falha ao recusar o convite.", - "Your participation has been marked as tentative." : "Sua participação foi marcada como incerta.", - "Failed to set the participation status to tentative." : "Falha ao marcar sua participação como incerta.", - "Create Talk room for this event" : "Criar sala no Talk para este evento", - "Show busy times" : "Mostrar horários ocupados", + "Your participation has been marked as tentative." : "Sua participação foi marcada como tentativa.", + "Failed to set the participation status to tentative." : "Falha ao marcar seu status da participação como tentativa.", + "Accept" : "Aceitar", + "Decline" : "Recusar", + "Tentative" : "Tentativa", "No attendees yet" : "Nenhum participante ainda", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} convidados, {confirmedCount} confirmados", + "Please add at least one attendee to use the \"Find a time\" feature." : "Por favor, adicione pelo menos um participante para usar o recurso \"Encontrar um horário\".", + "Successfully appended link to talk room to location." : "Link da sala do Talk anexado com sucesso à localização.", "Successfully appended link to talk room to description." : "O link para a sala Talk foi adicionado com sucesso na descrição", "Error creating Talk room" : "Erro ao criar a sala Talk", - "Send email" : "Enviar e-mail", - "Chairperson" : "Organizador", + "Attendees" : "Participantes", + "_%n more guest_::_%n more guests_" : ["Mais %n convidado","Mais %n convidados","Mais %n convidados"], + "Remove group" : "Remover grupo", + "Remove attendee" : "Remover participante", + "Request reply" : "Solicitar resposta", + "Chairperson" : "Presidente", "Required participant" : "Participante obrigatório", "Optional participant" : "Participante opcional", "Non-participant" : "Não participante", - "Remove attendee" : "Remover participante", - "Search for emails, users or contacts" : "Pesquise e-mails, usuários ou contatos", + "_%n member_::_%n members_" : ["%n membro","%n membros","%n membros"], + "Search for emails, users, contacts, contact groups or teams" : "Pesquise e-mails, usuários, contatos, grupos de contatos ou equipes", "No match found" : "Nenhuma correspondência encontrada", + "Note that members of circles get invited but are not synced yet." : "Observe que os membros dos círculos são convidados, mas ainda não estão sincronizados.", + "Note that members of contact groups get invited but are not synced yet." : "Observe que os membros dos grupos de contatos são convidados, mas ainda não estão sincronizados.", "(organizer)" : "(organizador)", + "Make {label} the organizer" : "Torne {label} o organizador", + "Make {label} the organizer and attend" : "Torne {label} o organizador e participe", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Para enviar convites e gerenciar respostas, [linkopen]adicione seu endereço de e-mail nas configurações pessoais[linkclose].", "Remove color" : "Remover cor", "Event title" : "Título do evento", - "All day" : "Dia inteiro", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Não é possível modificar a configuração de dia inteiro para eventos que fazem parte de um conjunto de recorrência.", - "from {startDate}" : "de {startDate}", - "from {startDate} at {startTime}" : "de {startDate} às {startTime}", - "to {endDate}" : "até {endDate}", - "to {endDate} at {endTime}" : "até {endDate} às {endTime}", + "From" : "De", + "To" : "Para", "Repeat" : "Repetir", - "End repeat" : "Terminar repetição", - "Select to end repeat" : "Selecione para finalizar a repetição", + "Repeat event" : "Repetir evento", + "_time_::_times_" : ["vez","vezes","vezes"], "never" : "nunca", "on date" : "na data", "after" : "após", - "_time_::_times_" : ["vez","vezes","vezes"], + "End repeat" : "Terminar repetição", + "Select to end repeat" : "Selecione para finalizar a repetição", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Este evento é a exceção de recorrência de um conjunto de recorrência. Você não pode adicionar uma regra de recorrência a ele.", "first" : "primeiro", - "third" : "terceiro", - "fourth" : "quarto", - "fifth" : "quinto", - "second to last" : "segundos atrás", - "last" : "último", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Alterações na regra de recorrência serão aplicadas somente a esta e a todas as ocorrências futuras.", "Repeat every" : "Repetir a cada", "By day of the month" : "Pelo dia do mês", "On the" : "Em", + "_day_::_days_" : ["dia","dias","dias"], + "_week_::_weeks_" : ["semana","semanas","semanas"], "_month_::_months_" : ["mês","meses","meses"], "_year_::_years_" : ["ano","anos","anos"], + "On specific day" : "Em um dia específico", "weekday" : "Dia da semana", "weekend day" : "dia da semana", - "No recurrence" : "Sem recorrência ", + "Does not repeat" : "Não se repete", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "A definição de recorrência deste evento não é totalmente suportada pelo Nextcloud. Se você editar as opções de recorrência, determinadas recorrências poderão ser perdidas.", - "Suggestions" : "Sugestões", "No rooms or resources yet" : "Ainda não há salas ou recursos", + "Resources" : "Recursos", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} assento","{seatingCapacity} assentos","{seatingCapacity} assentos"], "Add resource" : "Adicionar recurso", "Has a projector" : "Tem projetor", "Has a whiteboard" : "Tem quadro branco", "Wheelchair accessible" : "Acessível a cadeiras de rodas", "Remove resource" : "Remover recurso", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} assento","{seatingCapacity} assentos","{seatingCapacity} assentos"], - "Projector" : "Projetor", - "Whiteboard" : "Quadro branco", "Search for resources or rooms" : "Pesquise recursos ou salas", "available" : "disponível", "unavailable" : "indisponível", + "Show all rooms" : "Mostrar todas as salas", + "Projector" : "Projetor", + "Whiteboard" : "Quadro branco", "Room type" : "Tipo de sala", "Any" : "Qualquer uma", - "Minimum seating capacity" : "Capacidade mínima de assento", - "More" : "Mais", - "Update this occurrence" : "Atualizar esta ocorrência", + "Minimum seating capacity" : "Capacidade mínima de assentos", + "More details" : "Mais detalhes", "Update this and all future" : "Atualizar este e todos os futuros", + "Update this occurrence" : "Atualizar esta ocorrência", "Public calendar does not exist" : "Calendário público não existe", "Maybe the share was deleted or has expired?" : "Talvez o compartilhamento esteja excluído ou expirado?", - "Please select a time zone:" : "Selecione um fuso horário:", - "Pick a time" : "Escolha um horário", - "Pick a date" : "Escolha uma data", "from {formattedDate}" : "de {formattedDate}", "to {formattedDate}" : "até {formattedDate}", "on {formattedDate}" : "em {formattedDate}", @@ -342,43 +433,61 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} às {formattedTime}", "Please enter a valid date" : "Digite uma data válida", "Please enter a valid date and time" : "Digite uma data e hora válida", + "Select a time zone" : "Selecione um fuso horário", + "Please select a time zone:" : "Selecione um fuso horário:", + "Pick a time" : "Escolha um horário", + "Pick a date" : "Escolha uma data", "Type to search time zone" : "Digite para pesquisar o fuso horário", "Global" : "Global", - "Select date" : "Selecionar data", - "Select slot" : "Selecionar vaga", + "Holidays in {region}" : "Feriados em {region}", + "An error occurred, unable to read public calendars." : "Ocorreu um erro, não foi possível ler calendários públicos.", + "An error occurred, unable to subscribe to calendar." : "Ocorreu um erro, não foi possível assinar o calendário.", + "Public holiday calendars" : "Calendários de feriados", + "Public calendars" : "Calendários públicos", + "No valid public calendars configured" : "Nenhum calendário público válido configurado", + "Speak to the server administrator to resolve this issue." : "Fale com o administrador do servidor para resolver este problema.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Os calendários de feriados públicos são fornecidos pelo Thunderbird. Os dados do calendário serão baixados de {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Estes calendários públicos são sugeridos pelo administrador do servidor. Os dados do calendário serão baixados do respectivo site.", + "By {authors}" : "Por {authors}", + "Subscribed" : "Assinado", + "Subscribe" : "Assinar", + "Could not fetch slots" : "Não foi possível buscar vagas", + "Select a date" : "Selecione uma data", + "Select slot" : "Selecione vaga", "No slots available" : "Nenhuma vaga disponível", - "The slot for your appointment has been confirmed" : "A vaga para o seu agendamento foi confirmada", - "Appointment Details:" : "Detalhes do Agendamento:", - "Time:" : "Tempo:", + "The slot for your appointment has been confirmed" : "A vaga para seu compromisso foi confirmada", + "Appointment Details:" : "Detalhes do Compromisso:", + "Time:" : "Hórario:", "Booked for:" : "Reservado para:", - "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Obrigada. Sua reserva de {startDate} a {endDate} foi confirmada.", - "Book another appointment:" : "Agendar outro compromisso", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Obrigado. Sua reserva de {startDate} a {endDate} foi confirmada.", + "Book another appointment:" : "Marcar outro compromisso:", "See all available slots" : "Ver todas as vagas disponíveis", - "The slot for your appointment from {startDate} to {endDate} is not available any more." : "O período para seu compromisso de {startDate} a {endDate} não está mais disponível.", - "Please book a different slot:" : "Reserve um slot diferente:", - "Book an appointment with {name}" : "Agende um compromisso com {name}", - "No public appointments found for {name}" : "Nenhum agendamento público encontrado para {name}", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "A vaga de seu compromisso, de {startDate} a {endDate}, não está mais disponível.", + "Please book a different slot:" : "Por favor, reserve uma vaga diferente:", + "Book an appointment with {name}" : "Marque um compromisso com {name}", + "No public appointments found for {name}" : "Não foi encontrado nenhum compromisso público para {name}", "Personal" : "Pessoal", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "A detecção automática determinou que seu fuso horário seja UTC.\nProvavelmente, isso é resultado de medidas de segurança do seu navegador.\nDefina seu fuso horário manualmente nas configurações do calendário.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Seu fuso horário configurado ({timezoneId}) não foi encontrado. Retornando ao UTC.\nAltere seu fuso horário nas configurações e informe este problema.", - "No more events today" : "Sem mais eventos para hoje", - "No upcoming events" : "Nenhum evento próximo", - "Create a new event" : "Criar um novo evento", - "[Today]" : "[Hoje]", - "[Tomorrow]" : "[Amanhã]", - "[Yesterday]" : "[Ontem]", - "[Last] dddd" : "[Último] dddd", + "Availability of {displayName}" : "Disponibilidade de {displayName}", + "Edit event" : "Editar evento", "Event does not exist" : "O evento não existe", - "Duplicate" : "Duplicada", + "Duplicate" : "Duplicar", "Delete this occurrence" : "Excluir esta ocorrência", "Delete this and all future" : "Excluir esta e todas as futuras", - "Details" : "Detalhes", - "Attendees" : "Participantes", - "Resources" : "Recursos", + "All day" : "Dia inteiro", + "Modifications wont get propagated to the organizer and other attendees" : "As modificações não serão propagadas para o organizador e outros participantes", + "Managing shared access" : "Gerenciar acesso compartilhado", + "Deny access" : "Negar acesso", + "Invite" : "Convidar", + "_User requires access to your file_::_Users require access to your file_" : ["Usuário requer acesso ao seu arquivo","Usuários requerem acesso ao seu arquivo","Usuários requerem acesso ao seu arquivo"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Anexo exige acesso compartilhado","Anexos exigem acesso compartilhado","Anexos exigem acesso compartilhado"], + "Untitled event" : "Evento sem título", "Close" : "Fechar", - "Show more details" : "Mostrar mais detalhes", - "Subscribe to {name}" : "Inscrever-se em {name}", + "Modifications will not get propagated to the organizer and other attendees" : "As modificações não serão propagadas para o organizador e outros participantes", + "Subscribe to {name}" : "Assinar {name}", "Export {name}" : "Exportar {name}", + "Show availability" : "Mostrar disponibilidade", "Anniversary" : "Aniversário", "Appointment" : "Compromisso", "Business" : "Negócio", @@ -406,7 +515,6 @@ OC.L10N.register( "on {time}" : "às {time}", "on {time} ({timezoneId})" : "às {time} ({timezoneId})", "Week {number} of {year}" : "Semana {number} de {year}", - "Does not repeat" : "Não repetir", "Daily" : "Diariamente", "Weekly" : "Semanalmente", "Monthly" : "Mensalmente", @@ -418,37 +526,43 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["em {weekday}","em {weekdays}","em {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["no dia {dayOfMonthList}","nos dias {dayOfMonthList}","nos dias {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "no {ordinalNumber} {byDaySet}", - "in {monthNames}" : "em {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "em {monthNames} no dia {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "em {monthNames} no {ordinalNumber} {byDaySet}", "until {untilDate}" : "até {untilDate}", "_%n time_::_%n times_" : ["%n vez","%n vezes","%n vezes"], - "Untitled event" : "Evento sem título", + "second" : "segundo", + "third" : "terceiro", + "fourth" : "quarto", + "fifth" : "quinto", + "second to last" : "segundos atrás", + "last" : "último", "Untitled task" : "Tarefa sem título", "Please ask your administrator to enable the Tasks App." : "Peça ao administrador para ativar o aplicativo Tarefas.", - "Prev" : "Anterior", - "Next" : "Próximo", - "Prev year" : "Ano anterior", - "Next year" : "Próximo ano", - "Year" : "Ano", + "You are not allowed to edit this event as an attendee." : "Você não tem permissão para editar esse evento como participante.", "W" : "S", - "%n more" : "%n mais", + "%n more" : "mais %n", "No events to display" : "Não há mais eventos a mostrar", + "All participants declined" : "Todos os participantes recusaram", + "Please confirm your participation" : "Por favor, confirme sua participação", + "You declined this event" : "Você recusou este evento", + "Your participation is tentative" : "Sua participação é tentativa", "_+%n more_::_+%n more_" : ["mais +%n","mais +%n","mais +%n"], "No events" : "Sem eventos", "Create a new event or change the visible time-range" : "Crie um novo evento ou altere o intervalo de tempo visível", + "Failed to save event" : "Falha ao salvar o evento", "It might have been deleted, or there was a typo in a link" : "Pode ter sido excluído ou houve um erro de digitação no link", "It might have been deleted, or there was a typo in the link" : "Pode ter sido excluído ou houve um erro de digitação no link", "Meeting room" : "Sala de reuniões", "Lecture hall" : "Auditório", "Seminar room" : "Sala de seminários", - "Other" : "De Outro", + "Other" : "Outro", "When shared show" : "Quando compartilhando mostrar", "When shared show full event" : "Quando compartilhado, mostrar evento completo", "When shared show only busy" : "Quando compartilhado, mostrar somente ocupado", "When shared hide this event" : "Quando compartilhado, ocultar este evento", "The visibility of this event in shared calendars." : "A visibilidade deste evento em calendários compartilhados.", - "Add a location" : "Adicionar uma localização", - "Add a description" : "Adicionar uma descrição", + "Add a location" : "Adicione uma localização", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Adicione uma descrição\n\n- Sobre o que é esta reunião\n- Itens da agenda\n- Qualquer coisa que os participantes precisem preparar", "Status" : "Status", "Confirmed" : "Confirmado", "Canceled" : "Cancelado", @@ -461,135 +575,26 @@ OC.L10N.register( "Add this as a new category" : "Adicione isso como uma nova categoria", "Custom color" : "Cor personalizada", "Special color of this event. Overrides the calendar-color." : "Cor especial deste evento. Substitui a cor do calendário.", - "Chat room for event" : "Sala de bato-papo para evento", + "Error while sharing file" : "Erro ao compartilhar arquivo", + "Error while sharing file with user" : "Erro ao compartilhar arquivo com o usuário", + "Error creating a folder {folder}" : "Erro ao criar uma pasta {folder}", + "Attachment {fileName} already exists!" : "Anexo {fileName} já existe!", + "Attachment {fileName} added!" : "Anexo {fileName} adicionado!", + "An error occurred during uploading file {fileName}" : "Ocorreu um erro durante o upload do arquivo {fileName}", + "An error occurred during getting file information" : "Ocorreu um erro ao obter informações sobre o arquivo", + "Talk conversation for event" : "Conversa do Talk para o evento", + "An error occurred, unable to delete the calendar." : "Erro ao excluir o calendário.", "Imported {filename}" : "Importado {filename}", - "Meditation" : "Meditação", - "Relaxing" : "Relaxamento", - "Relax" : "Relaxamento", - "Break" : "Pausa", - "Commute" : "Trajeto", - "Commuting" : "Alternância", - "Shuttle" : "Transporte", - "Invoice" : "Fatura", - "Finance" : "Finança", - "Bank" : "Banco", - "Money" : "Dinheiro", - "Wedding" : "Casamento", - "Dog" : "Cachorro", - "Concert" : "Conserto", - "Festival" : "Festival", - "Theater" : "Teatro ", - "Theatre" : "Teatro", - "Presentation" : "Apresentação", - "Talk" : "Falar", - "Speech" : "Discurso", - "Deadline" : "Prazo final", - "Submission" : "Submissão", - "Reporting" : "Relatando", - "Camping" : "Acampamento", - "Camp" : "Acampamento", - "Election" : "Eleição", - "Voting" : "Votando", - "Vote" : "Voto", - "Barbecue" : "Churrasco", - "Barbeque" : "Churrasco", - "Garden" : "Jardim", - "Farm" : "Fazenda", - "Movie" : "Filme", - "Cinema" : "Cinema", - "Graduation" : "Formatura", - "Brainstorm" : "Brainstorm", - "Review" : "Revisar", - "Audit" : "Auditoria", - "Inspection" : "Inspeção", - "Proofreading" : "Revisão", - "Baseball" : "Beisebol", - "Meet" : "Reunião", - "Planning" : "Planejamento", - "Pointing" : "Apontar", - "Retrospective" : "Retrospectiva", - "Office" : "Escritório", - "Contributor week" : "Semana do colaborador", - "Mail" : "Correspondência", - "Soccer" : "Futebol", - "Football" : "Futebol americano", - "Gaming" : "Jogo", - "Drive" : "Dirigir", - "Driving" : "Dirigindo", - "Bicycle" : "Bicicleta", - "Cycle" : "Bicicleta", - "Cycling" : "Ciclismo", - "Biking" : "Ciclismo", - "Bike" : "Bicicleta", - "Podcast" : "Podcast", - "Basketball" : "Basquete", - "Fishing" : "Pesca", - "Hiking" : "Caminhada", - "Hike" : "Caminhada", - "Art" : "Arte", - "Exhibition" : "Exibição", - "Museum" : "Museu", - "Pilates" : "Pilates", - "Park" : "Parque", - "Walk" : "Andar", - "Studying" : "Estudo", - "Doctor" : "Doutor", - "Health" : "Saúde", - "Dentist" : "Dentista", - "Hospital" : "Hospital", - "Interview" : "Entrevista", - "Training" : "Treinamento", - "Practice" : "Prática", - "Sports" : "Esportes", - "Exercise" : "Exercício", - "Work out" : "Ginástica", - "Working out" : "Ginástica", - "Gym" : "Academia", - "Barber" : "Barbeiro", - "Haircut" : "Cortar cabelo", - "Hairdresser" : "Cabeleireiro", - "Exam" : "Exame", - "Written test" : "Teste escrito", - "Oral test" : "Teste oral", - "Working" : "Trabalho", - "New Years Eve" : "Véspera de Ano Novo", - "NYE" : "NYE", - "Fireworks" : "Fogos de artifício", - "Running" : "Corrida", - "Go for a run" : "Ir correr", - "Marathon" : "Maratona", - "Video-conference" : "Vídeo-conferência", - "Conference-call" : "Conferência-chamada", - "Video-call" : "Vídeo-chamada", - "Video-chat" : "Vídeo-chat", - "Video-meeting" : "Vídeo-reunião", - "Call" : "Chamada", - "Calling" : "Chamada", - "Christmas" : "Natal", - "Conference" : "Conferência", - "Pizza" : "Pizza", - "Travelling" : "Viagem", - "Trip" : "Viagem", - "Journey" : "Jornada", - "Collaborate" : "Colaborativo", - "Pair" : "Par", - "Lecture" : "Leitura", - "Seminar" : "Seminário", - "Teaching" : "Ensinando", - "Photograph" : "Fotografia", - "Party" : "Festa", - "Celebration" : "Comemoração", - "Celebrate" : "Comemorar", - "Birthday" : "Aniversário", - "Shopping" : "Compras", - "Groceries" : "Mercearias", - "Skate" : "Skate", - "Skateboard" : "Skate", - "Wine tasting" : "Degustação de vinho", - "Golf" : "Golfe", - "Dinner" : "Jantar", - "Lunch" : "Rodar", - "Appointment not found" : "Agendamento não encontrado", - "User not found" : "Usuário não encontrado" + "This is an event reminder." : "Este é um lembrete de evento.", + "Error while parsing a PROPFIND error" : "Erro ao analisar um erro PROPFIND", + "Appointment not found" : "Compromisso não encontrado", + "User not found" : "Usuário não encontrado", + "Reminder" : "Lembrete", + "+ Add reminder" : "+ Adicionar lembrete", + "Select automatic slot" : "Selecione vaga automática", + "with" : "com", + "Available times:" : "Horários disponíveis:", + "Suggestions" : "Sugestões", + "Details" : "Detalhes" }, "nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/pt_BR.json b/l10n/pt_BR.json index 9cf5267e975c711b74d2758bf3a27ed16df0f613..bef5d9b32e69c30a898764e78f4c5dfa5edcb202 100644 --- a/l10n/pt_BR.json +++ b/l10n/pt_BR.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "O endereço de e-mail fornecido é muito longo", "User-Session unexpectedly expired" : "Sessão do usuário expirou inesperadamente", "Provided email-address is not valid" : "O e-mail fornecido não é válido", "%s has published the calendar »%s«" : "%s publicou o calendário »%s«", @@ -9,137 +10,170 @@ "Open »%s«" : "Abrir »%s«", "Cheers!" : "Saudações!", "Upcoming events" : "Próximos eventos", - "Appointments" : "Agendamentos", - "Schedule appointment \"%s\"" : "Agendar compromisso \"1%s\"", - "Schedule an appointment" : "Agende um compromisso", - "Prepare for %s" : "Prepare para 1%s", - "Follow up for %s" : "Acompanhamento para 1%s", - "Your appointment \"%s\" needs confirmation" : "Seu compromisso \"1%s\" precisa de confirmação", - "Dear %s, please confirm your booking" : "Caro 1%s, por favor confirme a sua reserva", + "No more events today" : "Sem mais eventos para hoje", + "No upcoming events" : "Nenhum evento próximo", + "More events" : "Mais eventos", + "%1$s with %2$s" : "%1$s com %2$s", + "Calendar" : "Calendário", + "New booking {booking}" : "Nova reserva {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) marcou o compromisso \"{config_display_name}\" em {date_time}.", + "Appointments" : "Compromissos", + "Schedule appointment \"%s\"" : "Marcar compromisso \"%s\"", + "Schedule an appointment" : "Marcar compromisso", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Preparar para %s", + "Follow up for %s" : "Seguimento para %s", + "Your appointment \"%s\" with %s needs confirmation" : "Seu compromisso \"%s\" com %s precisa de confirmação", + "Dear %s, please confirm your booking" : "Olá %s, por favor confirme a sua reserva", "Confirm" : "Confirmar", - "This confirmation link expires in %s hours." : "Este link de confirmação expira 1%s em horas.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Se você deseja cancelar o compromisso, por favor, entre em contato com o seu organizador.", - "Appointment:" : "Agendamento:", + "Appointment with:" : "Compromisso com:", + "Description:" : "Descrição:", + "This confirmation link expires in %s hours." : "Este link de confirmação expirará em %s horas.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Se quiser cancelar o compromisso, entre em contato com o organizador respondendo a este e-mail ou visitando a página de perfil dele.", + "Your appointment \"%s\" with %s has been accepted" : "Seu compromisso \"%s\" com %s foi aceito", + "Dear %s, your booking has been accepted." : "Olá %s, sua reserva foi aceito.", + "Appointment for:" : "Compromisso para:", "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Você receberá um link no e-mail de confirmação", "Where:" : "Local:", - "Description:" : "Descrição:", - "Calendar" : "Calendário", + "Comment:" : "Comentário:", + "You have a new appointment booking \"%s\" from %s" : "Você tem um novo compromisso \"%s\" de %s", + "Dear %s, %s (%s) booked an appointment with you." : "Bom dia %s, %s (%s) marcou um compromisso com você.", "A Calendar app for Nextcloud" : "Um aplicativo de Calendário para Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "O aplicativo Calendário é uma interface de usuário para o servidor CalDAV do Nextcloud. Sincronize facilmente eventos de vários dispositivos com o Nextcloud e edite-os online.\n\n* 🚀 **Integração com outros aplicativos Nextcloud!** Atualmente Contatos - mais por vir.\n* 🌐 **Suporte WebCal!** Deseja ver as partidas do seu time no calendário? Sem problemas!\n* 🙋 **Participantes!** Convide pessoas para seus eventos\n* ⌚️ **Disponibilidade:** Veja quando seus participantes estarão disponíveis para atender\n* ⏰ **Lembretes!** Receba alarmes para eventos no seu navegador e via e-mail.\n* 🔍 Pesquise! Encontre seus eventos facilmente\n* ☑️ Tarefas! Veja as tarefas com a data de entrega diretamente no calendário\n* 🙈 **Não estamos reinventando a roda!** Baseado nas excelentes bibliotecas [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) e [fullcalendar](https://github.com/fullcalendar/fullcalendar).", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Um aplicativo de Calendário para Nextcloud. Sincronize facilmente eventos de vários dispositivos com seu Nextcloud e edite-os on-line.\n\n* 🚀 **Integração com outros aplicativos Nextcloud!** Como Contatos, Talk, Tarefas, Deck e Círculos\n* 🌐 **Suporte WebCal!** Quer ver os jogos do seu time favorito no seu calendário? Sem problemas!\n* 🙋 **Participantes!** Convide pessoas para seus eventos\n* ⌚ **Livre/Ocupado!** Veja quando seus participantes estão disponíveis para se reunir\n* ⏰ **Lembretes!** Receba alarmes para eventos no seu navegador e por e-mail\n* 🔍 **Pesquisar!** Encontre seus eventos com facilidade\n* ☑️ **Tarefas!** Veja tarefas ou cartões do Deck com data de vencimento diretamente no calendário\n* 🔈 **Salas do Talk!** Crie uma sala do Talk associada ao agendar uma reunião com apenas um clique\n* 📆 **Agendamento de compromissos** Envie às pessoas um link para que elas possam agendar uma consulta com você [usando este aplicativo](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Anexos!** Adicione, carregue e visualize anexos de eventos\n* 🙈 **Não estamos reinventando a roda!** Baseado nas excelentes bibliotecas [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) e [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Dia anterior", "Previous week" : "Semana anterior", + "Previous year" : "Ano anterior", "Previous month" : "Mês anterior", "Next day" : "Próximo dia", "Next week" : "Próxima semana", + "Next year" : "Próximo ano", "Next month" : "Próximo mês", - "New event" : "Novo evento", + "Create new event" : "Criar novo evento", + "Event" : "Evento", "Today" : "Hoje", "Day" : "Dia", "Week" : "Semana", "Month" : "Mês", + "Year" : "Ano", "List" : "Lista", - "Preview" : "Previsão", - "Copy link" : "Copiar o link", + "Appointment link was copied to clipboard" : "O link do compromisso foi copiado para a área de transferência", + "Appointment link could not be copied to clipboard" : "Não foi possível copiar o link do compromisso para a área de transferência", + "Preview" : "Pré-visualização", + "Copy link" : "Copiar link", "Edit" : "Editar", "Delete" : "Excluir", - "Appointment link was copied to clipboard" : "O link do agendamento foi copiado para a área de transferência", - "Appointment link could not be copied to clipboard" : "Não foi possível copiar o link do compromisso para a área de transferência", - "Add new" : "Adicionar novo", - "Untitled calendar" : "Calendário sem título", - "Edit name" : "Editar nome", - "Saving name …" : "Salvando nome...", - "Edit color" : "Editar cor", - "Saving color …" : "Salvando cor...", - "Copy private link" : "Copiar link privado", - "Export" : "Exportar", - "Unshare from me" : "Descompartilhar comigo", + "Appointment schedules" : "Agendamentos de compromissos", + "Create new" : "Criar novo", "Disable calendar \"{calendar}\"" : "Desativar calendário \"{calendar}\"", "Disable untitled calendar" : "Desativar calendário sem título", "Enable calendar \"{calendar}\"" : "Ativar calendário \"{calendar}\"", "Enable untitled calendar" : "Ativar calendário sem título", "An error occurred, unable to change visibility of the calendar." : "Erro ao alterar a visibilidade do calendário.", - "An error occurred, unable to delete the calendar." : "Erro ao excluir o calendário.", - "Calendar link copied to clipboard." : "Link do calendário copiado para a área de transferência.", - "Calendar link could not be copied to clipboard." : "Não foi possível copiar o link da agenda para a área de transferência.", - "An error occurred, unable to rename the calendar." : "Erro ao renomear o calendário.", - "An error occurred, unable to change the calendar's color." : "Erro ao alterar a cor do calendário.", + "Untitled calendar" : "Calendário sem título", + "Shared with you by" : "Compartilhado com você por", + "Edit and share calendar" : "Editar e compartilhar calendário", + "Edit calendar" : "Editar calendário", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Descompartilhando o calendário em {countdown} segundo","Descompartilhando o calendário em {countdown} segundos","Descompartilhando o calendário em {countdown} segundos"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Excluindo o calendário em {countdown} segundo","Excluindo o calendário em {countdown} segundos","Excluindo o calendário em {countdown} segundos"], + "An error occurred, unable to create the calendar." : "Erro ao criar o calendário.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Digite um link válido (começando com http://, https://, webcal://, ou webcals://)", + "Calendars" : "Calendários ", + "Add new" : "Adicionar novo", + "New calendar" : "Novo calendário", + "Name for new calendar" : "Nome do novo calendário", + "Creating calendar …" : "Criando calendário...", + "New calendar with task list" : "Novo calendário com lista de tarefas", + "New subscription from link (read-only)" : "Nova assinatura de link (somente leitura)", + "Creating subscription …" : "Criando assinatura …", + "Add public holiday calendar" : "Adicionar calendário de feriados", + "Add custom public calendar" : "Adicionar calendário público personalizado", + "Calendar link copied to clipboard." : "Link do calendário copiado para a área de transferência.", + "Calendar link could not be copied to clipboard." : "Não foi possível copiar o link da agenda para a área de transferência.", + "Copy subscription link" : "Copiar link de assinatura", + "Copying link …" : "Copiando link...", + "Copied link" : "Link copiado", + "Could not copy link" : "Não foi possível copiar o link", + "Export" : "Exportar", + "Untitled item" : "Item sem título ", + "Unknown calendar" : "Calendário desconhecido", + "Could not load deleted calendars and objects" : "Não foi possível carregar calendários e objetos excluídos", + "Could not delete calendar or event" : "Não foi possível excluir calendário ou evento", + "Could not restore calendar or event" : "Não foi possível restaurar o calendário ou evento", + "Do you really want to empty the trash bin?" : "Você realmente deseja esvaziar a lixeira?", + "Empty trash bin" : "Esvaziar lixeira", + "Trash bin" : "Lixeira", + "Loading deleted items." : "Carregando itens excluídos.", + "You do not have any deleted items." : "Você não tem itens excluídos.", + "Name" : "Nome", + "Deleted" : "Excluído", + "Restore" : "Restaurar", + "Delete permanently" : "Excluir permanentemente", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Os itens na lixeira são excluídos após {numDays} dia","Os itens na lixeira são excluídos após {numDays} dias","Os itens na lixeira são excluídos após {numDays} dias"], + "Could not update calendar order." : "Não foi possível atualizar o pedido da agenda.", + "Shared calendars" : "Calendários compartilhados", + "Deck" : "Deck", + "Hidden" : "Ocultos", + "Internal link" : "Link interno", + "A private link that can be used with external clients" : "Um link privado que pode ser usado com clientes externos", + "Copy internal link" : "Copiar link interno", + "An error occurred, unable to publish calendar." : "Erro ao publicar calendário.", + "An error occurred, unable to send email." : "Erro ao tentar enviar o e-mail.", + "Embed code copied to clipboard." : "Código de incorporação copiado para a área de transferência.", + "Embed code could not be copied to clipboard." : "O código de incorporação não pôde ser copiado para a área de transferência.", + "Unpublishing calendar failed" : "Erro ao remover a publicação do calendário", "Share link" : "Compartilhar link", - "Publish calendar" : "Publicar calendário", - "Publishing calendar" : "Calendário de publicação", "Copy public link" : "Copiar link público", "Send link to calendar via email" : "Enviar link para o calendário via e-mail", "Enter one address" : "Digite um endereço", "Sending email …" : "Enviando e-mail...", - "Copy subscription link" : "Copiar link de inscrição", - "Copying link …" : "Copiando link...", - "Copied link" : "Link copiado", - "Could not copy link" : "Não foi possível copiar o link", "Copy embedding code" : "Copiar código de incorporação", "Copying code …" : "Copiando código...", "Copied code" : "Código copiado", "Could not copy code" : "Não foi possível copiar o código", "Delete share link" : "Excluir compartilhamento do link", "Deleting share link …" : "Excluindo link de compartilhamento...", - "An error occurred, unable to publish calendar." : "Erro ao publicar calendário.", - "An error occurred, unable to send email." : "Erro ao tentar enviar o e-mail.", - "Embed code copied to clipboard." : "Código de incorporação copiado para a área de transferência.", - "Embed code could not be copied to clipboard." : "O código de incorporação não pôde ser copiado para a área de transferência.", - "Unpublishing calendar failed" : "Erro ao remover a publicação do calendário", - "Share with users or groups" : "Compartilhar com usuários ou grupos", - "No users or groups" : "Nenhum usuário ou grupo", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Equipe)", + "An error occurred while unsharing the calendar." : "Ocorreu um erro ao cancelar o compartilhamento do calendário.", + "An error occurred, unable to change the permission of the share." : "Erro ao alterar a permissão do compartilhamento.", "can edit" : "pode editar", "Unshare with {displayName}" : "Descompartilhar com {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Erro ao descompartilhar o calendário.", - "An error occurred, unable to change the permission of the share." : "Erro ao alterar a permissão do compartilhamento.", - "+ New calendar" : "+ Novo calendário", - "New calendar" : "Novo calendário", - "Name for new calendar" : "Nome para o calendário", - "Creating calendar …" : "Criando calendário...", - "New calendar with task list" : "Novo calendário com lista de tarefas", - "New subscription from link (read-only)" : "Nova subscrição do link (somente leitura)", - "Creating subscription …" : "Criando assinatura...", - "An error occurred, unable to create the calendar." : "Erro ao criar o calendário.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Digite um link válido (começando com http://, https://, webcal://, ou webcals://)", - "Trash bin" : "Lixeira", - "Loading deleted elements." : "Carregando elementos excluídos. ", - "You do not have any deleted elements." : "Você não tem nenhum elemento excluído. ", - "Name" : "Nome", - "Deleted" : "Excluído", - "Restore" : "Restaurar", - "Delete permanently" : "Excluir permanentemente", - "Empty trash bin" : "Esvaziar lixeira", - "Untitled element" : "Elemento sem título", - "Unknown calendar" : "Calendário desconhecido", - "Could not load deleted calendars and objects" : "Não foi possível carregar calendários e objetos excluídos", - "Could not restore calendar or event" : "Não foi possível restaurar o calendário ou evento", - "Do you really want to empty the trash bin?" : "Tem certeza de que deseja esvaziar a lixeira?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["O elemento da lixeira será excluído após {numDays} dia","Os elementos da lixeira são excluídos após {numDays} dias","Os elementos da lixeira são excluídos após {numDays} dias"], - "Could not update calendar order." : "Não foi possível atualizar o pedido da agenda.", + "Share with users or groups" : "Compartilhar com usuários ou grupos", + "No users or groups" : "Nenhum usuário ou grupo", + "Failed to save calendar name and color" : "Falha ao salvar o nome e a cor do calendário", + "Calendar name …" : "Nome do calendário …", + "Never show me as busy (set this calendar to transparent)" : "Nunca me mostrar como ocupado (definir este calendário como transparente)", + "Share calendar" : "Compartilhar calendário", + "Unshare from me" : "Descompartilhar comigo", + "Save" : "Salvar", "Import calendars" : "Importar calendários", - "Please select a calendar to import into …" : "Selecione o calendário para onde importar...", + "Please select a calendar to import into …" : "Selecione o calendário no qual importar …", "Filename" : "Nome de arquivo", - "Calendar to import into" : "Calendário a importar", + "Calendar to import into" : "Calendário no qual importar", "Cancel" : "Cancelar", "_Import calendar_::_Import calendars_" : ["Importar calendário","Importar calendários","Importar calendários"], + "Select the default location for attachments" : "Selecione o local padrão para os anexos", + "Pick" : "Escolher", + "Invalid location selected" : "Local inválido selecionado", + "Attachments folder successfully saved." : "Pasta de anexos salva com sucesso.", + "Error on saving attachments folder." : "Erro ao salvar a pasta de anexos.", + "Default attachments location" : "Local padrão dos anexos", "{filename} could not be parsed" : "{filename} não pôde ser analisado", "No valid files found, aborting import" : "Nenhum arquivo válido encontrado, importação interrompida", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Importou %n evento com sucesso","Importou %n eventos com sucesso","Importou %n eventos com sucesso"], "Import partially failed. Imported {accepted} out of {total}." : "Erro na importação. Importado {accepted} de {total}.", - "_Successfully imported %n event_::_Successfully imported %n events_" : ["Importado com sucesso %n evento","Importados com sucesso %n eventos","Importados com sucesso %n eventos"], "Automatic" : "Automático", "Automatic ({detected})" : "Automático ({detected})", "New setting was not saved successfully." : "A nova configuração não foi salva.", - "Shortcut overview" : "Visão geral de atalhos", - "or" : "ou", "Navigation" : "Navegação", "Previous period" : "Período anterior", "Next period" : "Próximo período", "Views" : "Visualizações", "Day view" : "Visão diária", - "Week view" : "Visão semanal", - "Month view" : "Visão mensal", - "List view" : "Exibição de lista", + "Week view" : "Visualização de semana", + "Month view" : "Visualização de mês", + "Year view" : "Visualização de ano", + "List view" : "Visualização de lista", "Actions" : "Ações", "Create event" : "Criar evento", "Show shortcuts" : "Mostrar atalhos", @@ -147,25 +181,30 @@ "Close editor" : "Fechar editor", "Save edited event" : "Salvar evento editado", "Delete edited event" : "Excluir evento editado", - "Duplicate event" : "Evento duplicado", + "Duplicate event" : "Duplicar evento", + "Shortcut overview" : "Visão geral de atalhos", + "or" : "ou", + "Calendar settings" : "Configurações do calendário", + "At event start" : "No início do evento", + "No reminder" : "Nenhum lembrete", + "Failed to save default calendar" : "Falha ao salvar o calendário padrão", + "CalDAV link copied to clipboard." : "Link CalDAV copiado para a área de transferência.", + "CalDAV link could not be copied to clipboard." : "Link CalDAV não copiado para a área de transferência.", "Enable birthday calendar" : "Ativar calendário de aniversários", "Show tasks in calendar" : "Mostrar tarefas no calendário", "Enable simplified editor" : "Ativar o editor simplificado", - "Limit visible events per view" : "Limitar eventos visíveis por visualização", + "Limit the number of events displayed in the monthly view" : "Limitar número de eventos mostrados no modo de visualização mensal", "Show weekends" : "Mostrar fins de semana", "Show week numbers" : "Exibir o número das semanas", "Time increments" : "Incrementos de tempo", + "Default calendar for incoming invitations" : "Calendário padrão para convites recebidos", "Default reminder" : "Lembrete padrão", "Copy primary CalDAV address" : "Copiar endereço CalDAV primário", "Copy iOS/macOS CalDAV address" : "Copiar endereço iOS/macOS CalDAV", "Personal availability settings" : "Configurações de disponibilidade pessoal", "Show keyboard shortcuts" : "Mostrar atalhos de teclado", - "Calendar settings" : "Configurações do calendário", - "No reminder" : "Nenhum lembrete", - "CalDAV link copied to clipboard." : "Link CalDAV copiado para a área de transferência.", - "CalDAV link could not be copied to clipboard." : "Link CalDAV não copiado para a área de transferência.", - "Appointment was created successfully" : "O compromisso foi criado com sucesso", - "Appointment was updated successfully" : "Agendamento atualizado com sucesso", + "Appointment schedule successfully created" : "Agendamento de compromissos criado com sucesso", + "Appointment schedule successfully updated" : "Agendamento de compromissos atualizado com sucesso", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuto","{duration} minutos","{duration} minutos"], "0 minutes" : "0 minutos", "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} horas","{duration} horas"], @@ -174,16 +213,23 @@ "_{duration} month_::_{duration} months_" : ["{duration} mês","{duration} meses","{duration} meses"], "_{duration} year_::_{duration} years_" : ["{duration} ano","{duration} anos","{duration} anos"], "To configure appointments, add your email address in personal settings." : "Para configurar compromissos, adicione seu endereço de e-mail nas configurações pessoais.", - "Public – shown on the profile page" : "Público - mostrado na página do perfil", - "Private – only accessible via secret link" : "Privado - acessível apenas por meio de link secreto", + "Public – shown on the profile page" : "Público – mostrado na página do perfil", + "Private – only accessible via secret link" : "Privado – acessível apenas por meio de link secreto", + "Appointment schedule saved" : "Agendamento de compromissos salvo", + "Create appointment schedule" : "Criar agendamento de compromissos", + "Edit appointment schedule" : "Editar agendamento de compromissos", + "Update" : "Atualizar", + "Appointment name" : "Nome do compromisso", "Location" : "Localização", + "Create a Talk room" : "Criar uma sala do Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Um link exclusivo será gerado para cada compromisso agendado e enviado por e-mail de confirmação", "Description" : "Descrição", "Visibility" : "Visibilidade", "Duration" : "Duração:", "Increments" : "Incrementos", "Additional calendars to check for conflicts" : "Calendários adicionais para verificar conflitos", - "Pick time ranges where appointments are allowed" : "Escolha os intervalos de tempo onde os compromissos são permitidos", - "to" : "para", + "Pick time ranges where appointments are allowed" : "Selecione intervalos de tempo em que os compromissos são permitidos", + "to" : "às", "Delete slot" : "Excluir vaga", "No times set" : "Nenhum horário definido", "Add" : "Adicionar", @@ -194,26 +240,38 @@ "Friday" : "Sexta-feira", "Saturday" : "Sábado", "Sunday" : "Domingo", + "Weekdays" : "Dias de semana", "Add time before and after the event" : "Adicionar um tempo antes e depois do evento", "Before the event" : "Antes do evento", "After the event" : "Depois do evento", "Planning restrictions" : "Restrições de planejamento", - "Minimum time before next available slot" : "Tempo mínimo antes do próximo vaga disponível", + "Minimum time before next available slot" : "Tempo mínimo antes da próxima vaga disponível", "Max slots per day" : "Máximo de vagas por dia", - "Limit how far in the future appointments can be booked" : "Limite em quanto tempo os compromissos futuros podem ser reservados", - "Create appointment" : "Criar compromisso", - "Edit appointment" : "Editar compromisso", - "Save" : "Salvar", - "Update" : "Atualizar", + "Limit how far in the future appointments can be booked" : "Limite de tempo para reserva de agendamentos futuros", + "It seems a rate limit has been reached. Please try again later." : "Parece que um limite de taxa foi atingido. Por favor, tente novamente mais tarde.", "Please confirm your reservation" : "Por favor, confirme sua reserva", - "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Enviamos a você um e-mail com os detalhes. Por favor, confirme seu agendamento usando o link no e-mail. Você pode fechar esta página agora.", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Enviamos a você um e-mail com os detalhes. Por favor, confirme seu compromisso usando o link no e-mail. Você pode fechar esta página agora.", "Your name" : "Seu nome", "Your email address" : "Seu endereço de e-mail", "Please share anything that will help prepare for our meeting" : "Por favor, compartilhe qualquer coisa que ajude a se preparar para nosso encontro", "Could not book the appointment. Please try again later or contact the organizer." : "Não foi possível agendar o compromisso. Tente novamente mais tarde ou entre em contato com o organizador.", - "Book the appointment" : "Agendar o compromisso", - "Reminder" : "Lembrete", - "before at" : "antes das", + "Back" : "Voltar", + "Book appointment" : "Marcar agendamento", + "Error fetching Talk conversations." : "Erro ao buscar conversas do Talk.", + "Conversation does not have a valid URL." : "A conversa não tem um URL válido.", + "Successfully added Talk conversation link to location." : "Adicionado com sucesso o link da conversa do Talk à localização.", + "Successfully added Talk conversation link to description." : "Adicionado com sucesso o link da conversa do Talk na descrição.", + "Failed to apply Talk room." : "Falha ao aplicar a sala do Talk.", + "Error creating Talk conversation" : "Erro ao criar conversa do Talk", + "Select a Talk Room" : "Selecione uma Sala do Talk", + "Add Talk conversation" : "Adicionar conversa do Talk", + "Fetching Talk rooms…" : "Buscando salas do Talk…", + "No Talk room available" : "Nenhuma sala do Talk disponível", + "Create a new conversation" : "Criar uma nova conversa", + "Select conversation" : "Selecione conversa", + "on" : "ligado", + "at" : "em", + "before at" : "antes às", "Notification" : "Notificação", "Email" : "E-mail", "Audio notification" : "Notificação de áudio", @@ -223,114 +281,147 @@ "Edit time" : "Editar horário", "Save time" : "Salvar horário", "Remove reminder" : "Remover lembrete", - "on" : "ligado", - "at" : "em", - "+ Add reminder" : "+ Adicionar lembrete", "Add reminder" : "Adicionar lembrete ", - "_second_::_seconds_" : ["segundo","segundos","segundos"], - "_minute_::_minutes_" : ["minuto","minutos","minutos"], - "_hour_::_hours_" : ["hora","horas","horas"], - "_day_::_days_" : ["dia","dias","dias"], - "_week_::_weeks_" : ["semana","semanas","semanas"], + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "dias", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Escolha um arquivo para adicionar como anexo", + "Choose a file to share as a link" : "Escolha um arquivo para compartilhar como link", + "Attachment {name} already exist!" : "Anexo {name} já existe!", + "Could not upload attachment(s)" : "Não foi possível carregar anexo(s)", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Você está prestes a fazer download de um arquivo. Verifique o nome do arquivo antes de abri-lo. Tem certeza de que pode prosseguir?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Você está prestes a navegar para {host}. Tem certeza de que deseja prosseguir? Link: {link}", + "Proceed" : "Prosseguir", + "No attachments" : "Sem anexos", + "Add from Files" : "Adicionar de Arquivos", + "Upload from device" : "Fazer upload do dispositivo", + "Delete file" : "Excluir arquivo", + "Confirmation" : "Confirmação", + "_{count} attachment_::_{count} attachments_" : ["{count} anexo","{count} anexos","{count} anexos"], "Suggested" : "Sugerido", "Available" : "Disponível", - "Not available" : "Indisponível", - "Checking availability" : "Verificando disponibilidade", "Invitation accepted" : "Convite aceito", "Accepted {organizerName}'s invitation" : "Aceitou o convite de {organizerName}", + "Participation marked as tentative" : "Participação marcada como tentativa", + "Invitation is delegated" : "O convite é delegado", + "Not available" : "Indisponível", "Invitation declined" : "Convite recusado", "Declined {organizerName}'s invitation" : "Recusou o convite de {organizerName}", - "Invitation is delegated" : "O convite é delegado", - "Participation marked as tentative" : "Participação marcada como provisória", - "Invitation sent" : "Convite enviado", + "Availability will be checked" : "A disponibilidade será verificada", + "Invitation will be sent" : "O convite será enviado", + "Failed to check availability" : "Falha ao verificar a disponibilidade", + "Failed to deliver invitation" : "Falha na entrega do convite", + "Awaiting response" : "Esperando resposta", + "Checking availability" : "Verificando disponibilidade", "Has not responded to {organizerName}'s invitation yet" : "Ainda não respondeu ao convite de {organizerName}", - "Availability of attendees, resources and rooms" : "Disponibilidade de participantes, recursos e salas", + "Suggested times" : "Horários sugeridos", + "chairperson" : "presidente", + "required participant" : "participante obrigatório", + "non-participant" : "não participante", + "optional participant" : "participante opcional", "{organizer} (organizer)" : "{organizer} (organizador)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Disponibilidade de participantes, recursos e salas", + "Suggestion accepted" : "Sugestão aceita", + "Previous date" : "Data anterior", + "Next date" : "Próxima data", + "Legend" : "Legenda", + "Out of office" : "Fora do escritório", + "Attendees:" : "Participantes:", + "Done" : "Concluído", + "Search room" : "Pesquisar sala", + "Room name" : "Nome da sala", + "Check room availability" : "Verificar disponibilidade da sala", "Free" : "Livre", - "Busy (tentative)" : "Ocupado (talvez)", + "Busy (tentative)" : "Ocupado (tentativa)", "Busy" : "Ocupado", - "Out of office" : "Fora do escritório", "Unknown" : "Desconhecido", - "Accept" : "Aceitar", - "Decline" : "Recusar", - "Tentative" : "Talvez", - "The invitation has been accepted successfully." : "O convite foi aceito.", + "Find a time" : "Encontrar um horário", + "The invitation has been accepted successfully." : "O convite foi aceito com sucesso.", "Failed to accept the invitation." : "Falha ao aceitar o convite.", - "The invitation has been declined successfully." : "O convite foi recusado.", + "The invitation has been declined successfully." : "O convite foi recusado com sucesso.", "Failed to decline the invitation." : "Falha ao recusar o convite.", - "Your participation has been marked as tentative." : "Sua participação foi marcada como incerta.", - "Failed to set the participation status to tentative." : "Falha ao marcar sua participação como incerta.", - "Create Talk room for this event" : "Criar sala no Talk para este evento", - "Show busy times" : "Mostrar horários ocupados", + "Your participation has been marked as tentative." : "Sua participação foi marcada como tentativa.", + "Failed to set the participation status to tentative." : "Falha ao marcar seu status da participação como tentativa.", + "Accept" : "Aceitar", + "Decline" : "Recusar", + "Tentative" : "Tentativa", "No attendees yet" : "Nenhum participante ainda", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} convidados, {confirmedCount} confirmados", + "Please add at least one attendee to use the \"Find a time\" feature." : "Por favor, adicione pelo menos um participante para usar o recurso \"Encontrar um horário\".", + "Successfully appended link to talk room to location." : "Link da sala do Talk anexado com sucesso à localização.", "Successfully appended link to talk room to description." : "O link para a sala Talk foi adicionado com sucesso na descrição", "Error creating Talk room" : "Erro ao criar a sala Talk", - "Send email" : "Enviar e-mail", - "Chairperson" : "Organizador", + "Attendees" : "Participantes", + "_%n more guest_::_%n more guests_" : ["Mais %n convidado","Mais %n convidados","Mais %n convidados"], + "Remove group" : "Remover grupo", + "Remove attendee" : "Remover participante", + "Request reply" : "Solicitar resposta", + "Chairperson" : "Presidente", "Required participant" : "Participante obrigatório", "Optional participant" : "Participante opcional", "Non-participant" : "Não participante", - "Remove attendee" : "Remover participante", - "Search for emails, users or contacts" : "Pesquise e-mails, usuários ou contatos", + "_%n member_::_%n members_" : ["%n membro","%n membros","%n membros"], + "Search for emails, users, contacts, contact groups or teams" : "Pesquise e-mails, usuários, contatos, grupos de contatos ou equipes", "No match found" : "Nenhuma correspondência encontrada", + "Note that members of circles get invited but are not synced yet." : "Observe que os membros dos círculos são convidados, mas ainda não estão sincronizados.", + "Note that members of contact groups get invited but are not synced yet." : "Observe que os membros dos grupos de contatos são convidados, mas ainda não estão sincronizados.", "(organizer)" : "(organizador)", + "Make {label} the organizer" : "Torne {label} o organizador", + "Make {label} the organizer and attend" : "Torne {label} o organizador e participe", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Para enviar convites e gerenciar respostas, [linkopen]adicione seu endereço de e-mail nas configurações pessoais[linkclose].", "Remove color" : "Remover cor", "Event title" : "Título do evento", - "All day" : "Dia inteiro", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Não é possível modificar a configuração de dia inteiro para eventos que fazem parte de um conjunto de recorrência.", - "from {startDate}" : "de {startDate}", - "from {startDate} at {startTime}" : "de {startDate} às {startTime}", - "to {endDate}" : "até {endDate}", - "to {endDate} at {endTime}" : "até {endDate} às {endTime}", + "From" : "De", + "To" : "Para", "Repeat" : "Repetir", - "End repeat" : "Terminar repetição", - "Select to end repeat" : "Selecione para finalizar a repetição", + "Repeat event" : "Repetir evento", + "_time_::_times_" : ["vez","vezes","vezes"], "never" : "nunca", "on date" : "na data", "after" : "após", - "_time_::_times_" : ["vez","vezes","vezes"], + "End repeat" : "Terminar repetição", + "Select to end repeat" : "Selecione para finalizar a repetição", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Este evento é a exceção de recorrência de um conjunto de recorrência. Você não pode adicionar uma regra de recorrência a ele.", "first" : "primeiro", - "third" : "terceiro", - "fourth" : "quarto", - "fifth" : "quinto", - "second to last" : "segundos atrás", - "last" : "último", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Alterações na regra de recorrência serão aplicadas somente a esta e a todas as ocorrências futuras.", "Repeat every" : "Repetir a cada", "By day of the month" : "Pelo dia do mês", "On the" : "Em", + "_day_::_days_" : ["dia","dias","dias"], + "_week_::_weeks_" : ["semana","semanas","semanas"], "_month_::_months_" : ["mês","meses","meses"], "_year_::_years_" : ["ano","anos","anos"], + "On specific day" : "Em um dia específico", "weekday" : "Dia da semana", "weekend day" : "dia da semana", - "No recurrence" : "Sem recorrência ", + "Does not repeat" : "Não se repete", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "A definição de recorrência deste evento não é totalmente suportada pelo Nextcloud. Se você editar as opções de recorrência, determinadas recorrências poderão ser perdidas.", - "Suggestions" : "Sugestões", "No rooms or resources yet" : "Ainda não há salas ou recursos", + "Resources" : "Recursos", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} assento","{seatingCapacity} assentos","{seatingCapacity} assentos"], "Add resource" : "Adicionar recurso", "Has a projector" : "Tem projetor", "Has a whiteboard" : "Tem quadro branco", "Wheelchair accessible" : "Acessível a cadeiras de rodas", "Remove resource" : "Remover recurso", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} assento","{seatingCapacity} assentos","{seatingCapacity} assentos"], - "Projector" : "Projetor", - "Whiteboard" : "Quadro branco", "Search for resources or rooms" : "Pesquise recursos ou salas", "available" : "disponível", "unavailable" : "indisponível", + "Show all rooms" : "Mostrar todas as salas", + "Projector" : "Projetor", + "Whiteboard" : "Quadro branco", "Room type" : "Tipo de sala", "Any" : "Qualquer uma", - "Minimum seating capacity" : "Capacidade mínima de assento", - "More" : "Mais", - "Update this occurrence" : "Atualizar esta ocorrência", + "Minimum seating capacity" : "Capacidade mínima de assentos", + "More details" : "Mais detalhes", "Update this and all future" : "Atualizar este e todos os futuros", + "Update this occurrence" : "Atualizar esta ocorrência", "Public calendar does not exist" : "Calendário público não existe", "Maybe the share was deleted or has expired?" : "Talvez o compartilhamento esteja excluído ou expirado?", - "Please select a time zone:" : "Selecione um fuso horário:", - "Pick a time" : "Escolha um horário", - "Pick a date" : "Escolha uma data", "from {formattedDate}" : "de {formattedDate}", "to {formattedDate}" : "até {formattedDate}", "on {formattedDate}" : "em {formattedDate}", @@ -340,43 +431,61 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} às {formattedTime}", "Please enter a valid date" : "Digite uma data válida", "Please enter a valid date and time" : "Digite uma data e hora válida", + "Select a time zone" : "Selecione um fuso horário", + "Please select a time zone:" : "Selecione um fuso horário:", + "Pick a time" : "Escolha um horário", + "Pick a date" : "Escolha uma data", "Type to search time zone" : "Digite para pesquisar o fuso horário", "Global" : "Global", - "Select date" : "Selecionar data", - "Select slot" : "Selecionar vaga", + "Holidays in {region}" : "Feriados em {region}", + "An error occurred, unable to read public calendars." : "Ocorreu um erro, não foi possível ler calendários públicos.", + "An error occurred, unable to subscribe to calendar." : "Ocorreu um erro, não foi possível assinar o calendário.", + "Public holiday calendars" : "Calendários de feriados", + "Public calendars" : "Calendários públicos", + "No valid public calendars configured" : "Nenhum calendário público válido configurado", + "Speak to the server administrator to resolve this issue." : "Fale com o administrador do servidor para resolver este problema.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Os calendários de feriados públicos são fornecidos pelo Thunderbird. Os dados do calendário serão baixados de {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Estes calendários públicos são sugeridos pelo administrador do servidor. Os dados do calendário serão baixados do respectivo site.", + "By {authors}" : "Por {authors}", + "Subscribed" : "Assinado", + "Subscribe" : "Assinar", + "Could not fetch slots" : "Não foi possível buscar vagas", + "Select a date" : "Selecione uma data", + "Select slot" : "Selecione vaga", "No slots available" : "Nenhuma vaga disponível", - "The slot for your appointment has been confirmed" : "A vaga para o seu agendamento foi confirmada", - "Appointment Details:" : "Detalhes do Agendamento:", - "Time:" : "Tempo:", + "The slot for your appointment has been confirmed" : "A vaga para seu compromisso foi confirmada", + "Appointment Details:" : "Detalhes do Compromisso:", + "Time:" : "Hórario:", "Booked for:" : "Reservado para:", - "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Obrigada. Sua reserva de {startDate} a {endDate} foi confirmada.", - "Book another appointment:" : "Agendar outro compromisso", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Obrigado. Sua reserva de {startDate} a {endDate} foi confirmada.", + "Book another appointment:" : "Marcar outro compromisso:", "See all available slots" : "Ver todas as vagas disponíveis", - "The slot for your appointment from {startDate} to {endDate} is not available any more." : "O período para seu compromisso de {startDate} a {endDate} não está mais disponível.", - "Please book a different slot:" : "Reserve um slot diferente:", - "Book an appointment with {name}" : "Agende um compromisso com {name}", - "No public appointments found for {name}" : "Nenhum agendamento público encontrado para {name}", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "A vaga de seu compromisso, de {startDate} a {endDate}, não está mais disponível.", + "Please book a different slot:" : "Por favor, reserve uma vaga diferente:", + "Book an appointment with {name}" : "Marque um compromisso com {name}", + "No public appointments found for {name}" : "Não foi encontrado nenhum compromisso público para {name}", "Personal" : "Pessoal", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "A detecção automática determinou que seu fuso horário seja UTC.\nProvavelmente, isso é resultado de medidas de segurança do seu navegador.\nDefina seu fuso horário manualmente nas configurações do calendário.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Seu fuso horário configurado ({timezoneId}) não foi encontrado. Retornando ao UTC.\nAltere seu fuso horário nas configurações e informe este problema.", - "No more events today" : "Sem mais eventos para hoje", - "No upcoming events" : "Nenhum evento próximo", - "Create a new event" : "Criar um novo evento", - "[Today]" : "[Hoje]", - "[Tomorrow]" : "[Amanhã]", - "[Yesterday]" : "[Ontem]", - "[Last] dddd" : "[Último] dddd", + "Availability of {displayName}" : "Disponibilidade de {displayName}", + "Edit event" : "Editar evento", "Event does not exist" : "O evento não existe", - "Duplicate" : "Duplicada", + "Duplicate" : "Duplicar", "Delete this occurrence" : "Excluir esta ocorrência", "Delete this and all future" : "Excluir esta e todas as futuras", - "Details" : "Detalhes", - "Attendees" : "Participantes", - "Resources" : "Recursos", + "All day" : "Dia inteiro", + "Modifications wont get propagated to the organizer and other attendees" : "As modificações não serão propagadas para o organizador e outros participantes", + "Managing shared access" : "Gerenciar acesso compartilhado", + "Deny access" : "Negar acesso", + "Invite" : "Convidar", + "_User requires access to your file_::_Users require access to your file_" : ["Usuário requer acesso ao seu arquivo","Usuários requerem acesso ao seu arquivo","Usuários requerem acesso ao seu arquivo"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Anexo exige acesso compartilhado","Anexos exigem acesso compartilhado","Anexos exigem acesso compartilhado"], + "Untitled event" : "Evento sem título", "Close" : "Fechar", - "Show more details" : "Mostrar mais detalhes", - "Subscribe to {name}" : "Inscrever-se em {name}", + "Modifications will not get propagated to the organizer and other attendees" : "As modificações não serão propagadas para o organizador e outros participantes", + "Subscribe to {name}" : "Assinar {name}", "Export {name}" : "Exportar {name}", + "Show availability" : "Mostrar disponibilidade", "Anniversary" : "Aniversário", "Appointment" : "Compromisso", "Business" : "Negócio", @@ -404,7 +513,6 @@ "on {time}" : "às {time}", "on {time} ({timezoneId})" : "às {time} ({timezoneId})", "Week {number} of {year}" : "Semana {number} de {year}", - "Does not repeat" : "Não repetir", "Daily" : "Diariamente", "Weekly" : "Semanalmente", "Monthly" : "Mensalmente", @@ -416,37 +524,43 @@ "_on {weekday}_::_on {weekdays}_" : ["em {weekday}","em {weekdays}","em {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["no dia {dayOfMonthList}","nos dias {dayOfMonthList}","nos dias {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "no {ordinalNumber} {byDaySet}", - "in {monthNames}" : "em {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "em {monthNames} no dia {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "em {monthNames} no {ordinalNumber} {byDaySet}", "until {untilDate}" : "até {untilDate}", "_%n time_::_%n times_" : ["%n vez","%n vezes","%n vezes"], - "Untitled event" : "Evento sem título", + "second" : "segundo", + "third" : "terceiro", + "fourth" : "quarto", + "fifth" : "quinto", + "second to last" : "segundos atrás", + "last" : "último", "Untitled task" : "Tarefa sem título", "Please ask your administrator to enable the Tasks App." : "Peça ao administrador para ativar o aplicativo Tarefas.", - "Prev" : "Anterior", - "Next" : "Próximo", - "Prev year" : "Ano anterior", - "Next year" : "Próximo ano", - "Year" : "Ano", + "You are not allowed to edit this event as an attendee." : "Você não tem permissão para editar esse evento como participante.", "W" : "S", - "%n more" : "%n mais", + "%n more" : "mais %n", "No events to display" : "Não há mais eventos a mostrar", + "All participants declined" : "Todos os participantes recusaram", + "Please confirm your participation" : "Por favor, confirme sua participação", + "You declined this event" : "Você recusou este evento", + "Your participation is tentative" : "Sua participação é tentativa", "_+%n more_::_+%n more_" : ["mais +%n","mais +%n","mais +%n"], "No events" : "Sem eventos", "Create a new event or change the visible time-range" : "Crie um novo evento ou altere o intervalo de tempo visível", + "Failed to save event" : "Falha ao salvar o evento", "It might have been deleted, or there was a typo in a link" : "Pode ter sido excluído ou houve um erro de digitação no link", "It might have been deleted, or there was a typo in the link" : "Pode ter sido excluído ou houve um erro de digitação no link", "Meeting room" : "Sala de reuniões", "Lecture hall" : "Auditório", "Seminar room" : "Sala de seminários", - "Other" : "De Outro", + "Other" : "Outro", "When shared show" : "Quando compartilhando mostrar", "When shared show full event" : "Quando compartilhado, mostrar evento completo", "When shared show only busy" : "Quando compartilhado, mostrar somente ocupado", "When shared hide this event" : "Quando compartilhado, ocultar este evento", "The visibility of this event in shared calendars." : "A visibilidade deste evento em calendários compartilhados.", - "Add a location" : "Adicionar uma localização", - "Add a description" : "Adicionar uma descrição", + "Add a location" : "Adicione uma localização", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Adicione uma descrição\n\n- Sobre o que é esta reunião\n- Itens da agenda\n- Qualquer coisa que os participantes precisem preparar", "Status" : "Status", "Confirmed" : "Confirmado", "Canceled" : "Cancelado", @@ -459,135 +573,26 @@ "Add this as a new category" : "Adicione isso como uma nova categoria", "Custom color" : "Cor personalizada", "Special color of this event. Overrides the calendar-color." : "Cor especial deste evento. Substitui a cor do calendário.", - "Chat room for event" : "Sala de bato-papo para evento", + "Error while sharing file" : "Erro ao compartilhar arquivo", + "Error while sharing file with user" : "Erro ao compartilhar arquivo com o usuário", + "Error creating a folder {folder}" : "Erro ao criar uma pasta {folder}", + "Attachment {fileName} already exists!" : "Anexo {fileName} já existe!", + "Attachment {fileName} added!" : "Anexo {fileName} adicionado!", + "An error occurred during uploading file {fileName}" : "Ocorreu um erro durante o upload do arquivo {fileName}", + "An error occurred during getting file information" : "Ocorreu um erro ao obter informações sobre o arquivo", + "Talk conversation for event" : "Conversa do Talk para o evento", + "An error occurred, unable to delete the calendar." : "Erro ao excluir o calendário.", "Imported {filename}" : "Importado {filename}", - "Meditation" : "Meditação", - "Relaxing" : "Relaxamento", - "Relax" : "Relaxamento", - "Break" : "Pausa", - "Commute" : "Trajeto", - "Commuting" : "Alternância", - "Shuttle" : "Transporte", - "Invoice" : "Fatura", - "Finance" : "Finança", - "Bank" : "Banco", - "Money" : "Dinheiro", - "Wedding" : "Casamento", - "Dog" : "Cachorro", - "Concert" : "Conserto", - "Festival" : "Festival", - "Theater" : "Teatro ", - "Theatre" : "Teatro", - "Presentation" : "Apresentação", - "Talk" : "Falar", - "Speech" : "Discurso", - "Deadline" : "Prazo final", - "Submission" : "Submissão", - "Reporting" : "Relatando", - "Camping" : "Acampamento", - "Camp" : "Acampamento", - "Election" : "Eleição", - "Voting" : "Votando", - "Vote" : "Voto", - "Barbecue" : "Churrasco", - "Barbeque" : "Churrasco", - "Garden" : "Jardim", - "Farm" : "Fazenda", - "Movie" : "Filme", - "Cinema" : "Cinema", - "Graduation" : "Formatura", - "Brainstorm" : "Brainstorm", - "Review" : "Revisar", - "Audit" : "Auditoria", - "Inspection" : "Inspeção", - "Proofreading" : "Revisão", - "Baseball" : "Beisebol", - "Meet" : "Reunião", - "Planning" : "Planejamento", - "Pointing" : "Apontar", - "Retrospective" : "Retrospectiva", - "Office" : "Escritório", - "Contributor week" : "Semana do colaborador", - "Mail" : "Correspondência", - "Soccer" : "Futebol", - "Football" : "Futebol americano", - "Gaming" : "Jogo", - "Drive" : "Dirigir", - "Driving" : "Dirigindo", - "Bicycle" : "Bicicleta", - "Cycle" : "Bicicleta", - "Cycling" : "Ciclismo", - "Biking" : "Ciclismo", - "Bike" : "Bicicleta", - "Podcast" : "Podcast", - "Basketball" : "Basquete", - "Fishing" : "Pesca", - "Hiking" : "Caminhada", - "Hike" : "Caminhada", - "Art" : "Arte", - "Exhibition" : "Exibição", - "Museum" : "Museu", - "Pilates" : "Pilates", - "Park" : "Parque", - "Walk" : "Andar", - "Studying" : "Estudo", - "Doctor" : "Doutor", - "Health" : "Saúde", - "Dentist" : "Dentista", - "Hospital" : "Hospital", - "Interview" : "Entrevista", - "Training" : "Treinamento", - "Practice" : "Prática", - "Sports" : "Esportes", - "Exercise" : "Exercício", - "Work out" : "Ginástica", - "Working out" : "Ginástica", - "Gym" : "Academia", - "Barber" : "Barbeiro", - "Haircut" : "Cortar cabelo", - "Hairdresser" : "Cabeleireiro", - "Exam" : "Exame", - "Written test" : "Teste escrito", - "Oral test" : "Teste oral", - "Working" : "Trabalho", - "New Years Eve" : "Véspera de Ano Novo", - "NYE" : "NYE", - "Fireworks" : "Fogos de artifício", - "Running" : "Corrida", - "Go for a run" : "Ir correr", - "Marathon" : "Maratona", - "Video-conference" : "Vídeo-conferência", - "Conference-call" : "Conferência-chamada", - "Video-call" : "Vídeo-chamada", - "Video-chat" : "Vídeo-chat", - "Video-meeting" : "Vídeo-reunião", - "Call" : "Chamada", - "Calling" : "Chamada", - "Christmas" : "Natal", - "Conference" : "Conferência", - "Pizza" : "Pizza", - "Travelling" : "Viagem", - "Trip" : "Viagem", - "Journey" : "Jornada", - "Collaborate" : "Colaborativo", - "Pair" : "Par", - "Lecture" : "Leitura", - "Seminar" : "Seminário", - "Teaching" : "Ensinando", - "Photograph" : "Fotografia", - "Party" : "Festa", - "Celebration" : "Comemoração", - "Celebrate" : "Comemorar", - "Birthday" : "Aniversário", - "Shopping" : "Compras", - "Groceries" : "Mercearias", - "Skate" : "Skate", - "Skateboard" : "Skate", - "Wine tasting" : "Degustação de vinho", - "Golf" : "Golfe", - "Dinner" : "Jantar", - "Lunch" : "Rodar", - "Appointment not found" : "Agendamento não encontrado", - "User not found" : "Usuário não encontrado" + "This is an event reminder." : "Este é um lembrete de evento.", + "Error while parsing a PROPFIND error" : "Erro ao analisar um erro PROPFIND", + "Appointment not found" : "Compromisso não encontrado", + "User not found" : "Usuário não encontrado", + "Reminder" : "Lembrete", + "+ Add reminder" : "+ Adicionar lembrete", + "Select automatic slot" : "Selecione vaga automática", + "with" : "com", + "Available times:" : "Horários disponíveis:", + "Suggestions" : "Sugestões", + "Details" : "Detalhes" },"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/pt_PT.js b/l10n/pt_PT.js index 510aa011e817a808223485739bb5bd9dc2ce5582..3585009ace4e854f87bf91f906a0c4667afdd455 100644 --- a/l10n/pt_PT.js +++ b/l10n/pt_PT.js @@ -1,117 +1,125 @@ OC.L10N.register( "calendar", { - "User-Session unexpectedly expired" : "A sessão do utilizador expirou inexplicavelmente", + "User-Session unexpectedly expired" : "A sessão de utilizador expirou inesperadamente", "Provided email-address is not valid" : "O endereço de e-mail que inseriu não é válido", "%s has published the calendar »%s«" : "%s publicou o calendário »%s«", - "Unexpected error sending email. Please contact your administrator." : "Ocorreu um erro inesperado ao enviar o email. Por favor contacte o seu administrador", + "Unexpected error sending email. Please contact your administrator." : "Ocorreu um erro ao enviar o email. Por favor contacte o seu administrador", "Successfully sent email to %1$s" : "A mensagem enviada com sucesso para %1$s ", "Hello," : "Olá,", "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informa-lo que %s publicou o calendário »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "Parabéns!", "Upcoming events" : "Próximos eventos", + "More events" : "Mais eventos", + "Calendar" : "Calendário", + "New booking {booking}" : "Novo agendamento {booking}", "Appointments" : "Reuniões", "Schedule appointment \"%s\"" : "Marcar reunião \"%s\"", "Schedule an appointment" : "Marcar uma reunião", "Prepare for %s" : "Prepare-se para %s", - "Your appointment \"%s\" needs confirmation" : "A sua reunião \"%s\" necessita de confirmação", + "Follow up for %s" : "Acompanhamento para %s", + "Your appointment \"%s\" with %s needs confirmation" : "O seu agendamento \"%s\" com %sprecisa de confirmação", "Dear %s, please confirm your booking" : "Caro %s, por favor confirme o seu agendamento", "Confirm" : "Confirmar", + "Description:" : "Descrição:", "This confirmation link expires in %s hours." : "Esta ligação de confirmação expira em %s horas.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Se pretende cancelar a reunião, por favor contacte o organizador.", - "Appointment:" : "Reunião:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Se deseja cancelar a sua marcação, deve contactar o seu coordenador respondendo a esta mensagem ou pode visitar a sua página de perfil.", + "Your appointment \"%s\" with %s has been accepted" : "O seu agendamento \"%s\" com %s foi aceite.", + "Dear %s, your booking has been accepted." : "Caro/a %s, o seu agendamento foi aceite.", + "Appointment for:" : "Agendamento para:", "Date:" : "Data:", "Where:" : "Local:", - "Description:" : "Descrição:", - "Calendar" : "Calendário", + "Comment:" : "Comentário:", + "You have a new appointment booking \"%s\" from %s" : "Tem uma nova reserva de marcação \"%s\" de %s", "A Calendar app for Nextcloud" : "Uma aplicação de calendário para o Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "A aplicação Calendário é uma interface de utilizador para o servidor CalDAV da Nextcloud. Sincronize facilmente eventos de vários dispositivos com o seu Nextcloud e edite-os online..\n\n* 🚀 **Integração com outras aplicações Nextcloud!** Atualmente a de Contactos - mas mais estão para chegar.\n* 🌐 **Suporte para WebCal!** Quer ver os dias de jogo da sua equipa favorita no seu calendário? Não há problema!\n* 🙋 **Participantes!** Convide pessoas para os seus eventos\n* ⌚️ **Livre/Ocupado!** Veja quando os seus participantes estão disponíveis para se encontrarem\n* ⏰ **Lembretes!** Receba alarmes para eventos dentro do seu navegador e via e-mail\n* 🔍 Pesquisar! Encontre os seus eventos à vontade\n* ☑️ Tarefas! Ver tarefas com uma data de vencimento diretamente no calendário\n* 🙈 **Não estamos a reinventar a roda!** Baseado na grande [biblioteca c-dav](https://github.com/nextcloud/cdav-library), e nas [ical.js](https://github.com/mozilla-comm/ical.js) e [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Dia anterior", "Previous week" : "Semana anterior", "Previous month" : "Mês anterior", "Next day" : "Dia seguinte", "Next week" : "Próxima semana", "Next month" : "Próximo mês", - "New event" : "Novo evento", "Today" : "Hoje", "Day" : "Dia", "Week" : "Semana", "Month" : "Mês", + "Year" : "Year", "List" : "Lista", + "Appointment link was copied to clipboard" : "Hiperligação da reunião copiada para a área de transferência", + "Appointment link could not be copied to clipboard" : "Não é possível copiar a hiperligação da reunião para a área de transferência", "Preview" : "Pré-visualizar", "Copy link" : "Copiar hiperligação", "Edit" : "Editar", "Delete" : "Eliminar", - "Appointment link was copied to clipboard" : "Hiperligação da reunião copiada para a área de transferência", - "Appointment link could not be copied to clipboard" : "Não é possível copiar a hiperligação da reunião para a área de transferência", - "Add new" : "Adicionar nova", - "Untitled calendar" : "Calendário sem titulo", - "Edit name" : "Editar nome", - "Saving name …" : "A guardar o nome...", - "Edit color" : "Editar a cor", - "Saving color …" : "A guardar a côr...", - "Copy private link" : "Copiar link privado", - "Export" : "Exportar", - "Unshare from me" : "Cancelar partilha", + "Create new" : "Criar novo", "Disable calendar \"{calendar}\"" : "Desativar calendário \"{calendar}\"", "Disable untitled calendar" : "Desativar calendário sem título", "Enable calendar \"{calendar}\"" : "Ativar calendário \"{calendar}\"", "Enable untitled calendar" : "Ativar calendário sem título", "An error occurred, unable to change visibility of the calendar." : "Ocorreu um erro, incapaz de alterar a visibilidade do calendário.", - "An error occurred, unable to delete the calendar." : "Ocorreu um erro que impede que o calendário seja apagado", + "Untitled calendar" : "Calendário sem titulo", + "Shared with you by" : "Partilhado consigo por", + "Edit and share calendar" : "Editar e partilhar calendário", + "Edit calendar" : "Editar calendário", + "An error occurred, unable to create the calendar." : "Ocorreu um erro que impede que o calendário seja criado", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Por favor introduza uma ligação válida (começada por http://, https://, webcal://, ou webcals://)", + "Calendars" : "Calendários", + "Add new" : "Adicionar nova", + "New calendar" : "Novo calendário", + "Name for new calendar" : "Nome para o novo calendário", + "Creating calendar …" : "A criar o calendário …", + "New calendar with task list" : "Novo calendário com lista de tarefas", + "Creating subscription …" : "A criar subscrição ...", "Calendar link copied to clipboard." : "Hiperligação do calendário copiado para a área de transferência.", "Calendar link could not be copied to clipboard." : "Link do calendário não pôde se copiado para a área de transferência.", - "An error occurred, unable to rename the calendar." : "Ocorreu um erro que impede que o nome do calendário seja alterado", - "An error occurred, unable to change the calendar's color." : "Ocorreu um erro que impede que a cor do calendário seja alterada", - "Share link" : "Partilhar hiperligação", - "Publish calendar" : "Publicar calendário", - "Publishing calendar" : "A publicar o calendário", - "Copy public link" : "Copiar ligação publica", - "Send link to calendar via email" : "Enviar ligação por correio electrónico", - "Enter one address" : "Introduza um endereço", - "Sending email …" : "A enviar o email …", "Copy subscription link" : "Copiar ligação da subscrição", "Copying link …" : "Copiar ligação …", "Copied link" : "Ligação copiada", "Could not copy link" : "Não foi possível copiar a ligação", + "Export" : "Exportar", + "Untitled item" : "Item sem título ", + "Unknown calendar" : "Calendário desconhecido", + "Could not load deleted calendars and objects" : "Não foi possível carregar calendários e objetos apagados ", + "Could not restore calendar or event" : "Não foi possível restaurar o calendário ou evento ", + "Do you really want to empty the trash bin?" : "Tem a certeza que pretende esvaziar a reciclagem?", + "Empty trash bin" : "Esvaziar a reciclagem", + "Trash bin" : "Reciclagem", + "Loading deleted items." : "A carregar itens excluídos.", + "You do not have any deleted items." : "Não tem qualquer item apagado. ", + "Name" : "Nome", + "Deleted" : "Eliminado", + "Restore" : "Restaurar", + "Delete permanently" : "Eliminar permanentemente", + "Could not update calendar order." : "Não foi possível atualizar a ordenação do calendário.", + "Deck" : "Quadro", + "Hidden" : "Escondido", + "Copy internal link" : "Copiar ligação interna", + "An error occurred, unable to publish calendar." : "Ocorreu um erro, não foi possível publicar o calendário.", + "An error occurred, unable to send email." : "Ocorreu um erro, não foi possível enviar o email.", + "Embed code copied to clipboard." : "Código de incorporação copiado para a área de transferência.", + "Embed code could not be copied to clipboard." : "Não é possível copiar o código de incorporação", + "Unpublishing calendar failed" : "Erro ao remover a publicação do calendário", + "Share link" : "Partilhar hiperligação", + "Copy public link" : "Copiar ligação publica", + "Send link to calendar via email" : "Enviar ligação por correio eletrónico", + "Enter one address" : "Introduza um endereço", + "Sending email …" : "A enviar o email …", "Copy embedding code" : "Copiar código embebido", "Copying code …" : "A copiar código...", "Copied code" : "Código copiado", "Could not copy code" : "Não foi possível copiar o código", "Delete share link" : "Apagar hiperligação de partilha", "Deleting share link …" : "A apagar hiperligação de partilha", - "An error occurred, unable to publish calendar." : "Ocorreu um erro, não foi possível publicar o calendário.", - "An error occurred, unable to send email." : "Ocorreu um erro, não foi possível enviar o email.", - "Embed code copied to clipboard." : "Código de incorporação copiado para a área de transferência.", - "Embed code could not be copied to clipboard." : "Não é possível copiar o código de incorporação", - "Unpublishing calendar failed" : "Erro ao remover a publicação do calendário", - "Share with users or groups" : "Partilhe com os utilizadores ou grupos", - "No users or groups" : "Sem utilizadores ou grupos", "can edit" : "pode editar", "Unshare with {displayName}" : "Cancelar partilha com {displayName}", - "+ New calendar" : "+ Novo calendário", - "New calendar" : "Novo calendário", - "Name for new calendar" : "Nome para o novo calendário", - "Creating calendar …" : "A criar o calendário …", - "New calendar with task list" : "Novo calendário com lista de tarefas", - "An error occurred, unable to create the calendar." : "Ocorreu um erro que impede que o calendário seja criado", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Por favor introduza uma ligação válida (começada por http://, https://, webcal://, ou webcals://)", - "Trash bin" : "Reciclagem", - "Loading deleted elements." : "A carregar elementos apagados.", - "You do not have any deleted elements." : "Não tem nenhum elemento apagado. ", - "Name" : "Nome", - "Deleted" : "Eliminado", - "Restore" : "Restaurar", - "Delete permanently" : "Eliminar permanentemente", - "Empty trash bin" : "Esvaziar a reciclagem", - "Untitled element" : "Elemento sem título", - "Unknown calendar" : "Calendário desconhecido", - "Could not load deleted calendars and objects" : "Não foi possível carregar calendários e objetos apagados ", - "Could not restore calendar or event" : "Não foi possível restaurar o calendário ou evento ", - "Do you really want to empty the trash bin?" : "Tem a certeza que pretende esvaziar a reciclagem?", - "Could not update calendar order." : "Não foi possível atualizar a ordenação do calendário.", + "Share with users or groups" : "Partilhe com os utilizadores ou grupos", + "No users or groups" : "Sem utilizadores ou grupos", + "Calendar name …" : "Nome do calendário…", + "Share calendar" : "Partilhar calendário", + "Unshare from me" : "Cancelar partilha", + "Save" : "Guardar", "Import calendars" : "Importar calendários", + "Please select a calendar to import into …" : "Selecione o calendário para onde importar ...", "Filename" : "Nome do ficheiro", "Calendar to import into" : "Calendário para o qual importar", "Cancel" : "Cancelar", @@ -120,9 +128,8 @@ OC.L10N.register( "No valid files found, aborting import" : "A importação foi cancelada pois não foram encontrados ficheiros válidos", "Import partially failed. Imported {accepted} out of {total}." : "A importação falhou parcialmente. Importados {accepted} de um total de {total}.", "Automatic" : "Automático", + "Automatic ({detected})" : "Automático ({detected})", "New setting was not saved successfully." : "Erro a gravar a nova configuração.", - "Shortcut overview" : "Visão geral de atalhos", - "or" : "ou", "Navigation" : "Navegação", "Previous period" : "Período anterior", "Next period" : "Próximo período", @@ -139,10 +146,15 @@ OC.L10N.register( "Save edited event" : "Gravar evento editado", "Delete edited event" : "Apagar evento editado", "Duplicate event" : "Duplicar evento", + "Shortcut overview" : "Visão geral de atalhos", + "or" : "ou", + "Calendar settings" : "Configurações do calendário", + "No reminder" : "Nenhum lembrete", + "CalDAV link copied to clipboard." : "Ligação CalDAV copiada para a área de transferência.", + "CalDAV link could not be copied to clipboard." : "Não foi possível copiar a ligação CalDAV para a área de transferência.", "Enable birthday calendar" : "Ativar calendário de aniversários", "Show tasks in calendar" : "Mostrar tarefas no calendário", "Enable simplified editor" : "Ativar editor simplificado", - "Limit visible events per view" : "Limitar eventos visíveis por visualização", "Show weekends" : "Mostrar fins-de-semana", "Show week numbers" : "Mostrar o número das semanas", "Time increments" : "Incrementos de tempo", @@ -151,16 +163,17 @@ OC.L10N.register( "Copy iOS/macOS CalDAV address" : "Copiar endereço iOS/macOS CalDAV", "Personal availability settings" : "Configurações de disponibilidade pessoal", "Show keyboard shortcuts" : "Mostrar atalhos de teclado", - "Calendar settings" : "Configurações do calendário", - "No reminder" : "Nenhum lembrete", - "CalDAV link copied to clipboard." : "Ligação CalDAV copiada para a área de transferência.", - "CalDAV link could not be copied to clipboard." : "Não foi possível copiar a ligação CalDAV para a área de transferência.", - "Appointment was created successfully" : "Reunião criada com sucesso", - "Appointment was updated successfully" : "Reunião atualizada com sucesso", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minuto","{duration} minutos","{duration} minutos"], "0 minutes" : "0 minutos", + "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} horas","{duration} horas"], + "_{duration} day_::_{duration} days_" : ["{duration} dia","{duration} dias","{duration} dias"], + "_{duration} month_::_{duration} months_" : ["{duration} mês","{duration} meses","{duration} meses"], + "_{duration} year_::_{duration} years_" : ["{duration} ano","{duration} anos","{duration} anos"], "To configure appointments, add your email address in personal settings." : "Para configurar reuniões, adicione seu o endereço de e-mail nas configurações pessoais.", "Public – shown on the profile page" : "Público - mostrado na página de perfil", "Private – only accessible via secret link" : "Privado - acessível apenas por ligação secreta", + "Update" : "Atualizar", + "Appointment name" : "Nome da marcação", "Location" : "Localização:", "Description" : "Descrição", "Visibility" : "Visibilidade", @@ -169,6 +182,7 @@ OC.L10N.register( "Additional calendars to check for conflicts" : "Calendários adicionais para verificar conflitos", "Pick time ranges where appointments are allowed" : "Escolha os intervalos de tempo onde as reuniões são permitidas", "to" : "Para", + "Delete slot" : "Delete slot", "No times set" : "Nenhum horário definido", "Add" : "Adicionar", "Monday" : "Segunda", @@ -178,22 +192,22 @@ OC.L10N.register( "Friday" : "Sexta", "Saturday" : "Sábado", "Sunday" : "Domingo", + "Weekdays" : "Weekdays", "Add time before and after the event" : "Adicionar um tempo antes e depois do evento", "Before the event" : "Antes do evento", "After the event" : "Depois do evento", "Planning restrictions" : "Restrições de planeamento", - "Create appointment" : "Criar reunião", - "Edit appointment" : "Editar reunião", - "Save" : "Guardar", - "Update" : "Atualizar", "Please confirm your reservation" : "Por favor confirme a sua reserva", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Enviamos-lhe um e-mail com os detalhes. Por favor confirme a sua reunião utilizando a ligação do e-mail. Pode fechar esta página.", "Your name" : "O seu nome", "Your email address" : "O seu endereço de email", "Please share anything that will help prepare for our meeting" : "Por favor partilhe qualquer coisa que ajude na preparação da nossa reunião", "Could not book the appointment. Please try again later or contact the organizer." : "Não foi possível agendar a reunião. Tente novamente mais tarde ou entre em contacto com o organizador.", - "Book the appointment" : "Agendar a reunião", - "Reminder" : "Lembrete", + "Back" : "Voltar", + "Create a new conversation" : "Criar nova conversa", + "on" : "em", + "at" : "às", + "before at" : "antes em", "Notification" : "Notificação", "Email" : "E-mail", "Audio notification" : "Notificação de áudio", @@ -203,57 +217,76 @@ OC.L10N.register( "Edit time" : "Editar horário", "Save time" : "Gravar horário", "Remove reminder" : "Apagar lembrete", - "+ Add reminder" : "+ Adicionar lembrete", "Add reminder" : "Adicionar lembrete ", - "_second_::_seconds_" : ["segundo","segundos","segundos"], - "_minute_::_minutes_" : ["minuto","minutos","minutos"], - "_hour_::_hours_" : ["hora","horas","horas"], - "_day_::_days_" : ["dia","dias","dias"], - "_week_::_weeks_" : ["semana","semanas","semanas"], + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "dias", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Escolha um ficheiro para adicionar como anexo", + "Proceed" : "Prosseguir", + "Delete file" : "Apagar ficheiro", "Suggested" : "Sugerido", "Available" : "Disponível", - "Not available" : "Indisponível", - "Checking availability" : "A verificar disponibilidade", "Invitation accepted" : "Convite aceite", "Accepted {organizerName}'s invitation" : "Aceite convite de {organizerName}", + "Participation marked as tentative" : "Participação marcada como tentativa", + "Not available" : "Indisponível", + "Invitation declined" : "Convite recusado", + "Checking availability" : "A verificar disponibilidade", + "Out of office" : "Fora do escritório", + "Attendees:" : "Participantes:", + "Done" : "Concluído", + "Room name" : "Nome da sala", + "Free" : "Livre", "Busy" : "Ocupado", "Unknown" : "Desconhecido", + "The invitation has been accepted successfully." : "O convite foi aceite com sucesso.", + "Failed to accept the invitation." : "Falha ao aceitar o convite.", + "The invitation has been declined successfully." : "O convite foi recusado com sucesso.", "Accept" : "Aceitar", "Decline" : "Recusar", "Tentative" : "Tentativa", - "Send email" : "Enviar e-mail", - "All day" : "Todo o dia", + "Attendees" : "Participantes", + "From" : "De", + "To" : "Para", "Repeat" : "Repetir", "never" : "nunca", "after" : "depois", "first" : "primeiro", - "third" : "terceiro", - "fourth" : "quarto", - "fifth" : "quinto", - "second to last" : "do segundo ao último", - "last" : "ultimo", "Repeat every" : "Repetir a cada", "By day of the month" : "Por dia do mês", "On the" : "No", + "_day_::_days_" : ["dia","dias","dias"], + "_week_::_weeks_" : ["semana","semanas","semanas"], "_month_::_months_" : ["mês","meses","meses"], "_year_::_years_" : ["ano","anos","anos"], "weekday" : "dia da semana", "weekend day" : "dia do fim-de-semana", + "Resources" : "Recursos", "available" : "disponível", - "More" : "Mais", "Pick a date" : "Escolha uma data", "Global" : "Global", + "Subscribed" : "Subscrito", + "Subscribe" : "Subscrever", "Personal" : "Pessoal", - "Details" : "Detalhes", - "Attendees" : "Participantes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo o dia", + "Invite" : "Convite", + "Untitled event" : "Evento sem título", "Close" : "Fechar", "Anniversary" : "Aniversário", "Miscellaneous" : "Diversos", "Week {number} of {year}" : "Semana {number} do {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Next" : "Seguinte", + "second" : "segundo", + "third" : "terceiro", + "fourth" : "quarto", + "fifth" : "quinto", + "second to last" : "do segundo ao último", + "last" : "ultimo", + "Untitled task" : "Untitled task", "Other" : "Outro", "When shared show full event" : "Quando partilhado, mostrar evento completo", "When shared show only busy" : "Quando partilhado, mostrar apenas ocupados", @@ -262,34 +295,11 @@ OC.L10N.register( "Confirmed" : "Confirmado", "Canceled" : "Cancelado", "Categories" : "Categorias", - "Commuting" : "Em trânsito", - "Presentation" : "Apresentação", - "Talk" : "Falar", - "Review" : "Rever", - "Office" : "Escritório", - "Mail" : "Correio", - "Driving" : "Conduzir", - "Biking" : "Andar de bicicleta", - "Health" : "Saúde", - "New Years Eve" : "Véspera de Ano Novo", - "Fireworks" : "Fogo de artifício", - "Running" : "Correr", - "Marathon" : "Maratona", - "Christmas" : "Natal", - "Trip" : "Viagem", - "Lecture" : "Leitura", - "Seminar" : "Seminário", - "Photograph" : "Fotografia", - "Party" : "Festa", - "Birthday" : "Aniversário", - "Shopping" : "Compras", - "Groceries" : "Mercearias", - "Skate" : "Skate", - "Skateboard" : "Skate", - "Wine tasting" : "Degustação de vinho", - "Golf" : "Golfe", - "Dinner" : "Jantar", - "Lunch" : "Almoço", - "User not found" : "Utilizador não encontrado" + "Error while sharing file" : "Erro ao partilhar ficheiro", + "An error occurred, unable to delete the calendar." : "Ocorreu um erro que impede que o calendário seja apagado", + "User not found" : "Utilizador não encontrado", + "Reminder" : "Lembrete", + "+ Add reminder" : "+ Adicionar lembrete", + "Details" : "Detalhes" }, "nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"); diff --git a/l10n/pt_PT.json b/l10n/pt_PT.json index 2d1c829c67a94c4c31f94fbe9f4d39d4bfdf95b0..9fb46a8ba603d2a4537c44d28da5570dbbb1e9d7 100644 --- a/l10n/pt_PT.json +++ b/l10n/pt_PT.json @@ -1,115 +1,123 @@ { "translations": { - "User-Session unexpectedly expired" : "A sessão do utilizador expirou inexplicavelmente", + "User-Session unexpectedly expired" : "A sessão de utilizador expirou inesperadamente", "Provided email-address is not valid" : "O endereço de e-mail que inseriu não é válido", "%s has published the calendar »%s«" : "%s publicou o calendário »%s«", - "Unexpected error sending email. Please contact your administrator." : "Ocorreu um erro inesperado ao enviar o email. Por favor contacte o seu administrador", + "Unexpected error sending email. Please contact your administrator." : "Ocorreu um erro ao enviar o email. Por favor contacte o seu administrador", "Successfully sent email to %1$s" : "A mensagem enviada com sucesso para %1$s ", "Hello," : "Olá,", "We wanted to inform you that %s has published the calendar »%s«." : "Queremos informa-lo que %s publicou o calendário »%s«.", "Open »%s«" : "Abrir »%s«", "Cheers!" : "Parabéns!", "Upcoming events" : "Próximos eventos", + "More events" : "Mais eventos", + "Calendar" : "Calendário", + "New booking {booking}" : "Novo agendamento {booking}", "Appointments" : "Reuniões", "Schedule appointment \"%s\"" : "Marcar reunião \"%s\"", "Schedule an appointment" : "Marcar uma reunião", "Prepare for %s" : "Prepare-se para %s", - "Your appointment \"%s\" needs confirmation" : "A sua reunião \"%s\" necessita de confirmação", + "Follow up for %s" : "Acompanhamento para %s", + "Your appointment \"%s\" with %s needs confirmation" : "O seu agendamento \"%s\" com %sprecisa de confirmação", "Dear %s, please confirm your booking" : "Caro %s, por favor confirme o seu agendamento", "Confirm" : "Confirmar", + "Description:" : "Descrição:", "This confirmation link expires in %s hours." : "Esta ligação de confirmação expira em %s horas.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Se pretende cancelar a reunião, por favor contacte o organizador.", - "Appointment:" : "Reunião:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Se deseja cancelar a sua marcação, deve contactar o seu coordenador respondendo a esta mensagem ou pode visitar a sua página de perfil.", + "Your appointment \"%s\" with %s has been accepted" : "O seu agendamento \"%s\" com %s foi aceite.", + "Dear %s, your booking has been accepted." : "Caro/a %s, o seu agendamento foi aceite.", + "Appointment for:" : "Agendamento para:", "Date:" : "Data:", "Where:" : "Local:", - "Description:" : "Descrição:", - "Calendar" : "Calendário", + "Comment:" : "Comentário:", + "You have a new appointment booking \"%s\" from %s" : "Tem uma nova reserva de marcação \"%s\" de %s", "A Calendar app for Nextcloud" : "Uma aplicação de calendário para o Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "A aplicação Calendário é uma interface de utilizador para o servidor CalDAV da Nextcloud. Sincronize facilmente eventos de vários dispositivos com o seu Nextcloud e edite-os online..\n\n* 🚀 **Integração com outras aplicações Nextcloud!** Atualmente a de Contactos - mas mais estão para chegar.\n* 🌐 **Suporte para WebCal!** Quer ver os dias de jogo da sua equipa favorita no seu calendário? Não há problema!\n* 🙋 **Participantes!** Convide pessoas para os seus eventos\n* ⌚️ **Livre/Ocupado!** Veja quando os seus participantes estão disponíveis para se encontrarem\n* ⏰ **Lembretes!** Receba alarmes para eventos dentro do seu navegador e via e-mail\n* 🔍 Pesquisar! Encontre os seus eventos à vontade\n* ☑️ Tarefas! Ver tarefas com uma data de vencimento diretamente no calendário\n* 🙈 **Não estamos a reinventar a roda!** Baseado na grande [biblioteca c-dav](https://github.com/nextcloud/cdav-library), e nas [ical.js](https://github.com/mozilla-comm/ical.js) e [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Dia anterior", "Previous week" : "Semana anterior", "Previous month" : "Mês anterior", "Next day" : "Dia seguinte", "Next week" : "Próxima semana", "Next month" : "Próximo mês", - "New event" : "Novo evento", "Today" : "Hoje", "Day" : "Dia", "Week" : "Semana", "Month" : "Mês", + "Year" : "Year", "List" : "Lista", + "Appointment link was copied to clipboard" : "Hiperligação da reunião copiada para a área de transferência", + "Appointment link could not be copied to clipboard" : "Não é possível copiar a hiperligação da reunião para a área de transferência", "Preview" : "Pré-visualizar", "Copy link" : "Copiar hiperligação", "Edit" : "Editar", "Delete" : "Eliminar", - "Appointment link was copied to clipboard" : "Hiperligação da reunião copiada para a área de transferência", - "Appointment link could not be copied to clipboard" : "Não é possível copiar a hiperligação da reunião para a área de transferência", - "Add new" : "Adicionar nova", - "Untitled calendar" : "Calendário sem titulo", - "Edit name" : "Editar nome", - "Saving name …" : "A guardar o nome...", - "Edit color" : "Editar a cor", - "Saving color …" : "A guardar a côr...", - "Copy private link" : "Copiar link privado", - "Export" : "Exportar", - "Unshare from me" : "Cancelar partilha", + "Create new" : "Criar novo", "Disable calendar \"{calendar}\"" : "Desativar calendário \"{calendar}\"", "Disable untitled calendar" : "Desativar calendário sem título", "Enable calendar \"{calendar}\"" : "Ativar calendário \"{calendar}\"", "Enable untitled calendar" : "Ativar calendário sem título", "An error occurred, unable to change visibility of the calendar." : "Ocorreu um erro, incapaz de alterar a visibilidade do calendário.", - "An error occurred, unable to delete the calendar." : "Ocorreu um erro que impede que o calendário seja apagado", + "Untitled calendar" : "Calendário sem titulo", + "Shared with you by" : "Partilhado consigo por", + "Edit and share calendar" : "Editar e partilhar calendário", + "Edit calendar" : "Editar calendário", + "An error occurred, unable to create the calendar." : "Ocorreu um erro que impede que o calendário seja criado", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Por favor introduza uma ligação válida (começada por http://, https://, webcal://, ou webcals://)", + "Calendars" : "Calendários", + "Add new" : "Adicionar nova", + "New calendar" : "Novo calendário", + "Name for new calendar" : "Nome para o novo calendário", + "Creating calendar …" : "A criar o calendário …", + "New calendar with task list" : "Novo calendário com lista de tarefas", + "Creating subscription …" : "A criar subscrição ...", "Calendar link copied to clipboard." : "Hiperligação do calendário copiado para a área de transferência.", "Calendar link could not be copied to clipboard." : "Link do calendário não pôde se copiado para a área de transferência.", - "An error occurred, unable to rename the calendar." : "Ocorreu um erro que impede que o nome do calendário seja alterado", - "An error occurred, unable to change the calendar's color." : "Ocorreu um erro que impede que a cor do calendário seja alterada", - "Share link" : "Partilhar hiperligação", - "Publish calendar" : "Publicar calendário", - "Publishing calendar" : "A publicar o calendário", - "Copy public link" : "Copiar ligação publica", - "Send link to calendar via email" : "Enviar ligação por correio electrónico", - "Enter one address" : "Introduza um endereço", - "Sending email …" : "A enviar o email …", "Copy subscription link" : "Copiar ligação da subscrição", "Copying link …" : "Copiar ligação …", "Copied link" : "Ligação copiada", "Could not copy link" : "Não foi possível copiar a ligação", + "Export" : "Exportar", + "Untitled item" : "Item sem título ", + "Unknown calendar" : "Calendário desconhecido", + "Could not load deleted calendars and objects" : "Não foi possível carregar calendários e objetos apagados ", + "Could not restore calendar or event" : "Não foi possível restaurar o calendário ou evento ", + "Do you really want to empty the trash bin?" : "Tem a certeza que pretende esvaziar a reciclagem?", + "Empty trash bin" : "Esvaziar a reciclagem", + "Trash bin" : "Reciclagem", + "Loading deleted items." : "A carregar itens excluídos.", + "You do not have any deleted items." : "Não tem qualquer item apagado. ", + "Name" : "Nome", + "Deleted" : "Eliminado", + "Restore" : "Restaurar", + "Delete permanently" : "Eliminar permanentemente", + "Could not update calendar order." : "Não foi possível atualizar a ordenação do calendário.", + "Deck" : "Quadro", + "Hidden" : "Escondido", + "Copy internal link" : "Copiar ligação interna", + "An error occurred, unable to publish calendar." : "Ocorreu um erro, não foi possível publicar o calendário.", + "An error occurred, unable to send email." : "Ocorreu um erro, não foi possível enviar o email.", + "Embed code copied to clipboard." : "Código de incorporação copiado para a área de transferência.", + "Embed code could not be copied to clipboard." : "Não é possível copiar o código de incorporação", + "Unpublishing calendar failed" : "Erro ao remover a publicação do calendário", + "Share link" : "Partilhar hiperligação", + "Copy public link" : "Copiar ligação publica", + "Send link to calendar via email" : "Enviar ligação por correio eletrónico", + "Enter one address" : "Introduza um endereço", + "Sending email …" : "A enviar o email …", "Copy embedding code" : "Copiar código embebido", "Copying code …" : "A copiar código...", "Copied code" : "Código copiado", "Could not copy code" : "Não foi possível copiar o código", "Delete share link" : "Apagar hiperligação de partilha", "Deleting share link …" : "A apagar hiperligação de partilha", - "An error occurred, unable to publish calendar." : "Ocorreu um erro, não foi possível publicar o calendário.", - "An error occurred, unable to send email." : "Ocorreu um erro, não foi possível enviar o email.", - "Embed code copied to clipboard." : "Código de incorporação copiado para a área de transferência.", - "Embed code could not be copied to clipboard." : "Não é possível copiar o código de incorporação", - "Unpublishing calendar failed" : "Erro ao remover a publicação do calendário", - "Share with users or groups" : "Partilhe com os utilizadores ou grupos", - "No users or groups" : "Sem utilizadores ou grupos", "can edit" : "pode editar", "Unshare with {displayName}" : "Cancelar partilha com {displayName}", - "+ New calendar" : "+ Novo calendário", - "New calendar" : "Novo calendário", - "Name for new calendar" : "Nome para o novo calendário", - "Creating calendar …" : "A criar o calendário …", - "New calendar with task list" : "Novo calendário com lista de tarefas", - "An error occurred, unable to create the calendar." : "Ocorreu um erro que impede que o calendário seja criado", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Por favor introduza uma ligação válida (começada por http://, https://, webcal://, ou webcals://)", - "Trash bin" : "Reciclagem", - "Loading deleted elements." : "A carregar elementos apagados.", - "You do not have any deleted elements." : "Não tem nenhum elemento apagado. ", - "Name" : "Nome", - "Deleted" : "Eliminado", - "Restore" : "Restaurar", - "Delete permanently" : "Eliminar permanentemente", - "Empty trash bin" : "Esvaziar a reciclagem", - "Untitled element" : "Elemento sem título", - "Unknown calendar" : "Calendário desconhecido", - "Could not load deleted calendars and objects" : "Não foi possível carregar calendários e objetos apagados ", - "Could not restore calendar or event" : "Não foi possível restaurar o calendário ou evento ", - "Do you really want to empty the trash bin?" : "Tem a certeza que pretende esvaziar a reciclagem?", - "Could not update calendar order." : "Não foi possível atualizar a ordenação do calendário.", + "Share with users or groups" : "Partilhe com os utilizadores ou grupos", + "No users or groups" : "Sem utilizadores ou grupos", + "Calendar name …" : "Nome do calendário…", + "Share calendar" : "Partilhar calendário", + "Unshare from me" : "Cancelar partilha", + "Save" : "Guardar", "Import calendars" : "Importar calendários", + "Please select a calendar to import into …" : "Selecione o calendário para onde importar ...", "Filename" : "Nome do ficheiro", "Calendar to import into" : "Calendário para o qual importar", "Cancel" : "Cancelar", @@ -118,9 +126,8 @@ "No valid files found, aborting import" : "A importação foi cancelada pois não foram encontrados ficheiros válidos", "Import partially failed. Imported {accepted} out of {total}." : "A importação falhou parcialmente. Importados {accepted} de um total de {total}.", "Automatic" : "Automático", + "Automatic ({detected})" : "Automático ({detected})", "New setting was not saved successfully." : "Erro a gravar a nova configuração.", - "Shortcut overview" : "Visão geral de atalhos", - "or" : "ou", "Navigation" : "Navegação", "Previous period" : "Período anterior", "Next period" : "Próximo período", @@ -137,10 +144,15 @@ "Save edited event" : "Gravar evento editado", "Delete edited event" : "Apagar evento editado", "Duplicate event" : "Duplicar evento", + "Shortcut overview" : "Visão geral de atalhos", + "or" : "ou", + "Calendar settings" : "Configurações do calendário", + "No reminder" : "Nenhum lembrete", + "CalDAV link copied to clipboard." : "Ligação CalDAV copiada para a área de transferência.", + "CalDAV link could not be copied to clipboard." : "Não foi possível copiar a ligação CalDAV para a área de transferência.", "Enable birthday calendar" : "Ativar calendário de aniversários", "Show tasks in calendar" : "Mostrar tarefas no calendário", "Enable simplified editor" : "Ativar editor simplificado", - "Limit visible events per view" : "Limitar eventos visíveis por visualização", "Show weekends" : "Mostrar fins-de-semana", "Show week numbers" : "Mostrar o número das semanas", "Time increments" : "Incrementos de tempo", @@ -149,16 +161,17 @@ "Copy iOS/macOS CalDAV address" : "Copiar endereço iOS/macOS CalDAV", "Personal availability settings" : "Configurações de disponibilidade pessoal", "Show keyboard shortcuts" : "Mostrar atalhos de teclado", - "Calendar settings" : "Configurações do calendário", - "No reminder" : "Nenhum lembrete", - "CalDAV link copied to clipboard." : "Ligação CalDAV copiada para a área de transferência.", - "CalDAV link could not be copied to clipboard." : "Não foi possível copiar a ligação CalDAV para a área de transferência.", - "Appointment was created successfully" : "Reunião criada com sucesso", - "Appointment was updated successfully" : "Reunião atualizada com sucesso", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minuto","{duration} minutos","{duration} minutos"], "0 minutes" : "0 minutos", + "_{duration} hour_::_{duration} hours_" : ["{duration} hora","{duration} horas","{duration} horas"], + "_{duration} day_::_{duration} days_" : ["{duration} dia","{duration} dias","{duration} dias"], + "_{duration} month_::_{duration} months_" : ["{duration} mês","{duration} meses","{duration} meses"], + "_{duration} year_::_{duration} years_" : ["{duration} ano","{duration} anos","{duration} anos"], "To configure appointments, add your email address in personal settings." : "Para configurar reuniões, adicione seu o endereço de e-mail nas configurações pessoais.", "Public – shown on the profile page" : "Público - mostrado na página de perfil", "Private – only accessible via secret link" : "Privado - acessível apenas por ligação secreta", + "Update" : "Atualizar", + "Appointment name" : "Nome da marcação", "Location" : "Localização:", "Description" : "Descrição", "Visibility" : "Visibilidade", @@ -167,6 +180,7 @@ "Additional calendars to check for conflicts" : "Calendários adicionais para verificar conflitos", "Pick time ranges where appointments are allowed" : "Escolha os intervalos de tempo onde as reuniões são permitidas", "to" : "Para", + "Delete slot" : "Delete slot", "No times set" : "Nenhum horário definido", "Add" : "Adicionar", "Monday" : "Segunda", @@ -176,22 +190,22 @@ "Friday" : "Sexta", "Saturday" : "Sábado", "Sunday" : "Domingo", + "Weekdays" : "Weekdays", "Add time before and after the event" : "Adicionar um tempo antes e depois do evento", "Before the event" : "Antes do evento", "After the event" : "Depois do evento", "Planning restrictions" : "Restrições de planeamento", - "Create appointment" : "Criar reunião", - "Edit appointment" : "Editar reunião", - "Save" : "Guardar", - "Update" : "Atualizar", "Please confirm your reservation" : "Por favor confirme a sua reserva", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Enviamos-lhe um e-mail com os detalhes. Por favor confirme a sua reunião utilizando a ligação do e-mail. Pode fechar esta página.", "Your name" : "O seu nome", "Your email address" : "O seu endereço de email", "Please share anything that will help prepare for our meeting" : "Por favor partilhe qualquer coisa que ajude na preparação da nossa reunião", "Could not book the appointment. Please try again later or contact the organizer." : "Não foi possível agendar a reunião. Tente novamente mais tarde ou entre em contacto com o organizador.", - "Book the appointment" : "Agendar a reunião", - "Reminder" : "Lembrete", + "Back" : "Voltar", + "Create a new conversation" : "Criar nova conversa", + "on" : "em", + "at" : "às", + "before at" : "antes em", "Notification" : "Notificação", "Email" : "E-mail", "Audio notification" : "Notificação de áudio", @@ -201,57 +215,76 @@ "Edit time" : "Editar horário", "Save time" : "Gravar horário", "Remove reminder" : "Apagar lembrete", - "+ Add reminder" : "+ Adicionar lembrete", "Add reminder" : "Adicionar lembrete ", - "_second_::_seconds_" : ["segundo","segundos","segundos"], - "_minute_::_minutes_" : ["minuto","minutos","minutos"], - "_hour_::_hours_" : ["hora","horas","horas"], - "_day_::_days_" : ["dia","dias","dias"], - "_week_::_weeks_" : ["semana","semanas","semanas"], + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "horas", + "days" : "dias", + "weeks" : "semanas", + "Choose a file to add as attachment" : "Escolha um ficheiro para adicionar como anexo", + "Proceed" : "Prosseguir", + "Delete file" : "Apagar ficheiro", "Suggested" : "Sugerido", "Available" : "Disponível", - "Not available" : "Indisponível", - "Checking availability" : "A verificar disponibilidade", "Invitation accepted" : "Convite aceite", "Accepted {organizerName}'s invitation" : "Aceite convite de {organizerName}", + "Participation marked as tentative" : "Participação marcada como tentativa", + "Not available" : "Indisponível", + "Invitation declined" : "Convite recusado", + "Checking availability" : "A verificar disponibilidade", + "Out of office" : "Fora do escritório", + "Attendees:" : "Participantes:", + "Done" : "Concluído", + "Room name" : "Nome da sala", + "Free" : "Livre", "Busy" : "Ocupado", "Unknown" : "Desconhecido", + "The invitation has been accepted successfully." : "O convite foi aceite com sucesso.", + "Failed to accept the invitation." : "Falha ao aceitar o convite.", + "The invitation has been declined successfully." : "O convite foi recusado com sucesso.", "Accept" : "Aceitar", "Decline" : "Recusar", "Tentative" : "Tentativa", - "Send email" : "Enviar e-mail", - "All day" : "Todo o dia", + "Attendees" : "Participantes", + "From" : "De", + "To" : "Para", "Repeat" : "Repetir", "never" : "nunca", "after" : "depois", "first" : "primeiro", - "third" : "terceiro", - "fourth" : "quarto", - "fifth" : "quinto", - "second to last" : "do segundo ao último", - "last" : "ultimo", "Repeat every" : "Repetir a cada", "By day of the month" : "Por dia do mês", "On the" : "No", + "_day_::_days_" : ["dia","dias","dias"], + "_week_::_weeks_" : ["semana","semanas","semanas"], "_month_::_months_" : ["mês","meses","meses"], "_year_::_years_" : ["ano","anos","anos"], "weekday" : "dia da semana", "weekend day" : "dia do fim-de-semana", + "Resources" : "Recursos", "available" : "disponível", - "More" : "Mais", "Pick a date" : "Escolha uma data", "Global" : "Global", + "Subscribed" : "Subscrito", + "Subscribe" : "Subscrever", "Personal" : "Pessoal", - "Details" : "Detalhes", - "Attendees" : "Participantes", - "Resources" : "Recursos", + "Edit event" : "Editar evento", + "All day" : "Todo o dia", + "Invite" : "Convite", + "Untitled event" : "Evento sem título", "Close" : "Fechar", "Anniversary" : "Aniversário", "Miscellaneous" : "Diversos", "Week {number} of {year}" : "Semana {number} do {year}", "Daily" : "Diariamente", "Weekly" : "Semanalmente", - "Next" : "Seguinte", + "second" : "segundo", + "third" : "terceiro", + "fourth" : "quarto", + "fifth" : "quinto", + "second to last" : "do segundo ao último", + "last" : "ultimo", + "Untitled task" : "Untitled task", "Other" : "Outro", "When shared show full event" : "Quando partilhado, mostrar evento completo", "When shared show only busy" : "Quando partilhado, mostrar apenas ocupados", @@ -260,34 +293,11 @@ "Confirmed" : "Confirmado", "Canceled" : "Cancelado", "Categories" : "Categorias", - "Commuting" : "Em trânsito", - "Presentation" : "Apresentação", - "Talk" : "Falar", - "Review" : "Rever", - "Office" : "Escritório", - "Mail" : "Correio", - "Driving" : "Conduzir", - "Biking" : "Andar de bicicleta", - "Health" : "Saúde", - "New Years Eve" : "Véspera de Ano Novo", - "Fireworks" : "Fogo de artifício", - "Running" : "Correr", - "Marathon" : "Maratona", - "Christmas" : "Natal", - "Trip" : "Viagem", - "Lecture" : "Leitura", - "Seminar" : "Seminário", - "Photograph" : "Fotografia", - "Party" : "Festa", - "Birthday" : "Aniversário", - "Shopping" : "Compras", - "Groceries" : "Mercearias", - "Skate" : "Skate", - "Skateboard" : "Skate", - "Wine tasting" : "Degustação de vinho", - "Golf" : "Golfe", - "Dinner" : "Jantar", - "Lunch" : "Almoço", - "User not found" : "Utilizador não encontrado" + "Error while sharing file" : "Erro ao partilhar ficheiro", + "An error occurred, unable to delete the calendar." : "Ocorreu um erro que impede que o calendário seja apagado", + "User not found" : "Utilizador não encontrado", + "Reminder" : "Lembrete", + "+ Add reminder" : "+ Adicionar lembrete", + "Details" : "Detalhes" },"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;" } \ No newline at end of file diff --git a/l10n/ro.js b/l10n/ro.js index 12cd09646fc383de860c18e503ffa7d1cc8857b8..30d50ae605bb9c8678da86be042962a6e3a58779 100644 --- a/l10n/ro.js +++ b/l10n/ro.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Emailul furnizat este prea lung", "User-Session unexpectedly expired" : "Sesiunea-Utilizatorului a expirat în mod neașteptat", "Provided email-address is not valid" : "Adresa de email furnizată este invalidă", "%s has published the calendar »%s«" : "%sa publicat calendarul »%s«", @@ -11,123 +12,150 @@ OC.L10N.register( "Open »%s«" : "Accesează »%s«", "Cheers!" : "Noroc!", "Upcoming events" : "Evenimente viitoare", + "No more events today" : "Nu mai sunt evenimente astăzi", + "No upcoming events" : "Niciun eveniment următor", + "More events" : "Mai multe evenimente", + "%1$s with %2$s" : "%1$s cu %2$s", + "Calendar" : "Calendar", + "New booking {booking}" : "Rezervare nouă {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) a programat întâlnirea \"{config_display_name}\" pe {date_time}.", "Appointments" : "Întâlniri", "Schedule appointment \"%s\"" : "Planifică programarea \"%s\"", "Schedule an appointment" : "Planifică o programare", "Prepare for %s" : "Pregăteste-te de %s", "Follow up for %s" : "Urmărește-ne pentru %s", - "Your appointment \"%s\" needs confirmation" : "Programarea \"%s\" necesită confirmare", + "Your appointment \"%s\" with %s needs confirmation" : "Întâlnirea \"%s\" cu %s necesită confirmare", "Dear %s, please confirm your booking" : "Dragă %s, te rog să confirmi rezervarea ta", "Confirm" : "Confirmă", + "Description:" : "Descriere:", "This confirmation link expires in %s hours." : "Acest link de confirmare expira în %s ore. ", - "If you wish to cancel the appointment after all, please contact your organizer." : "Dacă dorești să anulezi programarea, te rugăm să contactezi organizatorul.", - "Appointment:" : "Programare:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Dacă totuși doriți să anulați întâlnirea, contactați organizatorul răspunzându-i la acest mail sau vizitând pagina de profil a acestuia.", + "Your appointment \"%s\" with %s has been accepted" : "Întâlnirea \"%s\" cu %s a fost acceptată", + "Dear %s, your booking has been accepted." : "Dragă %s, rezervarea a fost acceptată.", + "Appointment for:" : "Programare pentru:", "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Veți primi un link cu emailul de confirmare", "Where:" : "Unde:", - "Description:" : "Descriere:", - "Calendar" : "Calendar", + "Comment:" : "Comentariu:", + "You have a new appointment booking \"%s\" from %s" : "Aveți o nouă rezervare \"%s\" de la %s", + "Dear %s, %s (%s) booked an appointment with you." : "Dragă %s, %s (%s) a rezervat o întâlnire cu tine.", "A Calendar app for Nextcloud" : "O aplicație de tip calendar pentru Nextcloud", "Previous day" : "Ziua anterioară", "Previous week" : "Săptămâna anterioară", + "Previous year" : "Anul anterior", "Previous month" : "Luna anterioară", "Next day" : "Ziua următoare", "Next week" : "Saptămâna următoare", + "Next year" : "Aanul viitor", "Next month" : "Luna următoare", - "New event" : "Eveniment nou", + "Create new event" : "Creează un nou eveniment", + "Event" : "Eveniment", "Today" : "Astăzi", "Day" : "Zi", "Week" : "Săptămâna", "Month" : "Luna", + "Year" : "An", "List" : "Listă", + "Appointment link was copied to clipboard" : "Linkul programării a fost copiat în clipboard", + "Appointment link could not be copied to clipboard" : "Linkul programării nu a putut fi copiat în clipboard", "Preview" : "Previzualizare", "Copy link" : "Copiază link", "Edit" : "Editează", "Delete" : "Șterge", - "Appointment link was copied to clipboard" : "Linkul programării a fost copiat în clipboard", - "Appointment link could not be copied to clipboard" : "Linkul programării nu a putut fi copiat în clipboard", - "Add new" : "Adaugă nou", - "Untitled calendar" : "Calendar nedenumit", - "Edit name" : "Modifică numele", - "Saving name …" : "Se salvează numele ...", - "Edit color" : "Modifică culoarea", - "Saving color …" : "Se salvează culoarea  ...", - "Copy private link" : "Copiază link privat", - "Export" : "Exportă", - "Unshare from me" : "Anulare partajarea cu mine", + "Create new" : "Crează nou", + "Disable calendar \"{calendar}\"" : "Dezactivează calendarul \"{calendar}\"", + "Disable untitled calendar" : "Dezactivează calendarul fără nume", + "Enable calendar \"{calendar}\"" : "Activează calendarul \"{calendar}\"", + "Enable untitled calendar" : "Activează calendarul fără nume", "An error occurred, unable to change visibility of the calendar." : "A apărut o eroare, nu se poate schimba vizibilitatea calendarului.", - "An error occurred, unable to delete the calendar." : "A apărut o eroare, nu se poate șterge calendarul.", - "Calendar link copied to clipboard." : "Linkul către calendar a fost copiat în clipboard.", - "Calendar link could not be copied to clipboard." : "Linkul către calendar nu a putut fi copiat în clipboard.", - "An error occurred, unable to rename the calendar." : "A apărut o eroare, acest calendar nu se poate redenumi.", - "An error occurred, unable to change the calendar's color." : "A apărut o eroare, nu se poate schimba culoarea calendarului.", + "Untitled calendar" : "Calendar nedenumit", + "Shared with you by" : "Partajat cu tine de", + "Edit and share calendar" : "Editează și partajează calendarul", + "Edit calendar" : "Editare calendar", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Oprirea partajării calendarului in {countdown} secundă","Oprirea partajării calendarului în {countdown} secunde","Oprirea partajării calendarului în {countdown} de secunde"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Se șterge calendarul în {countdown} secundă","Se șterge calendarul în {countdown} secunde","Se șterge calendarul în {countdown} de secunde"], + "An error occurred, unable to create the calendar." : "A apărut o eroare, nu se poate creea acest calendar.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vă rugăm să introduceți un link valid (ce începe cu ttp://, https://, webcal://, sau webcals://)", + "Calendars" : "Calendare", + "Add new" : "Adaugă nou", + "New calendar" : "Calendar nou", + "Name for new calendar" : "Numele noului calendar", + "Creating calendar …" : "Se creează un calendar nou ...", + "New calendar with task list" : "Calendar nou cu listă", + "New subscription from link (read-only)" : "Abonament nou folosind un link (doar citirea calendarului)", + "Creating subscription …" : "Se creează abonamentul ...", + "Add public holiday calendar" : "Adaugă calendar de sărbători", + "Calendar link copied to clipboard." : "Linkul către calendar a fost copiat în clipboard.", + "Calendar link could not be copied to clipboard." : "Linkul către calendar nu a putut fi copiat în clipboard.", + "Copy subscription link" : "Copiază linkul abonamentului", + "Copying link …" : "Copiază link ...", + "Copied link" : "Link copiat", + "Could not copy link" : "Nu s-a putut copia link-ul", + "Export" : "Exportă", + "Untitled item" : "Element fără nume", + "Unknown calendar" : "Calendar necunoscut", + "Could not load deleted calendars and objects" : "Nu s-au putut încărca obiectele și calendarele", + "Could not restore calendar or event" : "Nu s-a putut restaura calendarul sau evenimentul", + "Do you really want to empty the trash bin?" : "Doriti sigur sa goliți conținutul coșului de gunoi ?", + "Empty trash bin" : "Golește coșul de gunoi", + "Trash bin" : "Coș de gunoi", + "Loading deleted items." : "Se încarcă elementele șterse.", + "You do not have any deleted items." : "Nu aveți elemente șterse.", + "Name" : "Nume", + "Deleted" : "Șters", + "Restore" : "Restaurare", + "Delete permanently" : "Șterge permanent", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Coșul de gunoi este golit în {numDays} zi","Coșul de gunoi este golit în {numDays} zile","Coșul de gunoi este golit în {numDays} zile"], + "Could not update calendar order." : "Nu s-a putut actualiza ordinea calendarului.", + "Hidden" : "Ascuns", + "Internal link" : "Link intern", + "A private link that can be used with external clients" : "Link privat ce poate fi folosit cu clienți externi", + "Copy internal link" : "Copiază linkul intern", + "An error occurred, unable to publish calendar." : "A apărut o eroare, nu se poate publica calendarul.", + "An error occurred, unable to send email." : "A apărut o eroare, nu se poate trimite email-ul.", + "Embed code copied to clipboard." : "Codul a fost copiat în clipboard.", + "Embed code could not be copied to clipboard." : "Codul nu a putut fi copiat in clipboard.", + "Unpublishing calendar failed" : "Retragerea calendarului a eşuat", "Share link" : "Partajază legătură", - "Publish calendar" : "Publică calendarul", - "Publishing calendar" : "Se publică calendarul", "Copy public link" : "Copiză link-ul public", "Send link to calendar via email" : "Trimite link-ul către calendar folosind email", "Enter one address" : "Introdu o adresă", "Sending email …" : "Email-ul se trimite ...", - "Copy subscription link" : "Copiază linkul abonamentului", - "Copying link …" : "Copiază link ...", - "Copied link" : "Link copiat", - "Could not copy link" : "Nu s-a putut copia link-ul", "Copy embedding code" : "Copiați codul de încorporare", "Copying code …" : "Se copiază codul ...", "Copied code" : "Codul a fost copiat", "Could not copy code" : "Nu sa putut copia codul", "Delete share link" : "Șterge linkul partajat", "Deleting share link …" : "Se şterge linkul de partajare ...", - "An error occurred, unable to publish calendar." : "A apărut o eroare, nu se poate publica calendarul.", - "An error occurred, unable to send email." : "A apărut o eroare, nu se poate trimite email-ul.", - "Embed code copied to clipboard." : "Codul a fost copiat în clipboard.", - "Embed code could not be copied to clipboard." : "Codul nu a putut fi copiat in clipboard.", - "Unpublishing calendar failed" : "Retragerea calendarului a eşuat", - "Share with users or groups" : "Partajează cu utilizatori sau grupuri", - "No users or groups" : "Nu sunt utilizatori sau grupuri", + "An error occurred while unsharing the calendar." : "Eroare la eliminarea partajării calendarului.", + "An error occurred, unable to change the permission of the share." : "A apărut o eroare, nu se poate schimba permisiunile fişierelor partajate.", "can edit" : "poate edita", "Unshare with {displayName}" : "Retrage cu {displayName}", - "An error occurred, unable to change the unshare the calendar." : "A apărut o eroare, nu se poate schimba retragerea calendarului.", - "An error occurred, unable to change the permission of the share." : "A apărut o eroare, nu se poate schimba permisiunile fişierelor partajate.", - "+ New calendar" : "+ Calendar nou", - "New calendar" : "Calendar nou", - "Name for new calendar" : "Numele noului calendar", - "Creating calendar …" : "Se creează un calendar nou ...", - "New calendar with task list" : "Calendar nou cu listă", - "New subscription from link (read-only)" : "Abonament nou folosind un link (doar citirea calendarului)", - "Creating subscription …" : "Se creează abonamentul ...", - "An error occurred, unable to create the calendar." : "A apărut o eroare, nu se poate creea acest calendar.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vă rugăm să introduceți un link valid (ce începe cu ttp://, https://, webcal://, sau webcals://)", - "Trash bin" : "Coș de gunoi", - "Loading deleted elements." : "Se încarcă elementele șterse", - "You do not have any deleted elements." : "Nu ai elemente șterse", - "Name" : "Nume", - "Deleted" : "Șters", - "Restore" : "Restaurare", - "Delete permanently" : "Șterge permanent", - "Empty trash bin" : "Golește coșul de gunoi", - "Untitled element" : "Element nedenumit", - "Unknown calendar" : "Calendar necunoscut", - "Could not load deleted calendars and objects" : "Nu s-au putut încărca obiectele și calendarele", - "Could not restore calendar or event" : "Nu s-a putut restaura calendarul sau evenimentul", - "Do you really want to empty the trash bin?" : "Doriti sigur sa goliți conținutul coșului de gunoi ?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Obiectele din coşul de gunoi sunt şterse dupa {numDays} zi","Obiectele din coşul de gunoi sunt şterse dupa {numDays} zile","Obiectele din coşul de gunoi sunt şterse dupa {numDays} de zile"], - "Could not update calendar order." : "Nu s-a putut actualiza ordinea calendarului.", + "Share with users or groups" : "Partajează cu utilizatori sau grupuri", + "No users or groups" : "Nu sunt utilizatori sau grupuri", + "Failed to save calendar name and color" : "Eroare la salvarea numelui calendarului și a culorii", + "Calendar name …" : "Numele calendarului ...", + "Share calendar" : "Partajează calendarul", + "Unshare from me" : "Anulare partajarea cu mine", + "Save" : "Salvează", "Import calendars" : "Importă calendare", "Please select a calendar to import into …" : "Vă rugăm să selectaţi un calendar în care să importaţi ...", "Filename" : "Nume fișier", "Calendar to import into" : "Calendarul în care se importă", "Cancel" : "Anulează", "_Import calendar_::_Import calendars_" : ["Importă calendar","Importă calendare","Importă calendare"], + "Select the default location for attachments" : "Selectează locația implicită pentru atașamente", + "Invalid location selected" : "Locație invalidă", + "Attachments folder successfully saved." : "Folderul de atașamente a fost salvat.", + "Error on saving attachments folder." : "Eroare la salvarea folderului de atașamente.", + "Default attachments location" : "Locația implicită a atașamentelor", "{filename} could not be parsed" : "{filename} nu a putut fi analizat", "No valid files found, aborting import" : "Nu au fost găsite fişiere valide, importarea se opreşte", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["A fost importat %n eveniment","Au fost importate %n evenimente","Au fost importate %n evenimente"], "Import partially failed. Imported {accepted} out of {total}." : "Importarea a eşuat parţial. S-au importat {accepted} din {total}.", "Automatic" : "Automat", "Automatic ({detected})" : "Automat ({detectat})", "New setting was not saved successfully." : "Noile setări nu au fost salvate cu succes.", - "Shortcut overview" : "Prezentare generală a comenzilor rapide", - "or" : "sau", "Navigation" : "Navigare", "Previous period" : "Perioada anterioară", "Next period" : "Perioada următoare", @@ -135,14 +163,25 @@ OC.L10N.register( "Day view" : "Vizualizare pe zi", "Week view" : "Vizualizare pe săptămână", "Month view" : "Vizualizare pe lună", + "Year view" : "Vizualizare an", "List view" : "Vizualizare sub formă de listă", "Actions" : "Acțiuni", "Create event" : "Creează eveniment", "Show shortcuts" : "Arată scurtături", + "Close editor" : "Închide editorul", + "Save edited event" : "Salvează evenimentul editat", + "Delete edited event" : "Șterge evenimentul editat", + "Duplicate event" : "Duplicare eveniment", + "Shortcut overview" : "Prezentare generală a comenzilor rapide", + "or" : "sau", + "Calendar settings" : "Setări calendar", + "No reminder" : "Fără mementouri", + "CalDAV link copied to clipboard." : "Link-ul CAlDAV a fost copiat în clipboard.", + "CalDAV link could not be copied to clipboard." : "Linkul CalDAV nu a putut fi copiat în clipboard.", "Enable birthday calendar" : "Activează calendarul cu zile de naştere", "Show tasks in calendar" : "Arată sarcinile în calendar", "Enable simplified editor" : "Activează editorul simplificat", - "Limit visible events per view" : "Limitează evenimentele vizibile în fiecare mod de vizualizare", + "Limit the number of events displayed in the monthly view" : "Limitează numărul evenimentelor în vizualizare lunară", "Show weekends" : "Arată weekend-uri", "Show week numbers" : "Afișați numerele săptămânilor", "Time increments" : "Incremente de timp", @@ -151,11 +190,6 @@ OC.L10N.register( "Copy iOS/macOS CalDAV address" : "Copiază adresa iOS/OS X CalDAV", "Personal availability settings" : "Setări de disponibilitate", "Show keyboard shortcuts" : "Arată scurtături", - "No reminder" : "Fără mementouri", - "CalDAV link copied to clipboard." : "Link-ul CAlDAV a fost copiat în clipboard.", - "CalDAV link could not be copied to clipboard." : "Linkul CalDAV nu a putut fi copiat în clipboard.", - "Appointment was created successfully" : "Programarea a fost creeata cu succes", - "Appointment was updated successfully" : "Programarea a fost actualizată cu succes", "_{duration} minute_::_{duration} minutes_" : ["{duration} minut","{duration} minute","{duration} de minute"], "0 minutes" : "0 minute", "_{duration} hour_::_{duration} hours_" : ["{duration} oră","{duration} ore","{duration} de ore"], @@ -166,7 +200,11 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Pentru a configura programările, adăugați-vă adresa email în setările personale.", "Public – shown on the profile page" : "Public- arată pepagina de profil", "Private – only accessible via secret link" : "Private - accesibil doar prin folosirea unui link secret", + "Update" : "Actualizare", + "Appointment name" : "Numele programării", "Location" : "Locație", + "Create a Talk room" : "Creează o cameră Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Va fi generat un link unic pentru toate programările rezervate și vor fi trimise în mailul de confirmare", "Description" : "Descriere", "Visibility" : "Vizibil", "Duration" : "Durată", @@ -191,17 +229,17 @@ OC.L10N.register( "Minimum time before next available slot" : "Timpul minim înaintea următorului slot de timp disponibil", "Max slots per day" : "Numărul de sloturi pe zi", "Limit how far in the future appointments can be booked" : "Limitează cât timp în viitor programările pot fi create", - "Create appointment" : "Creează programare", - "Edit appointment" : "Editează programarea", - "Save" : "Salvează", - "Update" : "Actualizare", + "Please confirm your reservation" : "Confirmați, vă rog, rezervarea", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Ți-am trimis un email cu detalii. Te rugăm să confirmi programarea ta folosind linkul din email. Poți închide această pagină acum.", "Your name" : "Numele tău", "Your email address" : "Adresa ta de email", "Please share anything that will help prepare for our meeting" : "Te rugăm să împărtășești orice informație ce ne poate ajuta în pregătirea pentru ședința noastră.", "Could not book the appointment. Please try again later or contact the organizer." : "Nu s-a putut creea evenimentul. Vă rugăm să încercați mai târziu sau să contactați organizatorul.", - "Book the appointment" : "Creează programarea", - "Reminder" : "Memento", + "Back" : "Înapoi", + "Create a new conversation" : "Creează o nouă conversație", + "Select conversation" : "Selectare conversație", + "on" : "pe", + "at" : "la", "before at" : "Înainte de la", "Notification" : "Notificări", "Email" : "Email", @@ -212,92 +250,173 @@ OC.L10N.register( "Edit time" : "Editează ora", "Save time" : "Salvează ora", "Remove reminder" : "Elimină memento", - "on" : "pe", - "at" : "la", - "+ Add reminder" : "+ Adaugă memento", "Add reminder" : "Adaugă memento", - "_second_::_seconds_" : ["secundă","secunde","secunde"], - "_minute_::_minutes_" : ["minut","minute","minute"], - "_hour_::_hours_" : ["oră","ore","ore"], - "_day_::_days_" : ["zi","zile","zile"], - "_week_::_weeks_" : ["săptămână","săptămâni","săptămâni"], + "seconds" : "secunde", + "minutes" : "minute", + "hours" : "ore", + "days" : "zile", + "weeks" : "săptămâni", + "Choose a file to add as attachment" : "Selectați un fișier ca atașament", + "Choose a file to share as a link" : "Selectați un fișier pentru partajare ca link", + "Attachment {name} already exist!" : "Atașamentul {name} există!", + "No attachments" : "Fără atașamente", + "Add from Files" : "Adaugă din Fișiere", + "Upload from device" : "Încarcă din dispozitiv", + "Delete file" : "Șterge fișier", + "_{count} attachment_::_{count} attachments_" : ["{count} atașament","{count} atașamente","{count} atașamente"], + "Suggested" : "Sugerat", "Available" : "Disponibil", + "Invitation accepted" : "Invitația a fost acceptată", + "Accepted {organizerName}'s invitation" : "A fost acceptată invitația {organizerName}", + "Participation marked as tentative" : "A fost marcată intenția de participare", + "Invitation is delegated" : "Invitația este delegată", "Not available" : "Nu este disponibil", - "Availability of attendees, resources and rooms" : "Disponibilitatea participanților, resurse și camere", + "Invitation declined" : "Invitația a fost respinsă", + "Declined {organizerName}'s invitation" : "Invitația {organizerName} respinsă", + "Checking availability" : "Se verifică disponibilitatea", + "Has not responded to {organizerName}'s invitation yet" : "Nu s-a răspuns încă invitației {organizerName}", "{organizer} (organizer)" : "{organizer} (organizer)", + "Availability of attendees, resources and rooms" : "Disponibilitatea participanților, resurse și camere", + "Out of office" : "În afara serviciului", + "Done" : "Realizat", + "Free" : "Liber", "Busy (tentative)" : "Ocupat (tetentativ)", "Busy" : "Ocupat", - "Out of office" : "În afara serviciului", "Unknown" : "Necunoscut", - "Accept" : "Accept", - "Decline" : "Refuză", - "Tentative" : "Tentativă", "The invitation has been accepted successfully." : "Invitația a fost acceptată cu succes.", "Failed to accept the invitation." : "Nu s-a acceptat invitația.", "The invitation has been declined successfully." : "Invitația a fost refuzată cu succes.", "Failed to decline the invitation." : "Invitația nu a putut fi refuzată.", "Your participation has been marked as tentative." : "Participarea a fost marcată ca o încercare.", - "Create Talk room for this event" : "Creează o cameră Talk pentru acest eveniment", + "Failed to set the participation status to tentative." : "Eroare la setarea statusului de intenție de participare.", + "Accept" : "Accept", + "Decline" : "Refuză", + "Tentative" : "Tentativă", "No attendees yet" : "Nu exista participați încă", + "Successfully appended link to talk room to location." : "S-a adăugat cu succes locației linkul la camera Talk.", + "Successfully appended link to talk room to description." : "S-a adăugat cu succes descrierii linkul la camera Talk.", "Error creating Talk room" : "Camera Talk nu a putut fi creată", - "Send email" : "Trimite email-ul", + "Attendees" : "Participanți", + "Remove group" : "Înlătură grupul", + "Remove attendee" : "Elimină participant", "Chairperson" : "Președinte", "Required participant" : "Participanți necesari", "Optional participant" : "Participanți opționali", - "Remove attendee" : "Elimină participant", + "_%n member_::_%n members_" : ["%n membru","%n membri","%n membri"], + "No match found" : "Nu s-a găsit nimic", "(organizer)" : "(organizator)", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Pentru a trimite invitații și răspunsuri, [linkopen]adăugați adresa de mail în setările personale[linkclose].", "Remove color" : "Șterge culoarea", "Event title" : "Titlul evenimentului", - "All day" : "Toată ziua", - "from {startDate}" : "începând cu {startDate}", - "from {startDate} at {startTime}" : "începând cu {startDate} de la {startTime}", - "to {endDate}" : "către {endDate}", - "to {endDate} at {endTime}" : "către {endDate} până la {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Nu se pot modifica setările zilnice pentru evenimentele care fac parte dintr-un set recurent.", + "From" : "De la", + "To" : "Către", "Repeat" : "Repetă", - "End repeat" : "Încheie seria", - "Select to end repeat" : "Selectează pentru a încheia seria", + "_time_::_times_" : ["dată","ori","ori"], "never" : "niciodată", "on date" : "la data ", "after" : "după", + "End repeat" : "Încheie seria", + "Select to end repeat" : "Selectează pentru a încheia seria", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Acest eveniment este excepția de recurență a unui set recurent. Nu i se poate adăuga o regulă de recurență.", "first" : "primul", - "third" : "al treilea", - "fourth" : "al patrulea", - "fifth" : "al cincilea", - "second to last" : "penultimul", - "last" : "ultimul", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Modificările regulii de recurență se vor aplica doar de acum încolo.", "Repeat every" : "Se repetă la fiecare", "By day of the month" : "după ziua lunii", "On the" : "Pe", + "_day_::_days_" : ["zi","zile","zile"], + "_week_::_weeks_" : ["săptămână","săptămâni","săptămâni"], "_month_::_months_" : ["lună","luni","luni"], "_year_::_years_" : ["an","ani","ani"], - "Suggestions" : "Sugestii", + "weekday" : "zi din săptămână", + "weekend day" : "ziua din săptămână", + "Does not repeat" : "Nu se repetă", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Definiția recurenței acestui eveniment nu este complet suportată de Nextcloud. Dacă editați opțiunile de recurență, s-ar putea pierde unele recurențe.", + "No rooms or resources yet" : "Nicio sală sau resursă deocamdată", + "Resources" : "Resurse", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} loc","{seatingCapacity} locuri","{seatingCapacity} locuri"], "Add resource" : "Adaugă resurse", "Has a projector" : "Conține un proiector", "Has a whiteboard" : "Conține o tablă de scris", "Wheelchair accessible" : "Accesibilă folosind un scaun cu rotile", "Remove resource" : "Elimină resurse", - "Projector" : "Proiector", - "Whiteboard" : "Tablă de scris", "Search for resources or rooms" : "Caută resurse sau camere", "available" : "disponibil", "unavailable" : "nedisponibil", + "Projector" : "Proiector", + "Whiteboard" : "Tablă de scris", "Room type" : "Tipul de cameră", "Any" : "Toate", "Minimum seating capacity" : "Capacitatea minimă", - "More" : "Mai mult", + "Update this and all future" : "Actualizează aceasta și toate viitoare", "Update this occurrence" : "Actualizați această ședință", "Public calendar does not exist" : "Calendarul public nu există", + "Maybe the share was deleted or has expired?" : "Poate că partajarea a fost ștearsă sau a expirat?", + "from {formattedDate}" : "începând cu {formattedDate}", + "to {formattedDate}" : "până la {formattedDate}", + "on {formattedDate}" : "pe {formattedDate}", + "from {formattedDate} at {formattedTime}" : "începând cu {formattedDate} la {formattedTime}", + "to {formattedDate} at {formattedTime}" : "până la data {formattedDate} la {formattedTime}", + "on {formattedDate} at {formattedTime}" : "pe {formattedDate} la {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} la {formattedTime}", + "Please enter a valid date" : "Adăugați o dată validă", + "Please enter a valid date and time" : "Adăugați o dată validă și o oră", "Please select a time zone:" : "Te rugăm să alegeți un fus orar:", "Pick a time" : "Alege un interval orar", "Pick a date" : "Alege o dată", + "Type to search time zone" : "Tastați pentru căutare zonă de timp", "Global" : "Global", + "Holidays in {region}" : "Sărbători în {region}", + "Public holiday calendars" : "Calendare de sărbători legale", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Calendarele de sărbători legale sunt furnizate de Thunderbird. Datele calendarului vor fi descărcate de la {website}", + "By {authors}" : "Autor {authors}", + "Subscribed" : "Subscris", + "Subscribe" : "Abonare", + "Could not fetch slots" : "Nu se pot prelua intervalele", + "Select slot" : "Selectați intervalul", + "No slots available" : "Nu sunt intervale disponibile", + "The slot for your appointment has been confirmed" : "Intervalul pentru întâlnire a fost confirmat", + "Appointment Details:" : "Detaliile programării:", "Time:" : "Timp:", "Booked for:" : "Rezervat pentru:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Mulțumim. Rezervarea din {startDate} pînă în {endDate} a fost confirmată.", + "Book another appointment:" : "Rezervați o altă programare:", + "See all available slots" : "Vezi toate intervalele disponibile", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Intervalul întâlnirii din {startDate} până în {endDate} nu mai este disponibil.", + "Please book a different slot:" : "Rezervați un alt interval:", + "Book an appointment with {name}" : "Rezervați o programare cu {name}", + "No public appointments found for {name}" : "Nu sunt programări publice pentru {name}", "Personal" : "Personal", - "Details" : "Detalii", - "Attendees" : "Participanți", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "A fost detectată automat zona de timp ca fiind UTC.\nProbabil ca măsura de securitate în cadrul browserului.\nSetați zona de timp manual în setările Calendar.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Zona de timp ({timezoneId}) nu există. Se revenire la UTC.\nModificați zona de timp în setări și raportați această problemă.", + "Edit event" : "Modifică eveniment", + "Event does not exist" : "Evenimentul nu există", + "Duplicate" : "Duplicat", + "Delete this occurrence" : "Șterge această poziție", + "Delete this and all future" : "Șterge aceasta și toate viitoare", + "All day" : "Toată ziua", + "Managing shared access" : "Configurare acces partajat", + "Deny access" : "Refuză accesul", + "Invite" : "Invită", + "_User requires access to your file_::_Users require access to your file_" : ["Utilizatorul necesită acces la fișier","Utilizatorii necesită acces la fișier","Utilizatorii necesită acces la fișier"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Atașament care necesită acces partajat","Atașamente care necesită acces partajat","Atașamente care necesită acces partajat"], + "Untitled event" : "Eveniment fără titlu", "Close" : "Închide", + "Subscribe to {name}" : "Abonare la {name}", + "Export {name}" : "Exportă {name}", "Anniversary" : "Aniversare", + "Appointment" : "Programare", + "Business" : "Afacere", + "Education" : "Educație", + "Holiday" : "Sărbătoare", + "Meeting" : "Videoconferință", + "Miscellaneous" : "Diverse", + "Non-working hours" : "După program", + "Not in office" : "Plecat", + "Phone call" : "Apel telefonic", + "Sick day" : "Bolnav", + "Special occasion" : "Ocazie specială", + "Travel" : "Călătorie", "Vacation" : "Vacanță", "Midnight on the day the event starts" : "La miezul nopții în ziua în care evenimentul începe", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : [" %n zi înainte de evenimentul de la {formattedHourMinute}","%n zile înainte de evenimentul de la {formattedHourMinute}","%n de zile înainte de evenimentul de la {formattedHourMinute}"], @@ -312,28 +431,28 @@ OC.L10N.register( "on {time}" : "la {time}", "on {time} ({timezoneId})" : "la {time} ({timezoneId})", "Week {number} of {year}" : "Săptămâna {number} din {year}", - "Does not repeat" : "Nu se repetă", "Daily" : "Zilnic", "Weekly" : "Săptămânal", "Monthly" : "Lunar", "Yearly" : "Anual", "_Every %n day_::_Every %n days_" : ["La fiecare %n zi","La fiecare %n zile","La fiecare %n de zile"], "_Every %n week_::_Every %n weeks_" : ["La fiecare %n zi","La fiecare %n săptămâni","La fiecare %n de săptămâni"], - "_Every %n month_::_Every %n months_" : ["La fiecare %n lună","La fiecare luni","La fiecare %n de luni"], + "_Every %n month_::_Every %n months_" : ["La fiecare %n lună","La fiecare %n luni","La fiecare %n luni"], "_Every %n year_::_Every %n years_" : ["La fiecare %n an","La fiecare %n ani","La fiecare %n de ani"], "_on {weekday}_::_on {weekdays}_" : ["în {weekdays}","în {weekdays}","în {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["în ziua de {dayOfMonthList}","în zilele de {dayOfMonthList}","în zilele de {dayOfMonthList}"], - "in {monthNames}" : "în {monthNames}", + "on the {ordinalNumber} {byDaySet}" : "pe {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "în {monthNames} pe {ordinalNumber} {byDaySet}", "until {untilDate}" : "până {untilDate}", "_%n time_::_%n times_" : ["%n zi","%n zile","%n de zile"], - "Untitled event" : "Eveniment fără titlu", + "second" : "secundă", + "third" : "al treilea", + "fourth" : "al patrulea", + "fifth" : "al cincilea", + "second to last" : "penultimul", + "last" : "ultimul", "Untitled task" : "Sarcină fără titlu", "Please ask your administrator to enable the Tasks App." : "Vă rugăm să întrebați administratorul dmneavoastră să pornească aplicația Task.", - "Prev" : "Precedent", - "Next" : "Următorul", - "Prev year" : "Anul anterior", - "Next year" : "Aanul viitor", - "Year" : "An", "W" : "W", "%n more" : "%n mai mult", "No events to display" : "Nu sunt evenimente de afișat", @@ -352,7 +471,6 @@ OC.L10N.register( "When shared hide this event" : "Ascunde evenimentul la partajare", "The visibility of this event in shared calendars." : "Vizibilitatea acestui eveniment în calendarele partajate.", "Add a location" : "Adaugă o locație", - "Add a description" : "Adauga o descripție", "Status" : "Stare", "Confirmed" : "Confirmat", "Canceled" : "Anulat", @@ -360,59 +478,23 @@ OC.L10N.register( "Show as" : "Arată-ne", "Take this event into account when calculating free-busy information." : "Ține cont de acest eveniment în momentul calculării timpului liber.", "Categories" : "Categorii", - "Commuting" : "În deplasare", - "Talk" : "Discuție", - "Movie" : "Film", - "Mail" : "Mail", - "Sports" : "Sport", - "Exercise" : "Exerciții fizice", - "Work out" : "Antrenament", - "Working out" : "Antrenare", - "Gym" : "Sală de sport", - "Barber" : "Frizerie", - "Haircut" : "Tunsoare", - "Hairdresser" : "Frizer", - "Exam" : "Examen", - "Written test" : "Test scris", - "Oral test" : "Test oral", - "Working" : "Muncă", - "New Years Eve" : "Revelion", - "NYE" : "NYE", - "Fireworks" : "Artificii", - "Running" : "Alergat", - "Go for a run" : "Dute la alergat", - "Marathon" : "on", - "Video-conference" : "Conferință video", - "Conference-call" : "Apel tip conferință", - "Video-call" : "Apel video", - "Video-chat" : "Apel video", - "Video-meeting" : "Șediță video", - "Calling" : "Apelare", - "Christmas" : "Crăciun", - "Conference" : "Conferință", - "Pizza" : "Pizza", - "Travelling" : "Călătorie", - "Trip" : "Excursie", - "Journey" : "Călătorie", - "Collaborate" : "Colaborează", - "Pair" : "Pereche", - "Lecture" : "Ore de curs", - "Seminar" : "Seminar", - "Teaching" : "Predare", - "Photograph" : "Fotografie", - "Party" : "Petrecere", - "Celebration" : "Sărbătorire", - "Celebrate" : "Serbează", - "Birthday" : "Zi de naștere", - "Shopping" : "Shopping", - "Groceries" : "Cumpărături", - "Skate" : "Skate", - "Skateboard" : "Skateboard", - "Wine tasting" : "Degustare de vin", - "Golf" : "Golf", - "Dinner" : "Cină", - "Lunch" : "Prânz", + "Categories help you to structure and organize your events." : "Categoriile ajută la structurarea și organizarea evenimentelor.", + "Search or add categories" : "Căutare sau adăugare categorii", + "Add this as a new category" : "Adaugă aceasta ca nouă categorie", + "Custom color" : "Culoare particulară", + "Special color of this event. Overrides the calendar-color." : "Culoare specială pentru eveniment. Nu ține cont de culoarea calendarului.", + "Error while sharing file" : "Eroare la partajarea fișierului", + "Error while sharing file with user" : "Eroare la partajarea fișierului cu utilizatorul", + "Attachment {fileName} already exists!" : "Atașamentul {fileName} există!", + "An error occurred during getting file information" : "Eroare la preluarea informațiilor despre fișier", + "An error occurred, unable to delete the calendar." : "A apărut o eroare, nu se poate șterge calendarul.", + "Imported {filename}" : "S-a importat {filename}", + "This is an event reminder." : "Acesta este un memento pentru eveniment.", "Appointment not found" : "Programarea nu a fost găsită", - "User not found" : "Utilizatorul nu a fost găsit" + "User not found" : "Utilizatorul nu a fost găsit", + "Reminder" : "Memento", + "+ Add reminder" : "+ Adaugă memento", + "Suggestions" : "Sugestii", + "Details" : "Detalii" }, "nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));"); diff --git a/l10n/ro.json b/l10n/ro.json index d38e9c0a96806274d38ad042a0f46e3d4943b6f5..932193927221da5b3dd1a450c994d1f6e9c1d758 100644 --- a/l10n/ro.json +++ b/l10n/ro.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "Emailul furnizat este prea lung", "User-Session unexpectedly expired" : "Sesiunea-Utilizatorului a expirat în mod neașteptat", "Provided email-address is not valid" : "Adresa de email furnizată este invalidă", "%s has published the calendar »%s«" : "%sa publicat calendarul »%s«", @@ -9,123 +10,150 @@ "Open »%s«" : "Accesează »%s«", "Cheers!" : "Noroc!", "Upcoming events" : "Evenimente viitoare", + "No more events today" : "Nu mai sunt evenimente astăzi", + "No upcoming events" : "Niciun eveniment următor", + "More events" : "Mai multe evenimente", + "%1$s with %2$s" : "%1$s cu %2$s", + "Calendar" : "Calendar", + "New booking {booking}" : "Rezervare nouă {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) a programat întâlnirea \"{config_display_name}\" pe {date_time}.", "Appointments" : "Întâlniri", "Schedule appointment \"%s\"" : "Planifică programarea \"%s\"", "Schedule an appointment" : "Planifică o programare", "Prepare for %s" : "Pregăteste-te de %s", "Follow up for %s" : "Urmărește-ne pentru %s", - "Your appointment \"%s\" needs confirmation" : "Programarea \"%s\" necesită confirmare", + "Your appointment \"%s\" with %s needs confirmation" : "Întâlnirea \"%s\" cu %s necesită confirmare", "Dear %s, please confirm your booking" : "Dragă %s, te rog să confirmi rezervarea ta", "Confirm" : "Confirmă", + "Description:" : "Descriere:", "This confirmation link expires in %s hours." : "Acest link de confirmare expira în %s ore. ", - "If you wish to cancel the appointment after all, please contact your organizer." : "Dacă dorești să anulezi programarea, te rugăm să contactezi organizatorul.", - "Appointment:" : "Programare:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Dacă totuși doriți să anulați întâlnirea, contactați organizatorul răspunzându-i la acest mail sau vizitând pagina de profil a acestuia.", + "Your appointment \"%s\" with %s has been accepted" : "Întâlnirea \"%s\" cu %s a fost acceptată", + "Dear %s, your booking has been accepted." : "Dragă %s, rezervarea a fost acceptată.", + "Appointment for:" : "Programare pentru:", "Date:" : "Data:", + "You will receive a link with the confirmation email" : "Veți primi un link cu emailul de confirmare", "Where:" : "Unde:", - "Description:" : "Descriere:", - "Calendar" : "Calendar", + "Comment:" : "Comentariu:", + "You have a new appointment booking \"%s\" from %s" : "Aveți o nouă rezervare \"%s\" de la %s", + "Dear %s, %s (%s) booked an appointment with you." : "Dragă %s, %s (%s) a rezervat o întâlnire cu tine.", "A Calendar app for Nextcloud" : "O aplicație de tip calendar pentru Nextcloud", "Previous day" : "Ziua anterioară", "Previous week" : "Săptămâna anterioară", + "Previous year" : "Anul anterior", "Previous month" : "Luna anterioară", "Next day" : "Ziua următoare", "Next week" : "Saptămâna următoare", + "Next year" : "Aanul viitor", "Next month" : "Luna următoare", - "New event" : "Eveniment nou", + "Create new event" : "Creează un nou eveniment", + "Event" : "Eveniment", "Today" : "Astăzi", "Day" : "Zi", "Week" : "Săptămâna", "Month" : "Luna", + "Year" : "An", "List" : "Listă", + "Appointment link was copied to clipboard" : "Linkul programării a fost copiat în clipboard", + "Appointment link could not be copied to clipboard" : "Linkul programării nu a putut fi copiat în clipboard", "Preview" : "Previzualizare", "Copy link" : "Copiază link", "Edit" : "Editează", "Delete" : "Șterge", - "Appointment link was copied to clipboard" : "Linkul programării a fost copiat în clipboard", - "Appointment link could not be copied to clipboard" : "Linkul programării nu a putut fi copiat în clipboard", - "Add new" : "Adaugă nou", - "Untitled calendar" : "Calendar nedenumit", - "Edit name" : "Modifică numele", - "Saving name …" : "Se salvează numele ...", - "Edit color" : "Modifică culoarea", - "Saving color …" : "Se salvează culoarea  ...", - "Copy private link" : "Copiază link privat", - "Export" : "Exportă", - "Unshare from me" : "Anulare partajarea cu mine", + "Create new" : "Crează nou", + "Disable calendar \"{calendar}\"" : "Dezactivează calendarul \"{calendar}\"", + "Disable untitled calendar" : "Dezactivează calendarul fără nume", + "Enable calendar \"{calendar}\"" : "Activează calendarul \"{calendar}\"", + "Enable untitled calendar" : "Activează calendarul fără nume", "An error occurred, unable to change visibility of the calendar." : "A apărut o eroare, nu se poate schimba vizibilitatea calendarului.", - "An error occurred, unable to delete the calendar." : "A apărut o eroare, nu se poate șterge calendarul.", - "Calendar link copied to clipboard." : "Linkul către calendar a fost copiat în clipboard.", - "Calendar link could not be copied to clipboard." : "Linkul către calendar nu a putut fi copiat în clipboard.", - "An error occurred, unable to rename the calendar." : "A apărut o eroare, acest calendar nu se poate redenumi.", - "An error occurred, unable to change the calendar's color." : "A apărut o eroare, nu se poate schimba culoarea calendarului.", + "Untitled calendar" : "Calendar nedenumit", + "Shared with you by" : "Partajat cu tine de", + "Edit and share calendar" : "Editează și partajează calendarul", + "Edit calendar" : "Editare calendar", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Oprirea partajării calendarului in {countdown} secundă","Oprirea partajării calendarului în {countdown} secunde","Oprirea partajării calendarului în {countdown} de secunde"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Se șterge calendarul în {countdown} secundă","Se șterge calendarul în {countdown} secunde","Se șterge calendarul în {countdown} de secunde"], + "An error occurred, unable to create the calendar." : "A apărut o eroare, nu se poate creea acest calendar.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vă rugăm să introduceți un link valid (ce începe cu ttp://, https://, webcal://, sau webcals://)", + "Calendars" : "Calendare", + "Add new" : "Adaugă nou", + "New calendar" : "Calendar nou", + "Name for new calendar" : "Numele noului calendar", + "Creating calendar …" : "Se creează un calendar nou ...", + "New calendar with task list" : "Calendar nou cu listă", + "New subscription from link (read-only)" : "Abonament nou folosind un link (doar citirea calendarului)", + "Creating subscription …" : "Se creează abonamentul ...", + "Add public holiday calendar" : "Adaugă calendar de sărbători", + "Calendar link copied to clipboard." : "Linkul către calendar a fost copiat în clipboard.", + "Calendar link could not be copied to clipboard." : "Linkul către calendar nu a putut fi copiat în clipboard.", + "Copy subscription link" : "Copiază linkul abonamentului", + "Copying link …" : "Copiază link ...", + "Copied link" : "Link copiat", + "Could not copy link" : "Nu s-a putut copia link-ul", + "Export" : "Exportă", + "Untitled item" : "Element fără nume", + "Unknown calendar" : "Calendar necunoscut", + "Could not load deleted calendars and objects" : "Nu s-au putut încărca obiectele și calendarele", + "Could not restore calendar or event" : "Nu s-a putut restaura calendarul sau evenimentul", + "Do you really want to empty the trash bin?" : "Doriti sigur sa goliți conținutul coșului de gunoi ?", + "Empty trash bin" : "Golește coșul de gunoi", + "Trash bin" : "Coș de gunoi", + "Loading deleted items." : "Se încarcă elementele șterse.", + "You do not have any deleted items." : "Nu aveți elemente șterse.", + "Name" : "Nume", + "Deleted" : "Șters", + "Restore" : "Restaurare", + "Delete permanently" : "Șterge permanent", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Coșul de gunoi este golit în {numDays} zi","Coșul de gunoi este golit în {numDays} zile","Coșul de gunoi este golit în {numDays} zile"], + "Could not update calendar order." : "Nu s-a putut actualiza ordinea calendarului.", + "Hidden" : "Ascuns", + "Internal link" : "Link intern", + "A private link that can be used with external clients" : "Link privat ce poate fi folosit cu clienți externi", + "Copy internal link" : "Copiază linkul intern", + "An error occurred, unable to publish calendar." : "A apărut o eroare, nu se poate publica calendarul.", + "An error occurred, unable to send email." : "A apărut o eroare, nu se poate trimite email-ul.", + "Embed code copied to clipboard." : "Codul a fost copiat în clipboard.", + "Embed code could not be copied to clipboard." : "Codul nu a putut fi copiat in clipboard.", + "Unpublishing calendar failed" : "Retragerea calendarului a eşuat", "Share link" : "Partajază legătură", - "Publish calendar" : "Publică calendarul", - "Publishing calendar" : "Se publică calendarul", "Copy public link" : "Copiză link-ul public", "Send link to calendar via email" : "Trimite link-ul către calendar folosind email", "Enter one address" : "Introdu o adresă", "Sending email …" : "Email-ul se trimite ...", - "Copy subscription link" : "Copiază linkul abonamentului", - "Copying link …" : "Copiază link ...", - "Copied link" : "Link copiat", - "Could not copy link" : "Nu s-a putut copia link-ul", "Copy embedding code" : "Copiați codul de încorporare", "Copying code …" : "Se copiază codul ...", "Copied code" : "Codul a fost copiat", "Could not copy code" : "Nu sa putut copia codul", "Delete share link" : "Șterge linkul partajat", "Deleting share link …" : "Se şterge linkul de partajare ...", - "An error occurred, unable to publish calendar." : "A apărut o eroare, nu se poate publica calendarul.", - "An error occurred, unable to send email." : "A apărut o eroare, nu se poate trimite email-ul.", - "Embed code copied to clipboard." : "Codul a fost copiat în clipboard.", - "Embed code could not be copied to clipboard." : "Codul nu a putut fi copiat in clipboard.", - "Unpublishing calendar failed" : "Retragerea calendarului a eşuat", - "Share with users or groups" : "Partajează cu utilizatori sau grupuri", - "No users or groups" : "Nu sunt utilizatori sau grupuri", + "An error occurred while unsharing the calendar." : "Eroare la eliminarea partajării calendarului.", + "An error occurred, unable to change the permission of the share." : "A apărut o eroare, nu se poate schimba permisiunile fişierelor partajate.", "can edit" : "poate edita", "Unshare with {displayName}" : "Retrage cu {displayName}", - "An error occurred, unable to change the unshare the calendar." : "A apărut o eroare, nu se poate schimba retragerea calendarului.", - "An error occurred, unable to change the permission of the share." : "A apărut o eroare, nu se poate schimba permisiunile fişierelor partajate.", - "+ New calendar" : "+ Calendar nou", - "New calendar" : "Calendar nou", - "Name for new calendar" : "Numele noului calendar", - "Creating calendar …" : "Se creează un calendar nou ...", - "New calendar with task list" : "Calendar nou cu listă", - "New subscription from link (read-only)" : "Abonament nou folosind un link (doar citirea calendarului)", - "Creating subscription …" : "Se creează abonamentul ...", - "An error occurred, unable to create the calendar." : "A apărut o eroare, nu se poate creea acest calendar.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vă rugăm să introduceți un link valid (ce începe cu ttp://, https://, webcal://, sau webcals://)", - "Trash bin" : "Coș de gunoi", - "Loading deleted elements." : "Se încarcă elementele șterse", - "You do not have any deleted elements." : "Nu ai elemente șterse", - "Name" : "Nume", - "Deleted" : "Șters", - "Restore" : "Restaurare", - "Delete permanently" : "Șterge permanent", - "Empty trash bin" : "Golește coșul de gunoi", - "Untitled element" : "Element nedenumit", - "Unknown calendar" : "Calendar necunoscut", - "Could not load deleted calendars and objects" : "Nu s-au putut încărca obiectele și calendarele", - "Could not restore calendar or event" : "Nu s-a putut restaura calendarul sau evenimentul", - "Do you really want to empty the trash bin?" : "Doriti sigur sa goliți conținutul coșului de gunoi ?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Obiectele din coşul de gunoi sunt şterse dupa {numDays} zi","Obiectele din coşul de gunoi sunt şterse dupa {numDays} zile","Obiectele din coşul de gunoi sunt şterse dupa {numDays} de zile"], - "Could not update calendar order." : "Nu s-a putut actualiza ordinea calendarului.", + "Share with users or groups" : "Partajează cu utilizatori sau grupuri", + "No users or groups" : "Nu sunt utilizatori sau grupuri", + "Failed to save calendar name and color" : "Eroare la salvarea numelui calendarului și a culorii", + "Calendar name …" : "Numele calendarului ...", + "Share calendar" : "Partajează calendarul", + "Unshare from me" : "Anulare partajarea cu mine", + "Save" : "Salvează", "Import calendars" : "Importă calendare", "Please select a calendar to import into …" : "Vă rugăm să selectaţi un calendar în care să importaţi ...", "Filename" : "Nume fișier", "Calendar to import into" : "Calendarul în care se importă", "Cancel" : "Anulează", "_Import calendar_::_Import calendars_" : ["Importă calendar","Importă calendare","Importă calendare"], + "Select the default location for attachments" : "Selectează locația implicită pentru atașamente", + "Invalid location selected" : "Locație invalidă", + "Attachments folder successfully saved." : "Folderul de atașamente a fost salvat.", + "Error on saving attachments folder." : "Eroare la salvarea folderului de atașamente.", + "Default attachments location" : "Locația implicită a atașamentelor", "{filename} could not be parsed" : "{filename} nu a putut fi analizat", "No valid files found, aborting import" : "Nu au fost găsite fişiere valide, importarea se opreşte", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["A fost importat %n eveniment","Au fost importate %n evenimente","Au fost importate %n evenimente"], "Import partially failed. Imported {accepted} out of {total}." : "Importarea a eşuat parţial. S-au importat {accepted} din {total}.", "Automatic" : "Automat", "Automatic ({detected})" : "Automat ({detectat})", "New setting was not saved successfully." : "Noile setări nu au fost salvate cu succes.", - "Shortcut overview" : "Prezentare generală a comenzilor rapide", - "or" : "sau", "Navigation" : "Navigare", "Previous period" : "Perioada anterioară", "Next period" : "Perioada următoare", @@ -133,14 +161,25 @@ "Day view" : "Vizualizare pe zi", "Week view" : "Vizualizare pe săptămână", "Month view" : "Vizualizare pe lună", + "Year view" : "Vizualizare an", "List view" : "Vizualizare sub formă de listă", "Actions" : "Acțiuni", "Create event" : "Creează eveniment", "Show shortcuts" : "Arată scurtături", + "Close editor" : "Închide editorul", + "Save edited event" : "Salvează evenimentul editat", + "Delete edited event" : "Șterge evenimentul editat", + "Duplicate event" : "Duplicare eveniment", + "Shortcut overview" : "Prezentare generală a comenzilor rapide", + "or" : "sau", + "Calendar settings" : "Setări calendar", + "No reminder" : "Fără mementouri", + "CalDAV link copied to clipboard." : "Link-ul CAlDAV a fost copiat în clipboard.", + "CalDAV link could not be copied to clipboard." : "Linkul CalDAV nu a putut fi copiat în clipboard.", "Enable birthday calendar" : "Activează calendarul cu zile de naştere", "Show tasks in calendar" : "Arată sarcinile în calendar", "Enable simplified editor" : "Activează editorul simplificat", - "Limit visible events per view" : "Limitează evenimentele vizibile în fiecare mod de vizualizare", + "Limit the number of events displayed in the monthly view" : "Limitează numărul evenimentelor în vizualizare lunară", "Show weekends" : "Arată weekend-uri", "Show week numbers" : "Afișați numerele săptămânilor", "Time increments" : "Incremente de timp", @@ -149,11 +188,6 @@ "Copy iOS/macOS CalDAV address" : "Copiază adresa iOS/OS X CalDAV", "Personal availability settings" : "Setări de disponibilitate", "Show keyboard shortcuts" : "Arată scurtături", - "No reminder" : "Fără mementouri", - "CalDAV link copied to clipboard." : "Link-ul CAlDAV a fost copiat în clipboard.", - "CalDAV link could not be copied to clipboard." : "Linkul CalDAV nu a putut fi copiat în clipboard.", - "Appointment was created successfully" : "Programarea a fost creeata cu succes", - "Appointment was updated successfully" : "Programarea a fost actualizată cu succes", "_{duration} minute_::_{duration} minutes_" : ["{duration} minut","{duration} minute","{duration} de minute"], "0 minutes" : "0 minute", "_{duration} hour_::_{duration} hours_" : ["{duration} oră","{duration} ore","{duration} de ore"], @@ -164,7 +198,11 @@ "To configure appointments, add your email address in personal settings." : "Pentru a configura programările, adăugați-vă adresa email în setările personale.", "Public – shown on the profile page" : "Public- arată pepagina de profil", "Private – only accessible via secret link" : "Private - accesibil doar prin folosirea unui link secret", + "Update" : "Actualizare", + "Appointment name" : "Numele programării", "Location" : "Locație", + "Create a Talk room" : "Creează o cameră Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Va fi generat un link unic pentru toate programările rezervate și vor fi trimise în mailul de confirmare", "Description" : "Descriere", "Visibility" : "Vizibil", "Duration" : "Durată", @@ -189,17 +227,17 @@ "Minimum time before next available slot" : "Timpul minim înaintea următorului slot de timp disponibil", "Max slots per day" : "Numărul de sloturi pe zi", "Limit how far in the future appointments can be booked" : "Limitează cât timp în viitor programările pot fi create", - "Create appointment" : "Creează programare", - "Edit appointment" : "Editează programarea", - "Save" : "Salvează", - "Update" : "Actualizare", + "Please confirm your reservation" : "Confirmați, vă rog, rezervarea", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Ți-am trimis un email cu detalii. Te rugăm să confirmi programarea ta folosind linkul din email. Poți închide această pagină acum.", "Your name" : "Numele tău", "Your email address" : "Adresa ta de email", "Please share anything that will help prepare for our meeting" : "Te rugăm să împărtășești orice informație ce ne poate ajuta în pregătirea pentru ședința noastră.", "Could not book the appointment. Please try again later or contact the organizer." : "Nu s-a putut creea evenimentul. Vă rugăm să încercați mai târziu sau să contactați organizatorul.", - "Book the appointment" : "Creează programarea", - "Reminder" : "Memento", + "Back" : "Înapoi", + "Create a new conversation" : "Creează o nouă conversație", + "Select conversation" : "Selectare conversație", + "on" : "pe", + "at" : "la", "before at" : "Înainte de la", "Notification" : "Notificări", "Email" : "Email", @@ -210,92 +248,173 @@ "Edit time" : "Editează ora", "Save time" : "Salvează ora", "Remove reminder" : "Elimină memento", - "on" : "pe", - "at" : "la", - "+ Add reminder" : "+ Adaugă memento", "Add reminder" : "Adaugă memento", - "_second_::_seconds_" : ["secundă","secunde","secunde"], - "_minute_::_minutes_" : ["minut","minute","minute"], - "_hour_::_hours_" : ["oră","ore","ore"], - "_day_::_days_" : ["zi","zile","zile"], - "_week_::_weeks_" : ["săptămână","săptămâni","săptămâni"], + "seconds" : "secunde", + "minutes" : "minute", + "hours" : "ore", + "days" : "zile", + "weeks" : "săptămâni", + "Choose a file to add as attachment" : "Selectați un fișier ca atașament", + "Choose a file to share as a link" : "Selectați un fișier pentru partajare ca link", + "Attachment {name} already exist!" : "Atașamentul {name} există!", + "No attachments" : "Fără atașamente", + "Add from Files" : "Adaugă din Fișiere", + "Upload from device" : "Încarcă din dispozitiv", + "Delete file" : "Șterge fișier", + "_{count} attachment_::_{count} attachments_" : ["{count} atașament","{count} atașamente","{count} atașamente"], + "Suggested" : "Sugerat", "Available" : "Disponibil", + "Invitation accepted" : "Invitația a fost acceptată", + "Accepted {organizerName}'s invitation" : "A fost acceptată invitația {organizerName}", + "Participation marked as tentative" : "A fost marcată intenția de participare", + "Invitation is delegated" : "Invitația este delegată", "Not available" : "Nu este disponibil", - "Availability of attendees, resources and rooms" : "Disponibilitatea participanților, resurse și camere", + "Invitation declined" : "Invitația a fost respinsă", + "Declined {organizerName}'s invitation" : "Invitația {organizerName} respinsă", + "Checking availability" : "Se verifică disponibilitatea", + "Has not responded to {organizerName}'s invitation yet" : "Nu s-a răspuns încă invitației {organizerName}", "{organizer} (organizer)" : "{organizer} (organizer)", + "Availability of attendees, resources and rooms" : "Disponibilitatea participanților, resurse și camere", + "Out of office" : "În afara serviciului", + "Done" : "Realizat", + "Free" : "Liber", "Busy (tentative)" : "Ocupat (tetentativ)", "Busy" : "Ocupat", - "Out of office" : "În afara serviciului", "Unknown" : "Necunoscut", - "Accept" : "Accept", - "Decline" : "Refuză", - "Tentative" : "Tentativă", "The invitation has been accepted successfully." : "Invitația a fost acceptată cu succes.", "Failed to accept the invitation." : "Nu s-a acceptat invitația.", "The invitation has been declined successfully." : "Invitația a fost refuzată cu succes.", "Failed to decline the invitation." : "Invitația nu a putut fi refuzată.", "Your participation has been marked as tentative." : "Participarea a fost marcată ca o încercare.", - "Create Talk room for this event" : "Creează o cameră Talk pentru acest eveniment", + "Failed to set the participation status to tentative." : "Eroare la setarea statusului de intenție de participare.", + "Accept" : "Accept", + "Decline" : "Refuză", + "Tentative" : "Tentativă", "No attendees yet" : "Nu exista participați încă", + "Successfully appended link to talk room to location." : "S-a adăugat cu succes locației linkul la camera Talk.", + "Successfully appended link to talk room to description." : "S-a adăugat cu succes descrierii linkul la camera Talk.", "Error creating Talk room" : "Camera Talk nu a putut fi creată", - "Send email" : "Trimite email-ul", + "Attendees" : "Participanți", + "Remove group" : "Înlătură grupul", + "Remove attendee" : "Elimină participant", "Chairperson" : "Președinte", "Required participant" : "Participanți necesari", "Optional participant" : "Participanți opționali", - "Remove attendee" : "Elimină participant", + "_%n member_::_%n members_" : ["%n membru","%n membri","%n membri"], + "No match found" : "Nu s-a găsit nimic", "(organizer)" : "(organizator)", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Pentru a trimite invitații și răspunsuri, [linkopen]adăugați adresa de mail în setările personale[linkclose].", "Remove color" : "Șterge culoarea", "Event title" : "Titlul evenimentului", - "All day" : "Toată ziua", - "from {startDate}" : "începând cu {startDate}", - "from {startDate} at {startTime}" : "începând cu {startDate} de la {startTime}", - "to {endDate}" : "către {endDate}", - "to {endDate} at {endTime}" : "către {endDate} până la {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Nu se pot modifica setările zilnice pentru evenimentele care fac parte dintr-un set recurent.", + "From" : "De la", + "To" : "Către", "Repeat" : "Repetă", - "End repeat" : "Încheie seria", - "Select to end repeat" : "Selectează pentru a încheia seria", + "_time_::_times_" : ["dată","ori","ori"], "never" : "niciodată", "on date" : "la data ", "after" : "după", + "End repeat" : "Încheie seria", + "Select to end repeat" : "Selectează pentru a încheia seria", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Acest eveniment este excepția de recurență a unui set recurent. Nu i se poate adăuga o regulă de recurență.", "first" : "primul", - "third" : "al treilea", - "fourth" : "al patrulea", - "fifth" : "al cincilea", - "second to last" : "penultimul", - "last" : "ultimul", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Modificările regulii de recurență se vor aplica doar de acum încolo.", "Repeat every" : "Se repetă la fiecare", "By day of the month" : "după ziua lunii", "On the" : "Pe", + "_day_::_days_" : ["zi","zile","zile"], + "_week_::_weeks_" : ["săptămână","săptămâni","săptămâni"], "_month_::_months_" : ["lună","luni","luni"], "_year_::_years_" : ["an","ani","ani"], - "Suggestions" : "Sugestii", + "weekday" : "zi din săptămână", + "weekend day" : "ziua din săptămână", + "Does not repeat" : "Nu se repetă", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Definiția recurenței acestui eveniment nu este complet suportată de Nextcloud. Dacă editați opțiunile de recurență, s-ar putea pierde unele recurențe.", + "No rooms or resources yet" : "Nicio sală sau resursă deocamdată", + "Resources" : "Resurse", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} loc","{seatingCapacity} locuri","{seatingCapacity} locuri"], "Add resource" : "Adaugă resurse", "Has a projector" : "Conține un proiector", "Has a whiteboard" : "Conține o tablă de scris", "Wheelchair accessible" : "Accesibilă folosind un scaun cu rotile", "Remove resource" : "Elimină resurse", - "Projector" : "Proiector", - "Whiteboard" : "Tablă de scris", "Search for resources or rooms" : "Caută resurse sau camere", "available" : "disponibil", "unavailable" : "nedisponibil", + "Projector" : "Proiector", + "Whiteboard" : "Tablă de scris", "Room type" : "Tipul de cameră", "Any" : "Toate", "Minimum seating capacity" : "Capacitatea minimă", - "More" : "Mai mult", + "Update this and all future" : "Actualizează aceasta și toate viitoare", "Update this occurrence" : "Actualizați această ședință", "Public calendar does not exist" : "Calendarul public nu există", + "Maybe the share was deleted or has expired?" : "Poate că partajarea a fost ștearsă sau a expirat?", + "from {formattedDate}" : "începând cu {formattedDate}", + "to {formattedDate}" : "până la {formattedDate}", + "on {formattedDate}" : "pe {formattedDate}", + "from {formattedDate} at {formattedTime}" : "începând cu {formattedDate} la {formattedTime}", + "to {formattedDate} at {formattedTime}" : "până la data {formattedDate} la {formattedTime}", + "on {formattedDate} at {formattedTime}" : "pe {formattedDate} la {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} la {formattedTime}", + "Please enter a valid date" : "Adăugați o dată validă", + "Please enter a valid date and time" : "Adăugați o dată validă și o oră", "Please select a time zone:" : "Te rugăm să alegeți un fus orar:", "Pick a time" : "Alege un interval orar", "Pick a date" : "Alege o dată", + "Type to search time zone" : "Tastați pentru căutare zonă de timp", "Global" : "Global", + "Holidays in {region}" : "Sărbători în {region}", + "Public holiday calendars" : "Calendare de sărbători legale", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Calendarele de sărbători legale sunt furnizate de Thunderbird. Datele calendarului vor fi descărcate de la {website}", + "By {authors}" : "Autor {authors}", + "Subscribed" : "Subscris", + "Subscribe" : "Abonare", + "Could not fetch slots" : "Nu se pot prelua intervalele", + "Select slot" : "Selectați intervalul", + "No slots available" : "Nu sunt intervale disponibile", + "The slot for your appointment has been confirmed" : "Intervalul pentru întâlnire a fost confirmat", + "Appointment Details:" : "Detaliile programării:", "Time:" : "Timp:", "Booked for:" : "Rezervat pentru:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Mulțumim. Rezervarea din {startDate} pînă în {endDate} a fost confirmată.", + "Book another appointment:" : "Rezervați o altă programare:", + "See all available slots" : "Vezi toate intervalele disponibile", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Intervalul întâlnirii din {startDate} până în {endDate} nu mai este disponibil.", + "Please book a different slot:" : "Rezervați un alt interval:", + "Book an appointment with {name}" : "Rezervați o programare cu {name}", + "No public appointments found for {name}" : "Nu sunt programări publice pentru {name}", "Personal" : "Personal", - "Details" : "Detalii", - "Attendees" : "Participanți", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "A fost detectată automat zona de timp ca fiind UTC.\nProbabil ca măsura de securitate în cadrul browserului.\nSetați zona de timp manual în setările Calendar.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Zona de timp ({timezoneId}) nu există. Se revenire la UTC.\nModificați zona de timp în setări și raportați această problemă.", + "Edit event" : "Modifică eveniment", + "Event does not exist" : "Evenimentul nu există", + "Duplicate" : "Duplicat", + "Delete this occurrence" : "Șterge această poziție", + "Delete this and all future" : "Șterge aceasta și toate viitoare", + "All day" : "Toată ziua", + "Managing shared access" : "Configurare acces partajat", + "Deny access" : "Refuză accesul", + "Invite" : "Invită", + "_User requires access to your file_::_Users require access to your file_" : ["Utilizatorul necesită acces la fișier","Utilizatorii necesită acces la fișier","Utilizatorii necesită acces la fișier"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Atașament care necesită acces partajat","Atașamente care necesită acces partajat","Atașamente care necesită acces partajat"], + "Untitled event" : "Eveniment fără titlu", "Close" : "Închide", + "Subscribe to {name}" : "Abonare la {name}", + "Export {name}" : "Exportă {name}", "Anniversary" : "Aniversare", + "Appointment" : "Programare", + "Business" : "Afacere", + "Education" : "Educație", + "Holiday" : "Sărbătoare", + "Meeting" : "Videoconferință", + "Miscellaneous" : "Diverse", + "Non-working hours" : "După program", + "Not in office" : "Plecat", + "Phone call" : "Apel telefonic", + "Sick day" : "Bolnav", + "Special occasion" : "Ocazie specială", + "Travel" : "Călătorie", "Vacation" : "Vacanță", "Midnight on the day the event starts" : "La miezul nopții în ziua în care evenimentul începe", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : [" %n zi înainte de evenimentul de la {formattedHourMinute}","%n zile înainte de evenimentul de la {formattedHourMinute}","%n de zile înainte de evenimentul de la {formattedHourMinute}"], @@ -310,28 +429,28 @@ "on {time}" : "la {time}", "on {time} ({timezoneId})" : "la {time} ({timezoneId})", "Week {number} of {year}" : "Săptămâna {number} din {year}", - "Does not repeat" : "Nu se repetă", "Daily" : "Zilnic", "Weekly" : "Săptămânal", "Monthly" : "Lunar", "Yearly" : "Anual", "_Every %n day_::_Every %n days_" : ["La fiecare %n zi","La fiecare %n zile","La fiecare %n de zile"], "_Every %n week_::_Every %n weeks_" : ["La fiecare %n zi","La fiecare %n săptămâni","La fiecare %n de săptămâni"], - "_Every %n month_::_Every %n months_" : ["La fiecare %n lună","La fiecare luni","La fiecare %n de luni"], + "_Every %n month_::_Every %n months_" : ["La fiecare %n lună","La fiecare %n luni","La fiecare %n luni"], "_Every %n year_::_Every %n years_" : ["La fiecare %n an","La fiecare %n ani","La fiecare %n de ani"], "_on {weekday}_::_on {weekdays}_" : ["în {weekdays}","în {weekdays}","în {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["în ziua de {dayOfMonthList}","în zilele de {dayOfMonthList}","în zilele de {dayOfMonthList}"], - "in {monthNames}" : "în {monthNames}", + "on the {ordinalNumber} {byDaySet}" : "pe {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "în {monthNames} pe {ordinalNumber} {byDaySet}", "until {untilDate}" : "până {untilDate}", "_%n time_::_%n times_" : ["%n zi","%n zile","%n de zile"], - "Untitled event" : "Eveniment fără titlu", + "second" : "secundă", + "third" : "al treilea", + "fourth" : "al patrulea", + "fifth" : "al cincilea", + "second to last" : "penultimul", + "last" : "ultimul", "Untitled task" : "Sarcină fără titlu", "Please ask your administrator to enable the Tasks App." : "Vă rugăm să întrebați administratorul dmneavoastră să pornească aplicația Task.", - "Prev" : "Precedent", - "Next" : "Următorul", - "Prev year" : "Anul anterior", - "Next year" : "Aanul viitor", - "Year" : "An", "W" : "W", "%n more" : "%n mai mult", "No events to display" : "Nu sunt evenimente de afișat", @@ -350,7 +469,6 @@ "When shared hide this event" : "Ascunde evenimentul la partajare", "The visibility of this event in shared calendars." : "Vizibilitatea acestui eveniment în calendarele partajate.", "Add a location" : "Adaugă o locație", - "Add a description" : "Adauga o descripție", "Status" : "Stare", "Confirmed" : "Confirmat", "Canceled" : "Anulat", @@ -358,59 +476,23 @@ "Show as" : "Arată-ne", "Take this event into account when calculating free-busy information." : "Ține cont de acest eveniment în momentul calculării timpului liber.", "Categories" : "Categorii", - "Commuting" : "În deplasare", - "Talk" : "Discuție", - "Movie" : "Film", - "Mail" : "Mail", - "Sports" : "Sport", - "Exercise" : "Exerciții fizice", - "Work out" : "Antrenament", - "Working out" : "Antrenare", - "Gym" : "Sală de sport", - "Barber" : "Frizerie", - "Haircut" : "Tunsoare", - "Hairdresser" : "Frizer", - "Exam" : "Examen", - "Written test" : "Test scris", - "Oral test" : "Test oral", - "Working" : "Muncă", - "New Years Eve" : "Revelion", - "NYE" : "NYE", - "Fireworks" : "Artificii", - "Running" : "Alergat", - "Go for a run" : "Dute la alergat", - "Marathon" : "on", - "Video-conference" : "Conferință video", - "Conference-call" : "Apel tip conferință", - "Video-call" : "Apel video", - "Video-chat" : "Apel video", - "Video-meeting" : "Șediță video", - "Calling" : "Apelare", - "Christmas" : "Crăciun", - "Conference" : "Conferință", - "Pizza" : "Pizza", - "Travelling" : "Călătorie", - "Trip" : "Excursie", - "Journey" : "Călătorie", - "Collaborate" : "Colaborează", - "Pair" : "Pereche", - "Lecture" : "Ore de curs", - "Seminar" : "Seminar", - "Teaching" : "Predare", - "Photograph" : "Fotografie", - "Party" : "Petrecere", - "Celebration" : "Sărbătorire", - "Celebrate" : "Serbează", - "Birthday" : "Zi de naștere", - "Shopping" : "Shopping", - "Groceries" : "Cumpărături", - "Skate" : "Skate", - "Skateboard" : "Skateboard", - "Wine tasting" : "Degustare de vin", - "Golf" : "Golf", - "Dinner" : "Cină", - "Lunch" : "Prânz", + "Categories help you to structure and organize your events." : "Categoriile ajută la structurarea și organizarea evenimentelor.", + "Search or add categories" : "Căutare sau adăugare categorii", + "Add this as a new category" : "Adaugă aceasta ca nouă categorie", + "Custom color" : "Culoare particulară", + "Special color of this event. Overrides the calendar-color." : "Culoare specială pentru eveniment. Nu ține cont de culoarea calendarului.", + "Error while sharing file" : "Eroare la partajarea fișierului", + "Error while sharing file with user" : "Eroare la partajarea fișierului cu utilizatorul", + "Attachment {fileName} already exists!" : "Atașamentul {fileName} există!", + "An error occurred during getting file information" : "Eroare la preluarea informațiilor despre fișier", + "An error occurred, unable to delete the calendar." : "A apărut o eroare, nu se poate șterge calendarul.", + "Imported {filename}" : "S-a importat {filename}", + "This is an event reminder." : "Acesta este un memento pentru eveniment.", "Appointment not found" : "Programarea nu a fost găsită", - "User not found" : "Utilizatorul nu a fost găsit" + "User not found" : "Utilizatorul nu a fost găsit", + "Reminder" : "Memento", + "+ Add reminder" : "+ Adaugă memento", + "Suggestions" : "Sugestii", + "Details" : "Detalii" },"pluralForm" :"nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));" } \ No newline at end of file diff --git a/l10n/ru.js b/l10n/ru.js index 8b7771dfcfc6a6160cdeb4f41464cf3c5e977e64..72c4fbd2010f320c7e47ddbc8abbfc661bc1ea4a 100644 --- a/l10n/ru.js +++ b/l10n/ru.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Указанный адрес электронной почты слишком длинный", "User-Session unexpectedly expired" : "Сеанс работы пользователя неожиданно завершён", "Provided email-address is not valid" : "Указанный адрес электронной почты недействителен", "%s has published the calendar »%s«" : "%s опубликовал календарь «%s»", @@ -11,129 +12,161 @@ OC.L10N.register( "Open »%s«" : "Открыть «%s»", "Cheers!" : "Удачи!", "Upcoming events" : "Приближающиеся события", + "No more events today" : "На сегодня больше нет событий", + "No upcoming events" : "Приближающиеся события отсуствуют", + "More events" : "Следующие события", + "%1$s with %2$s" : "%1$s с %2$s", + "Calendar" : "Календарь", + "New booking {booking}" : "Новое бронирование {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) заборонировал(а) встречу \"{config_display_name}\" на {date_time}.", "Appointments" : "Мероприятия", "Schedule appointment \"%s\"" : "Запланировать встречу «%s»", "Schedule an appointment" : "Запланировать встречу", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Подготовиться к %s", "Follow up for %s" : "Последующие действия для %s", - "Your appointment \"%s\" needs confirmation" : "Ваша встреча «%s» требует подтверждения", + "Your appointment \"%s\" with %s needs confirmation" : "Ваша встреча «%s» с %s требует подтверждения", "Dear %s, please confirm your booking" : "Уважаемый %s, подтвердите своё бронирование", "Confirm" : "Подтвердить", + "Appointment with:" : "Встреча с:", + "Description:" : "Описание:", "This confirmation link expires in %s hours." : "Срок действия этой ссылки для подтверждения истекает через %s часов.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Если вы хотите отменить встречу, пожалуйста, свяжитесь с организатором.", - "Appointment:" : "Встреча:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Если вы всё равно хотите отменить встречу, свяжитесь с её организатором, ответив на это письмо или перейдите на страницу, указанную в профиле.", + "Your appointment \"%s\" with %s has been accepted" : "Ваша встреча «%s» с %s была подтверждена", + "Dear %s, your booking has been accepted." : "Уважаемый(-ая) %s, ваше бронирование было подтверждено.", + "Appointment for:" : "Встреча с:", "Date:" : "Дата:", + "You will receive a link with the confirmation email" : "Вы получите ссылку с подтверждением по электронной почте", "Where:" : "Место:", - "Description:" : "Описание:", - "Calendar" : "Календарь", + "Comment:" : "Комментарий:", + "You have a new appointment booking \"%s\" from %s" : "У вас новое бронирование встречи «%s» от %s", + "Dear %s, %s (%s) booked an appointment with you." : "Уважаемый(-ая) %s, %s (%s) забронировал(а) встречу с вами.", "A Calendar app for Nextcloud" : "Приложение Календарь для Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Приложение «Календарь» обеспечивает работу с календарями с использованием протокола CalDAV. Сервер Nextcloud позволяет синхронизировать календарей между различными устройствами, а это приложение служит для работы из браузера. \n\n*🚀 **Интеграция с другими приложениями Nextcloud** В настоящее время поддерживается интеграция с приложением Контакты, готовится интеграция с другими приложениями;\n* 🌐 **Поддержка протокола WebCal** Возможно настроить синхронизацию и показ дней игр своей любимой команды в календаре;\n* 🙋 **Отправка приглашений участникам** Пригласите участников на свои мероприятия;\n* ⌚️ **Поддержка статусов занятого и свободного времени** позволяет назначать встречи в удобное время\n* ⏰ **Напоминания** Получение уведомлений в браузере и по электронной почте\n* 🔍 **Поиск** позволяет находить нужные события \n* ☑️ **Задачи** просмотр задач с датой выполнения прямо в календаре\n* 🙈 **Мы не изобретаем колесо** Приложение основано на отличных библиотеках [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) и [fullcalendar](https://github.com/fullcalendar/fullcalendar).", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Приложение «Календарь» для Nextcloud. Легко синхронизируйте события с различных устройств и редактируйте их прямо в вашем Nextcloud.\n\n* 🚀 **Интеграция с другими приложениями Nextcloud!** Например: Контакты, Talk, Задачи, Deck и Круги\n* 🌐 **Поддержка WebCal!** Хотите видеть в календаре расписание матчей любимой команды? Легко!\n* 🙋 **Участники!** Приглашайте людей на свои события\n* ⌚ **Свободен/занят!** Узнавайте, когда участники доступны для встречи\n* ⏰ **Напоминания!** Получайте уведомления о событиях в браузере и по электронной почте\n* 🔍 **Поиск!** Быстро находите нужные события\n* ☑️ **Задачи!** Просматривайте задачи и карточки Deck с установленным сроком прямо в календаре\n* 🔈 **Комнаты Talk!** Создавайте комнату в Talk при бронировании встречи одним кликом\n* 📆 **Бронирование встреч** Отправьте ссылку, чтобы другие могли записаться к вам [с помощью этого приложения](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Вложения!** Добавляйте, загружайте и просматривайте файлы, прикреплённые к событиям\n* 🙈 **Мы не изобретаем велосипед!** Приложение основано на проверенных библиотеках: [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) и [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Предыдущий день", "Previous week" : "Предыдущая неделя", + "Previous year" : "Предыдущий год", "Previous month" : "Предыдущий месяц", "Next day" : "Следующий день", "Next week" : "Следующая неделя", + "Next year" : "Следующий год", "Next month" : "Следующий месяц", - "New event" : "Создать событие", + "Create new event" : "Создать событие", + "Event" : "Событие", "Today" : "Сегодня", "Day" : "День", "Week" : "Неделя", "Month" : "Месяц", + "Year" : "Год", "List" : "Список", + "Appointment link was copied to clipboard" : "Ссылка на эту встречу скопирована в буфер обмена", + "Appointment link could not be copied to clipboard" : "Не удалось скопировать в буфер обмена ссылку на эту встречу", "Preview" : "Предварительный просмотр", "Copy link" : "Копировать ссылку", "Edit" : "Редактировать", "Delete" : "Удалить", - "Appointment link was copied to clipboard" : "Ссылка на эту встречу скопирована в буфер обмена", - "Appointment link could not be copied to clipboard" : "Не удалось скопировать в буфер обмена ссылку на эту встречу", - "Add new" : "Добавить новое", - "Untitled calendar" : "Календарь без названия", - "Edit name" : "Изменить название", - "Saving name …" : "Сохранение названия…", - "Edit color" : "Изменить цвет", - "Saving color …" : "Сохранение цвета…", - "Copy private link" : "Скопировать закрытую ссылку", - "Export" : "Экспорт", - "Unshare from me" : "Отписаться", + "Appointment schedules" : "Расписание встреч", + "Create new" : "Создать", "Disable calendar \"{calendar}\"" : "Отключить календарь \"{calendar}\"", "Disable untitled calendar" : "Отключить безымянный календарь", "Enable calendar \"{calendar}\"" : "Включить календарь \"{calendar}\"", "Enable untitled calendar" : "Включить безымянный календарь", "An error occurred, unable to change visibility of the calendar." : "Произошла ошибка, не удалось изменить видимость календаря.", - "An error occurred, unable to delete the calendar." : "Произошла ошибка, не удалось удалить календарь.", - "Calendar link copied to clipboard." : "Ссылка на календарь скопирована в буфер обмена.", - "Calendar link could not be copied to clipboard." : "Не удалось скопировать ссылку на календарь в буфер обмена.", - "An error occurred, unable to rename the calendar." : "Не удалось переименовать календарь.", - "An error occurred, unable to change the calendar's color." : "Не удалось изменить цвет календаря.", + "Untitled calendar" : "Календарь без названия", + "Shared with you by" : "Получено от", + "Edit and share calendar" : "Редактировать и делиться календарем", + "Edit calendar" : "Редактировать календарь", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Закрытие общего доступа к календарю через {countdown} секунду","Закрытие общего доступа к календарю через {countdown} секунды","Закрытие общего доступа к календарю через {countdown} секунд","Закрытие общего доступа к календарю через {countdown} секунд"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Календарь будет удалён через {countdown} секунду","Календарь будет удалён через {countdown} секунды","Календарь будет удалён через {countdown} секунд","Календарь будет удалён через {countdown} секунды"], + "An error occurred, unable to create the calendar." : "Не удалось создать календарь.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Введите верный URL: адрес должен начинаться с http://, https://, webcal:// или webcals://", + "Calendars" : "Календари", + "Add new" : "Добавить новое", + "New calendar" : "Новый календарь", + "Name for new calendar" : "Имя для нового календаря", + "Creating calendar …" : "Создание календаря…", + "New calendar with task list" : "Создать календарь со списком задач", + "New subscription from link (read-only)" : "Создать подписку по ссылке (только чтение)", + "Creating subscription …" : "Создание подписки…", + "Add public holiday calendar" : "Добавить общий календарь праздников", + "Add custom public calendar" : "Добавить собственный открытый календарь", + "Calendar link copied to clipboard." : "Ссылка на календарь скопирована в буфер обмена.", + "Calendar link could not be copied to clipboard." : "Не удалось скопировать ссылку на календарь в буфер обмена.", + "Copy subscription link" : "Скопировать ссылку на подписку", + "Copying link …" : "Копирование ссылки…", + "Copied link" : "Ссылка скопирована", + "Could not copy link" : "Не удалось скопировать ссылку", + "Export" : "Экспорт", + "Untitled item" : "Объект без названия", + "Unknown calendar" : "Неизвестный календарь", + "Could not load deleted calendars and objects" : "Не удалось загрузить удалённые календари и объекты", + "Could not delete calendar or event" : "Не удалось удалить календарь или событие", + "Could not restore calendar or event" : "Не удалось восстановить календарь или событие", + "Do you really want to empty the trash bin?" : "Вы действительно хотите очистить корзину ?", + "Empty trash bin" : "Очистить корзину", + "Trash bin" : "Корзина", + "Loading deleted items." : "Загрузка удалённых объектов…", + "You do not have any deleted items." : "Нет ни одного удалённого объекта.", + "Name" : "Название", + "Deleted" : "Удалено", + "Restore" : "Восстановить", + "Delete permanently" : "Удалить безвозвратно", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Объекты будут удалены из корзины через {numDays} день","Объекты будут удалены из корзины через {numDays} дня","Объекты будут удалены из корзины через {numDays} дней","Объекты будут удалены из корзины через {numDays} дня"], + "Could not update calendar order." : "Не удалось обновить порядок календарей.", + "Shared calendars" : "Общие календари", + "Deck" : "Карточки", + "Hidden" : "Скрыто", + "Internal link" : "Внутренняя ссылка", + "A private link that can be used with external clients" : "Частная ссылка, которую можно использовать с внешними клиентами", + "Copy internal link" : "Копировать внутреннюю ссылку", + "An error occurred, unable to publish calendar." : "Произошла ошибка, не удалось опубликовать календарь.", + "An error occurred, unable to send email." : "Произошла ошибка, не удалось отправить email.", + "Embed code copied to clipboard." : "Код встравивания скопирован в буфер обмена.", + "Embed code could not be copied to clipboard." : "Код встравивания не может быть скопирован в буфер обмена.", + "Unpublishing calendar failed" : "Не удалось закрыть публичный доступ к календарю", "Share link" : "Поделиться ссылкой", - "Publish calendar" : "Опубликовать календарь", - "Publishing calendar" : "Публикация календаря", "Copy public link" : "Скопировать общедоступную ссылку", "Send link to calendar via email" : "Отправить ссылку на календарь по электронной почте", "Enter one address" : "Введите один адрес", "Sending email …" : "Отправка сообщения…", - "Copy subscription link" : "Скопировать ссылку на подписку", - "Copying link …" : "Копирование ссылки…", - "Copied link" : "Ссылка скопирована", - "Could not copy link" : "Не удалось скопировать ссылку", "Copy embedding code" : "Скопировать код встраивания", "Copying code …" : "Копирование кода…", "Copied code" : "Код скопирован", "Could not copy code" : "Не удалось скопировать код", "Delete share link" : "Удалить ссылку", "Deleting share link …" : "Удаление ссылки доступа…", - "An error occurred, unable to publish calendar." : "Произошла ошибка, не удалось опубликовать календарь.", - "An error occurred, unable to send email." : "Произошла ошибка, не удалось отправить email.", - "Embed code copied to clipboard." : "Код встравивания скопирован в буфер обмена.", - "Embed code could not be copied to clipboard." : "Код встравивания не может быть скопирован в буфер обмена.", - "Unpublishing calendar failed" : "Не удалось закрыть публичный доступ к календарю", - "Share with users or groups" : "Поделиться с пользователями или группами", - "No users or groups" : "Пользователи или группы отсутствуют", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "Произошла ошибка при закрытии общего доступа к календарю.", + "An error occurred, unable to change the permission of the share." : "Произошла ошибка, не удалось изменить разрешения для общего ресурса.", "can edit" : "может ред.", "Unshare with {displayName}" : "Отменить общий доступ для {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Произошла ошибка, не удалось закрыть доступ к календарю.", - "An error occurred, unable to change the permission of the share." : "Произошла ошибка, не удалось изменить разрешения для общего ресурса.", - "+ New calendar" : "+ Создать календарь", - "New calendar" : "Новый календарь", - "Name for new calendar" : "Имя для нового календаря", - "Creating calendar …" : "Создание календаря…", - "New calendar with task list" : "Создать календарь со списком задач", - "New subscription from link (read-only)" : "Создать подписку по ссылке (только чтение)", - "Creating subscription …" : "Создание подписки…", - "An error occurred, unable to create the calendar." : "Не удалось создать календарь.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Введите верный URL: адрес должен начинаться с http://, https://, webcal:// или webcals://", - "Trash bin" : "Корзина", - "Loading deleted elements." : "Загрузка удалённых объектов…", - "You do not have any deleted elements." : "В корзине ничего нет.", - "Name" : "Название", - "Deleted" : "Удалено", - "Restore" : "Восстановить", - "Delete permanently" : "Удалить безвозвратно", - "Empty trash bin" : "Очистить корзину", - "Untitled element" : "Объект без названия", - "Unknown calendar" : "Неизвестный календарь", - "Could not load deleted calendars and objects" : "Не удалось загрузить удалённые календари и объекты", - "Could not restore calendar or event" : "Не удалось восстановить календарь или событие", - "Do you really want to empty the trash bin?" : "Вы действительно хотите очистить корзину ?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Элементы в корзине удаляются через {numDays} день","Элементы в корзине удаляются через {numDays} дня ","Элементы в корзине удаляются через {numDays} дней","Элементы в корзине удаляются через {numDays} дней"], - "Could not update calendar order." : "Не удалось обновить порядок календарей.", + "Share with users or groups" : "Поделиться с пользователями или группами", + "No users or groups" : "Пользователи или группы отсутствуют", + "Failed to save calendar name and color" : "Не удалось сохранить имя и цвет календаря", + "Calendar name …" : "Название календаря ...", + "Never show me as busy (set this calendar to transparent)" : "Никогда не показывать меня занятым (сделать этот календарь прозрачным)", + "Share calendar" : "Поделиться календарем", + "Unshare from me" : "Отписаться", + "Save" : "Сохранить", "Import calendars" : "Импортировать календари", "Please select a calendar to import into …" : "Выберите календарь для импорта…", "Filename" : "Имя файла", "Calendar to import into" : "Календарь для импорта", "Cancel" : "Отмена", "_Import calendar_::_Import calendars_" : ["Импорт календаря","Импорт календарей","Импорт календарей","Импорт календарей"], + "Select the default location for attachments" : "Выберите расположение для сохранения вложений по умолчанию", + "Pick" : "Выбрать", + "Invalid location selected" : "Указано недействительное расположение", + "Attachments folder successfully saved." : "Параметры расположения вложений сохранены.", + "Error on saving attachments folder." : "Не удалось задать папку для хранения вложений.", + "Default attachments location" : "Расположение сохранения вложений по умолчанию", "{filename} could not be parsed" : "Не удалось проанализировать файл {filename}", "No valid files found, aborting import" : "Не найдено файлов верного типа, импорт отменён", - "Import partially failed. Imported {accepted} out of {total}." : "Импорт завершен частично. Импортировано {accepted} из {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Событие импортировано","Импортировано %n события","Импортировано %n событий","Импортировано %n событий"], + "Import partially failed. Imported {accepted} out of {total}." : "Импорт завершен частично. Импортировано {accepted} из {total}.", "Automatic" : "Автоматически", "Automatic ({detected})" : "Автоматически ({detected})", "New setting was not saved successfully." : "Не удалось сохранить параметры.", - "Shortcut overview" : "Обзор ссылок", - "or" : "или", "Navigation" : "Навигация", "Previous period" : "Предыдущий период", "Next period" : "Следующий период", @@ -141,6 +174,7 @@ OC.L10N.register( "Day view" : "Просмотров за день", "Week view" : "Просмотров за неделю", "Month view" : "Просмотров за месяц", + "Year view" : "Просмотр за год", "List view" : "Вид списком", "Actions" : "Действия", "Create event" : "Создать событие", @@ -150,23 +184,29 @@ OC.L10N.register( "Save edited event" : "Сохранить изменённое событие", "Delete edited event" : "Удалить изменённое событие", "Duplicate event" : "Дублировать событие", + "Shortcut overview" : "Обзор ссылок", + "or" : "или", + "Calendar settings" : "Параметры календаря", + "At event start" : "В начале мероприятия", + "No reminder" : "Не напоминать", + "Failed to save default calendar" : "Не удалось задать календарь по умолчанию", + "CalDAV link copied to clipboard." : "Ссылка CalDAV скопирована в буфер обмена.", + "CalDAV link could not be copied to clipboard." : "Не удалось скопировать ссылку CalDAV в буфер обмена.", "Enable birthday calendar" : "Включить календарь дней рождения", "Show tasks in calendar" : "Показывать задачи в календаре", "Enable simplified editor" : "Использовать упрощённый редактор", - "Limit visible events per view" : "Ограничить количество выводимых событий", + "Limit the number of events displayed in the monthly view" : "Ограничьте количество событий, отображаемых в ежемесячном представлении", "Show weekends" : "Показывать выходные", "Show week numbers" : "Показывать номера недель", "Time increments" : "Шаг изменения времени", + "Default calendar for incoming invitations" : "Календарь для полученных приглашений по умолчанию", "Default reminder" : "Напоминание по умолчанию", "Copy primary CalDAV address" : "Скопировать основной адрес CalDAV", "Copy iOS/macOS CalDAV address" : "Скопировать адрес CalDAV для iOS/macOS", "Personal availability settings" : "Личные настройки доступности", "Show keyboard shortcuts" : "Показать горячие клавиши клавиатуры", - "No reminder" : "Не напоминать", - "CalDAV link copied to clipboard." : "Ссылка CalDAV скопирована в буфер обмена.", - "CalDAV link could not be copied to clipboard." : "Не удалось скопировать ссылку CalDAV в буфер обмена.", - "Appointment was created successfully" : "Встреча была создана успешно", - "Appointment was updated successfully" : "Встреча была успешно обновлена", + "Appointment schedule successfully created" : "Рассписание встреч создано", + "Appointment schedule successfully updated" : "Расписание встреч обновлено", "_{duration} minute_::_{duration} minutes_" : ["{duration} минута","{duration} минуты","{duration} минут","{duration} минут"], "0 minutes" : "0 минут", "_{duration} hour_::_{duration} hours_" : ["{duration} час","{duration} часа","{duration} часов","{duration} часов"], @@ -177,14 +217,21 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Для конфигурации встреч, добавьте свой адрес электронной почты в личных настройках.", "Public – shown on the profile page" : "Публичный - отображается на странице профиля", "Private – only accessible via secret link" : "Приватный - доступен только по секретной ссылке", + "Appointment schedule saved" : "Расписание встреч сохранено", + "Create appointment schedule" : "Создать расписание встреч", + "Edit appointment schedule" : "Редактировать расписание", + "Update" : "Обновить", + "Appointment name" : "Название встречи", "Location" : "Местоположение", + "Create a Talk room" : "Создать обсуждение", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Для каждой забронированной встречи будет сгенерирована уникальная ссылка, которая будет отправлена по электронной почте с подтверждением", "Description" : "Описание", "Visibility" : "Видимость", "Duration" : "Продолжительность", "Increments" : "Повышения", "Additional calendars to check for conflicts" : "Дополнительные календари для проверки на наличие конфликтов", "Pick time ranges where appointments are allowed" : "Выберите диапазон времени, когда разрешено назначать встречи", - "to" : "к", + "to" : "по", "Delete slot" : "Удалить слот", "No times set" : "Время не установлено", "Add" : "Добавить", @@ -195,6 +242,7 @@ OC.L10N.register( "Friday" : "Пятница", "Saturday" : "Суббота", "Sunday" : "Воскресенье", + "Weekdays" : "Дни недели", "Add time before and after the event" : "Добавить время до и после мероприятия", "Before the event" : "До начала мероприятия", "After the event" : "После мероприятия", @@ -202,18 +250,29 @@ OC.L10N.register( "Minimum time before next available slot" : "Минимальное время до следующего доступного слота", "Max slots per day" : "Максимум слотов в день", "Limit how far in the future appointments can be booked" : "Лимит на то, как далеко в будущем можно записываться на встречу", - "Create appointment" : "Создать мероприятие", - "Edit appointment" : "Редактировать встречу", - "Save" : "Сохранить", - "Update" : "Обновить", + "It seems a rate limit has been reached. Please try again later." : "Похоже, был достигнут лимит скорости. Пожалуйста, повторите попытку позже.", "Please confirm your reservation" : "Пожалуйста, подтвердите бронирование", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Мы отправили вам электронное письмо с подробной информацией. Пожалуйста, подтвердите свою встречу, используя ссылку в письме. Теперь вы можете закрыть эту страницу.", "Your name" : "Ваше имя", "Your email address" : "Ваш адрес электронной почты", "Please share anything that will help prepare for our meeting" : "Пожалуйста, поделитесь с нами тем, что поможет подготовиться к нашей встрече", "Could not book the appointment. Please try again later or contact the organizer." : "Не удалось забронировать встречу. Пожалуйста, повторите попытку позже или свяжитесь с организатором.", - "Book the appointment" : "Записаться на встречу", - "Reminder" : "Напоминание", + "Back" : "Назад", + "Book appointment" : "Записаться на прием", + "Error fetching Talk conversations." : "Ошибка получения списка обсуждений Talk", + "Conversation does not have a valid URL." : "Ссылка на обсуждение некорректна", + "Successfully added Talk conversation link to location." : "Ссылка на обсуждение в Talk успешно добавлена в местоположение события", + "Successfully added Talk conversation link to description." : "Ссылка на обсуждение в Talk успешно добавлена в описание события", + "Failed to apply Talk room." : "Не удалось применить Talk room.", + "Error creating Talk conversation" : "Ошибка создания обсуждения Talk", + "Select a Talk Room" : "Выберите комнату в Talk", + "Add Talk conversation" : "Добавить ссылку на обсуждение Talk", + "Fetching Talk rooms…" : "Получение списка комнат Talk...", + "No Talk room available" : "Нет доступных комнат Talk", + "Create a new conversation" : "Создать новое обсуждение", + "Select conversation" : "Выберите обсуждение", + "on" : "в", + "at" : "в", "before at" : "ранее в", "Notification" : "Уведомление", "Email" : "Эл. почта", @@ -224,114 +283,143 @@ OC.L10N.register( "Edit time" : "Редактировать время", "Save time" : "Сохранить время", "Remove reminder" : "Удалить напоминание", - "on" : "в", - "at" : "в", - "+ Add reminder" : "+ Создать напоминание", "Add reminder" : "Добавить напоминание", - "_second_::_seconds_" : ["секунда","секунды","секунд","секунды"], - "_minute_::_minutes_" : ["минута","минуты","минут","минуты"], - "_hour_::_hours_" : ["час","часа","часов","часы"], - "_day_::_days_" : ["день","дня","дней","дни"], - "_week_::_weeks_" : ["неделя","недель","недель","недели"], + "seconds" : "секунд", + "minutes" : "минут", + "hours" : "часов", + "days" : "дней", + "weeks" : "недель", + "Choose a file to add as attachment" : "Выбрать файл для вложения", + "Choose a file to share as a link" : "Выберите файл для публикации ссылкой", + "Attachment {name} already exist!" : "Файл вложения «{name}» уже существует.", + "Could not upload attachment(s)" : "Не удалось загрузить вложение (вложения)", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Вы собираетесь загрузить файл. Пожалуйста, проверьте его название перед открытием. Продолжить?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Вы собираетесь перейти к {host}. Вы уверены, что будете продолжать? Ссылка: {link}", + "Proceed" : "Перейти", + "No attachments" : "Нет ни одного вложения", + "Add from Files" : "Добавить из файлов", + "Upload from device" : "Загрузить с устройства", + "Delete file" : "Удалить файл", + "Confirmation" : "Подтверждение", + "_{count} attachment_::_{count} attachments_" : ["{count} вложение","{count} вложения","{count} вложений","{count} вложений"], "Suggested" : "Предложенный", "Available" : "Доступный", - "Not available" : "Не доступен", - "Checking availability" : "Проверка доступности", "Invitation accepted" : "Приглашение принято", "Accepted {organizerName}'s invitation" : "Принято приглашение от {organizerName}", + "Participation marked as tentative" : "Участие обозначено как «под вопросом»", + "Invitation is delegated" : "Приглашение делегировано", + "Not available" : "Не доступен", "Invitation declined" : "Приглашение отклонено", "Declined {organizerName}'s invitation" : "Отклонено приглашение от {organizerName}", - "Invitation is delegated" : "Приглашение делегировано", - "Participation marked as tentative" : "Участие обозначено как «под вопросом»", - "Invitation sent" : "Приглашение отправлено", + "Availability will be checked" : "Доступность будет проверена", + "Invitation will be sent" : "Приглашение будет отправлено", + "Failed to check availability" : "Не удалось проверить наличие", + "Failed to deliver invitation" : "Не удалось доставить приглашение", + "Awaiting response" : "Ожидание ответа", + "Checking availability" : "Проверка доступности", "Has not responded to {organizerName}'s invitation yet" : "Ответ на приглашение от {organizerName} ещё не отправлен", - "Availability of attendees, resources and rooms" : "Доступность участников, ресурсов и комнат", + "chairperson" : "Председатель", + "required participant" : "Обязательный участник", + "non-participant" : "Не является участником", + "optional participant" : "Необязательный участник", "{organizer} (organizer)" : "{organizer} (организатор)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Доступность участников, ресурсов и комнат", + "Suggestion accepted" : "Предложение принято", + "Legend" : "Легенда", + "Out of office" : "Вне офиса", + "Attendees:" : "Участники:", + "Done" : "Выполненные", + "Search room" : "Поиск комнаты", + "Room name" : "Название комнаты", + "Check room availability" : "Проверить наличие номеров", "Free" : "Свободен", "Busy (tentative)" : "Занят (под вопросом)", "Busy" : "Занят", - "Out of office" : "Вне офиса", "Unknown" : "Неизвестно", - "Accept" : "Принять", - "Decline" : "Отклонить", - "Tentative" : "Под вопросом", + "Find a time" : "Найди время", "The invitation has been accepted successfully." : "Приглашение принято.", "Failed to accept the invitation." : "Не удалось принять приглашение.", "The invitation has been declined successfully." : "Приглашение отклонено.", "Failed to decline the invitation." : "Не удалось отклонить приглашение.", "Your participation has been marked as tentative." : "Выше участие было обозначено как «под вопросом».", "Failed to set the participation status to tentative." : "Не удалось обозначить свое участие как «под вопросом».", - "Create Talk room for this event" : "Создать комнату этого события в приложении «Talk»", - "Show busy times" : "Показать занятое время", + "Accept" : "Принять", + "Decline" : "Отклонить", + "Tentative" : "Под вопросом", "No attendees yet" : "Ещё нет участников", + "{invitedCount} invited, {confirmedCount} confirmed" : "Приглашено: {invitedCount}, подтвердили участие: {confirmedCount}", + "Please add at least one attendee to use the \"Find a time\" feature." : "Добавьте хотя бы одного участника, чтобы использовать функцию «Найти время».", + "Successfully appended link to talk room to location." : "Ссылка на переговорную комнату успешно добавлена.", "Successfully appended link to talk room to description." : "Ссылка на комнату приложения Talk добавлена в описание.", "Error creating Talk room" : "Не удалось создать комнату в приложении Talk.", - "Send email" : "Отправить сообщение", + "Attendees" : "Участники", + "_%n more guest_::_%n more guests_" : ["Ещё 1 гость","Ещё %n гостя","Ещё %n гостей","Ещё %n гостей"], + "Remove group" : "Удалить группу", + "Remove attendee" : "Удалить участника", + "Request reply" : "Запросить ответ", "Chairperson" : "Председатель", "Required participant" : "Обязательный участник", "Optional participant" : "Необязательный участник", "Non-participant" : "Не участвует", - "Remove attendee" : "Удалить участника", - "Search for emails, users or contacts" : "Поиск по адресам эл. почты, пользователям и контактам", + "_%n member_::_%n members_" : ["%n участник","%n участника","%n участников","%n участника"], + "Search for emails, users, contacts, contact groups or teams" : "Поиск почтовых адресов (email), пользователей, контактов, групп контактов или команд", "No match found" : "Соответствий не найдено", + "Note that members of circles get invited but are not synced yet." : "Обратите внимание, что участники кругов получают приглашения, но еще не синхронизированы.", + "Note that members of contact groups get invited but are not synced yet." : "Обратите внимание, что члены контактных групп приглашаются, но еще не синхронизированы.", "(organizer)" : "(организатор)", + "Make {label} the organizer" : "Сделать {label} организатором", + "Make {label} the organizer and attend" : "Сделайте {label} организатором и примите участие", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Чтобы отправлять приглашения и обрабатывать ответы, [linkopen]добавьте свой адрес электронной почты в личные настройки[linkclose].", "Remove color" : "Убрать отметку цветом", "Event title" : "Название события", - "All day" : "Весь день", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Изменение параметра «весь день» для повторяющегося события не поддерживается.", - "from {startDate}" : "с {startDate}", - "from {startDate} at {startTime}" : "с {startDate} {startTime}", - "to {endDate}" : "по {endDate}", - "to {endDate} at {endTime}" : "по {endDate} {endTime}", + "From" : "От", + "To" : "По", "Repeat" : "Повтор", - "End repeat" : "Прекратить повтор", - "Select to end repeat" : "Выбрать до последнего повторения", + "_time_::_times_" : ["раз","раз","раз","раз"], "never" : "никогда", "on date" : "в указанную дату", "after" : "после", - "_time_::_times_" : ["раз","раз","раз","раз"], + "End repeat" : "Прекратить повтор", + "Select to end repeat" : "Выбрать до последнего повторения", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Невозможно задать правила повторения этого события, так как оно является исключением из правил повтора исходного события.", "first" : "первый", - "third" : "третий", - "fourth" : "четвёртый", - "fifth" : "пятый", - "second to last" : "предпоследний", - "last" : "последний", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Изменение правила повторения повлияет только на это и все будущие повторения события.", "Repeat every" : "Повторять каждые", "By day of the month" : "В указанные дни месяца", "On the" : "По", + "_day_::_days_" : ["день","дня","дней","дни"], + "_week_::_weeks_" : ["неделя","недель","недель","недели"], "_month_::_months_" : ["месяц","месяца","месяцев","месяца"], "_year_::_years_" : ["год","года","лет","года"], + "On specific day" : "В определенный день", "weekday" : "рабочий день", "weekend day" : "выходной день", - "No recurrence" : "Нет повторения", + "Does not repeat" : "Не повторять", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Заданные правила повторения этого события не полностью поддерживается Nextcloud. При изменении правил, некоторые повторения могут быть потеряны.", - "Suggestions" : "Предложения", "No rooms or resources yet" : "Комнаты или ресурсы пока не назначены", + "Resources" : "Ресурсы", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} место","{seatingCapacity} места","{seatingCapacity} мест","{seatingCapacity} мест"], "Add resource" : "Добавить ресурс", "Has a projector" : "Есть проектор", "Has a whiteboard" : "Имеет доску для записей", "Wheelchair accessible" : "Доступно для кресла-коляски", "Remove resource" : "Удалить ресурс", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} место","{seatingCapacity} места","{seatingCapacity} мест","{seatingCapacity} мест"], - "Projector" : "Проектор", - "Whiteboard" : "Доска", "Search for resources or rooms" : "Поиск ресурсов или помещений", "available" : "доступный", "unavailable" : "недоступен", + "Show all rooms" : "Показать все комнаты", + "Projector" : "Проектор", + "Whiteboard" : "Доска", "Room type" : "Тип комнаты", "Any" : "Любой", "Minimum seating capacity" : "Минимальная вместимость", - "More" : "Больше", - "Update this occurrence" : "Обновить это повторение", + "More details" : "Подробнее", "Update this and all future" : "Обновить это и все будущие повторния", + "Update this occurrence" : "Обновить это повторение", "Public calendar does not exist" : "Общедоступный календарь не существует", "Maybe the share was deleted or has expired?" : "Возможно общий ресурс был удалён или истёк срок действия доступа.", - "Please select a time zone:" : "Выберите часовой пояс:", - "Pick a time" : "Выберите время", - "Pick a date" : "Выберите дату", "from {formattedDate}" : "с {formattedDate}", "to {formattedDate}" : "по {formattedDate}", "on {formattedDate}" : " {formattedDate}", @@ -341,9 +429,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} в {formattedTime}", "Please enter a valid date" : "Введите верную дату", "Please enter a valid date and time" : "Введите верную дату и время", + "Select a time zone" : "Выберите часовой пояс", + "Please select a time zone:" : "Выберите часовой пояс:", + "Pick a time" : "Выберите время", + "Pick a date" : "Выберите дату", "Type to search time zone" : "Начните вводить название часового поиска", "Global" : "Общие", - "Select date" : "Выбрать дату", + "Holidays in {region}" : "Праздники в {region}", + "An error occurred, unable to read public calendars." : "Произошла ошибка, невозможно прочитать публичные календари.", + "An error occurred, unable to subscribe to calendar." : "Произошла ошибка, не удалось подписаться на календарь.", + "Public holiday calendars" : "Общие календари праздников", + "Public calendars" : "Публичные календари", + "No valid public calendars configured" : "Не настроено ни одного допустимого публичного календаря.", + "Speak to the server administrator to resolve this issue." : "Обратитесь к администратору сервера для решения этой проблемы.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Общие календари праздников предоставляются Thunderbird. Данные календаря будут загружены с {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Эти публичные календари предлагаются администратором сервера. Данные календаря будут загружены с соответствующего веб-сайта.", + "By {authors}" : "{authors}", + "Subscribed" : "Подписано", + "Subscribe" : "Подписаться", + "Could not fetch slots" : "Не удалось получить слоты", + "Select a date" : "Выберите дату", "Select slot" : "Выбрать слот", "No slots available" : "Нет свободных мест", "The slot for your appointment has been confirmed" : "Время вашей встречи было подтверждено", @@ -360,24 +465,25 @@ OC.L10N.register( "Personal" : "Личный", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Автоматическое определение часового пояса определило ваш часовой пояс как UTC. Скорее всего, это результат мер безопасности вашего веб-браузера. Пожалуйста, установите часовой пояс вручную в настройках календаря.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Настроенный вами часовой пояс ({timezoneId}) не найден. Возвращение к UTC. Пожалуйста, измените свой часовой пояс в настройках и сообщите об этой проблеме.", - "No more events today" : "На сегодня больше нет событий", - "No upcoming events" : "Приближающиеся события отсуствуют", - "Create a new event" : "Создать событие", - "[Today]" : "[Сегодня]", - "[Tomorrow]" : "[Завтра]", - "[Yesterday]" : "[Вчера]", - "[Last] dddd" : "[Last] dddd", + "Availability of {displayName}" : "Доступность {displayName}", + "Edit event" : "Редактировать событие", "Event does not exist" : "Событие не существует", "Duplicate" : "Дублировать", "Delete this occurrence" : "Удалить это повторение", "Delete this and all future" : "Удалить это и все будущие повторения", - "Details" : "Подробности", - "Attendees" : "Участники", - "Resources" : "Ресурсы", + "All day" : "Весь день", + "Modifications wont get propagated to the organizer and other attendees" : "Изменения не будут распространены на организатора и других участников", + "Managing shared access" : "Управление общим доступом ", + "Deny access" : "Закрыть доступ", + "Invite" : "Приглашение", + "_User requires access to your file_::_Users require access to your file_" : ["Пользователю требуется доступ к вашему файлу","Пользователям требуется доступ к вашему файлу","Пользователям требуется доступ к вашему файлу","Пользователям требуется доступ к вашему файлу"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Вложение, требующие общего доступа","Вложения, требующие общего доступа","Вложения, требующие общего доступа","Вложения, требующие общего доступа"], + "Untitled event" : "Событие без названия", "Close" : "Закрыть", - "Show more details" : "Подробные сведения", + "Modifications will not get propagated to the organizer and other attendees" : "Изменения не будут распространены на организатора и других участников", "Subscribe to {name}" : "Подписаться на {name}", "Export {name}" : "Экспортировать {name}", + "Show availability" : "Показать доступность", "Anniversary" : "Годовщина", "Appointment" : "Встреча", "Business" : "Работа", @@ -405,7 +511,6 @@ OC.L10N.register( "on {time}" : "в {time}", "on {time} ({timezoneId})" : "в {time} ({timezoneId})", "Week {number} of {year}" : "{number} неделя {year} года", - "Does not repeat" : "Не повторять", "Daily" : "Ежедневно", "Weekly" : "Еженедельно", "Monthly" : "Ежемесячно", @@ -417,24 +522,30 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["по {weekday}","по {weekday}","по {weekday}","по {weekday}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : [" {dayOfMonthList}"," {dayOfMonthList}"," {dayOfMonthList}"," {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "по {ordinalNumber} {byDaySet}", - "in {monthNames}" : "по {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "в {monthNames} {dayOfMonthList} числа", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "в {monthNames} по {ordinalNumber} {byDaySet}", "until {untilDate}" : "до {untilDate}", "_%n time_::_%n times_" : ["%n раз","%n раза","%n раз","%n раза"], - "Untitled event" : "Событие без названия", + "second" : "секунду", + "third" : "третий", + "fourth" : "четвёртый", + "fifth" : "пятый", + "second to last" : "предпоследний", + "last" : "последний", "Untitled task" : "Задача без названия", "Please ask your administrator to enable the Tasks App." : "Попросите администратора сервера активировать приложение «Задачи».", - "Prev" : "Назад", - "Next" : "Вперёд", - "Prev year" : "Пред. год", - "Next year" : "Следующий год", - "Year" : "Год", + "You are not allowed to edit this event as an attendee." : "Вам не разрешается редактировать это мероприятие как участнику", "W" : "Н", "%n more" : "и ещё %n", "No events to display" : "Отсутствуют события для показа", + "All participants declined" : "Все участники отклонили событие", + "Please confirm your participation" : "Пожалуйста, подтвердите свое участие", + "You declined this event" : "Вы отменили это событие", + "Your participation is tentative" : "Ваше участие пока под вопросом", "_+%n more_::_+%n more_" : ["+ ещё %n","+ ещё %n","+ ещё %n","+ ещё %n"], "No events" : "Нет ни одного события", "Create a new event or change the visible time-range" : "Создать событие или изменить интервал видимости", + "Failed to save event" : "Не удалось сохранить событие", "It might have been deleted, or there was a typo in a link" : "Возможно, оно было удалено или вы выполнили переход по неверной ссылке", "It might have been deleted, or there was a typo in the link" : "Возможно, оно было удалено или вы выполнили переход по неверной ссылке", "Meeting room" : "Комната для переговоров", @@ -447,7 +558,7 @@ OC.L10N.register( "When shared hide this event" : "Скрыть это событие при публикации", "The visibility of this event in shared calendars." : "Видимость этого события в опубликованных календарях. ", "Add a location" : "Добавить местоположение", - "Add a description" : "Добавить описание", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Добавьте описание\n\n- Для чего данное событие\n- Агенда\n- Как участникам подготовиться к событию", "Status" : "Состояние", "Confirmed" : "Подтверждено", "Canceled" : "Отменена", @@ -460,135 +571,23 @@ OC.L10N.register( "Add this as a new category" : "Добавить как новую категорию", "Custom color" : "Свой цвет", "Special color of this event. Overrides the calendar-color." : "Задать свой цвет события, отличающийся от цвета календаря", - "Chat room for event" : "Комната в приложении Talk для этого события", + "Error while sharing file" : "Ошибка сохранения файла", + "Error while sharing file with user" : "Ошибка при обмене файлом с пользователем", + "Attachment {fileName} already exists!" : "Вложение {fileName} уже существует!", + "An error occurred during getting file information" : "Произошла ошибка при получении информации о файле", + "Talk conversation for event" : "Обсуждение события в Talk", + "An error occurred, unable to delete the calendar." : "Произошла ошибка, не удалось удалить календарь.", "Imported {filename}" : "Файл {filename} импортирован", - "Meditation" : "Медитация", - "Relaxing" : "Расслабляющий", - "Relax" : "Расслабление", - "Break" : "Перерыв", - "Commute" : "Поездка", - "Commuting" : "Перемещения", - "Shuttle" : "Шаттл", - "Invoice" : "Счет-фактура", - "Finance" : "Финансы", - "Bank" : "Банк", - "Money" : "Деньги", - "Wedding" : "Свадьба", - "Dog" : "Собака", - "Concert" : "Концерт", - "Festival" : "Фестиваль", - "Theater" : "Театр", - "Theatre" : "Театр", - "Presentation" : "Презентация", - "Talk" : "Говорить ", - "Speech" : "Речь", - "Deadline" : "Крайний срок", - "Submission" : "Представление", - "Reporting" : "Сообщать", - "Camping" : "Поход", - "Camp" : "Лагерь", - "Election" : "Выборы", - "Voting" : "Голосование", - "Vote" : "Голосовать", - "Barbecue" : "Барбекю", - "Barbeque" : "Барбекю", - "Garden" : "Сад", - "Farm" : "Ферма", - "Movie" : "Фильм", - "Cinema" : "Кинотеатр", - "Graduation" : "получение учёной степени", - "Brainstorm" : "Мозговой штурм", - "Review" : "Обзор", - "Audit" : "Аудит", - "Inspection" : "Осмотр", - "Proofreading" : "Корректирование", - "Baseball" : "Бейсбол", - "Meet" : "Встреча", - "Planning" : "Планирование", - "Pointing" : "Указание", - "Retrospective" : "Ректроспектива", - "Office" : "Офис", - "Contributor week" : "Неделя участия", - "Mail" : "Почта", - "Soccer" : "Футбол", - "Football" : "Американский футбол", - "Gaming" : "Видео игры", - "Drive" : "Езда", - "Driving" : "Вождение", - "Bicycle" : "Езда на велосипеде", - "Cycle" : "Велосипед", - "Cycling" : "Езда на велосипеде", - "Biking" : "Езда на мотоцикле", - "Bike" : "Bike", - "Podcast" : "Подкаст", - "Basketball" : "Баскетбол", - "Fishing" : "Рыбалка", - "Hiking" : "Пеший туризм", - "Hike" : "Поход", - "Art" : "Искусство", - "Exhibition" : "Выстовка", - "Museum" : "Музей", - "Pilates" : "Пилатес", - "Park" : "Парк", - "Walk" : "Прогулка", - "Studying" : "Учёба", - "Doctor" : "Врач", - "Health" : "Здоровье", - "Dentist" : "Стоматология", - "Hospital" : "Больница", - "Interview" : "Собеседование", - "Training" : "Тренировка", - "Practice" : "Практика", - "Sports" : "Спорт", - "Exercise" : "Занятия", - "Work out" : "Тренировка", - "Working out" : "Тренироваться", - "Gym" : "Тренажёрный зал", - "Barber" : "Парикмахер", - "Haircut" : "Стрижка", - "Hairdresser" : "Парикмахер", - "Exam" : "Экзамен", - "Written test" : "Письменный тест", - "Oral test" : "Устный тест", - "Working" : "Работа", - "New Years Eve" : "Сочельник", - "NYE" : "Новый год", - "Fireworks" : "Фейерверк", - "Running" : "Пробежка", - "Go for a run" : "Пробежаться", - "Marathon" : "Марафон", - "Video-conference" : "Видеоконференция", - "Conference-call" : "Конференция по телефону", - "Video-call" : "Видеозвонок", - "Video-chat" : "Видеочат", - "Video-meeting" : "Видеовстреча", - "Call" : "Звонок", - "Calling" : "Позвонить", - "Christmas" : "Рождество", - "Conference" : "Конференция", - "Pizza" : "Пицца", - "Travelling" : "Путешествие", - "Trip" : "Поездка", - "Journey" : "Поездка", - "Collaborate" : "Совместная работа", - "Pair" : "Пара", - "Lecture" : "Лекция", - "Seminar" : "Семинар", - "Teaching" : "Обучение", - "Photograph" : "Фотограф", - "Party" : "Вечеринка", - "Celebration" : "Празднование", - "Celebrate" : "Празднование", - "Birthday" : "День рождения", - "Shopping" : "Покупки", - "Groceries" : "Бакалея", - "Skate" : "Роликовые коньки", - "Skateboard" : "Скейтборд", - "Wine tasting" : "Дегустация вина", - "Golf" : "Гольф", - "Dinner" : "Ужин", - "Lunch" : "Обед", + "This is an event reminder." : "Это напоминание о событии.", + "Error while parsing a PROPFIND error" : "Ошибка при анализе ошибки PROPFIND", "Appointment not found" : "Встреча не найдена", - "User not found" : "Пользователь не найден" + "User not found" : "Пользователь не найден", + "Reminder" : "Напоминание", + "+ Add reminder" : "+ Создать напоминание", + "Select automatic slot" : "Выбрать интервал автоматически", + "with" : "с", + "Available times:" : "Доступные варианты:", + "Suggestions" : "Предложения", + "Details" : "Подробности" }, "nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);"); diff --git a/l10n/ru.json b/l10n/ru.json index a4460a23fc62df6ef232a9a306ea313c666ea83f..fa6b231d24e7ba7fe8eed5a01b94557fbf9114fe 100644 --- a/l10n/ru.json +++ b/l10n/ru.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "Указанный адрес электронной почты слишком длинный", "User-Session unexpectedly expired" : "Сеанс работы пользователя неожиданно завершён", "Provided email-address is not valid" : "Указанный адрес электронной почты недействителен", "%s has published the calendar »%s«" : "%s опубликовал календарь «%s»", @@ -9,129 +10,161 @@ "Open »%s«" : "Открыть «%s»", "Cheers!" : "Удачи!", "Upcoming events" : "Приближающиеся события", + "No more events today" : "На сегодня больше нет событий", + "No upcoming events" : "Приближающиеся события отсуствуют", + "More events" : "Следующие события", + "%1$s with %2$s" : "%1$s с %2$s", + "Calendar" : "Календарь", + "New booking {booking}" : "Новое бронирование {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) заборонировал(а) встречу \"{config_display_name}\" на {date_time}.", "Appointments" : "Мероприятия", "Schedule appointment \"%s\"" : "Запланировать встречу «%s»", "Schedule an appointment" : "Запланировать встречу", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Подготовиться к %s", "Follow up for %s" : "Последующие действия для %s", - "Your appointment \"%s\" needs confirmation" : "Ваша встреча «%s» требует подтверждения", + "Your appointment \"%s\" with %s needs confirmation" : "Ваша встреча «%s» с %s требует подтверждения", "Dear %s, please confirm your booking" : "Уважаемый %s, подтвердите своё бронирование", "Confirm" : "Подтвердить", + "Appointment with:" : "Встреча с:", + "Description:" : "Описание:", "This confirmation link expires in %s hours." : "Срок действия этой ссылки для подтверждения истекает через %s часов.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Если вы хотите отменить встречу, пожалуйста, свяжитесь с организатором.", - "Appointment:" : "Встреча:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Если вы всё равно хотите отменить встречу, свяжитесь с её организатором, ответив на это письмо или перейдите на страницу, указанную в профиле.", + "Your appointment \"%s\" with %s has been accepted" : "Ваша встреча «%s» с %s была подтверждена", + "Dear %s, your booking has been accepted." : "Уважаемый(-ая) %s, ваше бронирование было подтверждено.", + "Appointment for:" : "Встреча с:", "Date:" : "Дата:", + "You will receive a link with the confirmation email" : "Вы получите ссылку с подтверждением по электронной почте", "Where:" : "Место:", - "Description:" : "Описание:", - "Calendar" : "Календарь", + "Comment:" : "Комментарий:", + "You have a new appointment booking \"%s\" from %s" : "У вас новое бронирование встречи «%s» от %s", + "Dear %s, %s (%s) booked an appointment with you." : "Уважаемый(-ая) %s, %s (%s) забронировал(а) встречу с вами.", "A Calendar app for Nextcloud" : "Приложение Календарь для Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Приложение «Календарь» обеспечивает работу с календарями с использованием протокола CalDAV. Сервер Nextcloud позволяет синхронизировать календарей между различными устройствами, а это приложение служит для работы из браузера. \n\n*🚀 **Интеграция с другими приложениями Nextcloud** В настоящее время поддерживается интеграция с приложением Контакты, готовится интеграция с другими приложениями;\n* 🌐 **Поддержка протокола WebCal** Возможно настроить синхронизацию и показ дней игр своей любимой команды в календаре;\n* 🙋 **Отправка приглашений участникам** Пригласите участников на свои мероприятия;\n* ⌚️ **Поддержка статусов занятого и свободного времени** позволяет назначать встречи в удобное время\n* ⏰ **Напоминания** Получение уведомлений в браузере и по электронной почте\n* 🔍 **Поиск** позволяет находить нужные события \n* ☑️ **Задачи** просмотр задач с датой выполнения прямо в календаре\n* 🙈 **Мы не изобретаем колесо** Приложение основано на отличных библиотеках [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) и [fullcalendar](https://github.com/fullcalendar/fullcalendar).", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Приложение «Календарь» для Nextcloud. Легко синхронизируйте события с различных устройств и редактируйте их прямо в вашем Nextcloud.\n\n* 🚀 **Интеграция с другими приложениями Nextcloud!** Например: Контакты, Talk, Задачи, Deck и Круги\n* 🌐 **Поддержка WebCal!** Хотите видеть в календаре расписание матчей любимой команды? Легко!\n* 🙋 **Участники!** Приглашайте людей на свои события\n* ⌚ **Свободен/занят!** Узнавайте, когда участники доступны для встречи\n* ⏰ **Напоминания!** Получайте уведомления о событиях в браузере и по электронной почте\n* 🔍 **Поиск!** Быстро находите нужные события\n* ☑️ **Задачи!** Просматривайте задачи и карточки Deck с установленным сроком прямо в календаре\n* 🔈 **Комнаты Talk!** Создавайте комнату в Talk при бронировании встречи одним кликом\n* 📆 **Бронирование встреч** Отправьте ссылку, чтобы другие могли записаться к вам [с помощью этого приложения](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Вложения!** Добавляйте, загружайте и просматривайте файлы, прикреплённые к событиям\n* 🙈 **Мы не изобретаем велосипед!** Приложение основано на проверенных библиотеках: [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) и [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Предыдущий день", "Previous week" : "Предыдущая неделя", + "Previous year" : "Предыдущий год", "Previous month" : "Предыдущий месяц", "Next day" : "Следующий день", "Next week" : "Следующая неделя", + "Next year" : "Следующий год", "Next month" : "Следующий месяц", - "New event" : "Создать событие", + "Create new event" : "Создать событие", + "Event" : "Событие", "Today" : "Сегодня", "Day" : "День", "Week" : "Неделя", "Month" : "Месяц", + "Year" : "Год", "List" : "Список", + "Appointment link was copied to clipboard" : "Ссылка на эту встречу скопирована в буфер обмена", + "Appointment link could not be copied to clipboard" : "Не удалось скопировать в буфер обмена ссылку на эту встречу", "Preview" : "Предварительный просмотр", "Copy link" : "Копировать ссылку", "Edit" : "Редактировать", "Delete" : "Удалить", - "Appointment link was copied to clipboard" : "Ссылка на эту встречу скопирована в буфер обмена", - "Appointment link could not be copied to clipboard" : "Не удалось скопировать в буфер обмена ссылку на эту встречу", - "Add new" : "Добавить новое", - "Untitled calendar" : "Календарь без названия", - "Edit name" : "Изменить название", - "Saving name …" : "Сохранение названия…", - "Edit color" : "Изменить цвет", - "Saving color …" : "Сохранение цвета…", - "Copy private link" : "Скопировать закрытую ссылку", - "Export" : "Экспорт", - "Unshare from me" : "Отписаться", + "Appointment schedules" : "Расписание встреч", + "Create new" : "Создать", "Disable calendar \"{calendar}\"" : "Отключить календарь \"{calendar}\"", "Disable untitled calendar" : "Отключить безымянный календарь", "Enable calendar \"{calendar}\"" : "Включить календарь \"{calendar}\"", "Enable untitled calendar" : "Включить безымянный календарь", "An error occurred, unable to change visibility of the calendar." : "Произошла ошибка, не удалось изменить видимость календаря.", - "An error occurred, unable to delete the calendar." : "Произошла ошибка, не удалось удалить календарь.", - "Calendar link copied to clipboard." : "Ссылка на календарь скопирована в буфер обмена.", - "Calendar link could not be copied to clipboard." : "Не удалось скопировать ссылку на календарь в буфер обмена.", - "An error occurred, unable to rename the calendar." : "Не удалось переименовать календарь.", - "An error occurred, unable to change the calendar's color." : "Не удалось изменить цвет календаря.", + "Untitled calendar" : "Календарь без названия", + "Shared with you by" : "Получено от", + "Edit and share calendar" : "Редактировать и делиться календарем", + "Edit calendar" : "Редактировать календарь", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Закрытие общего доступа к календарю через {countdown} секунду","Закрытие общего доступа к календарю через {countdown} секунды","Закрытие общего доступа к календарю через {countdown} секунд","Закрытие общего доступа к календарю через {countdown} секунд"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Календарь будет удалён через {countdown} секунду","Календарь будет удалён через {countdown} секунды","Календарь будет удалён через {countdown} секунд","Календарь будет удалён через {countdown} секунды"], + "An error occurred, unable to create the calendar." : "Не удалось создать календарь.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Введите верный URL: адрес должен начинаться с http://, https://, webcal:// или webcals://", + "Calendars" : "Календари", + "Add new" : "Добавить новое", + "New calendar" : "Новый календарь", + "Name for new calendar" : "Имя для нового календаря", + "Creating calendar …" : "Создание календаря…", + "New calendar with task list" : "Создать календарь со списком задач", + "New subscription from link (read-only)" : "Создать подписку по ссылке (только чтение)", + "Creating subscription …" : "Создание подписки…", + "Add public holiday calendar" : "Добавить общий календарь праздников", + "Add custom public calendar" : "Добавить собственный открытый календарь", + "Calendar link copied to clipboard." : "Ссылка на календарь скопирована в буфер обмена.", + "Calendar link could not be copied to clipboard." : "Не удалось скопировать ссылку на календарь в буфер обмена.", + "Copy subscription link" : "Скопировать ссылку на подписку", + "Copying link …" : "Копирование ссылки…", + "Copied link" : "Ссылка скопирована", + "Could not copy link" : "Не удалось скопировать ссылку", + "Export" : "Экспорт", + "Untitled item" : "Объект без названия", + "Unknown calendar" : "Неизвестный календарь", + "Could not load deleted calendars and objects" : "Не удалось загрузить удалённые календари и объекты", + "Could not delete calendar or event" : "Не удалось удалить календарь или событие", + "Could not restore calendar or event" : "Не удалось восстановить календарь или событие", + "Do you really want to empty the trash bin?" : "Вы действительно хотите очистить корзину ?", + "Empty trash bin" : "Очистить корзину", + "Trash bin" : "Корзина", + "Loading deleted items." : "Загрузка удалённых объектов…", + "You do not have any deleted items." : "Нет ни одного удалённого объекта.", + "Name" : "Название", + "Deleted" : "Удалено", + "Restore" : "Восстановить", + "Delete permanently" : "Удалить безвозвратно", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Объекты будут удалены из корзины через {numDays} день","Объекты будут удалены из корзины через {numDays} дня","Объекты будут удалены из корзины через {numDays} дней","Объекты будут удалены из корзины через {numDays} дня"], + "Could not update calendar order." : "Не удалось обновить порядок календарей.", + "Shared calendars" : "Общие календари", + "Deck" : "Карточки", + "Hidden" : "Скрыто", + "Internal link" : "Внутренняя ссылка", + "A private link that can be used with external clients" : "Частная ссылка, которую можно использовать с внешними клиентами", + "Copy internal link" : "Копировать внутреннюю ссылку", + "An error occurred, unable to publish calendar." : "Произошла ошибка, не удалось опубликовать календарь.", + "An error occurred, unable to send email." : "Произошла ошибка, не удалось отправить email.", + "Embed code copied to clipboard." : "Код встравивания скопирован в буфер обмена.", + "Embed code could not be copied to clipboard." : "Код встравивания не может быть скопирован в буфер обмена.", + "Unpublishing calendar failed" : "Не удалось закрыть публичный доступ к календарю", "Share link" : "Поделиться ссылкой", - "Publish calendar" : "Опубликовать календарь", - "Publishing calendar" : "Публикация календаря", "Copy public link" : "Скопировать общедоступную ссылку", "Send link to calendar via email" : "Отправить ссылку на календарь по электронной почте", "Enter one address" : "Введите один адрес", "Sending email …" : "Отправка сообщения…", - "Copy subscription link" : "Скопировать ссылку на подписку", - "Copying link …" : "Копирование ссылки…", - "Copied link" : "Ссылка скопирована", - "Could not copy link" : "Не удалось скопировать ссылку", "Copy embedding code" : "Скопировать код встраивания", "Copying code …" : "Копирование кода…", "Copied code" : "Код скопирован", "Could not copy code" : "Не удалось скопировать код", "Delete share link" : "Удалить ссылку", "Deleting share link …" : "Удаление ссылки доступа…", - "An error occurred, unable to publish calendar." : "Произошла ошибка, не удалось опубликовать календарь.", - "An error occurred, unable to send email." : "Произошла ошибка, не удалось отправить email.", - "Embed code copied to clipboard." : "Код встравивания скопирован в буфер обмена.", - "Embed code could not be copied to clipboard." : "Код встравивания не может быть скопирован в буфер обмена.", - "Unpublishing calendar failed" : "Не удалось закрыть публичный доступ к календарю", - "Share with users or groups" : "Поделиться с пользователями или группами", - "No users or groups" : "Пользователи или группы отсутствуют", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "Произошла ошибка при закрытии общего доступа к календарю.", + "An error occurred, unable to change the permission of the share." : "Произошла ошибка, не удалось изменить разрешения для общего ресурса.", "can edit" : "может ред.", "Unshare with {displayName}" : "Отменить общий доступ для {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Произошла ошибка, не удалось закрыть доступ к календарю.", - "An error occurred, unable to change the permission of the share." : "Произошла ошибка, не удалось изменить разрешения для общего ресурса.", - "+ New calendar" : "+ Создать календарь", - "New calendar" : "Новый календарь", - "Name for new calendar" : "Имя для нового календаря", - "Creating calendar …" : "Создание календаря…", - "New calendar with task list" : "Создать календарь со списком задач", - "New subscription from link (read-only)" : "Создать подписку по ссылке (только чтение)", - "Creating subscription …" : "Создание подписки…", - "An error occurred, unable to create the calendar." : "Не удалось создать календарь.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Введите верный URL: адрес должен начинаться с http://, https://, webcal:// или webcals://", - "Trash bin" : "Корзина", - "Loading deleted elements." : "Загрузка удалённых объектов…", - "You do not have any deleted elements." : "В корзине ничего нет.", - "Name" : "Название", - "Deleted" : "Удалено", - "Restore" : "Восстановить", - "Delete permanently" : "Удалить безвозвратно", - "Empty trash bin" : "Очистить корзину", - "Untitled element" : "Объект без названия", - "Unknown calendar" : "Неизвестный календарь", - "Could not load deleted calendars and objects" : "Не удалось загрузить удалённые календари и объекты", - "Could not restore calendar or event" : "Не удалось восстановить календарь или событие", - "Do you really want to empty the trash bin?" : "Вы действительно хотите очистить корзину ?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Элементы в корзине удаляются через {numDays} день","Элементы в корзине удаляются через {numDays} дня ","Элементы в корзине удаляются через {numDays} дней","Элементы в корзине удаляются через {numDays} дней"], - "Could not update calendar order." : "Не удалось обновить порядок календарей.", + "Share with users or groups" : "Поделиться с пользователями или группами", + "No users or groups" : "Пользователи или группы отсутствуют", + "Failed to save calendar name and color" : "Не удалось сохранить имя и цвет календаря", + "Calendar name …" : "Название календаря ...", + "Never show me as busy (set this calendar to transparent)" : "Никогда не показывать меня занятым (сделать этот календарь прозрачным)", + "Share calendar" : "Поделиться календарем", + "Unshare from me" : "Отписаться", + "Save" : "Сохранить", "Import calendars" : "Импортировать календари", "Please select a calendar to import into …" : "Выберите календарь для импорта…", "Filename" : "Имя файла", "Calendar to import into" : "Календарь для импорта", "Cancel" : "Отмена", "_Import calendar_::_Import calendars_" : ["Импорт календаря","Импорт календарей","Импорт календарей","Импорт календарей"], + "Select the default location for attachments" : "Выберите расположение для сохранения вложений по умолчанию", + "Pick" : "Выбрать", + "Invalid location selected" : "Указано недействительное расположение", + "Attachments folder successfully saved." : "Параметры расположения вложений сохранены.", + "Error on saving attachments folder." : "Не удалось задать папку для хранения вложений.", + "Default attachments location" : "Расположение сохранения вложений по умолчанию", "{filename} could not be parsed" : "Не удалось проанализировать файл {filename}", "No valid files found, aborting import" : "Не найдено файлов верного типа, импорт отменён", - "Import partially failed. Imported {accepted} out of {total}." : "Импорт завершен частично. Импортировано {accepted} из {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Событие импортировано","Импортировано %n события","Импортировано %n событий","Импортировано %n событий"], + "Import partially failed. Imported {accepted} out of {total}." : "Импорт завершен частично. Импортировано {accepted} из {total}.", "Automatic" : "Автоматически", "Automatic ({detected})" : "Автоматически ({detected})", "New setting was not saved successfully." : "Не удалось сохранить параметры.", - "Shortcut overview" : "Обзор ссылок", - "or" : "или", "Navigation" : "Навигация", "Previous period" : "Предыдущий период", "Next period" : "Следующий период", @@ -139,6 +172,7 @@ "Day view" : "Просмотров за день", "Week view" : "Просмотров за неделю", "Month view" : "Просмотров за месяц", + "Year view" : "Просмотр за год", "List view" : "Вид списком", "Actions" : "Действия", "Create event" : "Создать событие", @@ -148,23 +182,29 @@ "Save edited event" : "Сохранить изменённое событие", "Delete edited event" : "Удалить изменённое событие", "Duplicate event" : "Дублировать событие", + "Shortcut overview" : "Обзор ссылок", + "or" : "или", + "Calendar settings" : "Параметры календаря", + "At event start" : "В начале мероприятия", + "No reminder" : "Не напоминать", + "Failed to save default calendar" : "Не удалось задать календарь по умолчанию", + "CalDAV link copied to clipboard." : "Ссылка CalDAV скопирована в буфер обмена.", + "CalDAV link could not be copied to clipboard." : "Не удалось скопировать ссылку CalDAV в буфер обмена.", "Enable birthday calendar" : "Включить календарь дней рождения", "Show tasks in calendar" : "Показывать задачи в календаре", "Enable simplified editor" : "Использовать упрощённый редактор", - "Limit visible events per view" : "Ограничить количество выводимых событий", + "Limit the number of events displayed in the monthly view" : "Ограничьте количество событий, отображаемых в ежемесячном представлении", "Show weekends" : "Показывать выходные", "Show week numbers" : "Показывать номера недель", "Time increments" : "Шаг изменения времени", + "Default calendar for incoming invitations" : "Календарь для полученных приглашений по умолчанию", "Default reminder" : "Напоминание по умолчанию", "Copy primary CalDAV address" : "Скопировать основной адрес CalDAV", "Copy iOS/macOS CalDAV address" : "Скопировать адрес CalDAV для iOS/macOS", "Personal availability settings" : "Личные настройки доступности", "Show keyboard shortcuts" : "Показать горячие клавиши клавиатуры", - "No reminder" : "Не напоминать", - "CalDAV link copied to clipboard." : "Ссылка CalDAV скопирована в буфер обмена.", - "CalDAV link could not be copied to clipboard." : "Не удалось скопировать ссылку CalDAV в буфер обмена.", - "Appointment was created successfully" : "Встреча была создана успешно", - "Appointment was updated successfully" : "Встреча была успешно обновлена", + "Appointment schedule successfully created" : "Рассписание встреч создано", + "Appointment schedule successfully updated" : "Расписание встреч обновлено", "_{duration} minute_::_{duration} minutes_" : ["{duration} минута","{duration} минуты","{duration} минут","{duration} минут"], "0 minutes" : "0 минут", "_{duration} hour_::_{duration} hours_" : ["{duration} час","{duration} часа","{duration} часов","{duration} часов"], @@ -175,14 +215,21 @@ "To configure appointments, add your email address in personal settings." : "Для конфигурации встреч, добавьте свой адрес электронной почты в личных настройках.", "Public – shown on the profile page" : "Публичный - отображается на странице профиля", "Private – only accessible via secret link" : "Приватный - доступен только по секретной ссылке", + "Appointment schedule saved" : "Расписание встреч сохранено", + "Create appointment schedule" : "Создать расписание встреч", + "Edit appointment schedule" : "Редактировать расписание", + "Update" : "Обновить", + "Appointment name" : "Название встречи", "Location" : "Местоположение", + "Create a Talk room" : "Создать обсуждение", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Для каждой забронированной встречи будет сгенерирована уникальная ссылка, которая будет отправлена по электронной почте с подтверждением", "Description" : "Описание", "Visibility" : "Видимость", "Duration" : "Продолжительность", "Increments" : "Повышения", "Additional calendars to check for conflicts" : "Дополнительные календари для проверки на наличие конфликтов", "Pick time ranges where appointments are allowed" : "Выберите диапазон времени, когда разрешено назначать встречи", - "to" : "к", + "to" : "по", "Delete slot" : "Удалить слот", "No times set" : "Время не установлено", "Add" : "Добавить", @@ -193,6 +240,7 @@ "Friday" : "Пятница", "Saturday" : "Суббота", "Sunday" : "Воскресенье", + "Weekdays" : "Дни недели", "Add time before and after the event" : "Добавить время до и после мероприятия", "Before the event" : "До начала мероприятия", "After the event" : "После мероприятия", @@ -200,18 +248,29 @@ "Minimum time before next available slot" : "Минимальное время до следующего доступного слота", "Max slots per day" : "Максимум слотов в день", "Limit how far in the future appointments can be booked" : "Лимит на то, как далеко в будущем можно записываться на встречу", - "Create appointment" : "Создать мероприятие", - "Edit appointment" : "Редактировать встречу", - "Save" : "Сохранить", - "Update" : "Обновить", + "It seems a rate limit has been reached. Please try again later." : "Похоже, был достигнут лимит скорости. Пожалуйста, повторите попытку позже.", "Please confirm your reservation" : "Пожалуйста, подтвердите бронирование", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Мы отправили вам электронное письмо с подробной информацией. Пожалуйста, подтвердите свою встречу, используя ссылку в письме. Теперь вы можете закрыть эту страницу.", "Your name" : "Ваше имя", "Your email address" : "Ваш адрес электронной почты", "Please share anything that will help prepare for our meeting" : "Пожалуйста, поделитесь с нами тем, что поможет подготовиться к нашей встрече", "Could not book the appointment. Please try again later or contact the organizer." : "Не удалось забронировать встречу. Пожалуйста, повторите попытку позже или свяжитесь с организатором.", - "Book the appointment" : "Записаться на встречу", - "Reminder" : "Напоминание", + "Back" : "Назад", + "Book appointment" : "Записаться на прием", + "Error fetching Talk conversations." : "Ошибка получения списка обсуждений Talk", + "Conversation does not have a valid URL." : "Ссылка на обсуждение некорректна", + "Successfully added Talk conversation link to location." : "Ссылка на обсуждение в Talk успешно добавлена в местоположение события", + "Successfully added Talk conversation link to description." : "Ссылка на обсуждение в Talk успешно добавлена в описание события", + "Failed to apply Talk room." : "Не удалось применить Talk room.", + "Error creating Talk conversation" : "Ошибка создания обсуждения Talk", + "Select a Talk Room" : "Выберите комнату в Talk", + "Add Talk conversation" : "Добавить ссылку на обсуждение Talk", + "Fetching Talk rooms…" : "Получение списка комнат Talk...", + "No Talk room available" : "Нет доступных комнат Talk", + "Create a new conversation" : "Создать новое обсуждение", + "Select conversation" : "Выберите обсуждение", + "on" : "в", + "at" : "в", "before at" : "ранее в", "Notification" : "Уведомление", "Email" : "Эл. почта", @@ -222,114 +281,143 @@ "Edit time" : "Редактировать время", "Save time" : "Сохранить время", "Remove reminder" : "Удалить напоминание", - "on" : "в", - "at" : "в", - "+ Add reminder" : "+ Создать напоминание", "Add reminder" : "Добавить напоминание", - "_second_::_seconds_" : ["секунда","секунды","секунд","секунды"], - "_minute_::_minutes_" : ["минута","минуты","минут","минуты"], - "_hour_::_hours_" : ["час","часа","часов","часы"], - "_day_::_days_" : ["день","дня","дней","дни"], - "_week_::_weeks_" : ["неделя","недель","недель","недели"], + "seconds" : "секунд", + "minutes" : "минут", + "hours" : "часов", + "days" : "дней", + "weeks" : "недель", + "Choose a file to add as attachment" : "Выбрать файл для вложения", + "Choose a file to share as a link" : "Выберите файл для публикации ссылкой", + "Attachment {name} already exist!" : "Файл вложения «{name}» уже существует.", + "Could not upload attachment(s)" : "Не удалось загрузить вложение (вложения)", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Вы собираетесь загрузить файл. Пожалуйста, проверьте его название перед открытием. Продолжить?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Вы собираетесь перейти к {host}. Вы уверены, что будете продолжать? Ссылка: {link}", + "Proceed" : "Перейти", + "No attachments" : "Нет ни одного вложения", + "Add from Files" : "Добавить из файлов", + "Upload from device" : "Загрузить с устройства", + "Delete file" : "Удалить файл", + "Confirmation" : "Подтверждение", + "_{count} attachment_::_{count} attachments_" : ["{count} вложение","{count} вложения","{count} вложений","{count} вложений"], "Suggested" : "Предложенный", "Available" : "Доступный", - "Not available" : "Не доступен", - "Checking availability" : "Проверка доступности", "Invitation accepted" : "Приглашение принято", "Accepted {organizerName}'s invitation" : "Принято приглашение от {organizerName}", + "Participation marked as tentative" : "Участие обозначено как «под вопросом»", + "Invitation is delegated" : "Приглашение делегировано", + "Not available" : "Не доступен", "Invitation declined" : "Приглашение отклонено", "Declined {organizerName}'s invitation" : "Отклонено приглашение от {organizerName}", - "Invitation is delegated" : "Приглашение делегировано", - "Participation marked as tentative" : "Участие обозначено как «под вопросом»", - "Invitation sent" : "Приглашение отправлено", + "Availability will be checked" : "Доступность будет проверена", + "Invitation will be sent" : "Приглашение будет отправлено", + "Failed to check availability" : "Не удалось проверить наличие", + "Failed to deliver invitation" : "Не удалось доставить приглашение", + "Awaiting response" : "Ожидание ответа", + "Checking availability" : "Проверка доступности", "Has not responded to {organizerName}'s invitation yet" : "Ответ на приглашение от {organizerName} ещё не отправлен", - "Availability of attendees, resources and rooms" : "Доступность участников, ресурсов и комнат", + "chairperson" : "Председатель", + "required participant" : "Обязательный участник", + "non-participant" : "Не является участником", + "optional participant" : "Необязательный участник", "{organizer} (organizer)" : "{organizer} (организатор)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Доступность участников, ресурсов и комнат", + "Suggestion accepted" : "Предложение принято", + "Legend" : "Легенда", + "Out of office" : "Вне офиса", + "Attendees:" : "Участники:", + "Done" : "Выполненные", + "Search room" : "Поиск комнаты", + "Room name" : "Название комнаты", + "Check room availability" : "Проверить наличие номеров", "Free" : "Свободен", "Busy (tentative)" : "Занят (под вопросом)", "Busy" : "Занят", - "Out of office" : "Вне офиса", "Unknown" : "Неизвестно", - "Accept" : "Принять", - "Decline" : "Отклонить", - "Tentative" : "Под вопросом", + "Find a time" : "Найди время", "The invitation has been accepted successfully." : "Приглашение принято.", "Failed to accept the invitation." : "Не удалось принять приглашение.", "The invitation has been declined successfully." : "Приглашение отклонено.", "Failed to decline the invitation." : "Не удалось отклонить приглашение.", "Your participation has been marked as tentative." : "Выше участие было обозначено как «под вопросом».", "Failed to set the participation status to tentative." : "Не удалось обозначить свое участие как «под вопросом».", - "Create Talk room for this event" : "Создать комнату этого события в приложении «Talk»", - "Show busy times" : "Показать занятое время", + "Accept" : "Принять", + "Decline" : "Отклонить", + "Tentative" : "Под вопросом", "No attendees yet" : "Ещё нет участников", + "{invitedCount} invited, {confirmedCount} confirmed" : "Приглашено: {invitedCount}, подтвердили участие: {confirmedCount}", + "Please add at least one attendee to use the \"Find a time\" feature." : "Добавьте хотя бы одного участника, чтобы использовать функцию «Найти время».", + "Successfully appended link to talk room to location." : "Ссылка на переговорную комнату успешно добавлена.", "Successfully appended link to talk room to description." : "Ссылка на комнату приложения Talk добавлена в описание.", "Error creating Talk room" : "Не удалось создать комнату в приложении Talk.", - "Send email" : "Отправить сообщение", + "Attendees" : "Участники", + "_%n more guest_::_%n more guests_" : ["Ещё 1 гость","Ещё %n гостя","Ещё %n гостей","Ещё %n гостей"], + "Remove group" : "Удалить группу", + "Remove attendee" : "Удалить участника", + "Request reply" : "Запросить ответ", "Chairperson" : "Председатель", "Required participant" : "Обязательный участник", "Optional participant" : "Необязательный участник", "Non-participant" : "Не участвует", - "Remove attendee" : "Удалить участника", - "Search for emails, users or contacts" : "Поиск по адресам эл. почты, пользователям и контактам", + "_%n member_::_%n members_" : ["%n участник","%n участника","%n участников","%n участника"], + "Search for emails, users, contacts, contact groups or teams" : "Поиск почтовых адресов (email), пользователей, контактов, групп контактов или команд", "No match found" : "Соответствий не найдено", + "Note that members of circles get invited but are not synced yet." : "Обратите внимание, что участники кругов получают приглашения, но еще не синхронизированы.", + "Note that members of contact groups get invited but are not synced yet." : "Обратите внимание, что члены контактных групп приглашаются, но еще не синхронизированы.", "(organizer)" : "(организатор)", + "Make {label} the organizer" : "Сделать {label} организатором", + "Make {label} the organizer and attend" : "Сделайте {label} организатором и примите участие", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Чтобы отправлять приглашения и обрабатывать ответы, [linkopen]добавьте свой адрес электронной почты в личные настройки[linkclose].", "Remove color" : "Убрать отметку цветом", "Event title" : "Название события", - "All day" : "Весь день", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Изменение параметра «весь день» для повторяющегося события не поддерживается.", - "from {startDate}" : "с {startDate}", - "from {startDate} at {startTime}" : "с {startDate} {startTime}", - "to {endDate}" : "по {endDate}", - "to {endDate} at {endTime}" : "по {endDate} {endTime}", + "From" : "От", + "To" : "По", "Repeat" : "Повтор", - "End repeat" : "Прекратить повтор", - "Select to end repeat" : "Выбрать до последнего повторения", + "_time_::_times_" : ["раз","раз","раз","раз"], "never" : "никогда", "on date" : "в указанную дату", "after" : "после", - "_time_::_times_" : ["раз","раз","раз","раз"], + "End repeat" : "Прекратить повтор", + "Select to end repeat" : "Выбрать до последнего повторения", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Невозможно задать правила повторения этого события, так как оно является исключением из правил повтора исходного события.", "first" : "первый", - "third" : "третий", - "fourth" : "четвёртый", - "fifth" : "пятый", - "second to last" : "предпоследний", - "last" : "последний", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Изменение правила повторения повлияет только на это и все будущие повторения события.", "Repeat every" : "Повторять каждые", "By day of the month" : "В указанные дни месяца", "On the" : "По", + "_day_::_days_" : ["день","дня","дней","дни"], + "_week_::_weeks_" : ["неделя","недель","недель","недели"], "_month_::_months_" : ["месяц","месяца","месяцев","месяца"], "_year_::_years_" : ["год","года","лет","года"], + "On specific day" : "В определенный день", "weekday" : "рабочий день", "weekend day" : "выходной день", - "No recurrence" : "Нет повторения", + "Does not repeat" : "Не повторять", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Заданные правила повторения этого события не полностью поддерживается Nextcloud. При изменении правил, некоторые повторения могут быть потеряны.", - "Suggestions" : "Предложения", "No rooms or resources yet" : "Комнаты или ресурсы пока не назначены", + "Resources" : "Ресурсы", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} место","{seatingCapacity} места","{seatingCapacity} мест","{seatingCapacity} мест"], "Add resource" : "Добавить ресурс", "Has a projector" : "Есть проектор", "Has a whiteboard" : "Имеет доску для записей", "Wheelchair accessible" : "Доступно для кресла-коляски", "Remove resource" : "Удалить ресурс", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} место","{seatingCapacity} места","{seatingCapacity} мест","{seatingCapacity} мест"], - "Projector" : "Проектор", - "Whiteboard" : "Доска", "Search for resources or rooms" : "Поиск ресурсов или помещений", "available" : "доступный", "unavailable" : "недоступен", + "Show all rooms" : "Показать все комнаты", + "Projector" : "Проектор", + "Whiteboard" : "Доска", "Room type" : "Тип комнаты", "Any" : "Любой", "Minimum seating capacity" : "Минимальная вместимость", - "More" : "Больше", - "Update this occurrence" : "Обновить это повторение", + "More details" : "Подробнее", "Update this and all future" : "Обновить это и все будущие повторния", + "Update this occurrence" : "Обновить это повторение", "Public calendar does not exist" : "Общедоступный календарь не существует", "Maybe the share was deleted or has expired?" : "Возможно общий ресурс был удалён или истёк срок действия доступа.", - "Please select a time zone:" : "Выберите часовой пояс:", - "Pick a time" : "Выберите время", - "Pick a date" : "Выберите дату", "from {formattedDate}" : "с {formattedDate}", "to {formattedDate}" : "по {formattedDate}", "on {formattedDate}" : " {formattedDate}", @@ -339,9 +427,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} в {formattedTime}", "Please enter a valid date" : "Введите верную дату", "Please enter a valid date and time" : "Введите верную дату и время", + "Select a time zone" : "Выберите часовой пояс", + "Please select a time zone:" : "Выберите часовой пояс:", + "Pick a time" : "Выберите время", + "Pick a date" : "Выберите дату", "Type to search time zone" : "Начните вводить название часового поиска", "Global" : "Общие", - "Select date" : "Выбрать дату", + "Holidays in {region}" : "Праздники в {region}", + "An error occurred, unable to read public calendars." : "Произошла ошибка, невозможно прочитать публичные календари.", + "An error occurred, unable to subscribe to calendar." : "Произошла ошибка, не удалось подписаться на календарь.", + "Public holiday calendars" : "Общие календари праздников", + "Public calendars" : "Публичные календари", + "No valid public calendars configured" : "Не настроено ни одного допустимого публичного календаря.", + "Speak to the server administrator to resolve this issue." : "Обратитесь к администратору сервера для решения этой проблемы.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Общие календари праздников предоставляются Thunderbird. Данные календаря будут загружены с {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Эти публичные календари предлагаются администратором сервера. Данные календаря будут загружены с соответствующего веб-сайта.", + "By {authors}" : "{authors}", + "Subscribed" : "Подписано", + "Subscribe" : "Подписаться", + "Could not fetch slots" : "Не удалось получить слоты", + "Select a date" : "Выберите дату", "Select slot" : "Выбрать слот", "No slots available" : "Нет свободных мест", "The slot for your appointment has been confirmed" : "Время вашей встречи было подтверждено", @@ -358,24 +463,25 @@ "Personal" : "Личный", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Автоматическое определение часового пояса определило ваш часовой пояс как UTC. Скорее всего, это результат мер безопасности вашего веб-браузера. Пожалуйста, установите часовой пояс вручную в настройках календаря.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Настроенный вами часовой пояс ({timezoneId}) не найден. Возвращение к UTC. Пожалуйста, измените свой часовой пояс в настройках и сообщите об этой проблеме.", - "No more events today" : "На сегодня больше нет событий", - "No upcoming events" : "Приближающиеся события отсуствуют", - "Create a new event" : "Создать событие", - "[Today]" : "[Сегодня]", - "[Tomorrow]" : "[Завтра]", - "[Yesterday]" : "[Вчера]", - "[Last] dddd" : "[Last] dddd", + "Availability of {displayName}" : "Доступность {displayName}", + "Edit event" : "Редактировать событие", "Event does not exist" : "Событие не существует", "Duplicate" : "Дублировать", "Delete this occurrence" : "Удалить это повторение", "Delete this and all future" : "Удалить это и все будущие повторения", - "Details" : "Подробности", - "Attendees" : "Участники", - "Resources" : "Ресурсы", + "All day" : "Весь день", + "Modifications wont get propagated to the organizer and other attendees" : "Изменения не будут распространены на организатора и других участников", + "Managing shared access" : "Управление общим доступом ", + "Deny access" : "Закрыть доступ", + "Invite" : "Приглашение", + "_User requires access to your file_::_Users require access to your file_" : ["Пользователю требуется доступ к вашему файлу","Пользователям требуется доступ к вашему файлу","Пользователям требуется доступ к вашему файлу","Пользователям требуется доступ к вашему файлу"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Вложение, требующие общего доступа","Вложения, требующие общего доступа","Вложения, требующие общего доступа","Вложения, требующие общего доступа"], + "Untitled event" : "Событие без названия", "Close" : "Закрыть", - "Show more details" : "Подробные сведения", + "Modifications will not get propagated to the organizer and other attendees" : "Изменения не будут распространены на организатора и других участников", "Subscribe to {name}" : "Подписаться на {name}", "Export {name}" : "Экспортировать {name}", + "Show availability" : "Показать доступность", "Anniversary" : "Годовщина", "Appointment" : "Встреча", "Business" : "Работа", @@ -403,7 +509,6 @@ "on {time}" : "в {time}", "on {time} ({timezoneId})" : "в {time} ({timezoneId})", "Week {number} of {year}" : "{number} неделя {year} года", - "Does not repeat" : "Не повторять", "Daily" : "Ежедневно", "Weekly" : "Еженедельно", "Monthly" : "Ежемесячно", @@ -415,24 +520,30 @@ "_on {weekday}_::_on {weekdays}_" : ["по {weekday}","по {weekday}","по {weekday}","по {weekday}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : [" {dayOfMonthList}"," {dayOfMonthList}"," {dayOfMonthList}"," {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "по {ordinalNumber} {byDaySet}", - "in {monthNames}" : "по {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "в {monthNames} {dayOfMonthList} числа", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "в {monthNames} по {ordinalNumber} {byDaySet}", "until {untilDate}" : "до {untilDate}", "_%n time_::_%n times_" : ["%n раз","%n раза","%n раз","%n раза"], - "Untitled event" : "Событие без названия", + "second" : "секунду", + "third" : "третий", + "fourth" : "четвёртый", + "fifth" : "пятый", + "second to last" : "предпоследний", + "last" : "последний", "Untitled task" : "Задача без названия", "Please ask your administrator to enable the Tasks App." : "Попросите администратора сервера активировать приложение «Задачи».", - "Prev" : "Назад", - "Next" : "Вперёд", - "Prev year" : "Пред. год", - "Next year" : "Следующий год", - "Year" : "Год", + "You are not allowed to edit this event as an attendee." : "Вам не разрешается редактировать это мероприятие как участнику", "W" : "Н", "%n more" : "и ещё %n", "No events to display" : "Отсутствуют события для показа", + "All participants declined" : "Все участники отклонили событие", + "Please confirm your participation" : "Пожалуйста, подтвердите свое участие", + "You declined this event" : "Вы отменили это событие", + "Your participation is tentative" : "Ваше участие пока под вопросом", "_+%n more_::_+%n more_" : ["+ ещё %n","+ ещё %n","+ ещё %n","+ ещё %n"], "No events" : "Нет ни одного события", "Create a new event or change the visible time-range" : "Создать событие или изменить интервал видимости", + "Failed to save event" : "Не удалось сохранить событие", "It might have been deleted, or there was a typo in a link" : "Возможно, оно было удалено или вы выполнили переход по неверной ссылке", "It might have been deleted, or there was a typo in the link" : "Возможно, оно было удалено или вы выполнили переход по неверной ссылке", "Meeting room" : "Комната для переговоров", @@ -445,7 +556,7 @@ "When shared hide this event" : "Скрыть это событие при публикации", "The visibility of this event in shared calendars." : "Видимость этого события в опубликованных календарях. ", "Add a location" : "Добавить местоположение", - "Add a description" : "Добавить описание", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Добавьте описание\n\n- Для чего данное событие\n- Агенда\n- Как участникам подготовиться к событию", "Status" : "Состояние", "Confirmed" : "Подтверждено", "Canceled" : "Отменена", @@ -458,135 +569,23 @@ "Add this as a new category" : "Добавить как новую категорию", "Custom color" : "Свой цвет", "Special color of this event. Overrides the calendar-color." : "Задать свой цвет события, отличающийся от цвета календаря", - "Chat room for event" : "Комната в приложении Talk для этого события", + "Error while sharing file" : "Ошибка сохранения файла", + "Error while sharing file with user" : "Ошибка при обмене файлом с пользователем", + "Attachment {fileName} already exists!" : "Вложение {fileName} уже существует!", + "An error occurred during getting file information" : "Произошла ошибка при получении информации о файле", + "Talk conversation for event" : "Обсуждение события в Talk", + "An error occurred, unable to delete the calendar." : "Произошла ошибка, не удалось удалить календарь.", "Imported {filename}" : "Файл {filename} импортирован", - "Meditation" : "Медитация", - "Relaxing" : "Расслабляющий", - "Relax" : "Расслабление", - "Break" : "Перерыв", - "Commute" : "Поездка", - "Commuting" : "Перемещения", - "Shuttle" : "Шаттл", - "Invoice" : "Счет-фактура", - "Finance" : "Финансы", - "Bank" : "Банк", - "Money" : "Деньги", - "Wedding" : "Свадьба", - "Dog" : "Собака", - "Concert" : "Концерт", - "Festival" : "Фестиваль", - "Theater" : "Театр", - "Theatre" : "Театр", - "Presentation" : "Презентация", - "Talk" : "Говорить ", - "Speech" : "Речь", - "Deadline" : "Крайний срок", - "Submission" : "Представление", - "Reporting" : "Сообщать", - "Camping" : "Поход", - "Camp" : "Лагерь", - "Election" : "Выборы", - "Voting" : "Голосование", - "Vote" : "Голосовать", - "Barbecue" : "Барбекю", - "Barbeque" : "Барбекю", - "Garden" : "Сад", - "Farm" : "Ферма", - "Movie" : "Фильм", - "Cinema" : "Кинотеатр", - "Graduation" : "получение учёной степени", - "Brainstorm" : "Мозговой штурм", - "Review" : "Обзор", - "Audit" : "Аудит", - "Inspection" : "Осмотр", - "Proofreading" : "Корректирование", - "Baseball" : "Бейсбол", - "Meet" : "Встреча", - "Planning" : "Планирование", - "Pointing" : "Указание", - "Retrospective" : "Ректроспектива", - "Office" : "Офис", - "Contributor week" : "Неделя участия", - "Mail" : "Почта", - "Soccer" : "Футбол", - "Football" : "Американский футбол", - "Gaming" : "Видео игры", - "Drive" : "Езда", - "Driving" : "Вождение", - "Bicycle" : "Езда на велосипеде", - "Cycle" : "Велосипед", - "Cycling" : "Езда на велосипеде", - "Biking" : "Езда на мотоцикле", - "Bike" : "Bike", - "Podcast" : "Подкаст", - "Basketball" : "Баскетбол", - "Fishing" : "Рыбалка", - "Hiking" : "Пеший туризм", - "Hike" : "Поход", - "Art" : "Искусство", - "Exhibition" : "Выстовка", - "Museum" : "Музей", - "Pilates" : "Пилатес", - "Park" : "Парк", - "Walk" : "Прогулка", - "Studying" : "Учёба", - "Doctor" : "Врач", - "Health" : "Здоровье", - "Dentist" : "Стоматология", - "Hospital" : "Больница", - "Interview" : "Собеседование", - "Training" : "Тренировка", - "Practice" : "Практика", - "Sports" : "Спорт", - "Exercise" : "Занятия", - "Work out" : "Тренировка", - "Working out" : "Тренироваться", - "Gym" : "Тренажёрный зал", - "Barber" : "Парикмахер", - "Haircut" : "Стрижка", - "Hairdresser" : "Парикмахер", - "Exam" : "Экзамен", - "Written test" : "Письменный тест", - "Oral test" : "Устный тест", - "Working" : "Работа", - "New Years Eve" : "Сочельник", - "NYE" : "Новый год", - "Fireworks" : "Фейерверк", - "Running" : "Пробежка", - "Go for a run" : "Пробежаться", - "Marathon" : "Марафон", - "Video-conference" : "Видеоконференция", - "Conference-call" : "Конференция по телефону", - "Video-call" : "Видеозвонок", - "Video-chat" : "Видеочат", - "Video-meeting" : "Видеовстреча", - "Call" : "Звонок", - "Calling" : "Позвонить", - "Christmas" : "Рождество", - "Conference" : "Конференция", - "Pizza" : "Пицца", - "Travelling" : "Путешествие", - "Trip" : "Поездка", - "Journey" : "Поездка", - "Collaborate" : "Совместная работа", - "Pair" : "Пара", - "Lecture" : "Лекция", - "Seminar" : "Семинар", - "Teaching" : "Обучение", - "Photograph" : "Фотограф", - "Party" : "Вечеринка", - "Celebration" : "Празднование", - "Celebrate" : "Празднование", - "Birthday" : "День рождения", - "Shopping" : "Покупки", - "Groceries" : "Бакалея", - "Skate" : "Роликовые коньки", - "Skateboard" : "Скейтборд", - "Wine tasting" : "Дегустация вина", - "Golf" : "Гольф", - "Dinner" : "Ужин", - "Lunch" : "Обед", + "This is an event reminder." : "Это напоминание о событии.", + "Error while parsing a PROPFIND error" : "Ошибка при анализе ошибки PROPFIND", "Appointment not found" : "Встреча не найдена", - "User not found" : "Пользователь не найден" + "User not found" : "Пользователь не найден", + "Reminder" : "Напоминание", + "+ Add reminder" : "+ Создать напоминание", + "Select automatic slot" : "Выбрать интервал автоматически", + "with" : "с", + "Available times:" : "Доступные варианты:", + "Suggestions" : "Предложения", + "Details" : "Подробности" },"pluralForm" :"nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);" } \ No newline at end of file diff --git a/l10n/sc.js b/l10n/sc.js index 96a2d17dc20deb7ec4457f9fd415b7d5d0be783e..932c67f87f8227053b1e0400086dfcddef70a1ca 100644 --- a/l10n/sc.js +++ b/l10n/sc.js @@ -11,94 +11,93 @@ OC.L10N.register( "Open »%s«" : "Aberi »%s«", "Cheers!" : "Salude!", "Upcoming events" : "Eventos abarrados", + "No more events today" : "No b'at àteros eventos oe", + "No upcoming events" : "Perunu eventu abarradu", + "More events" : "Àteros eventos", + "Calendar" : "Calendàriu", "Appointments" : "Apuntamentos", "Confirm" : "Cunfirma", + "Description:" : "Descritzione:", "Date:" : "Data:", "Where:" : "Ue:", - "Description:" : "Descritzione:", - "Calendar" : "Calendàriu", "A Calendar app for Nextcloud" : "Un'aplicatzione de calendàriu pro Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "S'aplicatzione Calendar est un'interfache gràfica pro su serbidore CalDAVde Nextcloud. Sincroniza in manera fàtzile is eventos intre is vàrios dispositivos e modìfica•ddos in lìnia.\n\n* 🚀 **Integratzione cun àteras aplicatziones de Nextcloud!** Pro immoe Cuntatos e àteras sunt arribende.\n* 🌐 **Suportu WebCal!** Boles bìdere is partidas de s'iscuadra tua in su calendàriu? Perunu problema!\n* 🙋 **Partetzipantes!** Invita is persones a is eventos tuos\n* ⏰ **Lìberu/Ocupadu!** Càstia candu is partetzipantes sunt disponìbiles pro ddus cuntatare\n* ⏰ **Promemòria!** Imposta avisos pro is eventos in su navigadore e in sa posta eletrònica\n* 🔍 Chirca! Agata is eventos tuos in manera fàtzile\n* ☑️  Atividades! Controlla is atividades cun data de iscadèntzia deretu in su calendàriu\n* 🙈 **No semus torrende a inventare sa roda!** Basadu in is librerias bellas [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) e [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Die in antis", "Previous week" : "Chida in antis", "Previous month" : "Mese in antis", "Next day" : "Die imbeniente", "Next week" : "Sa chida chi benit", + "Next year" : "Annu pustis", "Next month" : "Su mese chi benit", + "Create new event" : "Crea un'eventu nou", "Today" : "Oe", "Day" : "Die", "Week" : "Chida", "Month" : "Mese", + "Year" : "Annu", "List" : "Lista", "Preview" : "Anteprima", "Copy link" : "Còpia ligòngiu", "Edit" : "Modìfica", "Delete" : "Cantzella", - "Untitled calendar" : "Calendàriu chene tìtulu", - "Edit name" : "Modìfica nùmene", - "Saving name …" : "Sarvende su nùmene …", - "Edit color" : "Modìfica su colore", - "Saving color …" : "Sarvende su colore …", - "Copy private link" : "Còpia ligòngiu privadu", - "Export" : "Esporta", - "Unshare from me" : "Annulla sa cumpartzidura cun me", + "Create new" : "Crea un'archìviu nou", "An error occurred, unable to change visibility of the calendar." : "B'at àpidu un'errore, no at fatu a cambiare sa visibilidade de su calendàriu.", - "An error occurred, unable to delete the calendar." : "B'at àpidu un'errore, no at fatu a cantzellare su calendàriu.", - "Calendar link copied to clipboard." : "Ligòngiu de su calendàriu copiadu in is apuntos.", - "Calendar link could not be copied to clipboard." : "No at fatu a copiare su ligòngiu de su calendàriu in is apuntos.", - "An error occurred, unable to rename the calendar." : "B'at àpidu un'errore, no at fatu a torrare a numenare su calendàriu.", - "An error occurred, unable to change the calendar's color." : "B'at àpidu un'errore, no at fatu a cambiare su colore de su calendàriu.", + "Untitled calendar" : "Calendàriu chene tìtulu", + "Shared with you by" : "Cumpartzidu cun tegus dae", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Annullamentu de sa cumpartzidura de su calendàriu intre {tempus} segundu","Annullamentu de sa cumpartzidura de su calendàriu intre {countdown} segundos"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Su calendàriu s'at a cantzellare intre {tempus} segundu","Su calendàriu s'at a cantzellare intre {countdown} segundos"], + "An error occurred, unable to create the calendar." : "B'at àpidu un'errore, no at fatu a creare su calendàriu.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Inserta unu ligòngiu vàlidu (chi cumintzet cun http://, https://, webcal://, o webcals://)", + "Calendars" : "Calendàrios", + "Add new" : "Agiunghe nou", + "New calendar" : "Calendàriu nou", + "Name for new calendar" : "Nùmene pro su calendàriu nou", + "Creating calendar …" : "Creende calendàriu …", + "New calendar with task list" : "Calendàriu nou cun lista de atividades", + "New subscription from link (read-only)" : "Sutaiscritzione noa dae ligòngiu (letura sola)", + "Creating subscription …" : "Creende sutascritzione …", + "Calendar link copied to clipboard." : "Ligòngiu de su calendàriu copiadu in is apuntos.", + "Calendar link could not be copied to clipboard." : "No at fatu a copiare su ligòngiu de su calendàriu in is apuntos.", + "Copy subscription link" : "Còpia ligòngiu de sutascritzione", + "Copying link …" : "Copiende su ligòngiu …", + "Copied link" : "Ligòngiu copiadu", + "Could not copy link" : "No at fatu a copiare su ligòngiu", + "Export" : "Esporta", + "Untitled item" : "Elementu chene tìtulu", + "Could not load deleted calendars and objects" : "No at fatu a carrigare is calendàrios e is ogetos cantzellados", + "Could not restore calendar or event" : "No at fatu a recuperare su calendàriu o s'eventu", + "Empty trash bin" : "Bòida s'àliga", + "Trash bin" : " Àliga", + "Name" : "Nùmene", + "Deleted" : "Cantzelladu", + "Restore" : "Riprìstina", + "Delete permanently" : "Cantzella in manera permanente", + "Could not update calendar order." : "No at fatu a agiornare s'òrdne de su calendàriu.", + "Deck" : "Deck", + "Hidden" : "Cuadu", + "Copy internal link" : "Còpia ligòngiu internu", + "An error occurred, unable to publish calendar." : "B'at àpidu un'errore, no at fatu a publicare su calendàriu.", + "An error occurred, unable to send email." : "B'at àpidu un'errore, no at fatu a imbiare su messàgiu de posta.", + "Embed code copied to clipboard." : "Su còdighe de insertada est istadu copiadu in punta de billete.", + "Embed code could not be copied to clipboard." : "No at fatu a copiare in punta de billete su còdighe de insertada.", + "Unpublishing calendar failed" : "No at fatu a annullare sa publicatzione de su calendàriu", "Share link" : "Cumpartzi ligòngiu", - "Publish calendar" : "Pùblica calendàriu", - "Publishing calendar" : "Publichende su calendàriu", "Copy public link" : "Còpia ligòngiu pùblicu", "Send link to calendar via email" : "Imbia ligòngiu pro su calendàriu tràmite posta eletrònica", "Enter one address" : "Inserta un'indiritzu", "Sending email …" : "Imbiende su messàgui de posta eletrònica …", - "Copy subscription link" : "Còpia ligòngiu de sutascritzione", - "Copying link …" : "Copiende su ligòngiu …", - "Copied link" : "Ligòngiu copiadu", - "Could not copy link" : "No at fatu a copiare su ligòngiu", "Copy embedding code" : "Còpia su còdighe de insertada", "Copying code …" : "Copiende su còdighe …", "Copied code" : "Còdighe copiadu", "Could not copy code" : "No at fatu a copiare su còdighe", "Delete share link" : "Cantzella ligòngiu de cumpartzidura", "Deleting share link …" : "Cantzellende su ligòngiu de cumpartzidura …", - "An error occurred, unable to publish calendar." : "B'at àpidu un'errore, no at fatu a publicare su calendàriu.", - "An error occurred, unable to send email." : "B'at àpidu un'errore, no at fatu a imbiare su messàgiu de posta.", - "Embed code copied to clipboard." : "Su còdighe de insertada est istadu copiadu in punta de billete.", - "Embed code could not be copied to clipboard." : "No at fatu a copiare in punta de billete su còdighe de insertada.", - "Unpublishing calendar failed" : "No at fatu a annullare sa publicatzione de su calendàriu", - "Share with users or groups" : "Cumpartzi cun utentes o grupos", - "No users or groups" : "Peruna utèntzia o grupu", + "An error occurred, unable to change the permission of the share." : "B'at àpidu un'errore, no at fatu a cambiare su permissu de cumpartzidura.", "can edit" : "podet modificare", "Unshare with {displayName}" : "Annulla sa cumpartzidura cun {displayName}", - "An error occurred, unable to change the unshare the calendar." : "B'at àpidu un'errore, no at fatu a cambiare s'annullamentu de cumpartzidura de su calendàriu.", - "An error occurred, unable to change the permission of the share." : "B'at àpidu un'errore, no at fatu a cambiare su permissu de cumpartzidura.", - "+ New calendar" : "+ Calendàriu nou", - "New calendar" : "Calendàriu nou", - "Creating calendar …" : "Creende calendàriu …", - "New calendar with task list" : "Calendàriu nou cun lista de atividades", - "New subscription from link (read-only)" : "Sutaiscritzione noa dae ligòngiu (letura sola)", - "Creating subscription …" : "Creende sutascritzione …", - "An error occurred, unable to create the calendar." : "B'at àpidu un'errore, no at fatu a creare su calendàriu.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Inserta unu ligòngiu vàlidu (chi cumintzet cun http://, https://, webcal://, o webcals://)", - "Trash bin" : " Àliga", - "Loading deleted elements." : "Carrighende is elementos cantzellados", - "You do not have any deleted elements." : "Non tenes elementos cantzellados.", - "Name" : "Nùmene", - "Deleted" : "Cantzelladu", - "Restore" : "Riprìstina", - "Delete permanently" : "Cantzella in manera permanente", - "Empty trash bin" : "Bòida s'àliga", - "Untitled element" : "Elementu chene tìtulu", - "Could not load deleted calendars and objects" : "No at fatu a carrigare is calendàrios e is ogetos cantzellados", - "Could not restore calendar or event" : "No at fatu a recuperare su calendàriu o s'eventu", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Is elementos de s'àliga s'ant a cantzellare tra {numDays} die","Is elementos de s'àliga s'ant a cantzellare tra {numDays} dies"], - "Could not update calendar order." : "No at fatu a agiornare s'òrdne de su calendàriu.", + "Share with users or groups" : "Cumpartzi cun utentes o grupos", + "No users or groups" : "Peruna utèntzia o grupu", + "Unshare from me" : "Annulla sa cumpartzidura cun me", + "Save" : "Sarva", "Import calendars" : "Importa calendàrios", "Please select a calendar to import into …" : "Seletziona unu calendàriu de importare in …", "Filename" : "Nùmene de s'archìviu", @@ -110,9 +109,7 @@ OC.L10N.register( "Import partially failed. Imported {accepted} out of {total}." : "Parte de s'importatzione est andada male. Importados {accepted} de {total}.", "Automatic" : "Automàticu", "Automatic ({detected})" : "Automàticu ({detected})", - "New setting was not saved successfully." : "S'impostatzione noa no est istada sarvada in manera curreta.", - "Shortcut overview" : "Bista generale de is curtziadòrgiu", - "or" : "o", + "New setting was not saved successfully." : "Sa cunfiguratzione noa no est istada sarvada in manera curreta.", "Navigation" : "Navigatzione", "Previous period" : "Tempus in antis", "Next period" : "Tempus imbeniente", @@ -124,10 +121,14 @@ OC.L10N.register( "Actions" : "Atziones", "Create event" : "Crea eventu", "Show shortcuts" : "Mustra curtziadòrgios", + "Shortcut overview" : "Bista generale de is curtziadòrgiu", + "or" : "o", + "No reminder" : "Perunu promemòria", + "CalDAV link copied to clipboard." : "Ligòngiu CalDAV copiadu in punta de billete.", + "CalDAV link could not be copied to clipboard." : "No at fatu a copiare su ligòngiu CalDAV in punta de billete.", "Enable birthday calendar" : "Ativa su calendàriu de cumpleannos", "Show tasks in calendar" : "Mustra atividades in su calendàriu", "Enable simplified editor" : "Ativa s'editore semplificadu", - "Limit visible events per view" : "Lìmita is eventos visìbiles pro vista", "Show weekends" : "Mustra fines de chida", "Show week numbers" : "Mustra nùmeru de chidas", "Time increments" : "Crèschidas de tempus", @@ -135,9 +136,7 @@ OC.L10N.register( "Copy primary CalDAV address" : "Còpia s'indiritzu CalDAV printzipale", "Copy iOS/macOS CalDAV address" : "Còpia s'indiritzu CalDAV iOS/macOS", "Show keyboard shortcuts" : "Mustra curtziadòrgios de tecladu", - "No reminder" : "Perunu promemòria", - "CalDAV link copied to clipboard." : "Ligòngiu CalDAV copiadu in punta de billete.", - "CalDAV link could not be copied to clipboard." : "No at fatu a copiare su ligòngiu CalDAV in punta de billete.", + "Update" : "Agiorna", "Location" : "Positzione", "Description" : "Descritzione", "Visibility" : "Visibilidade", @@ -151,9 +150,12 @@ OC.L10N.register( "Friday" : "Chenàbura", "Saturday" : "Sàbudu", "Sunday" : "Domìnigu", - "Save" : "Sarva", - "Update" : "Agiorna", "Your email address" : "Indiritzu tuo de posta eletrònica", + "Back" : "In segus", + "Create a new conversation" : "Crea una resonada noa", + "Select conversation" : "Seletziona resonada", + "on" : "allutu", + "at" : "a", "before at" : "antis de is", "Notification" : "Notìfica", "Email" : "Posta eletrònica", @@ -164,83 +166,77 @@ OC.L10N.register( "Edit time" : "Modìfica ora", "Save time" : "Sarva ora", "Remove reminder" : "Boga•nche promemòria", - "on" : "allutu", - "at" : "a", - "+ Add reminder" : "+ Agiunghe promemòria", - "_second_::_seconds_" : ["segundu","segundos"], - "_minute_::_minutes_" : ["minutu","minutos"], - "_hour_::_hours_" : ["ora","oras"], - "_day_::_days_" : ["die","dies"], - "_week_::_weeks_" : ["chida","chidas"], + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "oras", + "days" : "dies", + "weeks" : "chidas", + "Choose a file to add as attachment" : "Sèbera un'archìviu de agiùnghere comente alligongiadu", + "Choose a file to share as a link" : "Sèbera un'archìviu de cumpartzire comente ligòngiu", + "Upload from device" : "Càrriga dae su dispositivu", + "Delete file" : "Cantzella archìviu", "Available" : "A disponimentu", "Not available" : "No a disponimentu", - "Availability of attendees, resources and rooms" : "Disponibilidade de partetzipantes, resursas e aposentos", "{organizer} (organizer)" : "{organizer} (chie organizat)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Disponibilidade de partetzipantes, resursas e aposentos", + "Out of office" : "Foras de serbìtziu", + "Attendees:" : "Partetzipadores:", + "Room name" : "Nùmene istantza", "Free" : "Lìberu", "Busy (tentative)" : "Ocupadu (intentu)", "Busy" : "Faghende cosa", - "Out of office" : "Foras de serbìtziu", "Unknown" : "Non connotu", "Accept" : "Atzeta", "Decline" : "Refuda", "Tentative" : "Intentu", - "Create Talk room for this event" : "Crea un'aposentu Talk pro custu eventu", - "Show busy times" : "Mustra oras ocupadas", "No attendees yet" : "Ancora peruna persone pro partetzipare", "Successfully appended link to talk room to description." : "Ligòngiu apicadu in manera curreta in sa descritzione de s'aposentu de cunversatzione", "Error creating Talk room" : "Errore in sa creatzione de s'aposentu Talk", - "Send email" : "Imbia messàgiu de posta eletrònica", + "Attendees" : "Partetzipantes", + "Remove group" : "Boga·nche grupu", + "Remove attendee" : "Boga•nche partetzipante", "Chairperson" : "Presidente", "Required participant" : "Persone netzessària", "Optional participant" : "Persone optzionale", "Non-participant" : "No partetzipante", - "Remove attendee" : "Boga•nche partetzipante", - "Search for emails, users or contacts" : "Chirca messàgios de posta, utentes o cuntatos", "No match found" : "Peruna currispondèntzia agatada", "(organizer)" : "(persona organizadora)", - "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Pro imbiare invitos e gestire respostas, [linkopen]agiunghe s'indiritzu tuo de posta eletrònica in is impostatziones personales[linkclose].", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Pro imbiare invitos e gestire respostas, [linkopen]agiunghe s'indiritzu tuo de posta eletrònica in sa cunfiguratzione personale[linkclose].", "Remove color" : "Boga colore", "Event title" : "Tìtulu de s'eventu", - "All day" : "Totu sa die", - "Cannot modify all-day setting for events that are part of a recurrence-set." : "No faghet a modificare s'impostatzione de totu sa die pro eventos chi sunt parte de una filera de atividades recurrentes", - "from {startDate}" : "dae {startDate}", - "from {startDate} at {startTime}" : "dae {startDate} a is {startTime}", - "to {endDate}" : "a {endDate}", - "to {endDate} at {endTime}" : "dae {endDate} a is {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "No faghet a modificare sa cunfiguratzione de totu sa die pro eventos chi sunt parte de una filera de atividades recurrentes", + "From" : "Dae", + "To" : "A", "Repeat" : "Repiti", - "End repeat" : "Acabba ripetitzione", - "Select to end repeat" : "Seletziona pro acabbare sa ripetitzione", + "_time_::_times_" : ["borta","bortas"], "never" : "mai", "on date" : "in data", "after" : "a pustis", - "_time_::_times_" : ["borta","bortas"], + "End repeat" : "Acabba ripetitzione", + "Select to end repeat" : "Seletziona pro acabbare sa ripetitzione", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Custu eventu est s'etzetzione de una filera de recurrèntzias. No ddi podes agiùnghere una règula de recurrèntzia.", "first" : "primu", - "third" : "de tres", - "fourth" : "de bator", - "fifth" : "de chimbe", - "second to last" : "penùltimu", - "last" : "ùltimu", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Is càmbios a sa règula de recurrèntzia s'ant a aplicare isceti a custa e a is occurrèntzias imbenientes.", "Repeat every" : "Repite cada", "By day of the month" : "Pro die de su mese", "On the" : "Su", + "_day_::_days_" : ["die","dies"], + "_week_::_weeks_" : ["chida","chidas"], "_month_::_months_" : ["mese","meses"], "_year_::_years_" : ["Annos","annos"], "weekday" : "die de fatu", "weekend day" : "die de fine de chida", + "Does not repeat" : "No se repitit", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Sa definitzione de recurrèntzia de custu eventu no est suportada dae Nextcloud in manera totale. Si modìficas is optziones de recurrèntzia, calecuna recurrèntzia s'at a pòdere pèrdere.", "No rooms or resources yet" : "Ancora peruna istantza o risorsa", + "Resources" : "Risorsas", "Remove resource" : "Boga·nche risorsa", "Search for resources or rooms" : "Chirca risorsas o istantzas", - "More" : "Àteru", - "Update this occurrence" : "Agiorna custa ocurrèntzia", "Update this and all future" : "Agiorna custa e is àteras imbenientes", + "Update this occurrence" : "Agiorna custa ocurrèntzia", "Public calendar does not exist" : "Su calendàriu pùblicu no esistit", "Maybe the share was deleted or has expired?" : "Mancai sa cumpartzidura est istada cantzellada o est iscadida?", - "Please select a time zone:" : "Sèbera unu fusu oràriu:", - "Pick a time" : "Sèbera una ora", - "Pick a date" : "Sèbera una data", "from {formattedDate}" : "dae {formattedDate}", "to {formattedDate}" : "a {formattedDate}", "on {formattedDate}" : "su {formattedDate}", @@ -250,27 +246,24 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} a is {formattedTime}", "Please enter a valid date" : "Inserta•nche una data bàlida", "Please enter a valid date and time" : "Inserta•nche una data e un'ora bàlidas", + "Please select a time zone:" : "Sèbera unu fusu oràriu:", + "Pick a time" : "Sèbera una ora", + "Pick a date" : "Sèbera una data", "Type to search time zone" : "Iscrire pro chircare fusu oràriu", "Global" : "Globale", + "Subscribed" : "Sutaiscritu", + "Subscribe" : "Sutaiscrie", "Time:" : "Tempus:", "Personal" : "Personale", - "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Sa rilevada automàtica de su fusu oràriu at determinadu ca su tuo est UTC.\nEst probàbile chi custu siat su resurtadu de calecuna mesura de seguridade de su navigadore tuo.\nImposta su fusu oràriu tuo a manu in is impostatziones de su calendàriu.", - "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Su fusu oràriu cunfiguradu ({timezoneId}) no est istadu agatadu. Torro a s'UTC.\nCàmbia su fusu oràriu tuo in is impostatziones e signala custu problema.", - "No more events today" : "No b'at àteros eventos oe", - "No upcoming events" : "Perunu eventu abarradu", - "Create a new event" : "Crea un'eventu nou", - "[Today]" : "[Oe]", - "[Tomorrow]" : "[Cras]", - "[Yesterday]" : "[Eris]", - "[Last] dddd" : "[Ùrtimu] dddd", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Sa rilevada automàtica de su fusu oràriu at determinadu ca su tuo est UTC.\nEst probàbile chi custu siat su resurtadu de calicuna mesura de seguridade de su navigadore tuo.\nCunfigura su fusu oràriu tuo a manu in sa cunfiguratzione de su calendàriu.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Su fusu oràriu cunfiguradu ({timezoneId}) no est istadu agatadu. Torro a s'UTC.\nCàmbia su fusu oràriu tuo in sa cunfiguratzione e signala custu problema.", "Event does not exist" : "S'eventu no esistit", "Delete this occurrence" : "Cantzella custa ocurrèntzia", "Delete this and all future" : "Cantzella custa e is àteras imbenientes", - "Details" : "Detàllios", - "Attendees" : "Partetzipantes", - "Resources" : "Risorsas", + "All day" : "Totu sa die", + "Invite" : "Invita", + "Untitled event" : "Eventu chene tìtulu", "Close" : "Serra", - "Show more details" : "Mustra àteros detàllios", "Subscribe to {name}" : "Sutaiscrie a {name}", "Anniversary" : "Anniversàriu", "Appointment" : "Apuntamentu", @@ -299,7 +292,6 @@ OC.L10N.register( "on {time}" : "a is {time} ", "on {time} ({timezoneId})" : "a is {time} ({timezoneId})", "Week {number} of {year}" : "Chida {number} de {year}", - "Does not repeat" : "No se repitit", "Daily" : "Ogni die", "Weekly" : "Ogni chida", "Monthly" : "Ogni mese", @@ -311,18 +303,17 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["su {weekday}","su {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["sa die {dayOfMonthList}","is dies {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "su {ordinalNumber} {byDaySet}", - "in {monthNames}" : "in {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} su {ordinalNumber} {byDaySet}", "until {untilDate}" : "finas a {untilDate}", "_%n time_::_%n times_" : ["%n borta","%n bortas"], - "Untitled event" : "Eventu chene tìtulu", + "second" : "segundu", + "third" : "de tres", + "fourth" : "de bator", + "fifth" : "de chimbe", + "second to last" : "penùltimu", + "last" : "ùltimu", "Untitled task" : "Atividade chene tìtulu", "Please ask your administrator to enable the Tasks App." : "Pedi a s'amministratzione de ativare sa Task App.", - "Prev" : "Ant.", - "Next" : "Imbeniente", - "Prev year" : "Annu antis", - "Next year" : "Annu pustis", - "Year" : "Annu", "W" : "C", "%n more" : "%n in prus", "No events to display" : "Perunu eventu de mustrare", @@ -338,7 +329,6 @@ OC.L10N.register( "When shared hide this event" : "Cando si cumpartzit, cua custu eventu", "The visibility of this event in shared calendars." : "Sa visibilidade de custu eventu in is calendàrios cumpartzidos", "Add a location" : "Agiunghe una positzione", - "Add a description" : "Agiunghe una descritzione", "Status" : "Istadu", "Confirmed" : "Cunfirmadu", "Canceled" : "Annulladu", @@ -351,100 +341,11 @@ OC.L10N.register( "Add this as a new category" : "Agiunghe custa comente categoria noa", "Custom color" : "Personaliza colore", "Special color of this event. Overrides the calendar-color." : "Colore ispetziale de custu eventu. Ignora su colore de su calendàriu.", - "Chat room for event" : "Aposentu pro is tzarradas de s'eventu", + "Error while sharing file" : "Errore in sa cumpartzidura de s'archìviu", + "An error occurred, unable to delete the calendar." : "B'at àpidu un'errore, no at fatu a cantzellare su calendàriu.", "Imported {filename}" : "Importadu {filename}", - "Meditation" : "Meditatzione", - "Relaxing" : "Pausende", - "Relax" : "Pàusu", - "Commuting" : "Biagende", - "Invoice" : "Fatura", - "Presentation" : "Presentatzione", - "Talk" : "Faedda", - "Camping" : "Campègiu", - "Camp" : "S'acampare", - "Movie" : "Film", - "Cinema" : "Tzìnema", - "Graduation" : "Làurea", - "Brainstorm" : "Piòida de ideas", - "Review" : "Revisiona", - "Baseball" : "Baseball", - "Meet" : "Atobiare", - "Planning" : "Pianificatzione", - "Pointing" : "Indicatzione", - "Retrospective" : "Retrospetiva", - "Office" : "Ofìtziu", - "Contributor week" : "Chida de sa collaboratzione", - "Mail" : "Posta ", - "Soccer" : "Fùbalu", - "Football" : "Fùbalu", - "Gaming" : "Vìdeogiogos", - "Drive" : "Ghiare", - "Driving" : "Guida", - "Bicycle" : "Bicicleta", - "Cycle" : "Pedalare", - "Biking" : "Pedalende", - "Bike" : "Bici", - "Podcast" : "Podcast", - "Basketball" : "Basket", - "Fishing" : "Piscare", - "Hiking" : "Camminada", - "Hike" : "Camminare", - "Art" : "Arte", - "Exhibition" : "Esibitzione", - "Museum" : "Museu", - "Pilates" : "Pilates", - "Park" : "Parcu", - "Studying" : "Istudiare", - "Doctor" : "Dotore", - "Health" : "Salude", - "Dentist" : "Dentista", - "Hospital" : "Ispidale", - "Interview" : "Intervista", - "Training" : "Allenare", - "Practice" : "Praticare", - "Sports" : "Sport", - "Exercise" : "Esertzìtziu", - "Work out" : "Allenamentu", - "Working out" : "S'allenare", - "Gym" : "Palestra", - "Barber" : "Barberi", - "Haircut" : "Segada de pilos", - "Exam" : "Esame", - "Working" : "Traballare", - "New Years Eve" : "Annunou", - "NYE" : "Annunou", - "Fireworks" : "Isparadòrgiu", - "Running" : "Cùrrere", - "Go for a run" : "Andare a cùrrere", - "Marathon" : "Maratona", - "Video-conference" : "Vìdeo-cunferèntzia", - "Conference-call" : "Mutida in cunferèntzia", - "Video-call" : "Mutida de vìdeu", - "Video-chat" : "Tzarrada de vìdeu", - "Video-meeting" : "Addòbiu de vìdeu", - "Call" : "Mutida", - "Calling" : "Tzerriende", - "Christmas" : "Paschighedda", - "Conference" : "Cunferèntzia", - "Pizza" : "Pitza", - "Travelling" : "Viagiare", - "Journey" : "Viàgiu", - "Collaborate" : "Collaborare", - "Pair" : "Croba", - "Lecture" : "Letura", - "Seminar" : "Seminàriu", - "Photograph" : "Fotografia", - "Party" : "Festa", - "Celebration" : "Afestare", - "Celebrate" : "Afestare", - "Birthday" : "Cumpleannu", - "Shopping" : "Còmporas", - "Skate" : "Skate", - "Skateboard" : "Tàula de skate", - "Wine tasting" : "Tastare binu", - "Golf" : "Golf", - "Dinner" : "Chena", - "Lunch" : "Pràngiu", - "User not found" : "Utèntzia no agatada" + "User not found" : "Utèntzia no agatada", + "+ Add reminder" : "+ Agiunghe promemòria", + "Details" : "Detàllios" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/sc.json b/l10n/sc.json index acca975239589b1176cd913919ba63d7b8c07a2f..b837ab182b9c9adda99255a1137694714f3e960a 100644 --- a/l10n/sc.json +++ b/l10n/sc.json @@ -9,94 +9,93 @@ "Open »%s«" : "Aberi »%s«", "Cheers!" : "Salude!", "Upcoming events" : "Eventos abarrados", + "No more events today" : "No b'at àteros eventos oe", + "No upcoming events" : "Perunu eventu abarradu", + "More events" : "Àteros eventos", + "Calendar" : "Calendàriu", "Appointments" : "Apuntamentos", "Confirm" : "Cunfirma", + "Description:" : "Descritzione:", "Date:" : "Data:", "Where:" : "Ue:", - "Description:" : "Descritzione:", - "Calendar" : "Calendàriu", "A Calendar app for Nextcloud" : "Un'aplicatzione de calendàriu pro Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "S'aplicatzione Calendar est un'interfache gràfica pro su serbidore CalDAVde Nextcloud. Sincroniza in manera fàtzile is eventos intre is vàrios dispositivos e modìfica•ddos in lìnia.\n\n* 🚀 **Integratzione cun àteras aplicatziones de Nextcloud!** Pro immoe Cuntatos e àteras sunt arribende.\n* 🌐 **Suportu WebCal!** Boles bìdere is partidas de s'iscuadra tua in su calendàriu? Perunu problema!\n* 🙋 **Partetzipantes!** Invita is persones a is eventos tuos\n* ⏰ **Lìberu/Ocupadu!** Càstia candu is partetzipantes sunt disponìbiles pro ddus cuntatare\n* ⏰ **Promemòria!** Imposta avisos pro is eventos in su navigadore e in sa posta eletrònica\n* 🔍 Chirca! Agata is eventos tuos in manera fàtzile\n* ☑️  Atividades! Controlla is atividades cun data de iscadèntzia deretu in su calendàriu\n* 🙈 **No semus torrende a inventare sa roda!** Basadu in is librerias bellas [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) e [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Die in antis", "Previous week" : "Chida in antis", "Previous month" : "Mese in antis", "Next day" : "Die imbeniente", "Next week" : "Sa chida chi benit", + "Next year" : "Annu pustis", "Next month" : "Su mese chi benit", + "Create new event" : "Crea un'eventu nou", "Today" : "Oe", "Day" : "Die", "Week" : "Chida", "Month" : "Mese", + "Year" : "Annu", "List" : "Lista", "Preview" : "Anteprima", "Copy link" : "Còpia ligòngiu", "Edit" : "Modìfica", "Delete" : "Cantzella", - "Untitled calendar" : "Calendàriu chene tìtulu", - "Edit name" : "Modìfica nùmene", - "Saving name …" : "Sarvende su nùmene …", - "Edit color" : "Modìfica su colore", - "Saving color …" : "Sarvende su colore …", - "Copy private link" : "Còpia ligòngiu privadu", - "Export" : "Esporta", - "Unshare from me" : "Annulla sa cumpartzidura cun me", + "Create new" : "Crea un'archìviu nou", "An error occurred, unable to change visibility of the calendar." : "B'at àpidu un'errore, no at fatu a cambiare sa visibilidade de su calendàriu.", - "An error occurred, unable to delete the calendar." : "B'at àpidu un'errore, no at fatu a cantzellare su calendàriu.", - "Calendar link copied to clipboard." : "Ligòngiu de su calendàriu copiadu in is apuntos.", - "Calendar link could not be copied to clipboard." : "No at fatu a copiare su ligòngiu de su calendàriu in is apuntos.", - "An error occurred, unable to rename the calendar." : "B'at àpidu un'errore, no at fatu a torrare a numenare su calendàriu.", - "An error occurred, unable to change the calendar's color." : "B'at àpidu un'errore, no at fatu a cambiare su colore de su calendàriu.", + "Untitled calendar" : "Calendàriu chene tìtulu", + "Shared with you by" : "Cumpartzidu cun tegus dae", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Annullamentu de sa cumpartzidura de su calendàriu intre {tempus} segundu","Annullamentu de sa cumpartzidura de su calendàriu intre {countdown} segundos"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Su calendàriu s'at a cantzellare intre {tempus} segundu","Su calendàriu s'at a cantzellare intre {countdown} segundos"], + "An error occurred, unable to create the calendar." : "B'at àpidu un'errore, no at fatu a creare su calendàriu.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Inserta unu ligòngiu vàlidu (chi cumintzet cun http://, https://, webcal://, o webcals://)", + "Calendars" : "Calendàrios", + "Add new" : "Agiunghe nou", + "New calendar" : "Calendàriu nou", + "Name for new calendar" : "Nùmene pro su calendàriu nou", + "Creating calendar …" : "Creende calendàriu …", + "New calendar with task list" : "Calendàriu nou cun lista de atividades", + "New subscription from link (read-only)" : "Sutaiscritzione noa dae ligòngiu (letura sola)", + "Creating subscription …" : "Creende sutascritzione …", + "Calendar link copied to clipboard." : "Ligòngiu de su calendàriu copiadu in is apuntos.", + "Calendar link could not be copied to clipboard." : "No at fatu a copiare su ligòngiu de su calendàriu in is apuntos.", + "Copy subscription link" : "Còpia ligòngiu de sutascritzione", + "Copying link …" : "Copiende su ligòngiu …", + "Copied link" : "Ligòngiu copiadu", + "Could not copy link" : "No at fatu a copiare su ligòngiu", + "Export" : "Esporta", + "Untitled item" : "Elementu chene tìtulu", + "Could not load deleted calendars and objects" : "No at fatu a carrigare is calendàrios e is ogetos cantzellados", + "Could not restore calendar or event" : "No at fatu a recuperare su calendàriu o s'eventu", + "Empty trash bin" : "Bòida s'àliga", + "Trash bin" : " Àliga", + "Name" : "Nùmene", + "Deleted" : "Cantzelladu", + "Restore" : "Riprìstina", + "Delete permanently" : "Cantzella in manera permanente", + "Could not update calendar order." : "No at fatu a agiornare s'òrdne de su calendàriu.", + "Deck" : "Deck", + "Hidden" : "Cuadu", + "Copy internal link" : "Còpia ligòngiu internu", + "An error occurred, unable to publish calendar." : "B'at àpidu un'errore, no at fatu a publicare su calendàriu.", + "An error occurred, unable to send email." : "B'at àpidu un'errore, no at fatu a imbiare su messàgiu de posta.", + "Embed code copied to clipboard." : "Su còdighe de insertada est istadu copiadu in punta de billete.", + "Embed code could not be copied to clipboard." : "No at fatu a copiare in punta de billete su còdighe de insertada.", + "Unpublishing calendar failed" : "No at fatu a annullare sa publicatzione de su calendàriu", "Share link" : "Cumpartzi ligòngiu", - "Publish calendar" : "Pùblica calendàriu", - "Publishing calendar" : "Publichende su calendàriu", "Copy public link" : "Còpia ligòngiu pùblicu", "Send link to calendar via email" : "Imbia ligòngiu pro su calendàriu tràmite posta eletrònica", "Enter one address" : "Inserta un'indiritzu", "Sending email …" : "Imbiende su messàgui de posta eletrònica …", - "Copy subscription link" : "Còpia ligòngiu de sutascritzione", - "Copying link …" : "Copiende su ligòngiu …", - "Copied link" : "Ligòngiu copiadu", - "Could not copy link" : "No at fatu a copiare su ligòngiu", "Copy embedding code" : "Còpia su còdighe de insertada", "Copying code …" : "Copiende su còdighe …", "Copied code" : "Còdighe copiadu", "Could not copy code" : "No at fatu a copiare su còdighe", "Delete share link" : "Cantzella ligòngiu de cumpartzidura", "Deleting share link …" : "Cantzellende su ligòngiu de cumpartzidura …", - "An error occurred, unable to publish calendar." : "B'at àpidu un'errore, no at fatu a publicare su calendàriu.", - "An error occurred, unable to send email." : "B'at àpidu un'errore, no at fatu a imbiare su messàgiu de posta.", - "Embed code copied to clipboard." : "Su còdighe de insertada est istadu copiadu in punta de billete.", - "Embed code could not be copied to clipboard." : "No at fatu a copiare in punta de billete su còdighe de insertada.", - "Unpublishing calendar failed" : "No at fatu a annullare sa publicatzione de su calendàriu", - "Share with users or groups" : "Cumpartzi cun utentes o grupos", - "No users or groups" : "Peruna utèntzia o grupu", + "An error occurred, unable to change the permission of the share." : "B'at àpidu un'errore, no at fatu a cambiare su permissu de cumpartzidura.", "can edit" : "podet modificare", "Unshare with {displayName}" : "Annulla sa cumpartzidura cun {displayName}", - "An error occurred, unable to change the unshare the calendar." : "B'at àpidu un'errore, no at fatu a cambiare s'annullamentu de cumpartzidura de su calendàriu.", - "An error occurred, unable to change the permission of the share." : "B'at àpidu un'errore, no at fatu a cambiare su permissu de cumpartzidura.", - "+ New calendar" : "+ Calendàriu nou", - "New calendar" : "Calendàriu nou", - "Creating calendar …" : "Creende calendàriu …", - "New calendar with task list" : "Calendàriu nou cun lista de atividades", - "New subscription from link (read-only)" : "Sutaiscritzione noa dae ligòngiu (letura sola)", - "Creating subscription …" : "Creende sutascritzione …", - "An error occurred, unable to create the calendar." : "B'at àpidu un'errore, no at fatu a creare su calendàriu.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Inserta unu ligòngiu vàlidu (chi cumintzet cun http://, https://, webcal://, o webcals://)", - "Trash bin" : " Àliga", - "Loading deleted elements." : "Carrighende is elementos cantzellados", - "You do not have any deleted elements." : "Non tenes elementos cantzellados.", - "Name" : "Nùmene", - "Deleted" : "Cantzelladu", - "Restore" : "Riprìstina", - "Delete permanently" : "Cantzella in manera permanente", - "Empty trash bin" : "Bòida s'àliga", - "Untitled element" : "Elementu chene tìtulu", - "Could not load deleted calendars and objects" : "No at fatu a carrigare is calendàrios e is ogetos cantzellados", - "Could not restore calendar or event" : "No at fatu a recuperare su calendàriu o s'eventu", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Is elementos de s'àliga s'ant a cantzellare tra {numDays} die","Is elementos de s'àliga s'ant a cantzellare tra {numDays} dies"], - "Could not update calendar order." : "No at fatu a agiornare s'òrdne de su calendàriu.", + "Share with users or groups" : "Cumpartzi cun utentes o grupos", + "No users or groups" : "Peruna utèntzia o grupu", + "Unshare from me" : "Annulla sa cumpartzidura cun me", + "Save" : "Sarva", "Import calendars" : "Importa calendàrios", "Please select a calendar to import into …" : "Seletziona unu calendàriu de importare in …", "Filename" : "Nùmene de s'archìviu", @@ -108,9 +107,7 @@ "Import partially failed. Imported {accepted} out of {total}." : "Parte de s'importatzione est andada male. Importados {accepted} de {total}.", "Automatic" : "Automàticu", "Automatic ({detected})" : "Automàticu ({detected})", - "New setting was not saved successfully." : "S'impostatzione noa no est istada sarvada in manera curreta.", - "Shortcut overview" : "Bista generale de is curtziadòrgiu", - "or" : "o", + "New setting was not saved successfully." : "Sa cunfiguratzione noa no est istada sarvada in manera curreta.", "Navigation" : "Navigatzione", "Previous period" : "Tempus in antis", "Next period" : "Tempus imbeniente", @@ -122,10 +119,14 @@ "Actions" : "Atziones", "Create event" : "Crea eventu", "Show shortcuts" : "Mustra curtziadòrgios", + "Shortcut overview" : "Bista generale de is curtziadòrgiu", + "or" : "o", + "No reminder" : "Perunu promemòria", + "CalDAV link copied to clipboard." : "Ligòngiu CalDAV copiadu in punta de billete.", + "CalDAV link could not be copied to clipboard." : "No at fatu a copiare su ligòngiu CalDAV in punta de billete.", "Enable birthday calendar" : "Ativa su calendàriu de cumpleannos", "Show tasks in calendar" : "Mustra atividades in su calendàriu", "Enable simplified editor" : "Ativa s'editore semplificadu", - "Limit visible events per view" : "Lìmita is eventos visìbiles pro vista", "Show weekends" : "Mustra fines de chida", "Show week numbers" : "Mustra nùmeru de chidas", "Time increments" : "Crèschidas de tempus", @@ -133,9 +134,7 @@ "Copy primary CalDAV address" : "Còpia s'indiritzu CalDAV printzipale", "Copy iOS/macOS CalDAV address" : "Còpia s'indiritzu CalDAV iOS/macOS", "Show keyboard shortcuts" : "Mustra curtziadòrgios de tecladu", - "No reminder" : "Perunu promemòria", - "CalDAV link copied to clipboard." : "Ligòngiu CalDAV copiadu in punta de billete.", - "CalDAV link could not be copied to clipboard." : "No at fatu a copiare su ligòngiu CalDAV in punta de billete.", + "Update" : "Agiorna", "Location" : "Positzione", "Description" : "Descritzione", "Visibility" : "Visibilidade", @@ -149,9 +148,12 @@ "Friday" : "Chenàbura", "Saturday" : "Sàbudu", "Sunday" : "Domìnigu", - "Save" : "Sarva", - "Update" : "Agiorna", "Your email address" : "Indiritzu tuo de posta eletrònica", + "Back" : "In segus", + "Create a new conversation" : "Crea una resonada noa", + "Select conversation" : "Seletziona resonada", + "on" : "allutu", + "at" : "a", "before at" : "antis de is", "Notification" : "Notìfica", "Email" : "Posta eletrònica", @@ -162,83 +164,77 @@ "Edit time" : "Modìfica ora", "Save time" : "Sarva ora", "Remove reminder" : "Boga•nche promemòria", - "on" : "allutu", - "at" : "a", - "+ Add reminder" : "+ Agiunghe promemòria", - "_second_::_seconds_" : ["segundu","segundos"], - "_minute_::_minutes_" : ["minutu","minutos"], - "_hour_::_hours_" : ["ora","oras"], - "_day_::_days_" : ["die","dies"], - "_week_::_weeks_" : ["chida","chidas"], + "seconds" : "segundos", + "minutes" : "minutos", + "hours" : "oras", + "days" : "dies", + "weeks" : "chidas", + "Choose a file to add as attachment" : "Sèbera un'archìviu de agiùnghere comente alligongiadu", + "Choose a file to share as a link" : "Sèbera un'archìviu de cumpartzire comente ligòngiu", + "Upload from device" : "Càrriga dae su dispositivu", + "Delete file" : "Cantzella archìviu", "Available" : "A disponimentu", "Not available" : "No a disponimentu", - "Availability of attendees, resources and rooms" : "Disponibilidade de partetzipantes, resursas e aposentos", "{organizer} (organizer)" : "{organizer} (chie organizat)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Disponibilidade de partetzipantes, resursas e aposentos", + "Out of office" : "Foras de serbìtziu", + "Attendees:" : "Partetzipadores:", + "Room name" : "Nùmene istantza", "Free" : "Lìberu", "Busy (tentative)" : "Ocupadu (intentu)", "Busy" : "Faghende cosa", - "Out of office" : "Foras de serbìtziu", "Unknown" : "Non connotu", "Accept" : "Atzeta", "Decline" : "Refuda", "Tentative" : "Intentu", - "Create Talk room for this event" : "Crea un'aposentu Talk pro custu eventu", - "Show busy times" : "Mustra oras ocupadas", "No attendees yet" : "Ancora peruna persone pro partetzipare", "Successfully appended link to talk room to description." : "Ligòngiu apicadu in manera curreta in sa descritzione de s'aposentu de cunversatzione", "Error creating Talk room" : "Errore in sa creatzione de s'aposentu Talk", - "Send email" : "Imbia messàgiu de posta eletrònica", + "Attendees" : "Partetzipantes", + "Remove group" : "Boga·nche grupu", + "Remove attendee" : "Boga•nche partetzipante", "Chairperson" : "Presidente", "Required participant" : "Persone netzessària", "Optional participant" : "Persone optzionale", "Non-participant" : "No partetzipante", - "Remove attendee" : "Boga•nche partetzipante", - "Search for emails, users or contacts" : "Chirca messàgios de posta, utentes o cuntatos", "No match found" : "Peruna currispondèntzia agatada", "(organizer)" : "(persona organizadora)", - "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Pro imbiare invitos e gestire respostas, [linkopen]agiunghe s'indiritzu tuo de posta eletrònica in is impostatziones personales[linkclose].", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Pro imbiare invitos e gestire respostas, [linkopen]agiunghe s'indiritzu tuo de posta eletrònica in sa cunfiguratzione personale[linkclose].", "Remove color" : "Boga colore", "Event title" : "Tìtulu de s'eventu", - "All day" : "Totu sa die", - "Cannot modify all-day setting for events that are part of a recurrence-set." : "No faghet a modificare s'impostatzione de totu sa die pro eventos chi sunt parte de una filera de atividades recurrentes", - "from {startDate}" : "dae {startDate}", - "from {startDate} at {startTime}" : "dae {startDate} a is {startTime}", - "to {endDate}" : "a {endDate}", - "to {endDate} at {endTime}" : "dae {endDate} a is {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "No faghet a modificare sa cunfiguratzione de totu sa die pro eventos chi sunt parte de una filera de atividades recurrentes", + "From" : "Dae", + "To" : "A", "Repeat" : "Repiti", - "End repeat" : "Acabba ripetitzione", - "Select to end repeat" : "Seletziona pro acabbare sa ripetitzione", + "_time_::_times_" : ["borta","bortas"], "never" : "mai", "on date" : "in data", "after" : "a pustis", - "_time_::_times_" : ["borta","bortas"], + "End repeat" : "Acabba ripetitzione", + "Select to end repeat" : "Seletziona pro acabbare sa ripetitzione", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Custu eventu est s'etzetzione de una filera de recurrèntzias. No ddi podes agiùnghere una règula de recurrèntzia.", "first" : "primu", - "third" : "de tres", - "fourth" : "de bator", - "fifth" : "de chimbe", - "second to last" : "penùltimu", - "last" : "ùltimu", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Is càmbios a sa règula de recurrèntzia s'ant a aplicare isceti a custa e a is occurrèntzias imbenientes.", "Repeat every" : "Repite cada", "By day of the month" : "Pro die de su mese", "On the" : "Su", + "_day_::_days_" : ["die","dies"], + "_week_::_weeks_" : ["chida","chidas"], "_month_::_months_" : ["mese","meses"], "_year_::_years_" : ["Annos","annos"], "weekday" : "die de fatu", "weekend day" : "die de fine de chida", + "Does not repeat" : "No se repitit", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Sa definitzione de recurrèntzia de custu eventu no est suportada dae Nextcloud in manera totale. Si modìficas is optziones de recurrèntzia, calecuna recurrèntzia s'at a pòdere pèrdere.", "No rooms or resources yet" : "Ancora peruna istantza o risorsa", + "Resources" : "Risorsas", "Remove resource" : "Boga·nche risorsa", "Search for resources or rooms" : "Chirca risorsas o istantzas", - "More" : "Àteru", - "Update this occurrence" : "Agiorna custa ocurrèntzia", "Update this and all future" : "Agiorna custa e is àteras imbenientes", + "Update this occurrence" : "Agiorna custa ocurrèntzia", "Public calendar does not exist" : "Su calendàriu pùblicu no esistit", "Maybe the share was deleted or has expired?" : "Mancai sa cumpartzidura est istada cantzellada o est iscadida?", - "Please select a time zone:" : "Sèbera unu fusu oràriu:", - "Pick a time" : "Sèbera una ora", - "Pick a date" : "Sèbera una data", "from {formattedDate}" : "dae {formattedDate}", "to {formattedDate}" : "a {formattedDate}", "on {formattedDate}" : "su {formattedDate}", @@ -248,27 +244,24 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} a is {formattedTime}", "Please enter a valid date" : "Inserta•nche una data bàlida", "Please enter a valid date and time" : "Inserta•nche una data e un'ora bàlidas", + "Please select a time zone:" : "Sèbera unu fusu oràriu:", + "Pick a time" : "Sèbera una ora", + "Pick a date" : "Sèbera una data", "Type to search time zone" : "Iscrire pro chircare fusu oràriu", "Global" : "Globale", + "Subscribed" : "Sutaiscritu", + "Subscribe" : "Sutaiscrie", "Time:" : "Tempus:", "Personal" : "Personale", - "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Sa rilevada automàtica de su fusu oràriu at determinadu ca su tuo est UTC.\nEst probàbile chi custu siat su resurtadu de calecuna mesura de seguridade de su navigadore tuo.\nImposta su fusu oràriu tuo a manu in is impostatziones de su calendàriu.", - "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Su fusu oràriu cunfiguradu ({timezoneId}) no est istadu agatadu. Torro a s'UTC.\nCàmbia su fusu oràriu tuo in is impostatziones e signala custu problema.", - "No more events today" : "No b'at àteros eventos oe", - "No upcoming events" : "Perunu eventu abarradu", - "Create a new event" : "Crea un'eventu nou", - "[Today]" : "[Oe]", - "[Tomorrow]" : "[Cras]", - "[Yesterday]" : "[Eris]", - "[Last] dddd" : "[Ùrtimu] dddd", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Sa rilevada automàtica de su fusu oràriu at determinadu ca su tuo est UTC.\nEst probàbile chi custu siat su resurtadu de calicuna mesura de seguridade de su navigadore tuo.\nCunfigura su fusu oràriu tuo a manu in sa cunfiguratzione de su calendàriu.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Su fusu oràriu cunfiguradu ({timezoneId}) no est istadu agatadu. Torro a s'UTC.\nCàmbia su fusu oràriu tuo in sa cunfiguratzione e signala custu problema.", "Event does not exist" : "S'eventu no esistit", "Delete this occurrence" : "Cantzella custa ocurrèntzia", "Delete this and all future" : "Cantzella custa e is àteras imbenientes", - "Details" : "Detàllios", - "Attendees" : "Partetzipantes", - "Resources" : "Risorsas", + "All day" : "Totu sa die", + "Invite" : "Invita", + "Untitled event" : "Eventu chene tìtulu", "Close" : "Serra", - "Show more details" : "Mustra àteros detàllios", "Subscribe to {name}" : "Sutaiscrie a {name}", "Anniversary" : "Anniversàriu", "Appointment" : "Apuntamentu", @@ -297,7 +290,6 @@ "on {time}" : "a is {time} ", "on {time} ({timezoneId})" : "a is {time} ({timezoneId})", "Week {number} of {year}" : "Chida {number} de {year}", - "Does not repeat" : "No se repitit", "Daily" : "Ogni die", "Weekly" : "Ogni chida", "Monthly" : "Ogni mese", @@ -309,18 +301,17 @@ "_on {weekday}_::_on {weekdays}_" : ["su {weekday}","su {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["sa die {dayOfMonthList}","is dies {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "su {ordinalNumber} {byDaySet}", - "in {monthNames}" : "in {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "in {monthNames} su {ordinalNumber} {byDaySet}", "until {untilDate}" : "finas a {untilDate}", "_%n time_::_%n times_" : ["%n borta","%n bortas"], - "Untitled event" : "Eventu chene tìtulu", + "second" : "segundu", + "third" : "de tres", + "fourth" : "de bator", + "fifth" : "de chimbe", + "second to last" : "penùltimu", + "last" : "ùltimu", "Untitled task" : "Atividade chene tìtulu", "Please ask your administrator to enable the Tasks App." : "Pedi a s'amministratzione de ativare sa Task App.", - "Prev" : "Ant.", - "Next" : "Imbeniente", - "Prev year" : "Annu antis", - "Next year" : "Annu pustis", - "Year" : "Annu", "W" : "C", "%n more" : "%n in prus", "No events to display" : "Perunu eventu de mustrare", @@ -336,7 +327,6 @@ "When shared hide this event" : "Cando si cumpartzit, cua custu eventu", "The visibility of this event in shared calendars." : "Sa visibilidade de custu eventu in is calendàrios cumpartzidos", "Add a location" : "Agiunghe una positzione", - "Add a description" : "Agiunghe una descritzione", "Status" : "Istadu", "Confirmed" : "Cunfirmadu", "Canceled" : "Annulladu", @@ -349,100 +339,11 @@ "Add this as a new category" : "Agiunghe custa comente categoria noa", "Custom color" : "Personaliza colore", "Special color of this event. Overrides the calendar-color." : "Colore ispetziale de custu eventu. Ignora su colore de su calendàriu.", - "Chat room for event" : "Aposentu pro is tzarradas de s'eventu", + "Error while sharing file" : "Errore in sa cumpartzidura de s'archìviu", + "An error occurred, unable to delete the calendar." : "B'at àpidu un'errore, no at fatu a cantzellare su calendàriu.", "Imported {filename}" : "Importadu {filename}", - "Meditation" : "Meditatzione", - "Relaxing" : "Pausende", - "Relax" : "Pàusu", - "Commuting" : "Biagende", - "Invoice" : "Fatura", - "Presentation" : "Presentatzione", - "Talk" : "Faedda", - "Camping" : "Campègiu", - "Camp" : "S'acampare", - "Movie" : "Film", - "Cinema" : "Tzìnema", - "Graduation" : "Làurea", - "Brainstorm" : "Piòida de ideas", - "Review" : "Revisiona", - "Baseball" : "Baseball", - "Meet" : "Atobiare", - "Planning" : "Pianificatzione", - "Pointing" : "Indicatzione", - "Retrospective" : "Retrospetiva", - "Office" : "Ofìtziu", - "Contributor week" : "Chida de sa collaboratzione", - "Mail" : "Posta ", - "Soccer" : "Fùbalu", - "Football" : "Fùbalu", - "Gaming" : "Vìdeogiogos", - "Drive" : "Ghiare", - "Driving" : "Guida", - "Bicycle" : "Bicicleta", - "Cycle" : "Pedalare", - "Biking" : "Pedalende", - "Bike" : "Bici", - "Podcast" : "Podcast", - "Basketball" : "Basket", - "Fishing" : "Piscare", - "Hiking" : "Camminada", - "Hike" : "Camminare", - "Art" : "Arte", - "Exhibition" : "Esibitzione", - "Museum" : "Museu", - "Pilates" : "Pilates", - "Park" : "Parcu", - "Studying" : "Istudiare", - "Doctor" : "Dotore", - "Health" : "Salude", - "Dentist" : "Dentista", - "Hospital" : "Ispidale", - "Interview" : "Intervista", - "Training" : "Allenare", - "Practice" : "Praticare", - "Sports" : "Sport", - "Exercise" : "Esertzìtziu", - "Work out" : "Allenamentu", - "Working out" : "S'allenare", - "Gym" : "Palestra", - "Barber" : "Barberi", - "Haircut" : "Segada de pilos", - "Exam" : "Esame", - "Working" : "Traballare", - "New Years Eve" : "Annunou", - "NYE" : "Annunou", - "Fireworks" : "Isparadòrgiu", - "Running" : "Cùrrere", - "Go for a run" : "Andare a cùrrere", - "Marathon" : "Maratona", - "Video-conference" : "Vìdeo-cunferèntzia", - "Conference-call" : "Mutida in cunferèntzia", - "Video-call" : "Mutida de vìdeu", - "Video-chat" : "Tzarrada de vìdeu", - "Video-meeting" : "Addòbiu de vìdeu", - "Call" : "Mutida", - "Calling" : "Tzerriende", - "Christmas" : "Paschighedda", - "Conference" : "Cunferèntzia", - "Pizza" : "Pitza", - "Travelling" : "Viagiare", - "Journey" : "Viàgiu", - "Collaborate" : "Collaborare", - "Pair" : "Croba", - "Lecture" : "Letura", - "Seminar" : "Seminàriu", - "Photograph" : "Fotografia", - "Party" : "Festa", - "Celebration" : "Afestare", - "Celebrate" : "Afestare", - "Birthday" : "Cumpleannu", - "Shopping" : "Còmporas", - "Skate" : "Skate", - "Skateboard" : "Tàula de skate", - "Wine tasting" : "Tastare binu", - "Golf" : "Golf", - "Dinner" : "Chena", - "Lunch" : "Pràngiu", - "User not found" : "Utèntzia no agatada" + "User not found" : "Utèntzia no agatada", + "+ Add reminder" : "+ Agiunghe promemòria", + "Details" : "Detàllios" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/si.js b/l10n/si.js index 048e2b0cb748528a15f4f998eed3b7e3e5219023..21788371ff071c96d457c8062f48b030dcea8098 100644 --- a/l10n/si.js +++ b/l10n/si.js @@ -5,11 +5,11 @@ OC.L10N.register( "Provided email-address is not valid" : "සපයා ඇති විද්‍යුත් තැපැල් ලිපිනය වලංගු නොවේ", "Hello," : "ආයුබෝවන්,", "Cheers!" : "ජයවේවා!", + "Calendar" : "දින දර්ශනය", "Confirm" : "තහවුරු කරන්න", + "Description:" : "විස්තරය", "Date:" : "දිනය:", "Where:" : "කොහේද:", - "Description:" : "විස්තරය", - "Calendar" : "දින දර්ශනය", "A Calendar app for Nextcloud" : "නෙක්ස්ට් ක්ලවුඩ් සඳහා දින දර්ශන යෙදුමකි", "Previous day" : "පසුගිය දිනය", "Previous week" : "පසුගිය සතිය", @@ -21,21 +21,19 @@ OC.L10N.register( "Day" : "දිනය", "Week" : "සතිය", "Month" : "මාසය", + "Year" : "වර්ෂය", "List" : "ලැයිස්තුව", "Preview" : "පෙරදසුන", "Copy link" : "සබැඳිය පිටපත් කරන්න", "Edit" : "සංස්කරණය", "Untitled calendar" : "නිර්ණාමික දින දර්ශනය", - "Edit name" : "නම සංස්කරණය", - "Saving name …" : "සුරැකීමේ වර්ණය …", - "Edit color" : "වර්ණය සංස්කරණය", - "Saving color …" : "සුරැකීමේ වර්ණය …", - "Copy private link" : "පුද්. සබැඳිය පිටපත් කරන්න", "Name" : "නම", "Restore" : "ප්‍රතිෂ්ථාපනය", + "Save" : "සුරකින්න", "Filename" : "ගොනු නාමය", "Cancel" : "අවලංගු කරන්න", "Actions" : "ක්‍රියාමාර්ග", + "Update" : "යාවත්කාල", "Location" : "ස්ථානය", "Description" : "විස්තරය", "Duration" : "කාල සීමාව", @@ -47,26 +45,20 @@ OC.L10N.register( "Friday" : "සිකුරාදා", "Saturday" : "සෙනසුරාදා", "Sunday" : "ඉරිදා", - "Save" : "සුරකින්න", - "Update" : "යාවත්කාල", + "Back" : "ආපසු", "Email" : "විද්‍යුත් තැපෑල", "Available" : "ඇත", "Busy" : "කාර්යබහුලයි", "Unknown" : "නොදන්නා", "Accept" : "පිළිගන්න", "Decline" : "ප්‍රතික්ෂේප", - "More" : "තව", "Time:" : "වේලාව:", "Personal" : "පුද්ගලික", - "Details" : "විස්තර", "Close" : "වසන්න", "Anniversary" : "සංවත්සරය", "Daily" : "දිනපතා", "Weekly" : "සතිපතා", - "Next" : "ඊළඟ", - "Year" : "වර්ෂය", "Other" : "වෙනත්", - "Mail" : "තැපෑල", - "Birthday" : "උපන් දිනය" + "Details" : "විස්තර" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/si.json b/l10n/si.json index 685864aaae1e077f13656e494dcffcad0ffaccfe..43dad23064d44529eddd3e5e48af03c98d9da997 100644 --- a/l10n/si.json +++ b/l10n/si.json @@ -3,11 +3,11 @@ "Provided email-address is not valid" : "සපයා ඇති විද්‍යුත් තැපැල් ලිපිනය වලංගු නොවේ", "Hello," : "ආයුබෝවන්,", "Cheers!" : "ජයවේවා!", + "Calendar" : "දින දර්ශනය", "Confirm" : "තහවුරු කරන්න", + "Description:" : "විස්තරය", "Date:" : "දිනය:", "Where:" : "කොහේද:", - "Description:" : "විස්තරය", - "Calendar" : "දින දර්ශනය", "A Calendar app for Nextcloud" : "නෙක්ස්ට් ක්ලවුඩ් සඳහා දින දර්ශන යෙදුමකි", "Previous day" : "පසුගිය දිනය", "Previous week" : "පසුගිය සතිය", @@ -19,21 +19,19 @@ "Day" : "දිනය", "Week" : "සතිය", "Month" : "මාසය", + "Year" : "වර්ෂය", "List" : "ලැයිස්තුව", "Preview" : "පෙරදසුන", "Copy link" : "සබැඳිය පිටපත් කරන්න", "Edit" : "සංස්කරණය", "Untitled calendar" : "නිර්ණාමික දින දර්ශනය", - "Edit name" : "නම සංස්කරණය", - "Saving name …" : "සුරැකීමේ වර්ණය …", - "Edit color" : "වර්ණය සංස්කරණය", - "Saving color …" : "සුරැකීමේ වර්ණය …", - "Copy private link" : "පුද්. සබැඳිය පිටපත් කරන්න", "Name" : "නම", "Restore" : "ප්‍රතිෂ්ථාපනය", + "Save" : "සුරකින්න", "Filename" : "ගොනු නාමය", "Cancel" : "අවලංගු කරන්න", "Actions" : "ක්‍රියාමාර්ග", + "Update" : "යාවත්කාල", "Location" : "ස්ථානය", "Description" : "විස්තරය", "Duration" : "කාල සීමාව", @@ -45,26 +43,20 @@ "Friday" : "සිකුරාදා", "Saturday" : "සෙනසුරාදා", "Sunday" : "ඉරිදා", - "Save" : "සුරකින්න", - "Update" : "යාවත්කාල", + "Back" : "ආපසු", "Email" : "විද්‍යුත් තැපෑල", "Available" : "ඇත", "Busy" : "කාර්යබහුලයි", "Unknown" : "නොදන්නා", "Accept" : "පිළිගන්න", "Decline" : "ප්‍රතික්ෂේප", - "More" : "තව", "Time:" : "වේලාව:", "Personal" : "පුද්ගලික", - "Details" : "විස්තර", "Close" : "වසන්න", "Anniversary" : "සංවත්සරය", "Daily" : "දිනපතා", "Weekly" : "සතිපතා", - "Next" : "ඊළඟ", - "Year" : "වර්ෂය", "Other" : "වෙනත්", - "Mail" : "තැපෑල", - "Birthday" : "උපන් දිනය" + "Details" : "විස්තර" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/sk.js b/l10n/sk.js index c138904636c45be315f553b3d4a3aef3ac981162..181081505928c78363371a9aed40faf806a056d8 100644 --- a/l10n/sk.js +++ b/l10n/sk.js @@ -1,8 +1,9 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Zadaná e-mailová adresa je príliš dlhá", "User-Session unexpectedly expired" : "Používateľská relácia sa neočakávane prerušila", - "Provided email-address is not valid" : "Zadaná adresa e-mailu nie je platná", + "Provided email-address is not valid" : "Zadaná e-mailová adresa je neplatná", "%s has published the calendar »%s«" : "Používateľ %s zverejnil kalendár %s", "Unexpected error sending email. Please contact your administrator." : "Neočakávaná chyba počas odosielania e-mailu. Obráťte sa na správcu", "Successfully sent email to %1$s" : "E-mail bol úspešne odoslaný pre %1$s", @@ -11,125 +12,161 @@ OC.L10N.register( "Open »%s«" : "Otvoriť »%s«", "Cheers!" : "Pekný deň!", "Upcoming events" : "Nadchádzajúce udalosti", + "No more events today" : "Dnes žiadne ďalšie udalosti", + "No upcoming events" : "Žiadne nadchádzajúce udalosti", + "More events" : "Viac udalostí", + "%1$s with %2$s" : "%1$s s %2$s", + "Calendar" : "Kalendár", + "New booking {booking}" : "Nová rezervácia {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) rezervoval(a) stretnutie \"{config_display_name}\" dňa {date_time}.", "Appointments" : "Stretnutia", "Schedule appointment \"%s\"" : "Naplánovať stretnutie \"%s\"", "Schedule an appointment" : "Naplánovať stretnutie", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Pripraviť na %s", "Follow up for %s" : "Sledovať pre %s", - "Your appointment \"%s\" needs confirmation" : "Vaše stretnutie „%s“ vyžaduje potvrdenie", + "Your appointment \"%s\" with %s needs confirmation" : "Vaše stretnutie „%s“ s %s vyžaduje potvrdenie", "Dear %s, please confirm your booking" : "Vážený %s, potvrďte svoju rezerváciu", "Confirm" : "Potvrdiť", + "Appointment with:" : "Stretnutie s:", + "Description:" : "Popis:", "This confirmation link expires in %s hours." : "Platnosť tohto potvrdzovacieho odkazu vyprší o %s hodín.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Ak by ste predsa len chceli stretnutie zrušiť, kontaktujte svojho organizátora.", - "Appointment:" : "Stretnutie:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Ak predsa len chcete stretnutie zrušiť, kontaktujte organizátora odpoveďou na tento e-mail alebo návštevou jeho profilovej stránky.", + "Your appointment \"%s\" with %s has been accepted" : "Vaše stretnutie „%s“ s %s bolo potvrdené", + "Dear %s, your booking has been accepted." : "Vážený/á %s, vaša rezervácia bola prijatá.", + "Appointment for:" : "Termín pre:", "Date:" : "Dátum:", + "You will receive a link with the confirmation email" : "Dostanete odkaz s potvrzovacím e-mailom", "Where:" : "Kde:", - "Description:" : "Popis:", - "Calendar" : "Kalendár", + "Comment:" : "Komentár.", + "You have a new appointment booking \"%s\" from %s" : "Máte novú rezerváciu stretnutia \"%s\" od %s", + "Dear %s, %s (%s) booked an appointment with you." : "Vážený/á %s, %s (%s) si u vás objednal stretnutie.", "A Calendar app for Nextcloud" : "Aplikácia Kalendár pre Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aplikácia Kalendár je užívateľské rozhranie pre server CalDAV spoločnosti Nextcloud. Jednoducho synchronizujte udalosti z rôznych zariadení s Nextcloud a upravujte ich online.\n\n* 🚀 **Integrácia s ďalšími aplikáciami Nextcloud! ** V súčasnosti Kontakty - prídu ďalšie.\n* 🌐 ** Podpora WebCal! ** Chcete vidieť zápasy svojho obľúbeného tímu v kalendári? Žiadny problém!\n* 🙋 ** Účastníci! ** Pozvite ľudí na vaše udalosti\n* ⌚️ ** Voľný/Zaneprázdený** Pozrite sa, kedy sa môžu vaši účastníci stretnúť\n* ⏰ ** Pripomienky! ** Získajte upozornenia na udalosti vo vašom prehliadači a prostredníctvom e-mailu.\n* 🙈 ** Nebudeme znovu objavovať koleso! ** Na základe vyborných knižníc [c-dav] (https://github.com/nextcloud/cdav-library), [ical.js] (https: // github. com / mozilla-comm / ical.js) a [fullcalendar] (https://github.com/fullcalendar/fullcalendar).", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aplikácia Kalendár pre Nextcloud. Jednoducho synchronizujte udalosti z rôznych zariadení s vaším Nextcloudom a upravujte ich online.\n\n* 🚀 **Integrácia s inými aplikáciami Nextcloud!** Ako Kontakty, Talk, Úlohy, Deck a Kruhy\n* 🌐 **Podpora WebCal!** Chcete vidieť zápasy svojho obľúbeného tímu v kalendári? Žiadny problém!\n* 🙋 **Účastníci!** Pozvite ľudí na svoje udalosti\n* ⌚ **Voľný/Zaneprázdnený!** Pozrite sa, kedy sú vaši účastníci k dispozícii na stretnutie\n* ⏰ **Pripomienky!** Získajte upozornenia na udalosti priamo v prehliadači a prostredníctvom e-mailu\n* 🔍 **Vyhľadávanie!** Nájdite svoje udalosti v pohodlí\n* ☑️ **Úlohy!** Pozrite si úlohy alebo karty balíčkov s dátumom dokončenia priamo v kalendári\n* 🔈 **Diskusné miestnosti!** Vytvorte priradenú diskusnú miestnosť pri rezervácii stretnutia jediným kliknutím\n* 📆 **Rezervácia stretnutia** Pošlite ľuďom odkaz, aby si mohli rezervovať stretnutie s vami [pomocou tejto aplikácie](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Prílohy!** Pridávajte, nahrávajte a zobrazujte prílohy udalostí\n* 🙈 **Nevynájdeme koleso!** Na základe skvelého [c-dav knižnice](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) a [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Predchádzajúci deň", "Previous week" : "Predchádzajúci týždeň", + "Previous year" : "Minulý rok", "Previous month" : "Predchádzajúci mesiac", "Next day" : "Nasledujúci deň", "Next week" : "Nasledujúci týždeň", + "Next year" : "Nasledujúci rok", "Next month" : "Nasledujúci mesiac", - "New event" : "Nová udalosť", + "Create new event" : "Vytvoriť novú udalosť", + "Event" : "Udalosť", "Today" : "Dnes", "Day" : "Deň", "Week" : "Týždeň", "Month" : "Mesiac", + "Year" : "Rok", "List" : "Zoznam", + "Appointment link was copied to clipboard" : "Odkaz na stretnutie bol skopírovaný do schránky", + "Appointment link could not be copied to clipboard" : "Odkaz na stretnutie nemohol byť skopírovaný do schránky", "Preview" : "Náhľad", "Copy link" : "Kopírovať odkaz", "Edit" : "Upraviť", "Delete" : "Zmazať", - "Appointment link was copied to clipboard" : "Odkaz na stretnutie bol skopírovaný do schránky", - "Appointment link could not be copied to clipboard" : "Odkaz na stretnutie nemohol byť skopírovaný do schránky", - "Add new" : "Pridať nový", - "Untitled calendar" : "Kalendár bez názvu", - "Edit name" : "Upraviť názov", - "Saving name …" : "Ukladanie názvu …", - "Edit color" : "Upraviť farbu", - "Saving color …" : "Ukladanie farby …", - "Copy private link" : "Kopírovať privátny odkaz", - "Export" : "Export", - "Unshare from me" : "Zrušiť zdieľanie so mnou", + "Appointment schedules" : "Harmonogramy stretnutí", + "Create new" : "Vytvoriť nový", + "Disable calendar \"{calendar}\"" : "Zakázať kalendár „{calendar}“", + "Disable untitled calendar" : "Zakázať nepomenovaný kalendár", + "Enable calendar \"{calendar}\"" : "Povoliť kalendár „{calendar}“", + "Enable untitled calendar" : "Povoliť nepomenovaný kalendár", "An error occurred, unable to change visibility of the calendar." : "Vyskytla sa chyba, nie je možné zmeniť viditeľnosť kalendára.", - "An error occurred, unable to delete the calendar." : "Vyskytla sa chyba, nie je možné zmazať kalendár.", - "Calendar link copied to clipboard." : "Odkaz na kalendár skopírovaný do schránky.", - "Calendar link could not be copied to clipboard." : "Odkaz na kalendár nebolo možné skopírovať do schránky.", - "An error occurred, unable to rename the calendar." : "Vyskytla sa chyba, nie je možné premenovať kalendár.", - "An error occurred, unable to change the calendar's color." : "Vyskytla sa chyba, nie je možné zmeniť farbu kalendára.", + "Untitled calendar" : "Kalendár bez názvu", + "Shared with you by" : "Sprístupnené vám používateľom", + "Edit and share calendar" : "Upraviť a zdieľať kalendár", + "Edit calendar" : "Upraviť kalendár", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Zdieľanie kalendára bude zmazané za {countdown} sekundu","Zdieľanie kalendára bude zmazané za {countdown} sekundy","Zdieľanie kalendára bude zmazané za {countdown} sekúnd","Zdieľanie kalendára bude zmazané za {countdown} sekúnd"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Kalendár bude zmazaný za {countdown} sekundu","Kalendár bude zmazaný za {countdown} sekundy","Kalendár bude zmazaný za {countdown} sekúnd","Kalendár bude zmazaný za {countdown} sekúnd"], - "Share link" : "Sprístupniť odkaz", - "Publish calendar" : "Zverejniť kalendár", - "Publishing calendar" : "Zverejňovať kalendár", - "Copy public link" : "Kopírovať verejný odkaz", - "Send link to calendar via email" : "Odoslať odkaz na kalendár emailom", - "Enter one address" : "Zadajte jednu adresu", - "Sending email …" : "Odosielanie e-mailu …", - "Copy subscription link" : "Kopírovať odkaz na odber", - "Copying link …" : "Kopírovanie odkazu …", - "Copied link" : "Kopírovaný odkaz", - "Could not copy link" : "Nie je možné skopírovať odkaz", - "Copy embedding code" : "Kopírovať vložený kód", - "Copying code …" : "Kopírovanie kódu …", - "Copied code" : "Skopírovaný kód", - "Could not copy code" : "Nie je možné skopírovať kód", - "Delete share link" : "Zmazať sprístupnený odkaz", - "Deleting share link …" : "Mazanie odkazu pre sprístupnenie …", - "An error occurred, unable to publish calendar." : "Vyskytla sa chyba, nie je možné zverejniť kalendár.", - "An error occurred, unable to send email." : "Vyskytla sa chyba, nepodarilo sa odoslať e-mail.", - "Embed code copied to clipboard." : "Vložený kód skopírovaný do schránky", - "Embed code could not be copied to clipboard." : "Vložený kód nebolo možné skopírovať do schránky.", - "Unpublishing calendar failed" : "Zrušenie zverejnenia kalendára zlyhalo", - "Share with users or groups" : "Sprístupniť používateľom alebo skupinám", - "No users or groups" : "Žiadni používatelia alebo skupiny", - "can edit" : "môže upraviť", - "Unshare with {displayName}" : "Zrušiť zdieľanie s {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Vyskytla sa chyba, nie je možné zmeniť zdieľanie kalendára.", - "An error occurred, unable to change the permission of the share." : "Vyskytla sa chyba, nie je možné zmeniť práva na zdieľanie kalendára.", - "+ New calendar" : "+ Nový kalendár", + "An error occurred, unable to create the calendar." : "Vyskytla sa chyba, nie je možné vytvoriť kalendár.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vkladajte platné odkazy (musia sa začínať http://, https://, webcal:// alebo webcals://)", + "Calendars" : "Kalendáre", + "Add new" : "Pridať nový", "New calendar" : "Nový kalendár", "Name for new calendar" : "Názov nového kalendára", "Creating calendar …" : "Vytváranie kalendára …", "New calendar with task list" : "Nový kalendár so zoznamom úloh", "New subscription from link (read-only)" : "Nový odber z odkazu (iba na čítanie)", "Creating subscription …" : "Vytvára sa odber …", - "An error occurred, unable to create the calendar." : "Vyskytla sa chyba, nie je možné vytvoriť kalendár.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vkladajte platné odkazy (musia sa začínať http://, https://, webcal:// alebo webcals://)", + "Add public holiday calendar" : "Pridať kalendár verejných sviatokov", + "Add custom public calendar" : "Pridať vlastný verejný kalendár", + "Calendar link copied to clipboard." : "Odkaz na kalendár skopírovaný do schránky.", + "Calendar link could not be copied to clipboard." : "Odkaz na kalendár nebolo možné skopírovať do schránky.", + "Copy subscription link" : "Kopírovať odkaz na odber", + "Copying link …" : "Kopírovanie odkazu …", + "Copied link" : "Kopírovaný odkaz", + "Could not copy link" : "Nie je možné skopírovať odkaz", + "Export" : "Export", + "Untitled item" : "Položka bez názvu", + "Unknown calendar" : "Neznámy kalendár", + "Could not load deleted calendars and objects" : "Nie je možné načítať zmazané kalendáre a objekty", + "Could not delete calendar or event" : "Nie je možné vymazať kalendár alebo udalosť", + "Could not restore calendar or event" : "Nie je možné obnoviť kalendár alebo udalosť", + "Do you really want to empty the trash bin?" : "Naozaj chcete vyprázdniť kôš?", + "Empty trash bin" : "Vyprázdniť kôš", "Trash bin" : "Kôš", - "Loading deleted elements." : "Nahrávam zmazané elementy.", - "You do not have any deleted elements." : "Nemáte žiadne zmazané elementy.", + "Loading deleted items." : "Nahrávam zmazané položky.", + "You do not have any deleted items." : "Nemáte žiadne zmazané položky.", "Name" : "Názov", "Deleted" : "Zmazané", "Restore" : "Obnoviť", "Delete permanently" : "Zmazať natrvalo", - "Empty trash bin" : "Vyprázdniť kôš", - "Untitled element" : "Prvok bez názvu", - "Unknown calendar" : "Neznámy kalendár", - "Could not load deleted calendars and objects" : "Nie je možné načítať zmazané kalendáre a objekty", - "Could not restore calendar or event" : "Nie je možné obnoviť kalendár alebo udalosť", - "Do you really want to empty the trash bin?" : "Naozaj chcete vyprázdniť kôš?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Položky v odpadkovom koši budú odstránené po {numDays} dni","Položky v odpadkovom koši budú odstránené po {numDays} dňoch","Položky v odpadkovom koši budú odstránené po {numDays} dňoch","Položky v odpadkovom koši budú odstránené po {numDays} dňoch"], + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Položky v odpadkovom koši budú odstránené po {numDays} dni","Položky v odpadkovom koši budú odstránené po {numDays} dňoch","Položky v odpadkovom koši budú odstránené po {numDays} dňoch","Položky v odpadkovom koši budú odstránené po {numDays} dňoch"], "Could not update calendar order." : "Poradie kalendára sa nepodarilo aktualizovať.", + "Shared calendars" : "Zdieľané kalendáre", + "Deck" : "Nástenka", + "Hidden" : "Skryté", + "Internal link" : "Interný odkaz", + "A private link that can be used with external clients" : "Súkromný odkaz, ktorý môže byť použitý s externými klientmi.", + "Copy internal link" : "Kopírovať interný odkaz", + "An error occurred, unable to publish calendar." : "Vyskytla sa chyba, nie je možné zverejniť kalendár.", + "An error occurred, unable to send email." : "Vyskytla sa chyba, nepodarilo sa odoslať e-mail.", + "Embed code copied to clipboard." : "Vložený kód skopírovaný do schránky", + "Embed code could not be copied to clipboard." : "Vložený kód nebolo možné skopírovať do schránky.", + "Unpublishing calendar failed" : "Zrušenie zverejnenia kalendára zlyhalo", + "Share link" : "Sprístupniť odkaz", + "Copy public link" : "Kopírovať verejný odkaz", + "Send link to calendar via email" : "Odoslať odkaz na kalendár emailom", + "Enter one address" : "Zadajte jednu adresu", + "Sending email …" : "Odosielanie e-mailu …", + "Copy embedding code" : "Kopírovať vložený kód", + "Copying code …" : "Kopírovanie kódu …", + "Copied code" : "Skopírovaný kód", + "Could not copy code" : "Nie je možné skopírovať kód", + "Delete share link" : "Zmazať sprístupnený odkaz", + "Deleting share link …" : "Mazanie odkazu pre zdieľanie …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Tím)", + "An error occurred while unsharing the calendar." : "Počas rušenia zdieľania kalendára sa vyskytla chyba.", + "An error occurred, unable to change the permission of the share." : "Vyskytla sa chyba, nie je možné zmeniť práva na zdieľanie kalendára.", + "can edit" : "môže upraviť", + "Unshare with {displayName}" : "Zrušiť zdieľanie s {displayName}", + "Share with users or groups" : "Sprístupniť používateľom alebo skupinám", + "No users or groups" : "Žiadni používatelia alebo skupiny", + "Failed to save calendar name and color" : "Nepodarilo sa uložiť názov kalendára a jeho farbu.", + "Calendar name …" : "Názov kalendára ...", + "Never show me as busy (set this calendar to transparent)" : "Nikdy ma nezobrazovať ako zaneprázdneného (nastaviť tento kalendár na priehľadný)", + "Share calendar" : "Zdieľať kalendár", + "Unshare from me" : "Zrušiť zdieľanie so mnou", + "Save" : "Uložiť", "Import calendars" : "Import kalendára", "Please select a calendar to import into …" : "Vyberte kalendár do ktorého importovať …", "Filename" : "Názov súboru", "Calendar to import into" : "Kalendár na import do ...", "Cancel" : "Zrušiť", "_Import calendar_::_Import calendars_" : ["Import kalendára","Import kalendárov","Import kalendárov","Import kalendárov"], + "Select the default location for attachments" : "Vyberte predvolené umiestnenie príloh", + "Pick" : "Vybrať", + "Invalid location selected" : "Bolo vybrané neplatné umiestnenie", + "Attachments folder successfully saved." : "Adresár príloh úspešne uložený.", + "Error on saving attachments folder." : "Chyba pri ukladaní adresára príloh.", + "Default attachments location" : "Predvolené umiestnenie príloh", "{filename} could not be parsed" : "{filename} nie je možné spracovať", "No valid files found, aborting import" : "Nenašli sa žiadne platné súbory, import sa prerušuje", - "Import partially failed. Imported {accepted} out of {total}." : "Import čiastočne zlyhal. Importované {accepted} z {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Úspešne naimportovaná %n udalosť","Úspešne naimportované %n udalosti","Úspešne naimportovaných %n udalostí","Úspešne naimportovaných %n udalostí"], + "Import partially failed. Imported {accepted} out of {total}." : "Import čiastočne zlyhal. Importované {accepted} z {total}.", "Automatic" : "Automaticky", "Automatic ({detected})" : "Automaticky ({detected})", "New setting was not saved successfully." : "Nové nastavenie nebolo možné uložiť.", - "Shortcut overview" : "Stručný prehľad", - "or" : "alebo", "Navigation" : "Navigácia", "Previous period" : "Predchádzajúce obdobie", "Next period" : "Nadchádzajúce obdobie", @@ -137,6 +174,7 @@ OC.L10N.register( "Day view" : "Denné zobrazenie", "Week view" : "Týždenné zobrazenie", "Month view" : "Mesačné zobrazenie", + "Year view" : "Ročný pohľad", "List view" : "Zobraziť ako zoznam", "Actions" : "Akcie", "Create event" : "Vytvoriť udalosť", @@ -146,23 +184,29 @@ OC.L10N.register( "Save edited event" : "Uložiť upravenú udalosť", "Delete edited event" : "Zmazať upravenú udalosť", "Duplicate event" : "Duplicitná udalosť", + "Shortcut overview" : "Stručný prehľad", + "or" : "alebo", + "Calendar settings" : "Nastavenia kalendára", + "At event start" : "Na začiatku udalosti", + "No reminder" : "Žiadna pripomienka", + "Failed to save default calendar" : "Nepodarilo sa uložiť predvolený kalendár.", + "CalDAV link copied to clipboard." : "Odkaz CalDAV skopírovaný do schránky.", + "CalDAV link could not be copied to clipboard." : "Odkaz CalDAV nebolo možné skopírovať do schránky.", "Enable birthday calendar" : "Povoliť narodeninový kalendár", "Show tasks in calendar" : "Zobraziť úlohy v kalendári", "Enable simplified editor" : "Povoliť zjednodušený editor", - "Limit visible events per view" : "Obmedziť viditeľné udalosti v jednotlivých pohľadoch", + "Limit the number of events displayed in the monthly view" : "Obmedziť počet udalostí zobrazených v mesačnom pohľade", "Show weekends" : "Zobraziť víkendy", "Show week numbers" : "Zobraziť čísla týždňov", "Time increments" : "Časové prírastky", + "Default calendar for incoming invitations" : "Predvolený kalendár pre prichádzajúce pozvánky", "Default reminder" : "Predvolená pripomienka", "Copy primary CalDAV address" : "Kopírovať primárnu CalDAV adresu", "Copy iOS/macOS CalDAV address" : "Kopírovať iOS/macOS CalDAV adresu", "Personal availability settings" : "Osobné nastavenia dostupnosti", "Show keyboard shortcuts" : "Zobraziť klávesové skratky", - "No reminder" : "Žiadna pripomienka", - "CalDAV link copied to clipboard." : "Odkaz CalDAV skopírovaný do schránky.", - "CalDAV link could not be copied to clipboard." : "Odkaz CalDAV nebolo možné skopírovať do schránky.", - "Appointment was created successfully" : "Stretnutie bolo úspešne vytvorené", - "Appointment was updated successfully" : "Stretnutie bolo úspešne aktualizované", + "Appointment schedule successfully created" : "Plán stretnutia bol úspešne vytvorený", + "Appointment schedule successfully updated" : "Plán stretnutia bol úspešne upravený", "_{duration} minute_::_{duration} minutes_" : ["{duration} minúta","{duration} minút","{duration} minút","{duration} minút"], "0 minutes" : "0 minút", "_{duration} hour_::_{duration} hours_" : ["{duration} hodina","{duration} hodiny","{duration} hodín","{duration} hodín"], @@ -173,7 +217,14 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Pre nastavenie stretnutia, pridajte svoju e-mail adresu v osobných nastaveniach.", "Public – shown on the profile page" : "Verejné – zobrazí sa na stránke profilu", "Private – only accessible via secret link" : "Súkromné ​​– prístupné iba cez tajný odkaz", + "Appointment schedule saved" : "Plán stretnutia bol uložený", + "Create appointment schedule" : "Vytvoriť plán stretnutia", + "Edit appointment schedule" : "Upraviť plán stretnutia", + "Update" : "Aktualizovať", + "Appointment name" : "Názov stretnutia", "Location" : "Umiestnenie", + "Create a Talk room" : "Vytvoriť miestnosť v Talk /Rozhovore/", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Bude vygenerovaný jedinečný odkaz pre každú rezervovanú schôdzku a bude zaslaný prostredníctvom potvrdzovacieho e-mailu.", "Description" : "Popis", "Visibility" : "Viditeľnosť", "Duration" : "Trvanie", @@ -191,6 +242,7 @@ OC.L10N.register( "Friday" : "Piatok", "Saturday" : "Sobota", "Sunday" : "Nedeľa", + "Weekdays" : "Pracovné dni", "Add time before and after the event" : "Pridajte čas pred a po udalosti", "Before the event" : "Pred udalosťou", "After the event" : "Po udalosti", @@ -198,18 +250,29 @@ OC.L10N.register( "Minimum time before next available slot" : "Minimálny čas do ďalšieho dostupného slotu", "Max slots per day" : "Max. počet slotov na deň", "Limit how far in the future appointments can be booked" : "Obmedzte, ako ďaleko v budúcnosti je možné rezervovať schôdzky", - "Create appointment" : "Vytvorte stretnutie", - "Edit appointment" : "Upraviť stretnutie", - "Save" : "Uložiť", - "Update" : "Aktualizovať", + "It seems a rate limit has been reached. Please try again later." : "Zdá sa, že bol dosiahnutý limit rýchlosti. Skúste to prosím neskôr znova.", "Please confirm your reservation" : "Prosím, potvrďte vašu rezerváciu", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Poslali sme vám e-mail s podrobnosťami. Potvrďte svoj termín pomocou odkazu v e-maili. Teraz môžete túto stránku zatvoriť.", "Your name" : "Vaše meno", - "Your email address" : "Vaša e-mail adresa", + "Your email address" : "Vaša e-mailová adresa", "Please share anything that will help prepare for our meeting" : "Zdieľajte čokoľvek, čo vám pomôže pripraviť sa na naše stretnutie", "Could not book the appointment. Please try again later or contact the organizer." : "Termín sa nepodarilo zarezervovať. Skúste to znova neskôr alebo kontaktujte organizátora.", - "Book the appointment" : "Rezervovať stretnutie", - "Reminder" : "Pripomienka", + "Back" : "Späť", + "Book appointment" : "Rezervovať stretnutie", + "Error fetching Talk conversations." : "Chyba pri načítavaní konverzácií Talk.", + "Conversation does not have a valid URL." : "Konverzácia nemá platné URL.", + "Successfully added Talk conversation link to location." : "Odkaz na konverzáciu Talk bol úspešne pridaný k miestu.", + "Successfully added Talk conversation link to description." : "Odkaz na miestnosť Talk bol úspešne pridaný do popisu.", + "Failed to apply Talk room." : "Nepodarilo sa aplikovať miestnost pre rozhovor.", + "Error creating Talk conversation" : "Chyba pri vytváraní novej konverzácie Talk", + "Select a Talk Room" : "Vybrať miestnosť pre rozhovor", + "Add Talk conversation" : "Pridať konverzáciu v aplikacií Rozhovor/Talk", + "Fetching Talk rooms…" : "Získavam miestnosti pre Rozhovor...", + "No Talk room available" : "Neboli nájdené žiadne miestnosti", + "Create a new conversation" : "Vytvoriť novú konverzáciu", + "Select conversation" : "Vybrať konveráciu", + "on" : "o", + "at" : "na", "before at" : "pred o", "Notification" : "Hlásenie", "Email" : "E-mail", @@ -220,114 +283,141 @@ OC.L10N.register( "Edit time" : "Zmeniť čas pripomienky", "Save time" : "Uložiť zmenený čas pripomienky", "Remove reminder" : "Odstrániť pripomienku", - "on" : "o", - "at" : "na", - "+ Add reminder" : "+ Pridať pripomienku", "Add reminder" : "Pridať pripomienku", - "_second_::_seconds_" : ["sekunda","sekundy","sekúnd","sekúnd"], - "_minute_::_minutes_" : ["minúta","minúty","minút","minút"], - "_hour_::_hours_" : ["hodina","hodiny","hodín","hodín"], - "_day_::_days_" : ["deň","dni","dní","dní"], - "_week_::_weeks_" : ["týždeň","týždne","týždňov","týždňov"], + "seconds" : "sekúnd", + "minutes" : "minúty", + "hours" : "hodiny", + "days" : "dni", + "weeks" : "týždňov", + "Choose a file to add as attachment" : "Vyberte súbor, ktorý chcete pridať ako prílohu.", + "Choose a file to share as a link" : "Vyberte súbor, ktorý chcete sprístupniť pomocou odkazu", + "Attachment {name} already exist!" : "Príloha {name} už existuje!", + "Could not upload attachment(s)" : "Nepodarilo sa nahrať prílohu(y)", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Chystáte sa prejsť na {host}. Naozaj chcete pokračovať? Odkaz: {link}", + "Proceed" : "Pokračovať", + "No attachments" : "Žiadne prílohy", + "Add from Files" : "Pridať zo Súborov", + "Upload from device" : "Nahrať zo zariadenia", + "Delete file" : "Zmazať súbor", + "Confirmation" : "Potvrdenie", + "_{count} attachment_::_{count} attachments_" : ["{count} príloha","{count} prílohy","{count} príloh","{count} prílohy"], "Suggested" : "Navrhované", "Available" : "Dostupné", - "Not available" : "Nie je k dispozícií", - "Checking availability" : "Kontrolujem dostupnosť", "Invitation accepted" : "Pozvánka prijatá", "Accepted {organizerName}'s invitation" : "Prijaté pozvanie od {organizerName}", + "Participation marked as tentative" : "Účasť označená ako predbežná", + "Invitation is delegated" : "Pozvánka je delegovaná", + "Not available" : "Nie je k dispozícií", "Invitation declined" : "Pozvánka odmietnutá", "Declined {organizerName}'s invitation" : "Pozvánka od {organizerName} bola odmietnutá", - "Invitation is delegated" : "Pozvánka je delegovaná", - "Participation marked as tentative" : "Účasť označená ako predbežná", - "Invitation sent" : "Pozvánka odoslaná", + "Availability will be checked" : "Dostupnosť bude overená", + "Invitation will be sent" : "Pozvánka bude odoslaná", + "Failed to check availability" : "Nepodarilo sa skontrolovať dostupnosť", + "Failed to deliver invitation" : "Nepodarilo sa doručiť pozvánku", + "Awaiting response" : "Čaká sa na odpoveď", + "Checking availability" : "Kontrolujem dostupnosť", "Has not responded to {organizerName}'s invitation yet" : "Zatiaľ neodpovedal na pozvanie od {organizerName}", - "Availability of attendees, resources and rooms" : "Dostupnosť účastníkov, zdrojov a miestností", + "chairperson" : "predseda", + "required participant" : "požadovaná účasť", + "non-participant" : "bez účasti", + "optional participant" : "nepovinná účasť", "{organizer} (organizer)" : "{organizer} (organizátor)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Dostupnosť účastníkov, zdrojov a miestností", + "Suggestion accepted" : "Návrh bol prijatý", + "Legend" : "Legenda", + "Out of office" : "Mimo kancelárie", + "Attendees:" : "Účastníci:", + "Done" : "Hotovo", + "Search room" : "Vyhľadať miestnosť", + "Room name" : "Názov miestnosti", + "Check room availability" : "Skontrolovať obsadenosť miestnosti", "Free" : "Voľný", "Busy (tentative)" : "Zaneprázdnený (predbežne)", "Busy" : "Zaneprázdnený", - "Out of office" : "Mimo kancelárie", "Unknown" : "Neznámy", - "Accept" : "Prijať", - "Decline" : "Odmietnuť", - "Tentative" : "Neistý", + "Find a time" : "Nájisť čas", "The invitation has been accepted successfully." : "Pozvánka bola úspešne prijatá.", "Failed to accept the invitation." : "Prijatie pozvánky zlyhalo.", "The invitation has been declined successfully." : "Pozvánka bola odmietnutá.", "Failed to decline the invitation." : "Odmietnutie pozvánky zlyhalo.", "Your participation has been marked as tentative." : "Vaša účasť bola označená ako predbežná.", "Failed to set the participation status to tentative." : "Zlyhalo nastavenie vašej účasti ako predbežnej.", - "Create Talk room for this event" : "Vytvoriť pre túto udalosť miestnosť v Talk", - "Show busy times" : "Zobraziť časy zaneprázdnenosti", + "Accept" : "Prijať", + "Decline" : "Odmietnuť", + "Tentative" : "Neistý", "No attendees yet" : "Zatiaľ žiadni účastníci", - "Successfully appended link to talk room to description." : "Do popisu bol úspešne pridaný odkaz na miestnosť v Talk", - "Error creating Talk room" : "Chyba pri vytváraní miestnosti v Talk", - "Send email" : "Odoslať email", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} pozvaných, {confirmedCount} potvrdených", + "Successfully appended link to talk room to location." : "Do popisu bol úspešne pridaný odkaz na miestnosť v Talk /Rozhovore/.", + "Successfully appended link to talk room to description." : "Do popisu bol úspešne pridaný odkaz na miestnosť v Talk /Rozhovore/", + "Error creating Talk room" : "Chyba pri vytváraní miestnosti v Talk /Rozhovore/", + "Attendees" : "Účastníci", + "_%n more guest_::_%n more guests_" : ["%n ďalší hosť","%n ďalší hostia","%n ďalších hostí","%n ďalších hostí"], + "Remove group" : "Odstrániť skupinu", + "Remove attendee" : "Odstrániť účastníka", + "Request reply" : "Odpoveď na žiadosť", "Chairperson" : "Predseda", "Required participant" : "Požadovaná účasť", "Optional participant" : "Nepovinná účasť", "Non-participant" : "Bez účasti", - "Remove attendee" : "Odstrániť účastníka", - "Search for emails, users or contacts" : "Vyhľadať emaily, užívateľov alebo kontakty", + "_%n member_::_%n members_" : ["%n člen","%n členovia","%n členov","%n členov"], + "Search for emails, users, contacts, contact groups or teams" : "Hľadať e-maily, užívateľov, kontakty, skupiny kontaktov alebo tímy", "No match found" : "Nenašla sa žiadna zhoda", + "Note that members of circles get invited but are not synced yet." : "Všimnite si, že členovia kruhov dostávajú pozvánky, ale ešte nie sú synchronizovaní.", + "Note that members of contact groups get invited but are not synced yet." : "Upozorňujeme, že členovia skupín kontaktov sú pozvaní, ale ešte nie sú synchronizovaní.", "(organizer)" : "(organizátor)", + "Make {label} the organizer" : "Urobiť z {label} organizátora", + "Make {label} the organizer and attend" : "Urobiť z {label} organizátora a zúčastniť sa", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Ak chcete posielať pozvánky a vybavovať odpovede, [linkopen] pridajte svoju e-mailovú adresu do osobných nastavení [linkclose].", "Remove color" : "Odobrať farbu", "Event title" : "Názov udalosti", - "All day" : "Celý deň", "Cannot modify all-day setting for events that are part of a recurrence-set." : "U opakovaných udalostí nie je možné u jednotlivého výskytu zvlášť meniť, či je udalosť celodenná alebo ne.", - "from {startDate}" : "od {startDate}", - "from {startDate} at {startTime}" : "od {startDate} o {startTime}", - "to {endDate}" : "do {endDate}", - "to {endDate} at {endTime}" : "do {endDate} o {endTime}", + "From" : "Od", + "To" : "Pre", "Repeat" : "Opakovať", - "End repeat" : "Koniec opakovania", - "Select to end repeat" : "Vyberte koniec opakovania", + "_time_::_times_" : ["krát","krát","krát","krát"], "never" : "nikdy", "on date" : "dňa", "after" : "po", - "_time_::_times_" : ["krát","krát","krát","krát"], + "End repeat" : "Koniec opakovania", + "Select to end repeat" : "Vyberte koniec opakovania", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Táto udalosť je výnimkou v opakovanej udalosti. Nie je možné k nej pridať opakovanie.", "first" : "prvý", - "third" : "tretie", - "fourth" : "štvrté", - "fifth" : "piate", - "second to last" : "po koľko sekúnd", - "last" : "posledné", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Zmeny v opakovanej udalosti budú mať vplyv len na túto a budúce udalosti.", "Repeat every" : "Opakovať každý", "By day of the month" : "Podľa dňa v mesiaci", "On the" : "V", + "_day_::_days_" : ["deň","dni","dní","dní"], + "_week_::_weeks_" : ["týždeň","týždne","týždňov","týždňov"], "_month_::_months_" : ["mesiac","mesiace","mesiacov","mesiacov"], "_year_::_years_" : ["rok","roky","rokov","rokov"], + "On specific day" : "V zadaný deň", "weekday" : "deň v týždni", "weekend day" : "deň cez víkend", - "No recurrence" : "Žiadne nové", + "Does not repeat" : "Neopakuje sa", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Definícia opakovania tejto udalosti nie je Nextcloud plne podporovaná. Ak upravíte možnosti opakovania, niektoré opakovania sa môžu stratiť.", - "Suggestions" : "Návrhy", "No rooms or resources yet" : "Žiadne miestnosti alebo zdroje", + "Resources" : "Zdroje", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} miesto","{seatingCapacity} miest","{seatingCapacity} miest","{seatingCapacity} miest"], "Add resource" : "Pridať zdroj", "Has a projector" : "Má projektor", "Has a whiteboard" : "Má tabuľu", "Wheelchair accessible" : "Bezbariérový prístup", "Remove resource" : "Odstrániť zdroj", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} miesto","{seatingCapacity} miest","{seatingCapacity} miest","{seatingCapacity} miest"], - "Projector" : "Projektor", - "Whiteboard" : "Tabuľa", "Search for resources or rooms" : "Hľadať zdroje alebo miestnosti", "available" : "dostupné", "unavailable" : "nedostupné", + "Show all rooms" : "Zobraziť všetky miestnosti", + "Projector" : "Projektor", + "Whiteboard" : "Tabuľa", "Room type" : "Typ miestnosti", "Any" : "Akékoľvek", "Minimum seating capacity" : "Minimálna kapacita miest na sedenie", - "More" : "Viac", - "Update this occurrence" : "Aktualizovať tento výskyt", + "More details" : "Viac podrobností", "Update this and all future" : "Aktualizovať tento a všetky budúce", + "Update this occurrence" : "Aktualizovať tento výskyt", "Public calendar does not exist" : "Verejný kalendár neexistuje", - "Maybe the share was deleted or has expired?" : "Možno bolo zrušené sprístupnenie alebo skončila jeho platnosť?", - "Please select a time zone:" : "Prosím vyberte časovú zónu:", - "Pick a time" : "Vyberte čas", - "Pick a date" : "Vyberte dátum", + "Maybe the share was deleted or has expired?" : "Možno bolo zrušené zdieľanie alebo skončila jeho platnosť?", "from {formattedDate}" : "od {formattedDate}", "to {formattedDate}" : "do {formattedDate}", "on {formattedDate}" : "{formattedDate}", @@ -337,9 +427,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} o {formattedTime}", "Please enter a valid date" : "Zadajte platný dátum", "Please enter a valid date and time" : "Zadajte platný dátum a čas", + "Select a time zone" : "Vybrať časové pásmo", + "Please select a time zone:" : "Prosím vyberte časovú zónu:", + "Pick a time" : "Vyberte čas", + "Pick a date" : "Vyberte dátum", "Type to search time zone" : "Písaním nájdete časovú zónu", "Global" : "Globálne", - "Select date" : "Vybrať dátum", + "Holidays in {region}" : "Sviatky v/na {region}", + "An error occurred, unable to read public calendars." : "Vyskytla sa chyba, nie je možné načítať verejné kalendáre.", + "An error occurred, unable to subscribe to calendar." : "Vyskytla sa chyba, nie je možné prihlásiť sa ku kalendáru.", + "Public holiday calendars" : "Kalendár verejných sviatkov", + "Public calendars" : "Verejné kalendáre", + "No valid public calendars configured" : "Žiadne platné verejné kalendáre nie sú nakonfigurované.", + "Speak to the server administrator to resolve this issue." : "Kontaktuje administrátora servera, aby ste vyriešili túto situáciu.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Verejné sviatky sú poskytované Thunderbirdom. Kalendárne údaje budú stiahnuté z {website}.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Tieto verejné kalendáre sú navrhnuté správcom servera. Kalendárne údaje budú stiahnuté z príslušnej webovej stránky.", + "By {authors}" : "Od {authors}", + "Subscribed" : "Prihlásený na odber", + "Subscribe" : "Odoberať", + "Could not fetch slots" : "Nepodarilo sa získať sloty", + "Select a date" : "Vybrať dátum", "Select slot" : "Vybrať slot", "No slots available" : "Žiadny slot nie je k dispozícii", "The slot for your appointment has been confirmed" : "Slot pre váš termín bol potvrdený", @@ -356,24 +463,25 @@ OC.L10N.register( "Personal" : "Osobné", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Automatická detekcia časového pásma určila, že vaše časové pásmo je UTC.\nJe to pravdepodobne výsledok bezpečnostných opatrení vášho webového prehliadača.\nNastavte časové pásmo manuálne v nastaveniach kalendára.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Vami nastavené časové pásmo ({timezoneId}) sa nenašlo. Nastavené bolo UTC.\nZmeňte v nastaveniach svoje časové pásmo a nahláste tento problém.", - "No more events today" : "Dnes žiadne ďalšie udalosti", - "No upcoming events" : "Žiadne nadchádzajúce udalosti", - "Create a new event" : "Vytvoriť novú udalosť", - "[Today]" : "[Dnes]", - "[Tomorrow]" : "[Zajtra]", - "[Yesterday]" : "[Včera]", - "[Last] dddd" : "[Posledné] dddd", + "Availability of {displayName}" : "Dostupnosť {displayName}", + "Edit event" : "Upraviť udalosť", "Event does not exist" : "Udalosť neexistuje", "Duplicate" : "Duplikát", "Delete this occurrence" : "Vymazať tento výskyt", "Delete this and all future" : "Vymazať toto a všetko budúce", - "Details" : "Podrobnosti", - "Attendees" : "Účastníci", - "Resources" : "Zdroje", + "All day" : "Celý deň", + "Modifications wont get propagated to the organizer and other attendees" : "Úpravy sa nedostanú k organizátorovi a ostatným účastníkom", + "Managing shared access" : "Spravovanie zdieľaného prístupu", + "Deny access" : "Odmietnuť prístup", + "Invite" : "Pozvať", + "_User requires access to your file_::_Users require access to your file_" : ["Užívateľ žiada prístup k vášmu súboru.","Užívatelia žiadajú prístup k vášmu súboru.","Užívatelia žiadajú prístup k vášmu súboru.","Užívatelia žiadajú prístup k vášmu súboru."], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Príloha vyžadujúca zdieľaný prístup","Prílohy vyžadujúce zdieľaný prístup","Prílohy vyžadujúce zdieľaný prístup","Prílohy vyžadujúce zdieľaný prístup"], + "Untitled event" : "Udalosť bez názvu", "Close" : "Zavrieť", - "Show more details" : "Zobraziť ďalšie podrobnosti", + "Modifications will not get propagated to the organizer and other attendees" : "Úpravy sa nedostanú medzi organizátorov a ostatných účastníkov", "Subscribe to {name}" : "Prihlásiť sa na odber {name}", "Export {name}" : "Exportovať {name}", + "Show availability" : "Zobraziť dostupnosť", "Anniversary" : "Výročie", "Appointment" : "Stretnutie", "Business" : "Služobné", @@ -401,7 +509,6 @@ OC.L10N.register( "on {time}" : "o {time}", "on {time} ({timezoneId})" : "o {time} ({timezoneId})", "Week {number} of {year}" : "Týždeň {number} roku {year}", - "Does not repeat" : "Neopakuje sa", "Daily" : "Denne", "Weekly" : "Týždenne", "Monthly" : "Mesačne", @@ -413,24 +520,30 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["v {weekday}","v {weekday}","v {weekday}","v {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["v dni {dayOfMonthList}","v dňoch {dayOfMonthList}","v dňoch {dayOfMonthList}","v dňoch {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "každý mesiac {ordinalNumber} {byDaySet}", - "in {monthNames}" : "v {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "v {monthNames} dňa {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "v {monthNames} v {ordinalNumber} {byDaySet}", "until {untilDate}" : "do {untilDate}", "_%n time_::_%n times_" : ["%n raz","%n raz","%n raz","%n raz"], - "Untitled event" : "Udalosť bez názvu", + "second" : "druhý", + "third" : "tretie", + "fourth" : "štvrté", + "fifth" : "piate", + "second to last" : "po koľko sekúnd", + "last" : "posledné", "Untitled task" : "Úloha bez názvu", "Please ask your administrator to enable the Tasks App." : "Požiadajte svojho správcu, aby povolil aplikáciu Úlohy.", - "Prev" : "Predch", - "Next" : "Ďalšie", - "Prev year" : "Predchodzí rok", - "Next year" : "Nasledujúci rok", - "Year" : "Rok", + "You are not allowed to edit this event as an attendee." : "Ako účastník nemáte povolené upravovať túto udalosť.", "W" : "T", "%n more" : "%n ďalších", "No events to display" : "Žiadne udalosti k zobrazeniu", + "All participants declined" : "Všetci účastníci odmietli", + "Please confirm your participation" : "Prosím, potvrďte svoju účasť", + "You declined this event" : "Odmietli ste túto udalosť", + "Your participation is tentative" : "Vaša účasť je predbežná", "_+%n more_::_+%n more_" : ["+%n ďalší","+%n ďalší","+%n ďalší","+%n ďalších"], "No events" : "Žiadne udalosti", "Create a new event or change the visible time-range" : "Vytvorte novú udalosť alebo zmeňte viditeľný časový rozsah", + "Failed to save event" : "Nepodarilo sa uložiť udalosť.", "It might have been deleted, or there was a typo in a link" : "Buď to bolo zmazané, alebo je chyba v odkaze", "It might have been deleted, or there was a typo in the link" : "Buď to bolo zmazané, alebo je chyba v odkaze", "Meeting room" : "Zasadacia miestnosť", @@ -443,7 +556,7 @@ OC.L10N.register( "When shared hide this event" : "Pri zdieľaní skryť udalosť", "The visibility of this event in shared calendars." : "Viditeľnosť tejto udalosti v zdieľaných kalendároch.", "Add a location" : "Zadajte umiestnenie", - "Add a description" : "Zadajte popis", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Pridať popis\n\n- O čom je toto stretnutie\n- Body programu\n- Všetko, čo si účastníci musia pripraviť", "Status" : "Stav", "Confirmed" : "Potvrdené", "Canceled" : "Zrušené", @@ -456,135 +569,23 @@ OC.L10N.register( "Add this as a new category" : "Pridať ako novú kategóriu", "Custom color" : "Vlastná farba", "Special color of this event. Overrides the calendar-color." : "Špeciálna farba tejto udalosti. Prepíše farbu kalendára.", - "Chat room for event" : "Chatová miestnosť pre udalosť", + "Error while sharing file" : "Pri zdieľaní súboru došlo k chybe", + "Error while sharing file with user" : "Chyba pri zdieľaní súboru používateľovi", + "Attachment {fileName} already exists!" : "Príloha {fileName} už existuje!", + "An error occurred during getting file information" : "Vyskytla sa chyba pri získavaní informácií o súbore.", + "Talk conversation for event" : "Konverzácia Talk pre udalosť", + "An error occurred, unable to delete the calendar." : "Vyskytla sa chyba, nie je možné zmazať kalendár.", "Imported {filename}" : "Importované {filename}", - "Meditation" : "Meditácia", - "Relaxing" : "Odpočinok", - "Relax" : "Odpočinok", - "Break" : "Prestávka", - "Commute" : "Na ceste", - "Commuting" : "Na ceste", - "Shuttle" : "Loď", - "Invoice" : "Faktúra", - "Finance" : "Financie", - "Bank" : "Banka", - "Money" : "Peniaze", - "Wedding" : "Svadba", - "Dog" : "Pes", - "Concert" : "Koncert", - "Festival" : "Festival", - "Theater" : "Divadlo", - "Theatre" : "Koncertná sála", - "Presentation" : "Prezentácia", - "Talk" : "Rozhovor", - "Speech" : "Prejav", - "Deadline" : "Konečný termín", - "Submission" : "Podanie", - "Reporting" : "Zostavy", - "Camping" : "Táborenie", - "Camp" : "Kempovanie", - "Election" : "Voľby", - "Voting" : "Hlasovanie", - "Vote" : "Hlas", - "Barbecue" : "Grilovanie", - "Barbeque" : "Grilovanie", - "Garden" : "Záhrada", - "Farm" : "Farma", - "Movie" : "Film", - "Cinema" : "Kino", - "Graduation" : "Štátnice", - "Brainstorm" : "Porada", - "Review" : "Preskúmať", - "Audit" : "Audit", - "Inspection" : "Inšpekcia", - "Proofreading" : "Korektúra", - "Baseball" : "Bejzbal", - "Meet" : "Stretnutie", - "Planning" : "Plánovanie", - "Pointing" : "Ukazovanie", - "Retrospective" : "Retrospektíva", - "Office" : "Kancelária", - "Contributor week" : "Týždeň prispievateľov", - "Mail" : "Pošta", - "Soccer" : "futbal", - "Football" : "Futbal", - "Gaming" : "Hranie", - "Drive" : "Šoférovať", - "Driving" : "Šoférovanie", - "Bicycle" : "Bicykel", - "Cycle" : "Bicyklovať", - "Cycling" : "Byciklovanie", - "Biking" : "Bicyklovanie", - "Bike" : "Bycikel", - "Podcast" : "Podcast", - "Basketball" : "Basketbal", - "Fishing" : "Rybačka", - "Hiking" : "Turistika", - "Hike" : "Túra", - "Art" : "Umenie", - "Exhibition" : "Výstava", - "Museum" : "Múzeum", - "Pilates" : "Cvičenie", - "Park" : "Park", - "Walk" : "Chôdza", - "Studying" : "Učiť sa", - "Doctor" : "Doktor", - "Health" : "Zdravie", - "Dentist" : "Zubár", - "Hospital" : "Nemocnica", - "Interview" : "Pohovor", - "Training" : "Tréning", - "Practice" : "Tréning", - "Sports" : "Šport", - "Exercise" : "Cvičenie", - "Work out" : "Posilovňa", - "Working out" : "Posilovať", - "Gym" : "Fitko", - "Barber" : "Holič", - "Haircut" : "Účes", - "Hairdresser" : "Kaderník", - "Exam" : "Skúška", - "Written test" : "Písomka", - "Oral test" : "Ústny test", - "Working" : "Práca", - "New Years Eve" : "Nový rok", - "NYE" : "Silvester", - "Fireworks" : "ohňostroj", - "Running" : "beh", - "Go for a run" : "behať", - "Marathon" : "Maratón", - "Video-conference" : "Video-konferencia", - "Conference-call" : "Konferenčný hovor", - "Video-call" : "Video-hovor", - "Video-chat" : "Video-čet", - "Video-meeting" : "Video-stretnutie", - "Call" : "Telefonát", - "Calling" : "Zavolať", - "Christmas" : "Vianoce", - "Conference" : "Konferencia", - "Pizza" : "Pizza", - "Travelling" : "Cestovanie", - "Trip" : "Výlet", - "Journey" : "Cestovanie", - "Collaborate" : "Spolupracovať", - "Pair" : "Dvojica", - "Lecture" : "Prednáška", - "Seminar" : "Seminár", - "Teaching" : "Školenie", - "Photograph" : "Fotografovať", - "Party" : "Párty", - "Celebration" : "Oslava", - "Celebrate" : "Oslava", - "Birthday" : "Narodeniny", - "Shopping" : "Nakupovanie", - "Groceries" : "Potraviny", - "Skate" : "Korčulovanie", - "Skateboard" : "Skateboard", - "Wine tasting" : "Ochutnávka vína", - "Golf" : "Golf", - "Dinner" : "Večera", - "Lunch" : "Obed", + "This is an event reminder." : "Toto je pripomienka udalosti.", + "Error while parsing a PROPFIND error" : "Chyba pri parsovaní chyby PROPFIND", "Appointment not found" : "Stretnutie nebolo nájdené", - "User not found" : "Užívateľ nebol nájdený" + "User not found" : "Užívateľ nebol nájdený", + "Reminder" : "Pripomienka", + "+ Add reminder" : "+ Pridať pripomienku", + "Select automatic slot" : "Vybrať automatický slot", + "with" : "s", + "Available times:" : "Dostupné termíny:", + "Suggestions" : "Návrhy", + "Details" : "Podrobnosti" }, "nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"); diff --git a/l10n/sk.json b/l10n/sk.json index dd4f661e341f450b4a93da778e248a46c4aacac7..01f9d75f5c0c18a43e86513e13dc7bad8c1a1871 100644 --- a/l10n/sk.json +++ b/l10n/sk.json @@ -1,6 +1,7 @@ { "translations": { + "Provided email-address is too long" : "Zadaná e-mailová adresa je príliš dlhá", "User-Session unexpectedly expired" : "Používateľská relácia sa neočakávane prerušila", - "Provided email-address is not valid" : "Zadaná adresa e-mailu nie je platná", + "Provided email-address is not valid" : "Zadaná e-mailová adresa je neplatná", "%s has published the calendar »%s«" : "Používateľ %s zverejnil kalendár %s", "Unexpected error sending email. Please contact your administrator." : "Neočakávaná chyba počas odosielania e-mailu. Obráťte sa na správcu", "Successfully sent email to %1$s" : "E-mail bol úspešne odoslaný pre %1$s", @@ -9,125 +10,161 @@ "Open »%s«" : "Otvoriť »%s«", "Cheers!" : "Pekný deň!", "Upcoming events" : "Nadchádzajúce udalosti", + "No more events today" : "Dnes žiadne ďalšie udalosti", + "No upcoming events" : "Žiadne nadchádzajúce udalosti", + "More events" : "Viac udalostí", + "%1$s with %2$s" : "%1$s s %2$s", + "Calendar" : "Kalendár", + "New booking {booking}" : "Nová rezervácia {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) rezervoval(a) stretnutie \"{config_display_name}\" dňa {date_time}.", "Appointments" : "Stretnutia", "Schedule appointment \"%s\"" : "Naplánovať stretnutie \"%s\"", "Schedule an appointment" : "Naplánovať stretnutie", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Pripraviť na %s", "Follow up for %s" : "Sledovať pre %s", - "Your appointment \"%s\" needs confirmation" : "Vaše stretnutie „%s“ vyžaduje potvrdenie", + "Your appointment \"%s\" with %s needs confirmation" : "Vaše stretnutie „%s“ s %s vyžaduje potvrdenie", "Dear %s, please confirm your booking" : "Vážený %s, potvrďte svoju rezerváciu", "Confirm" : "Potvrdiť", + "Appointment with:" : "Stretnutie s:", + "Description:" : "Popis:", "This confirmation link expires in %s hours." : "Platnosť tohto potvrdzovacieho odkazu vyprší o %s hodín.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Ak by ste predsa len chceli stretnutie zrušiť, kontaktujte svojho organizátora.", - "Appointment:" : "Stretnutie:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Ak predsa len chcete stretnutie zrušiť, kontaktujte organizátora odpoveďou na tento e-mail alebo návštevou jeho profilovej stránky.", + "Your appointment \"%s\" with %s has been accepted" : "Vaše stretnutie „%s“ s %s bolo potvrdené", + "Dear %s, your booking has been accepted." : "Vážený/á %s, vaša rezervácia bola prijatá.", + "Appointment for:" : "Termín pre:", "Date:" : "Dátum:", + "You will receive a link with the confirmation email" : "Dostanete odkaz s potvrzovacím e-mailom", "Where:" : "Kde:", - "Description:" : "Popis:", - "Calendar" : "Kalendár", + "Comment:" : "Komentár.", + "You have a new appointment booking \"%s\" from %s" : "Máte novú rezerváciu stretnutia \"%s\" od %s", + "Dear %s, %s (%s) booked an appointment with you." : "Vážený/á %s, %s (%s) si u vás objednal stretnutie.", "A Calendar app for Nextcloud" : "Aplikácia Kalendár pre Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aplikácia Kalendár je užívateľské rozhranie pre server CalDAV spoločnosti Nextcloud. Jednoducho synchronizujte udalosti z rôznych zariadení s Nextcloud a upravujte ich online.\n\n* 🚀 **Integrácia s ďalšími aplikáciami Nextcloud! ** V súčasnosti Kontakty - prídu ďalšie.\n* 🌐 ** Podpora WebCal! ** Chcete vidieť zápasy svojho obľúbeného tímu v kalendári? Žiadny problém!\n* 🙋 ** Účastníci! ** Pozvite ľudí na vaše udalosti\n* ⌚️ ** Voľný/Zaneprázdený** Pozrite sa, kedy sa môžu vaši účastníci stretnúť\n* ⏰ ** Pripomienky! ** Získajte upozornenia na udalosti vo vašom prehliadači a prostredníctvom e-mailu.\n* 🙈 ** Nebudeme znovu objavovať koleso! ** Na základe vyborných knižníc [c-dav] (https://github.com/nextcloud/cdav-library), [ical.js] (https: // github. com / mozilla-comm / ical.js) a [fullcalendar] (https://github.com/fullcalendar/fullcalendar).", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Aplikácia Kalendár pre Nextcloud. Jednoducho synchronizujte udalosti z rôznych zariadení s vaším Nextcloudom a upravujte ich online.\n\n* 🚀 **Integrácia s inými aplikáciami Nextcloud!** Ako Kontakty, Talk, Úlohy, Deck a Kruhy\n* 🌐 **Podpora WebCal!** Chcete vidieť zápasy svojho obľúbeného tímu v kalendári? Žiadny problém!\n* 🙋 **Účastníci!** Pozvite ľudí na svoje udalosti\n* ⌚ **Voľný/Zaneprázdnený!** Pozrite sa, kedy sú vaši účastníci k dispozícii na stretnutie\n* ⏰ **Pripomienky!** Získajte upozornenia na udalosti priamo v prehliadači a prostredníctvom e-mailu\n* 🔍 **Vyhľadávanie!** Nájdite svoje udalosti v pohodlí\n* ☑️ **Úlohy!** Pozrite si úlohy alebo karty balíčkov s dátumom dokončenia priamo v kalendári\n* 🔈 **Diskusné miestnosti!** Vytvorte priradenú diskusnú miestnosť pri rezervácii stretnutia jediným kliknutím\n* 📆 **Rezervácia stretnutia** Pošlite ľuďom odkaz, aby si mohli rezervovať stretnutie s vami [pomocou tejto aplikácie](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Prílohy!** Pridávajte, nahrávajte a zobrazujte prílohy udalostí\n* 🙈 **Nevynájdeme koleso!** Na základe skvelého [c-dav knižnice](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) a [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Predchádzajúci deň", "Previous week" : "Predchádzajúci týždeň", + "Previous year" : "Minulý rok", "Previous month" : "Predchádzajúci mesiac", "Next day" : "Nasledujúci deň", "Next week" : "Nasledujúci týždeň", + "Next year" : "Nasledujúci rok", "Next month" : "Nasledujúci mesiac", - "New event" : "Nová udalosť", + "Create new event" : "Vytvoriť novú udalosť", + "Event" : "Udalosť", "Today" : "Dnes", "Day" : "Deň", "Week" : "Týždeň", "Month" : "Mesiac", + "Year" : "Rok", "List" : "Zoznam", + "Appointment link was copied to clipboard" : "Odkaz na stretnutie bol skopírovaný do schránky", + "Appointment link could not be copied to clipboard" : "Odkaz na stretnutie nemohol byť skopírovaný do schránky", "Preview" : "Náhľad", "Copy link" : "Kopírovať odkaz", "Edit" : "Upraviť", "Delete" : "Zmazať", - "Appointment link was copied to clipboard" : "Odkaz na stretnutie bol skopírovaný do schránky", - "Appointment link could not be copied to clipboard" : "Odkaz na stretnutie nemohol byť skopírovaný do schránky", - "Add new" : "Pridať nový", - "Untitled calendar" : "Kalendár bez názvu", - "Edit name" : "Upraviť názov", - "Saving name …" : "Ukladanie názvu …", - "Edit color" : "Upraviť farbu", - "Saving color …" : "Ukladanie farby …", - "Copy private link" : "Kopírovať privátny odkaz", - "Export" : "Export", - "Unshare from me" : "Zrušiť zdieľanie so mnou", + "Appointment schedules" : "Harmonogramy stretnutí", + "Create new" : "Vytvoriť nový", + "Disable calendar \"{calendar}\"" : "Zakázať kalendár „{calendar}“", + "Disable untitled calendar" : "Zakázať nepomenovaný kalendár", + "Enable calendar \"{calendar}\"" : "Povoliť kalendár „{calendar}“", + "Enable untitled calendar" : "Povoliť nepomenovaný kalendár", "An error occurred, unable to change visibility of the calendar." : "Vyskytla sa chyba, nie je možné zmeniť viditeľnosť kalendára.", - "An error occurred, unable to delete the calendar." : "Vyskytla sa chyba, nie je možné zmazať kalendár.", - "Calendar link copied to clipboard." : "Odkaz na kalendár skopírovaný do schránky.", - "Calendar link could not be copied to clipboard." : "Odkaz na kalendár nebolo možné skopírovať do schránky.", - "An error occurred, unable to rename the calendar." : "Vyskytla sa chyba, nie je možné premenovať kalendár.", - "An error occurred, unable to change the calendar's color." : "Vyskytla sa chyba, nie je možné zmeniť farbu kalendára.", + "Untitled calendar" : "Kalendár bez názvu", + "Shared with you by" : "Sprístupnené vám používateľom", + "Edit and share calendar" : "Upraviť a zdieľať kalendár", + "Edit calendar" : "Upraviť kalendár", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Zdieľanie kalendára bude zmazané za {countdown} sekundu","Zdieľanie kalendára bude zmazané za {countdown} sekundy","Zdieľanie kalendára bude zmazané za {countdown} sekúnd","Zdieľanie kalendára bude zmazané za {countdown} sekúnd"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Kalendár bude zmazaný za {countdown} sekundu","Kalendár bude zmazaný za {countdown} sekundy","Kalendár bude zmazaný za {countdown} sekúnd","Kalendár bude zmazaný za {countdown} sekúnd"], - "Share link" : "Sprístupniť odkaz", - "Publish calendar" : "Zverejniť kalendár", - "Publishing calendar" : "Zverejňovať kalendár", - "Copy public link" : "Kopírovať verejný odkaz", - "Send link to calendar via email" : "Odoslať odkaz na kalendár emailom", - "Enter one address" : "Zadajte jednu adresu", - "Sending email …" : "Odosielanie e-mailu …", - "Copy subscription link" : "Kopírovať odkaz na odber", - "Copying link …" : "Kopírovanie odkazu …", - "Copied link" : "Kopírovaný odkaz", - "Could not copy link" : "Nie je možné skopírovať odkaz", - "Copy embedding code" : "Kopírovať vložený kód", - "Copying code …" : "Kopírovanie kódu …", - "Copied code" : "Skopírovaný kód", - "Could not copy code" : "Nie je možné skopírovať kód", - "Delete share link" : "Zmazať sprístupnený odkaz", - "Deleting share link …" : "Mazanie odkazu pre sprístupnenie …", - "An error occurred, unable to publish calendar." : "Vyskytla sa chyba, nie je možné zverejniť kalendár.", - "An error occurred, unable to send email." : "Vyskytla sa chyba, nepodarilo sa odoslať e-mail.", - "Embed code copied to clipboard." : "Vložený kód skopírovaný do schránky", - "Embed code could not be copied to clipboard." : "Vložený kód nebolo možné skopírovať do schránky.", - "Unpublishing calendar failed" : "Zrušenie zverejnenia kalendára zlyhalo", - "Share with users or groups" : "Sprístupniť používateľom alebo skupinám", - "No users or groups" : "Žiadni používatelia alebo skupiny", - "can edit" : "môže upraviť", - "Unshare with {displayName}" : "Zrušiť zdieľanie s {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Vyskytla sa chyba, nie je možné zmeniť zdieľanie kalendára.", - "An error occurred, unable to change the permission of the share." : "Vyskytla sa chyba, nie je možné zmeniť práva na zdieľanie kalendára.", - "+ New calendar" : "+ Nový kalendár", + "An error occurred, unable to create the calendar." : "Vyskytla sa chyba, nie je možné vytvoriť kalendár.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vkladajte platné odkazy (musia sa začínať http://, https://, webcal:// alebo webcals://)", + "Calendars" : "Kalendáre", + "Add new" : "Pridať nový", "New calendar" : "Nový kalendár", "Name for new calendar" : "Názov nového kalendára", "Creating calendar …" : "Vytváranie kalendára …", "New calendar with task list" : "Nový kalendár so zoznamom úloh", "New subscription from link (read-only)" : "Nový odber z odkazu (iba na čítanie)", "Creating subscription …" : "Vytvára sa odber …", - "An error occurred, unable to create the calendar." : "Vyskytla sa chyba, nie je možné vytvoriť kalendár.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vkladajte platné odkazy (musia sa začínať http://, https://, webcal:// alebo webcals://)", + "Add public holiday calendar" : "Pridať kalendár verejných sviatokov", + "Add custom public calendar" : "Pridať vlastný verejný kalendár", + "Calendar link copied to clipboard." : "Odkaz na kalendár skopírovaný do schránky.", + "Calendar link could not be copied to clipboard." : "Odkaz na kalendár nebolo možné skopírovať do schránky.", + "Copy subscription link" : "Kopírovať odkaz na odber", + "Copying link …" : "Kopírovanie odkazu …", + "Copied link" : "Kopírovaný odkaz", + "Could not copy link" : "Nie je možné skopírovať odkaz", + "Export" : "Export", + "Untitled item" : "Položka bez názvu", + "Unknown calendar" : "Neznámy kalendár", + "Could not load deleted calendars and objects" : "Nie je možné načítať zmazané kalendáre a objekty", + "Could not delete calendar or event" : "Nie je možné vymazať kalendár alebo udalosť", + "Could not restore calendar or event" : "Nie je možné obnoviť kalendár alebo udalosť", + "Do you really want to empty the trash bin?" : "Naozaj chcete vyprázdniť kôš?", + "Empty trash bin" : "Vyprázdniť kôš", "Trash bin" : "Kôš", - "Loading deleted elements." : "Nahrávam zmazané elementy.", - "You do not have any deleted elements." : "Nemáte žiadne zmazané elementy.", + "Loading deleted items." : "Nahrávam zmazané položky.", + "You do not have any deleted items." : "Nemáte žiadne zmazané položky.", "Name" : "Názov", "Deleted" : "Zmazané", "Restore" : "Obnoviť", "Delete permanently" : "Zmazať natrvalo", - "Empty trash bin" : "Vyprázdniť kôš", - "Untitled element" : "Prvok bez názvu", - "Unknown calendar" : "Neznámy kalendár", - "Could not load deleted calendars and objects" : "Nie je možné načítať zmazané kalendáre a objekty", - "Could not restore calendar or event" : "Nie je možné obnoviť kalendár alebo udalosť", - "Do you really want to empty the trash bin?" : "Naozaj chcete vyprázdniť kôš?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Položky v odpadkovom koši budú odstránené po {numDays} dni","Položky v odpadkovom koši budú odstránené po {numDays} dňoch","Položky v odpadkovom koši budú odstránené po {numDays} dňoch","Položky v odpadkovom koši budú odstránené po {numDays} dňoch"], + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Položky v odpadkovom koši budú odstránené po {numDays} dni","Položky v odpadkovom koši budú odstránené po {numDays} dňoch","Položky v odpadkovom koši budú odstránené po {numDays} dňoch","Položky v odpadkovom koši budú odstránené po {numDays} dňoch"], "Could not update calendar order." : "Poradie kalendára sa nepodarilo aktualizovať.", + "Shared calendars" : "Zdieľané kalendáre", + "Deck" : "Nástenka", + "Hidden" : "Skryté", + "Internal link" : "Interný odkaz", + "A private link that can be used with external clients" : "Súkromný odkaz, ktorý môže byť použitý s externými klientmi.", + "Copy internal link" : "Kopírovať interný odkaz", + "An error occurred, unable to publish calendar." : "Vyskytla sa chyba, nie je možné zverejniť kalendár.", + "An error occurred, unable to send email." : "Vyskytla sa chyba, nepodarilo sa odoslať e-mail.", + "Embed code copied to clipboard." : "Vložený kód skopírovaný do schránky", + "Embed code could not be copied to clipboard." : "Vložený kód nebolo možné skopírovať do schránky.", + "Unpublishing calendar failed" : "Zrušenie zverejnenia kalendára zlyhalo", + "Share link" : "Sprístupniť odkaz", + "Copy public link" : "Kopírovať verejný odkaz", + "Send link to calendar via email" : "Odoslať odkaz na kalendár emailom", + "Enter one address" : "Zadajte jednu adresu", + "Sending email …" : "Odosielanie e-mailu …", + "Copy embedding code" : "Kopírovať vložený kód", + "Copying code …" : "Kopírovanie kódu …", + "Copied code" : "Skopírovaný kód", + "Could not copy code" : "Nie je možné skopírovať kód", + "Delete share link" : "Zmazať sprístupnený odkaz", + "Deleting share link …" : "Mazanie odkazu pre zdieľanie …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Tím)", + "An error occurred while unsharing the calendar." : "Počas rušenia zdieľania kalendára sa vyskytla chyba.", + "An error occurred, unable to change the permission of the share." : "Vyskytla sa chyba, nie je možné zmeniť práva na zdieľanie kalendára.", + "can edit" : "môže upraviť", + "Unshare with {displayName}" : "Zrušiť zdieľanie s {displayName}", + "Share with users or groups" : "Sprístupniť používateľom alebo skupinám", + "No users or groups" : "Žiadni používatelia alebo skupiny", + "Failed to save calendar name and color" : "Nepodarilo sa uložiť názov kalendára a jeho farbu.", + "Calendar name …" : "Názov kalendára ...", + "Never show me as busy (set this calendar to transparent)" : "Nikdy ma nezobrazovať ako zaneprázdneného (nastaviť tento kalendár na priehľadný)", + "Share calendar" : "Zdieľať kalendár", + "Unshare from me" : "Zrušiť zdieľanie so mnou", + "Save" : "Uložiť", "Import calendars" : "Import kalendára", "Please select a calendar to import into …" : "Vyberte kalendár do ktorého importovať …", "Filename" : "Názov súboru", "Calendar to import into" : "Kalendár na import do ...", "Cancel" : "Zrušiť", "_Import calendar_::_Import calendars_" : ["Import kalendára","Import kalendárov","Import kalendárov","Import kalendárov"], + "Select the default location for attachments" : "Vyberte predvolené umiestnenie príloh", + "Pick" : "Vybrať", + "Invalid location selected" : "Bolo vybrané neplatné umiestnenie", + "Attachments folder successfully saved." : "Adresár príloh úspešne uložený.", + "Error on saving attachments folder." : "Chyba pri ukladaní adresára príloh.", + "Default attachments location" : "Predvolené umiestnenie príloh", "{filename} could not be parsed" : "{filename} nie je možné spracovať", "No valid files found, aborting import" : "Nenašli sa žiadne platné súbory, import sa prerušuje", - "Import partially failed. Imported {accepted} out of {total}." : "Import čiastočne zlyhal. Importované {accepted} z {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["Úspešne naimportovaná %n udalosť","Úspešne naimportované %n udalosti","Úspešne naimportovaných %n udalostí","Úspešne naimportovaných %n udalostí"], + "Import partially failed. Imported {accepted} out of {total}." : "Import čiastočne zlyhal. Importované {accepted} z {total}.", "Automatic" : "Automaticky", "Automatic ({detected})" : "Automaticky ({detected})", "New setting was not saved successfully." : "Nové nastavenie nebolo možné uložiť.", - "Shortcut overview" : "Stručný prehľad", - "or" : "alebo", "Navigation" : "Navigácia", "Previous period" : "Predchádzajúce obdobie", "Next period" : "Nadchádzajúce obdobie", @@ -135,6 +172,7 @@ "Day view" : "Denné zobrazenie", "Week view" : "Týždenné zobrazenie", "Month view" : "Mesačné zobrazenie", + "Year view" : "Ročný pohľad", "List view" : "Zobraziť ako zoznam", "Actions" : "Akcie", "Create event" : "Vytvoriť udalosť", @@ -144,23 +182,29 @@ "Save edited event" : "Uložiť upravenú udalosť", "Delete edited event" : "Zmazať upravenú udalosť", "Duplicate event" : "Duplicitná udalosť", + "Shortcut overview" : "Stručný prehľad", + "or" : "alebo", + "Calendar settings" : "Nastavenia kalendára", + "At event start" : "Na začiatku udalosti", + "No reminder" : "Žiadna pripomienka", + "Failed to save default calendar" : "Nepodarilo sa uložiť predvolený kalendár.", + "CalDAV link copied to clipboard." : "Odkaz CalDAV skopírovaný do schránky.", + "CalDAV link could not be copied to clipboard." : "Odkaz CalDAV nebolo možné skopírovať do schránky.", "Enable birthday calendar" : "Povoliť narodeninový kalendár", "Show tasks in calendar" : "Zobraziť úlohy v kalendári", "Enable simplified editor" : "Povoliť zjednodušený editor", - "Limit visible events per view" : "Obmedziť viditeľné udalosti v jednotlivých pohľadoch", + "Limit the number of events displayed in the monthly view" : "Obmedziť počet udalostí zobrazených v mesačnom pohľade", "Show weekends" : "Zobraziť víkendy", "Show week numbers" : "Zobraziť čísla týždňov", "Time increments" : "Časové prírastky", + "Default calendar for incoming invitations" : "Predvolený kalendár pre prichádzajúce pozvánky", "Default reminder" : "Predvolená pripomienka", "Copy primary CalDAV address" : "Kopírovať primárnu CalDAV adresu", "Copy iOS/macOS CalDAV address" : "Kopírovať iOS/macOS CalDAV adresu", "Personal availability settings" : "Osobné nastavenia dostupnosti", "Show keyboard shortcuts" : "Zobraziť klávesové skratky", - "No reminder" : "Žiadna pripomienka", - "CalDAV link copied to clipboard." : "Odkaz CalDAV skopírovaný do schránky.", - "CalDAV link could not be copied to clipboard." : "Odkaz CalDAV nebolo možné skopírovať do schránky.", - "Appointment was created successfully" : "Stretnutie bolo úspešne vytvorené", - "Appointment was updated successfully" : "Stretnutie bolo úspešne aktualizované", + "Appointment schedule successfully created" : "Plán stretnutia bol úspešne vytvorený", + "Appointment schedule successfully updated" : "Plán stretnutia bol úspešne upravený", "_{duration} minute_::_{duration} minutes_" : ["{duration} minúta","{duration} minút","{duration} minút","{duration} minút"], "0 minutes" : "0 minút", "_{duration} hour_::_{duration} hours_" : ["{duration} hodina","{duration} hodiny","{duration} hodín","{duration} hodín"], @@ -171,7 +215,14 @@ "To configure appointments, add your email address in personal settings." : "Pre nastavenie stretnutia, pridajte svoju e-mail adresu v osobných nastaveniach.", "Public – shown on the profile page" : "Verejné – zobrazí sa na stránke profilu", "Private – only accessible via secret link" : "Súkromné ​​– prístupné iba cez tajný odkaz", + "Appointment schedule saved" : "Plán stretnutia bol uložený", + "Create appointment schedule" : "Vytvoriť plán stretnutia", + "Edit appointment schedule" : "Upraviť plán stretnutia", + "Update" : "Aktualizovať", + "Appointment name" : "Názov stretnutia", "Location" : "Umiestnenie", + "Create a Talk room" : "Vytvoriť miestnosť v Talk /Rozhovore/", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Bude vygenerovaný jedinečný odkaz pre každú rezervovanú schôdzku a bude zaslaný prostredníctvom potvrdzovacieho e-mailu.", "Description" : "Popis", "Visibility" : "Viditeľnosť", "Duration" : "Trvanie", @@ -189,6 +240,7 @@ "Friday" : "Piatok", "Saturday" : "Sobota", "Sunday" : "Nedeľa", + "Weekdays" : "Pracovné dni", "Add time before and after the event" : "Pridajte čas pred a po udalosti", "Before the event" : "Pred udalosťou", "After the event" : "Po udalosti", @@ -196,18 +248,29 @@ "Minimum time before next available slot" : "Minimálny čas do ďalšieho dostupného slotu", "Max slots per day" : "Max. počet slotov na deň", "Limit how far in the future appointments can be booked" : "Obmedzte, ako ďaleko v budúcnosti je možné rezervovať schôdzky", - "Create appointment" : "Vytvorte stretnutie", - "Edit appointment" : "Upraviť stretnutie", - "Save" : "Uložiť", - "Update" : "Aktualizovať", + "It seems a rate limit has been reached. Please try again later." : "Zdá sa, že bol dosiahnutý limit rýchlosti. Skúste to prosím neskôr znova.", "Please confirm your reservation" : "Prosím, potvrďte vašu rezerváciu", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Poslali sme vám e-mail s podrobnosťami. Potvrďte svoj termín pomocou odkazu v e-maili. Teraz môžete túto stránku zatvoriť.", "Your name" : "Vaše meno", - "Your email address" : "Vaša e-mail adresa", + "Your email address" : "Vaša e-mailová adresa", "Please share anything that will help prepare for our meeting" : "Zdieľajte čokoľvek, čo vám pomôže pripraviť sa na naše stretnutie", "Could not book the appointment. Please try again later or contact the organizer." : "Termín sa nepodarilo zarezervovať. Skúste to znova neskôr alebo kontaktujte organizátora.", - "Book the appointment" : "Rezervovať stretnutie", - "Reminder" : "Pripomienka", + "Back" : "Späť", + "Book appointment" : "Rezervovať stretnutie", + "Error fetching Talk conversations." : "Chyba pri načítavaní konverzácií Talk.", + "Conversation does not have a valid URL." : "Konverzácia nemá platné URL.", + "Successfully added Talk conversation link to location." : "Odkaz na konverzáciu Talk bol úspešne pridaný k miestu.", + "Successfully added Talk conversation link to description." : "Odkaz na miestnosť Talk bol úspešne pridaný do popisu.", + "Failed to apply Talk room." : "Nepodarilo sa aplikovať miestnost pre rozhovor.", + "Error creating Talk conversation" : "Chyba pri vytváraní novej konverzácie Talk", + "Select a Talk Room" : "Vybrať miestnosť pre rozhovor", + "Add Talk conversation" : "Pridať konverzáciu v aplikacií Rozhovor/Talk", + "Fetching Talk rooms…" : "Získavam miestnosti pre Rozhovor...", + "No Talk room available" : "Neboli nájdené žiadne miestnosti", + "Create a new conversation" : "Vytvoriť novú konverzáciu", + "Select conversation" : "Vybrať konveráciu", + "on" : "o", + "at" : "na", "before at" : "pred o", "Notification" : "Hlásenie", "Email" : "E-mail", @@ -218,114 +281,141 @@ "Edit time" : "Zmeniť čas pripomienky", "Save time" : "Uložiť zmenený čas pripomienky", "Remove reminder" : "Odstrániť pripomienku", - "on" : "o", - "at" : "na", - "+ Add reminder" : "+ Pridať pripomienku", "Add reminder" : "Pridať pripomienku", - "_second_::_seconds_" : ["sekunda","sekundy","sekúnd","sekúnd"], - "_minute_::_minutes_" : ["minúta","minúty","minút","minút"], - "_hour_::_hours_" : ["hodina","hodiny","hodín","hodín"], - "_day_::_days_" : ["deň","dni","dní","dní"], - "_week_::_weeks_" : ["týždeň","týždne","týždňov","týždňov"], + "seconds" : "sekúnd", + "minutes" : "minúty", + "hours" : "hodiny", + "days" : "dni", + "weeks" : "týždňov", + "Choose a file to add as attachment" : "Vyberte súbor, ktorý chcete pridať ako prílohu.", + "Choose a file to share as a link" : "Vyberte súbor, ktorý chcete sprístupniť pomocou odkazu", + "Attachment {name} already exist!" : "Príloha {name} už existuje!", + "Could not upload attachment(s)" : "Nepodarilo sa nahrať prílohu(y)", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Chystáte sa prejsť na {host}. Naozaj chcete pokračovať? Odkaz: {link}", + "Proceed" : "Pokračovať", + "No attachments" : "Žiadne prílohy", + "Add from Files" : "Pridať zo Súborov", + "Upload from device" : "Nahrať zo zariadenia", + "Delete file" : "Zmazať súbor", + "Confirmation" : "Potvrdenie", + "_{count} attachment_::_{count} attachments_" : ["{count} príloha","{count} prílohy","{count} príloh","{count} prílohy"], "Suggested" : "Navrhované", "Available" : "Dostupné", - "Not available" : "Nie je k dispozícií", - "Checking availability" : "Kontrolujem dostupnosť", "Invitation accepted" : "Pozvánka prijatá", "Accepted {organizerName}'s invitation" : "Prijaté pozvanie od {organizerName}", + "Participation marked as tentative" : "Účasť označená ako predbežná", + "Invitation is delegated" : "Pozvánka je delegovaná", + "Not available" : "Nie je k dispozícií", "Invitation declined" : "Pozvánka odmietnutá", "Declined {organizerName}'s invitation" : "Pozvánka od {organizerName} bola odmietnutá", - "Invitation is delegated" : "Pozvánka je delegovaná", - "Participation marked as tentative" : "Účasť označená ako predbežná", - "Invitation sent" : "Pozvánka odoslaná", + "Availability will be checked" : "Dostupnosť bude overená", + "Invitation will be sent" : "Pozvánka bude odoslaná", + "Failed to check availability" : "Nepodarilo sa skontrolovať dostupnosť", + "Failed to deliver invitation" : "Nepodarilo sa doručiť pozvánku", + "Awaiting response" : "Čaká sa na odpoveď", + "Checking availability" : "Kontrolujem dostupnosť", "Has not responded to {organizerName}'s invitation yet" : "Zatiaľ neodpovedal na pozvanie od {organizerName}", - "Availability of attendees, resources and rooms" : "Dostupnosť účastníkov, zdrojov a miestností", + "chairperson" : "predseda", + "required participant" : "požadovaná účasť", + "non-participant" : "bez účasti", + "optional participant" : "nepovinná účasť", "{organizer} (organizer)" : "{organizer} (organizátor)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Dostupnosť účastníkov, zdrojov a miestností", + "Suggestion accepted" : "Návrh bol prijatý", + "Legend" : "Legenda", + "Out of office" : "Mimo kancelárie", + "Attendees:" : "Účastníci:", + "Done" : "Hotovo", + "Search room" : "Vyhľadať miestnosť", + "Room name" : "Názov miestnosti", + "Check room availability" : "Skontrolovať obsadenosť miestnosti", "Free" : "Voľný", "Busy (tentative)" : "Zaneprázdnený (predbežne)", "Busy" : "Zaneprázdnený", - "Out of office" : "Mimo kancelárie", "Unknown" : "Neznámy", - "Accept" : "Prijať", - "Decline" : "Odmietnuť", - "Tentative" : "Neistý", + "Find a time" : "Nájisť čas", "The invitation has been accepted successfully." : "Pozvánka bola úspešne prijatá.", "Failed to accept the invitation." : "Prijatie pozvánky zlyhalo.", "The invitation has been declined successfully." : "Pozvánka bola odmietnutá.", "Failed to decline the invitation." : "Odmietnutie pozvánky zlyhalo.", "Your participation has been marked as tentative." : "Vaša účasť bola označená ako predbežná.", "Failed to set the participation status to tentative." : "Zlyhalo nastavenie vašej účasti ako predbežnej.", - "Create Talk room for this event" : "Vytvoriť pre túto udalosť miestnosť v Talk", - "Show busy times" : "Zobraziť časy zaneprázdnenosti", + "Accept" : "Prijať", + "Decline" : "Odmietnuť", + "Tentative" : "Neistý", "No attendees yet" : "Zatiaľ žiadni účastníci", - "Successfully appended link to talk room to description." : "Do popisu bol úspešne pridaný odkaz na miestnosť v Talk", - "Error creating Talk room" : "Chyba pri vytváraní miestnosti v Talk", - "Send email" : "Odoslať email", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} pozvaných, {confirmedCount} potvrdených", + "Successfully appended link to talk room to location." : "Do popisu bol úspešne pridaný odkaz na miestnosť v Talk /Rozhovore/.", + "Successfully appended link to talk room to description." : "Do popisu bol úspešne pridaný odkaz na miestnosť v Talk /Rozhovore/", + "Error creating Talk room" : "Chyba pri vytváraní miestnosti v Talk /Rozhovore/", + "Attendees" : "Účastníci", + "_%n more guest_::_%n more guests_" : ["%n ďalší hosť","%n ďalší hostia","%n ďalších hostí","%n ďalších hostí"], + "Remove group" : "Odstrániť skupinu", + "Remove attendee" : "Odstrániť účastníka", + "Request reply" : "Odpoveď na žiadosť", "Chairperson" : "Predseda", "Required participant" : "Požadovaná účasť", "Optional participant" : "Nepovinná účasť", "Non-participant" : "Bez účasti", - "Remove attendee" : "Odstrániť účastníka", - "Search for emails, users or contacts" : "Vyhľadať emaily, užívateľov alebo kontakty", + "_%n member_::_%n members_" : ["%n člen","%n členovia","%n členov","%n členov"], + "Search for emails, users, contacts, contact groups or teams" : "Hľadať e-maily, užívateľov, kontakty, skupiny kontaktov alebo tímy", "No match found" : "Nenašla sa žiadna zhoda", + "Note that members of circles get invited but are not synced yet." : "Všimnite si, že členovia kruhov dostávajú pozvánky, ale ešte nie sú synchronizovaní.", + "Note that members of contact groups get invited but are not synced yet." : "Upozorňujeme, že členovia skupín kontaktov sú pozvaní, ale ešte nie sú synchronizovaní.", "(organizer)" : "(organizátor)", + "Make {label} the organizer" : "Urobiť z {label} organizátora", + "Make {label} the organizer and attend" : "Urobiť z {label} organizátora a zúčastniť sa", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Ak chcete posielať pozvánky a vybavovať odpovede, [linkopen] pridajte svoju e-mailovú adresu do osobných nastavení [linkclose].", "Remove color" : "Odobrať farbu", "Event title" : "Názov udalosti", - "All day" : "Celý deň", "Cannot modify all-day setting for events that are part of a recurrence-set." : "U opakovaných udalostí nie je možné u jednotlivého výskytu zvlášť meniť, či je udalosť celodenná alebo ne.", - "from {startDate}" : "od {startDate}", - "from {startDate} at {startTime}" : "od {startDate} o {startTime}", - "to {endDate}" : "do {endDate}", - "to {endDate} at {endTime}" : "do {endDate} o {endTime}", + "From" : "Od", + "To" : "Pre", "Repeat" : "Opakovať", - "End repeat" : "Koniec opakovania", - "Select to end repeat" : "Vyberte koniec opakovania", + "_time_::_times_" : ["krát","krát","krát","krát"], "never" : "nikdy", "on date" : "dňa", "after" : "po", - "_time_::_times_" : ["krát","krát","krát","krát"], + "End repeat" : "Koniec opakovania", + "Select to end repeat" : "Vyberte koniec opakovania", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Táto udalosť je výnimkou v opakovanej udalosti. Nie je možné k nej pridať opakovanie.", "first" : "prvý", - "third" : "tretie", - "fourth" : "štvrté", - "fifth" : "piate", - "second to last" : "po koľko sekúnd", - "last" : "posledné", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Zmeny v opakovanej udalosti budú mať vplyv len na túto a budúce udalosti.", "Repeat every" : "Opakovať každý", "By day of the month" : "Podľa dňa v mesiaci", "On the" : "V", + "_day_::_days_" : ["deň","dni","dní","dní"], + "_week_::_weeks_" : ["týždeň","týždne","týždňov","týždňov"], "_month_::_months_" : ["mesiac","mesiace","mesiacov","mesiacov"], "_year_::_years_" : ["rok","roky","rokov","rokov"], + "On specific day" : "V zadaný deň", "weekday" : "deň v týždni", "weekend day" : "deň cez víkend", - "No recurrence" : "Žiadne nové", + "Does not repeat" : "Neopakuje sa", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Definícia opakovania tejto udalosti nie je Nextcloud plne podporovaná. Ak upravíte možnosti opakovania, niektoré opakovania sa môžu stratiť.", - "Suggestions" : "Návrhy", "No rooms or resources yet" : "Žiadne miestnosti alebo zdroje", + "Resources" : "Zdroje", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} miesto","{seatingCapacity} miest","{seatingCapacity} miest","{seatingCapacity} miest"], "Add resource" : "Pridať zdroj", "Has a projector" : "Má projektor", "Has a whiteboard" : "Má tabuľu", "Wheelchair accessible" : "Bezbariérový prístup", "Remove resource" : "Odstrániť zdroj", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} miesto","{seatingCapacity} miest","{seatingCapacity} miest","{seatingCapacity} miest"], - "Projector" : "Projektor", - "Whiteboard" : "Tabuľa", "Search for resources or rooms" : "Hľadať zdroje alebo miestnosti", "available" : "dostupné", "unavailable" : "nedostupné", + "Show all rooms" : "Zobraziť všetky miestnosti", + "Projector" : "Projektor", + "Whiteboard" : "Tabuľa", "Room type" : "Typ miestnosti", "Any" : "Akékoľvek", "Minimum seating capacity" : "Minimálna kapacita miest na sedenie", - "More" : "Viac", - "Update this occurrence" : "Aktualizovať tento výskyt", + "More details" : "Viac podrobností", "Update this and all future" : "Aktualizovať tento a všetky budúce", + "Update this occurrence" : "Aktualizovať tento výskyt", "Public calendar does not exist" : "Verejný kalendár neexistuje", - "Maybe the share was deleted or has expired?" : "Možno bolo zrušené sprístupnenie alebo skončila jeho platnosť?", - "Please select a time zone:" : "Prosím vyberte časovú zónu:", - "Pick a time" : "Vyberte čas", - "Pick a date" : "Vyberte dátum", + "Maybe the share was deleted or has expired?" : "Možno bolo zrušené zdieľanie alebo skončila jeho platnosť?", "from {formattedDate}" : "od {formattedDate}", "to {formattedDate}" : "do {formattedDate}", "on {formattedDate}" : "{formattedDate}", @@ -335,9 +425,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} o {formattedTime}", "Please enter a valid date" : "Zadajte platný dátum", "Please enter a valid date and time" : "Zadajte platný dátum a čas", + "Select a time zone" : "Vybrať časové pásmo", + "Please select a time zone:" : "Prosím vyberte časovú zónu:", + "Pick a time" : "Vyberte čas", + "Pick a date" : "Vyberte dátum", "Type to search time zone" : "Písaním nájdete časovú zónu", "Global" : "Globálne", - "Select date" : "Vybrať dátum", + "Holidays in {region}" : "Sviatky v/na {region}", + "An error occurred, unable to read public calendars." : "Vyskytla sa chyba, nie je možné načítať verejné kalendáre.", + "An error occurred, unable to subscribe to calendar." : "Vyskytla sa chyba, nie je možné prihlásiť sa ku kalendáru.", + "Public holiday calendars" : "Kalendár verejných sviatkov", + "Public calendars" : "Verejné kalendáre", + "No valid public calendars configured" : "Žiadne platné verejné kalendáre nie sú nakonfigurované.", + "Speak to the server administrator to resolve this issue." : "Kontaktuje administrátora servera, aby ste vyriešili túto situáciu.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Verejné sviatky sú poskytované Thunderbirdom. Kalendárne údaje budú stiahnuté z {website}.", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Tieto verejné kalendáre sú navrhnuté správcom servera. Kalendárne údaje budú stiahnuté z príslušnej webovej stránky.", + "By {authors}" : "Od {authors}", + "Subscribed" : "Prihlásený na odber", + "Subscribe" : "Odoberať", + "Could not fetch slots" : "Nepodarilo sa získať sloty", + "Select a date" : "Vybrať dátum", "Select slot" : "Vybrať slot", "No slots available" : "Žiadny slot nie je k dispozícii", "The slot for your appointment has been confirmed" : "Slot pre váš termín bol potvrdený", @@ -354,24 +461,25 @@ "Personal" : "Osobné", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Automatická detekcia časového pásma určila, že vaše časové pásmo je UTC.\nJe to pravdepodobne výsledok bezpečnostných opatrení vášho webového prehliadača.\nNastavte časové pásmo manuálne v nastaveniach kalendára.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Vami nastavené časové pásmo ({timezoneId}) sa nenašlo. Nastavené bolo UTC.\nZmeňte v nastaveniach svoje časové pásmo a nahláste tento problém.", - "No more events today" : "Dnes žiadne ďalšie udalosti", - "No upcoming events" : "Žiadne nadchádzajúce udalosti", - "Create a new event" : "Vytvoriť novú udalosť", - "[Today]" : "[Dnes]", - "[Tomorrow]" : "[Zajtra]", - "[Yesterday]" : "[Včera]", - "[Last] dddd" : "[Posledné] dddd", + "Availability of {displayName}" : "Dostupnosť {displayName}", + "Edit event" : "Upraviť udalosť", "Event does not exist" : "Udalosť neexistuje", "Duplicate" : "Duplikát", "Delete this occurrence" : "Vymazať tento výskyt", "Delete this and all future" : "Vymazať toto a všetko budúce", - "Details" : "Podrobnosti", - "Attendees" : "Účastníci", - "Resources" : "Zdroje", + "All day" : "Celý deň", + "Modifications wont get propagated to the organizer and other attendees" : "Úpravy sa nedostanú k organizátorovi a ostatným účastníkom", + "Managing shared access" : "Spravovanie zdieľaného prístupu", + "Deny access" : "Odmietnuť prístup", + "Invite" : "Pozvať", + "_User requires access to your file_::_Users require access to your file_" : ["Užívateľ žiada prístup k vášmu súboru.","Užívatelia žiadajú prístup k vášmu súboru.","Užívatelia žiadajú prístup k vášmu súboru.","Užívatelia žiadajú prístup k vášmu súboru."], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Príloha vyžadujúca zdieľaný prístup","Prílohy vyžadujúce zdieľaný prístup","Prílohy vyžadujúce zdieľaný prístup","Prílohy vyžadujúce zdieľaný prístup"], + "Untitled event" : "Udalosť bez názvu", "Close" : "Zavrieť", - "Show more details" : "Zobraziť ďalšie podrobnosti", + "Modifications will not get propagated to the organizer and other attendees" : "Úpravy sa nedostanú medzi organizátorov a ostatných účastníkov", "Subscribe to {name}" : "Prihlásiť sa na odber {name}", "Export {name}" : "Exportovať {name}", + "Show availability" : "Zobraziť dostupnosť", "Anniversary" : "Výročie", "Appointment" : "Stretnutie", "Business" : "Služobné", @@ -399,7 +507,6 @@ "on {time}" : "o {time}", "on {time} ({timezoneId})" : "o {time} ({timezoneId})", "Week {number} of {year}" : "Týždeň {number} roku {year}", - "Does not repeat" : "Neopakuje sa", "Daily" : "Denne", "Weekly" : "Týždenne", "Monthly" : "Mesačne", @@ -411,24 +518,30 @@ "_on {weekday}_::_on {weekdays}_" : ["v {weekday}","v {weekday}","v {weekday}","v {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["v dni {dayOfMonthList}","v dňoch {dayOfMonthList}","v dňoch {dayOfMonthList}","v dňoch {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "každý mesiac {ordinalNumber} {byDaySet}", - "in {monthNames}" : "v {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "v {monthNames} dňa {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "v {monthNames} v {ordinalNumber} {byDaySet}", "until {untilDate}" : "do {untilDate}", "_%n time_::_%n times_" : ["%n raz","%n raz","%n raz","%n raz"], - "Untitled event" : "Udalosť bez názvu", + "second" : "druhý", + "third" : "tretie", + "fourth" : "štvrté", + "fifth" : "piate", + "second to last" : "po koľko sekúnd", + "last" : "posledné", "Untitled task" : "Úloha bez názvu", "Please ask your administrator to enable the Tasks App." : "Požiadajte svojho správcu, aby povolil aplikáciu Úlohy.", - "Prev" : "Predch", - "Next" : "Ďalšie", - "Prev year" : "Predchodzí rok", - "Next year" : "Nasledujúci rok", - "Year" : "Rok", + "You are not allowed to edit this event as an attendee." : "Ako účastník nemáte povolené upravovať túto udalosť.", "W" : "T", "%n more" : "%n ďalších", "No events to display" : "Žiadne udalosti k zobrazeniu", + "All participants declined" : "Všetci účastníci odmietli", + "Please confirm your participation" : "Prosím, potvrďte svoju účasť", + "You declined this event" : "Odmietli ste túto udalosť", + "Your participation is tentative" : "Vaša účasť je predbežná", "_+%n more_::_+%n more_" : ["+%n ďalší","+%n ďalší","+%n ďalší","+%n ďalších"], "No events" : "Žiadne udalosti", "Create a new event or change the visible time-range" : "Vytvorte novú udalosť alebo zmeňte viditeľný časový rozsah", + "Failed to save event" : "Nepodarilo sa uložiť udalosť.", "It might have been deleted, or there was a typo in a link" : "Buď to bolo zmazané, alebo je chyba v odkaze", "It might have been deleted, or there was a typo in the link" : "Buď to bolo zmazané, alebo je chyba v odkaze", "Meeting room" : "Zasadacia miestnosť", @@ -441,7 +554,7 @@ "When shared hide this event" : "Pri zdieľaní skryť udalosť", "The visibility of this event in shared calendars." : "Viditeľnosť tejto udalosti v zdieľaných kalendároch.", "Add a location" : "Zadajte umiestnenie", - "Add a description" : "Zadajte popis", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Pridať popis\n\n- O čom je toto stretnutie\n- Body programu\n- Všetko, čo si účastníci musia pripraviť", "Status" : "Stav", "Confirmed" : "Potvrdené", "Canceled" : "Zrušené", @@ -454,135 +567,23 @@ "Add this as a new category" : "Pridať ako novú kategóriu", "Custom color" : "Vlastná farba", "Special color of this event. Overrides the calendar-color." : "Špeciálna farba tejto udalosti. Prepíše farbu kalendára.", - "Chat room for event" : "Chatová miestnosť pre udalosť", + "Error while sharing file" : "Pri zdieľaní súboru došlo k chybe", + "Error while sharing file with user" : "Chyba pri zdieľaní súboru používateľovi", + "Attachment {fileName} already exists!" : "Príloha {fileName} už existuje!", + "An error occurred during getting file information" : "Vyskytla sa chyba pri získavaní informácií o súbore.", + "Talk conversation for event" : "Konverzácia Talk pre udalosť", + "An error occurred, unable to delete the calendar." : "Vyskytla sa chyba, nie je možné zmazať kalendár.", "Imported {filename}" : "Importované {filename}", - "Meditation" : "Meditácia", - "Relaxing" : "Odpočinok", - "Relax" : "Odpočinok", - "Break" : "Prestávka", - "Commute" : "Na ceste", - "Commuting" : "Na ceste", - "Shuttle" : "Loď", - "Invoice" : "Faktúra", - "Finance" : "Financie", - "Bank" : "Banka", - "Money" : "Peniaze", - "Wedding" : "Svadba", - "Dog" : "Pes", - "Concert" : "Koncert", - "Festival" : "Festival", - "Theater" : "Divadlo", - "Theatre" : "Koncertná sála", - "Presentation" : "Prezentácia", - "Talk" : "Rozhovor", - "Speech" : "Prejav", - "Deadline" : "Konečný termín", - "Submission" : "Podanie", - "Reporting" : "Zostavy", - "Camping" : "Táborenie", - "Camp" : "Kempovanie", - "Election" : "Voľby", - "Voting" : "Hlasovanie", - "Vote" : "Hlas", - "Barbecue" : "Grilovanie", - "Barbeque" : "Grilovanie", - "Garden" : "Záhrada", - "Farm" : "Farma", - "Movie" : "Film", - "Cinema" : "Kino", - "Graduation" : "Štátnice", - "Brainstorm" : "Porada", - "Review" : "Preskúmať", - "Audit" : "Audit", - "Inspection" : "Inšpekcia", - "Proofreading" : "Korektúra", - "Baseball" : "Bejzbal", - "Meet" : "Stretnutie", - "Planning" : "Plánovanie", - "Pointing" : "Ukazovanie", - "Retrospective" : "Retrospektíva", - "Office" : "Kancelária", - "Contributor week" : "Týždeň prispievateľov", - "Mail" : "Pošta", - "Soccer" : "futbal", - "Football" : "Futbal", - "Gaming" : "Hranie", - "Drive" : "Šoférovať", - "Driving" : "Šoférovanie", - "Bicycle" : "Bicykel", - "Cycle" : "Bicyklovať", - "Cycling" : "Byciklovanie", - "Biking" : "Bicyklovanie", - "Bike" : "Bycikel", - "Podcast" : "Podcast", - "Basketball" : "Basketbal", - "Fishing" : "Rybačka", - "Hiking" : "Turistika", - "Hike" : "Túra", - "Art" : "Umenie", - "Exhibition" : "Výstava", - "Museum" : "Múzeum", - "Pilates" : "Cvičenie", - "Park" : "Park", - "Walk" : "Chôdza", - "Studying" : "Učiť sa", - "Doctor" : "Doktor", - "Health" : "Zdravie", - "Dentist" : "Zubár", - "Hospital" : "Nemocnica", - "Interview" : "Pohovor", - "Training" : "Tréning", - "Practice" : "Tréning", - "Sports" : "Šport", - "Exercise" : "Cvičenie", - "Work out" : "Posilovňa", - "Working out" : "Posilovať", - "Gym" : "Fitko", - "Barber" : "Holič", - "Haircut" : "Účes", - "Hairdresser" : "Kaderník", - "Exam" : "Skúška", - "Written test" : "Písomka", - "Oral test" : "Ústny test", - "Working" : "Práca", - "New Years Eve" : "Nový rok", - "NYE" : "Silvester", - "Fireworks" : "ohňostroj", - "Running" : "beh", - "Go for a run" : "behať", - "Marathon" : "Maratón", - "Video-conference" : "Video-konferencia", - "Conference-call" : "Konferenčný hovor", - "Video-call" : "Video-hovor", - "Video-chat" : "Video-čet", - "Video-meeting" : "Video-stretnutie", - "Call" : "Telefonát", - "Calling" : "Zavolať", - "Christmas" : "Vianoce", - "Conference" : "Konferencia", - "Pizza" : "Pizza", - "Travelling" : "Cestovanie", - "Trip" : "Výlet", - "Journey" : "Cestovanie", - "Collaborate" : "Spolupracovať", - "Pair" : "Dvojica", - "Lecture" : "Prednáška", - "Seminar" : "Seminár", - "Teaching" : "Školenie", - "Photograph" : "Fotografovať", - "Party" : "Párty", - "Celebration" : "Oslava", - "Celebrate" : "Oslava", - "Birthday" : "Narodeniny", - "Shopping" : "Nakupovanie", - "Groceries" : "Potraviny", - "Skate" : "Korčulovanie", - "Skateboard" : "Skateboard", - "Wine tasting" : "Ochutnávka vína", - "Golf" : "Golf", - "Dinner" : "Večera", - "Lunch" : "Obed", + "This is an event reminder." : "Toto je pripomienka udalosti.", + "Error while parsing a PROPFIND error" : "Chyba pri parsovaní chyby PROPFIND", "Appointment not found" : "Stretnutie nebolo nájdené", - "User not found" : "Užívateľ nebol nájdený" + "User not found" : "Užívateľ nebol nájdený", + "Reminder" : "Pripomienka", + "+ Add reminder" : "+ Pridať pripomienku", + "Select automatic slot" : "Vybrať automatický slot", + "with" : "s", + "Available times:" : "Dostupné termíny:", + "Suggestions" : "Návrhy", + "Details" : "Podrobnosti" },"pluralForm" :"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);" } \ No newline at end of file diff --git a/l10n/sl.js b/l10n/sl.js index c0b558997403cfc2ef7b0c7cf87e53133b72718a..2198f1ca5194d02c2781b10ff595f586cc34f82f 100644 --- a/l10n/sl.js +++ b/l10n/sl.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Ponujen elektronski naslov je predolg", "User-Session unexpectedly expired" : "Uporabniška seja se je nepričakovano končala", "Provided email-address is not valid" : "Podan elektronski naslov ni veljaven naslov", "%s has published the calendar »%s«" : "%s objavi koledar » %s «", @@ -11,118 +12,155 @@ OC.L10N.register( "Open »%s«" : "Odpri »%s«", "Cheers!" : "Lep pozdrav!", "Upcoming events" : "Prihajajoči dogodki", + "No more events today" : "Danes ni več načrtovanih dogodkov", + "No upcoming events" : "Ni prihajajočih dogodkov", + "More events" : "Več dogodkov", + "%1$s with %2$s" : "%1$s z %2$s", + "Calendar" : "Koledar", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) naznani sestanek »{config_display_name}« na dan {date_time}.", "Appointments" : "Sestanki", "Schedule appointment \"%s\"" : "Načrtovanje sestanka »%s«", "Schedule an appointment" : "Načrtovanje sestanka", + "%1$s - %2$s" : "%1$s – %2$s", "Prepare for %s" : "Pripravi za %s", - "Your appointment \"%s\" needs confirmation" : "Sestanek »%s« zahteva potrditev", + "Follow up for %s" : "Nadaljevanje za %s", + "Your appointment \"%s\" with %s needs confirmation" : "Sestanek »%s« z osebo %s zahteva potrditev", + "Dear %s, please confirm your booking" : "%s, prosim potrdite rezervacijo", "Confirm" : "Potrdi", - "Appointment:" : "Sestanek:", + "Appointment with:" : "Sestanek:", + "Description:" : "Opis:", + "This confirmation link expires in %s hours." : "Potrditvena povezava poteče po %s urah.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Če vseeno želite preklicati sestanek, stopite v stik z organizatorjem z odgovorom na njegovo elektronsko sporočilo oziroma z obiskom strani profila.", + "Your appointment \"%s\" with %s has been accepted" : "Sestanek »%s« z osebo %s je potrjen", + "Dear %s, your booking has been accepted." : " %s, sestanek je potrjen.", + "Appointment for:" : "Sestanek:", "Date:" : "Datum:", + "You will receive a link with the confirmation email" : "Prejeli boste elektronsko sporočilo z overitveno povezavo", "Where:" : "Kje:", - "Description:" : "Opis:", - "Calendar" : "Koledar", + "Comment:" : "Opomba", "A Calendar app for Nextcloud" : "Program za urejanje koledarja Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Program Koledar je uporabniški vmesnik v okolju Nextcloud za strežnik CalDAV. Omogoča enostavno usklajevanje dogodkov z različnih naprav in urejanje na spletu.\n\n* 🚀 **Podpira druge programe Nextcloud!** Trenutno Stike, drugi bodo na voljo kmalu.\n* 🌐 **Omogočena je podpora za WebCal!** Ali želite spremljati tekme priljubljenega moštva iz svojega koledarja? Ni problema!\n* 🙋 **Povabila udeležencem!** Pošljite vabila na dogodke.\n* ⌚️ **Zasedeno/Prosto!** Sproti preverite, ali so potencialni udeleženci prosti za sestanke.\n ⏰ **Opomniki!** Prejmite alarme in obvestila v brskalniku in po elektronski pošti.\n* 🔍 Iskalnik! Enostavno iskanje dogodkov.\n* ☑️ Naloge! Sedaj so naloge z datumi preteka vidni v koledarju.\n* 🙈 **Ne odkrivamo po nepotrebnem kolesa!** Zasnovano na odličnih knjižnicah [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) in [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Predhodni dan", "Previous week" : "Predhodni teden", + "Previous year" : "Predhodno leto", "Previous month" : "Predhodni mesec", "Next day" : "Naslednji dan", "Next week" : "Naslednji teden", + "Next year" : "Naslednje leto", "Next month" : "Naslednji mesec", - "New event" : "Nov dogodek", + "Create new event" : "Ustvari nov dogodek", + "Event" : "Dogodek", "Today" : "Danes", "Day" : "Dan", "Week" : "Teden", "Month" : "Mesec", + "Year" : "Leto", "List" : "Seznam", + "Appointment link was copied to clipboard" : "Povezava sestanka je kopirana v odložišče.", + "Appointment link could not be copied to clipboard" : "Povezave sestanka ni mogoče kopirati v odložišče.", "Preview" : "Predogled", "Copy link" : "Kopiraj povezavo", "Edit" : "Uredi", "Delete" : "Izbriši", - "Add new" : "Dodaj novo", - "Untitled calendar" : "Neimenovan koledar", - "Edit name" : "Uredi ime", - "Saving name …" : "Shranjevanje imena ...", - "Edit color" : "Uredi barvo", - "Saving color …" : "Shranjevanje barve ...", - "Copy private link" : "Kopiraj zasebno povezavo", - "Export" : "Izvozi", - "Unshare from me" : "Prekini souporabo", + "Create new" : "Ustvari novo", + "Disable calendar \"{calendar}\"" : "Onemogoči koledar »{calendar}«", + "Disable untitled calendar" : "Onemogoči neimenovan koledar", + "Enable calendar \"{calendar}\"" : "Omogoči koledar »{calendar}«", + "Enable untitled calendar" : "Omogoči neimenovan koledar", "An error occurred, unable to change visibility of the calendar." : "Prišlo je do napake; ni mogoče spremeniti vidnosti koledarja.", - "An error occurred, unable to delete the calendar." : "Prišlo je do napake; ni mogoče izbrisati koledarja.", - "Calendar link copied to clipboard." : "Povezava koledarja je kopirana v odložišče.", - "Calendar link could not be copied to clipboard." : "Povezave koledarja ni mogoče kopirati v odložišče.", - "An error occurred, unable to rename the calendar." : "Prišlo je do napake; koledarja ni mogoče preimenovati.", - "An error occurred, unable to change the calendar's color." : "Prišlo je do napake; ni mogoče spremeniti barve koledarja.", + "Untitled calendar" : "Neimenovan koledar", + "Shared with you by" : "Souporabo omogoča", + "Edit and share calendar" : "Uredi in omogoči souporabo koledarja", + "Edit calendar" : "Uredi koledar", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Souporaba koledarja bo onemogočena čez {countdown} sekundo","Souporaba koledarja bo onemogočena čez {countdown} sekundi","Souporaba koledarja bo onemogočena čez {countdown} sekunde","Souporaba koledarja bo prekinjena čez {countdown} sekund"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Koledar bo izbrisan čez {countdown} sekundo","Koledar bo izbrisan čez {countdown} sekundi","Koledar bo izbrisan čez {countdown} sekunde","Koledar bo izbrisan čez {countdown} sekund"], + "An error occurred, unable to create the calendar." : "Prišlo je do napake, koledarja ni mogoče ustvariti.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vpisati je treba veljavne povezave (začeti se morajo s http://, https://, webcal://, ali webcals://)", + "Calendars" : "Koledarji", + "Add new" : "Dodaj novo", + "New calendar" : "Nov koledar", + "Name for new calendar" : "Naziv novega koledarja", + "Creating calendar …" : "Poteka ustvarjanje koledarja ...", + "New calendar with task list" : "Nov koledar s seznamom nalog", + "New subscription from link (read-only)" : "Naročnina prek povezave (le za branje)", + "Creating subscription …" : "Poteka ustvarjanje naročnine ...", + "Add public holiday calendar" : "Dodaj koledar javnih praznikov", + "Add custom public calendar" : "Dodaj javni koledar po meri", + "Calendar link copied to clipboard." : "Povezava koledarja je kopirana v odložišče.", + "Calendar link could not be copied to clipboard." : "Povezave koledarja ni mogoče kopirati v odložišče.", + "Copy subscription link" : "Kopiraj povezavo naročnine", + "Copying link …" : "Kopiranje povezave ...", + "Copied link" : "Kopirana povezava", + "Could not copy link" : "Povezave ni mogoče kopirati", + "Export" : "Izvozi", + "Untitled item" : "Neimenovan predmet", + "Unknown calendar" : "Neznan koledar", + "Could not load deleted calendars and objects" : "Ni mogoče naložiti izbrisanih koledarjev in predmetov", + "Could not delete calendar or event" : "Ni mogoče izbrisati koledarja ali dogodka", + "Could not restore calendar or event" : "Ni mogoče obnoviti koledarja ali dogodka", + "Do you really want to empty the trash bin?" : "Ali zares želite izprazniti smetnjak?", + "Empty trash bin" : "Izprazni smeti", + "Trash bin" : "Smetnjak", + "Loading deleted items." : "Poteka nalaganje izbrisanih predmetov.", + "You do not have any deleted items." : "Ni izbrisanih predmetov.", + "Name" : "Ime", + "Deleted" : "Izbrisano", + "Restore" : "Obnovi", + "Delete permanently" : "Izbriši trajno", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Predmeti v smetnjaku se izbrišejo po {numDays} dnevu.","Predmeti v smetnjaku se izbrišejo po {numDays} dnevih.","Predmeti v smetnjaku se izbrišejo po {numDays} dnevih.","Predmeti v smetnjaku se izbrišejo po {numDays} dnevih."], + "Could not update calendar order." : "Ni mogoče posodobiti koledarja", + "Shared calendars" : "Koledarji v souporabi", + "Deck" : "Deck", + "Hidden" : "Skrito", + "Internal link" : "Notranja povezava", + "A private link that can be used with external clients" : "Zasebna povezava, ki se lahko uporablja z zunanjimi odjemalci", + "Copy internal link" : "Kopiraj krajevno povezavo", + "An error occurred, unable to publish calendar." : "Prišlo je do napake; koledarja ni mogoče objaviti.", + "An error occurred, unable to send email." : "Prišlo je do napake; ni mogoče poslati elektronskega sporočila.", + "Embed code copied to clipboard." : "Vstavljiva koda je kopirana v odložišče.", + "Embed code could not be copied to clipboard." : "Vstavljive kode ni mogoče kopirati v odložišče.", + "Unpublishing calendar failed" : "Preklic objave koledarja je spodletel", "Share link" : "Povezava za souporabo", - "Publish calendar" : "Objavi koledar", - "Publishing calendar" : "Poteka objavljanje koledarja", "Copy public link" : "Kopiraj javno povezavo", "Send link to calendar via email" : "Pošlji povezavo za koledar prek elektronske pošte", "Enter one address" : "Vpišite en naslov", "Sending email …" : "Poteka pošiljanje elektronske pošte ...", - "Copy subscription link" : "Kopiraj povezavo naročnine", - "Copying link …" : "Kopiranje povezave ...", - "Copied link" : "Kopirana povezava", - "Could not copy link" : "Povezave ni mogoče kopirati", "Copy embedding code" : "Kopiraj vstavljivo kodo", "Copying code …" : "Kopiranje kode ...", "Copied code" : "Koda je kopirana", "Could not copy code" : "Kode ni mogoče kopirati", "Delete share link" : "Izbriši povezavo za souporabo", "Deleting share link …" : "Poteka brisanje povezave souporabe ...", - "An error occurred, unable to publish calendar." : "Prišlo je do napake; koledarja ni mogoče objaviti.", - "An error occurred, unable to send email." : "Prišlo je do napake; ni mogoče poslati elektronskega sporočila.", - "Embed code copied to clipboard." : "Vstavljiva koda je kopirana v odložišče.", - "Embed code could not be copied to clipboard." : "Vstavljive kode ni mogoče kopirati v odložišče.", - "Unpublishing calendar failed" : "Preklic objave koledarja je spodletel", - "Share with users or groups" : "Souporaba z uporabniki in skupinami", - "No users or groups" : "Ni uporabnikov ali skupin", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Skupina)", + "An error occurred while unsharing the calendar." : "Prišlo je do napake med onemogočanjem souporabe koledarja.", + "An error occurred, unable to change the permission of the share." : "Prišlo je do napake; ni mogoče spremeniti dovoljenj souporabe.", "can edit" : "lahko ureja", "Unshare with {displayName}" : "Odstrani souporabo z uporabnikom {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Prišlo je do napake; ni mogoče spremeniti souporabe koledarja.", - "An error occurred, unable to change the permission of the share." : "Prišlo je do napake; ni mogoče spremeniti dovoljenj souporabe.", - "+ New calendar" : "+ Nov koledar", - "New calendar" : "Nov koledar", - "Name for new calendar" : "Naziv novega koledarja", - "Creating calendar …" : "Poteka ustvarjanje koledarja ...", - "New calendar with task list" : "Nov koledar s seznamom nalog", - "New subscription from link (read-only)" : "Naročnina prek povezave (le za branje)", - "Creating subscription …" : "Poteka ustvarjanje naročnine ...", - "An error occurred, unable to create the calendar." : "Prišlo je do napake, koledarja ni mogoče ustvariti.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vpisati je treba veljavne povezave (začeti se morajo s http://, https://, webcal://, ali webcals://)", - "Trash bin" : "Smetnjak", - "Loading deleted elements." : "Poteka nalaganje izbrisanih predmetov.", - "You do not have any deleted elements." : "Ni izbrisanih predmetov.", - "Name" : "Ime", - "Deleted" : "Izbrisano", - "Restore" : "Obnovi", - "Delete permanently" : "Izbriši trajno", - "Empty trash bin" : "Izprazni smeti", - "Untitled element" : "Neimenovan predmet", - "Unknown calendar" : "Neznan koledar", - "Could not load deleted calendars and objects" : "Ni mogoče naložiti izbrisanih koledarjev in predmetov", - "Could not restore calendar or event" : "Ni mogoče obnoviti koledarja ali dogodka", - "Do you really want to empty the trash bin?" : "Ali zares želite izprazniti smetnjak?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Predmeti v smetnjaku se izbrišejo po {numDays} dnevu","Predmeti v smetnjaku se izbrišejo po {numDays} dnevih","Predmeti v smetnjaku se izbrišejo po {numDays} dnevih","Predmeti v smetnjaku se izbrišejo po {numDays} dnevih"], - "Could not update calendar order." : "Ni mogoče posodobiti koledarja", + "Share with users or groups" : "Souporaba z uporabniki in skupinami", + "No users or groups" : "Ni uporabnikov ali skupin", + "Failed to save calendar name and color" : "Shranjevanje imena koledarja in barve je spodletelo", + "Calendar name …" : "Ime koledarja …", + "Share calendar" : "Omogoči souporabo koledarja", + "Unshare from me" : "Prekini souporabo", + "Save" : "Shrani", "Import calendars" : "Uvozi koledarje", - "Please select a calendar to import into …" : "Izberite koledar, v katerega naj se uvozi ...", + "Please select a calendar to import into …" : "Izberite koledar za uvoz ...", "Filename" : "Ime datoteke", "Calendar to import into" : "Koledar, v katerega naj se uvozi", "Cancel" : "Prekliči", "_Import calendar_::_Import calendars_" : ["Uvozi koledar","Uvozi koledarja","Uvozi koledarje","Uvozi koledarje"], + "Select the default location for attachments" : "Izbor privzetega mesta za priloge", + "Pick" : "Izbor", + "Invalid location selected" : "Izbrano je neveljavno mesto", + "Attachments folder successfully saved." : "Mapa prilog je uspešno shranjena.", + "Error on saving attachments folder." : "Napaka med shranjevanjem mape prilog", + "Default attachments location" : "Privzeto mesto prilog", "{filename} could not be parsed" : "Datoteke {filename} ni mogoče razčleniti", "No valid files found, aborting import" : "Ni najdenih veljavnih datotek, uvoz bo preklican", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Uspešno je uvožen %n dogodek.","Uspešno sta uvožena %n dogodka.","Uspešno so uvoženi %n dogodki.","Uspešno je uvoženih %n dogodkov."], "Import partially failed. Imported {accepted} out of {total}." : "Uvoz je delno spodletel. Uvoženih je {accepted} od skupno {total}.", "Automatic" : "Samodejno", "Automatic ({detected})" : "Samodejno ({detected})", "New setting was not saved successfully." : "Novih nastavitev ni bilo mogoče shraniti.", - "Shortcut overview" : "Pregled tipkovnih bližnjic", - "or" : "ali", "Navigation" : "Krmarjenje", "Previous period" : "Predhodno obdobje", "Next period" : "Naslednje obdobje", @@ -130,6 +168,7 @@ OC.L10N.register( "Day view" : "Dnevni pogled", "Week view" : "Tedenski pogled", "Month view" : "Mesečni pogled", + "Year view" : "Letni pogled", "List view" : "Seznamski pogled", "Actions" : "Dejanja", "Create event" : "Ustvari dogodek", @@ -138,29 +177,42 @@ OC.L10N.register( "Close editor" : "Zapri urejevalnik", "Save edited event" : "Shrani spremenjen dogodek", "Delete edited event" : "Izbriši spremenjen dogodek", + "Duplicate event" : "Podvoji dogodek", + "Shortcut overview" : "Pregled tipkovnih bližnjic", + "or" : "ali", + "Calendar settings" : "Nastavitve koledarja", + "No reminder" : "Brez opomnika", + "Failed to save default calendar" : "Shranjevanje privzetega koledarja je spodletelo", + "CalDAV link copied to clipboard." : "Povezava CalDAV je kopirana v odložišče.", + "CalDAV link could not be copied to clipboard." : "Povezave CalDAV ni mogoče kopirati v odložišče.", "Enable birthday calendar" : "Omogoči koledar rojstnih dni", "Show tasks in calendar" : "Pokaži naloge v koledarju", "Enable simplified editor" : "Omogoči poenostavljen urejevalnik", - "Limit visible events per view" : "Omeji prikaz dogodkov v pogledu", + "Limit the number of events displayed in the monthly view" : "Omeji število dogodkov v pogledu meseca", "Show weekends" : "Pokaži vikende", "Show week numbers" : "Pokaži številke tednov", "Time increments" : "Časovno povečevanje", + "Default calendar for incoming invitations" : "Privzeti koledar za prihajajoča povabila", "Default reminder" : "Privzeti opomnik", "Copy primary CalDAV address" : "Kopiraj osnovni naslov CalDAV", "Copy iOS/macOS CalDAV address" : "Kopiraj naslov CalDAV za iOS/macOS", "Personal availability settings" : "Nastavitve osebne dejavnosti", "Show keyboard shortcuts" : "Pokaži tipkovne bližnjice", - "No reminder" : "Brez opomnika", - "CalDAV link copied to clipboard." : "Povezava CalDAV je kopirana v odložišče.", - "CalDAV link could not be copied to clipboard." : "Povezave CalDAV ni mogoče kopirati v odložišče.", - "Appointment was created successfully" : "Sestanek je bil uspešno ustvarjen", - "Appointment was updated successfully" : "Sestanek je bil uspešno posodobljen", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuta","{duration} minuti","{duration} minute","{duration} minut"], "0 minutes" : "0 minut", + "_{duration} hour_::_{duration} hours_" : ["{duration} ura","{duration} uri","{duration} ure","{duration} ur"], + "_{duration} day_::_{duration} days_" : ["{duration} dan","{duration} dneva","{duration} dni","{duration} dni"], + "_{duration} week_::_{duration} weeks_" : ["{duration} teden","{duration} tedna","{duration} tedne","{duration} tednov"], + "_{duration} month_::_{duration} months_" : ["{duration} mesec","{duration} meseca","{duration} mesece","{duration} mesecev"], + "_{duration} year_::_{duration} years_" : ["{duration} leto","{duration} leti","{duration} leta","{duration} let"], "To configure appointments, add your email address in personal settings." : "Za nastavljanje sestankov dodajte elektronski naslov med osebne nastavitve.", "Public – shown on the profile page" : "Javno – prikazano na strani profila", "Private – only accessible via secret link" : "Zasebno – dostopno le z zasebno povezavo", + "Update" : "Posodobi", + "Appointment name" : "Ime srečanja", "Location" : "Mesto", + "Create a Talk room" : "Ustvari skupino Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Enoznačna povezava bo ustvarjena za vsak rezerviran termin in poslana s potrditvenim poštnim sporočilom.", "Description" : "Opis", "Visibility" : "Vidnost", "Duration" : "Trajanje", @@ -168,7 +220,7 @@ OC.L10N.register( "Additional calendars to check for conflicts" : "Dodatni koledarji za preverjanje sporov", "Pick time ranges where appointments are allowed" : "Izbor časovnih obdobij, ko so sestanki mogoči", "to" : "do", - "Delete slot" : "Izbriši možnost", + "Delete slot" : "Izbriši termin", "No times set" : "Ni določenih obdobij", "Add" : "Dodaj", "Monday" : "ponedeljek", @@ -178,18 +230,25 @@ OC.L10N.register( "Friday" : "petek", "Saturday" : "sobota", "Sunday" : "nedelja", + "Weekdays" : "Delovni dnevi", "Add time before and after the event" : "Dodaj čas pred in po dogodku", "Before the event" : "Pred dogodkom", "After the event" : "Po dogodku", "Planning restrictions" : "Omejitve načrtovanja", - "Create appointment" : "Ustvari sestanek", - "Edit appointment" : "Uredi sestanek", - "Save" : "Shrani", - "Update" : "Posodobi", + "Minimum time before next available slot" : "Najmanjši čas do naslednjega časovnega termina", + "Max slots per day" : "Največje število časovnih terminov na dan", + "Limit how far in the future appointments can be booked" : "Omeji, kako daleč v prihodnost je mogoče rezervirati sestanke. ", + "Please confirm your reservation" : "Potrdite rezervacijo", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Na elektronski naslov je bilo poslano sporočilo. Prosim, potrdite sestanek z uporabe povezave v sporočilu. To stran lahko zaprete.", "Your name" : "Ime", "Your email address" : "Elektronski naslov", - "Book the appointment" : "Zabeležite si sestanek", - "Reminder" : "Opomnik", + "Please share anything that will help prepare for our meeting" : "Pošljite vse predloge in dokumente, ki so pomembni pri pripravi na srečanje.", + "Could not book the appointment. Please try again later or contact the organizer." : "Sestanka ni mogoče rezervirati. Poskusite znova kasneje oziroma stopite v stik z organizatorjem.", + "Back" : "Nazaj", + "Create a new conversation" : "Ustvari nov pogovor", + "Select conversation" : "pogovora", + "on" : "na", + "at" : "ob", "before at" : "prej ob", "Notification" : "Obvestilo", "Email" : "Elektronsko sporočilo", @@ -200,100 +259,122 @@ OC.L10N.register( "Edit time" : "Uredi čas", "Save time" : "Shrani čas", "Remove reminder" : "Odstrani opomnik", - "on" : "na", - "at" : "ob", - "+ Add reminder" : "+ Dodaj opomnik", "Add reminder" : "Dodaj opomnik", - "_second_::_seconds_" : ["sekunda","sekundi","sekunde","sekund"], - "_minute_::_minutes_" : ["minuta","minuti","minute","minut"], - "_hour_::_hours_" : ["ura","uri","ure","ur"], - "_day_::_days_" : ["dan","dneva","dneve","dni"], - "_week_::_weeks_" : ["teden","tedna","tedne","tednov"], + "seconds" : "sekunde", + "minutes" : "minute", + "hours" : "ure", + "days" : "dnevi", + "weeks" : "tedne", + "Choose a file to add as attachment" : "Izbor datoteke za prilogo", + "Choose a file to share as a link" : "Izberite datoteko, ki jo želite dati v skupno rabo kot povezavo", + "Attachment {name} already exist!" : "Priloga {name} že obstaja!", + "Could not upload attachment(s)" : "Prilog ni mogoče poslati", + "Proceed" : "Nadaljuj", + "No attachments" : "Ni prilog", + "Add from Files" : "Izbor iz datotek", + "Upload from device" : "Pošlji z naprave", + "Delete file" : "Izbriši datoteko", + "Confirmation" : "Potrjevanje", + "_{count} attachment_::_{count} attachments_" : ["{count} priloga","{count} prilogi","{count} priloge","{count} prilog"], + "Suggested" : "Predlagano", "Available" : "Na voljo", - "Not available" : "Ni na voljo", - "Checking availability" : "Preverjanje razpoložljivosti", "Invitation accepted" : "Vabilo je sprejeto.", + "Accepted {organizerName}'s invitation" : "Sprejeto vabilo organizatorja: {organizerName}", + "Participation marked as tentative" : "Udeležba je označena kot nedorečena", + "Invitation is delegated" : "Povabilo je dodeljeno", + "Not available" : "Ni na voljo", "Invitation declined" : "Vabilo je zavrnjeno.", - "Availability of attendees, resources and rooms" : "Razpoložljivost udeležencev, virov in sob", + "Declined {organizerName}'s invitation" : "Zavrnjeno vabilo organizatorja: {organizerName}", + "Awaiting response" : "Čakajoč na odziv", + "Checking availability" : "Preverjanje razpoložljivosti", + "Has not responded to {organizerName}'s invitation yet" : "Še ni odgovora na na vabilo organizatorja: {organizerName}", + "chairperson" : "vodja dogodka", + "required participant" : "zahtevan udeleženec", + "non-participant" : "neudeleženec", + "optional participant" : "udeleženec na željo", "{organizer} (organizer)" : "{organizer} (organizator)", + "Availability of attendees, resources and rooms" : "Razpoložljivost udeležencev, virov in sob", + "Suggestion accepted" : "Predlog je sprejet", + "Legend" : "Legenda", + "Out of office" : "Službena odsotnost", + "Attendees:" : "Udeleženci:", + "Done" : "Končano", + "Room name" : "Ime sobe", "Free" : "Prosto", "Busy (tentative)" : "Načrtovano delo", "Busy" : "Zasedeno", - "Out of office" : "Službena odsotnost", "Unknown" : "Neopredeljeno", + "Find a time" : "Najdi čas", + "The invitation has been accepted successfully." : "Vabilo je uspešno sprejeto.", + "Failed to accept the invitation." : "Sprejemanje povabila je spodletelo.", + "The invitation has been declined successfully." : "Vabilo je uspešno zavrnjeno.", + "Failed to decline the invitation." : "Zavrnitev vabila je spodletela.", + "Your participation has been marked as tentative." : "Vaša udeležba je označena kot nedorečena.", + "Failed to set the participation status to tentative." : "Spreminjanje stanja udeležbe na nedorečeno je spodletelo.", "Accept" : "Sprejmi", "Decline" : "Zavrni", "Tentative" : "V usklajevanju", - "Create Talk room for this event" : "Za dogodek ustvari povezavo Talk", - "Show busy times" : "Pokaži urnike udeležencev", "No attendees yet" : "Ni še vpisanih udeležencev", "Successfully appended link to talk room to description." : "Povezava do sobe Talk je uspešno dodana v opis.", "Error creating Talk room" : "Prišlo je do napake med ustvarjanjem klepetalnice Talk", - "Send email" : "Pošlji elektronsko sporočilo", + "Attendees" : "Udeleženci", + "Remove group" : "Odstrani skupino", + "Remove attendee" : "Odstrani udeleženca", "Chairperson" : "Vodja dogodka", "Required participant" : "Nujna udeležba", "Optional participant" : "Udeležba na željo", "Non-participant" : "Neudeležba", - "Remove attendee" : "Odstrani udeleženca", + "_%n member_::_%n members_" : ["%n član","%n člana","%n člani","%n članov"], "No match found" : "Ni najdenih zadetkov", "(organizer)" : " (skliče dogodek)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Za pošiljanje vabil in urejanje odzivov mora biti [linkopen]vaš elektronski naslov vpisan med osebnimi nastavitvami[linkclose].", "Remove color" : "Odstrani barvo", "Event title" : "Naslov dogodka", - "All day" : "Ves dan", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Ni mogoče spremeniti nastavitve »celodnevno« za dogodke, ki so opredeljeni kot ponavljajoči.", - "from {startDate}" : "od {startDate}", - "from {startDate} at {startTime}" : "od {startDate} ob {startTime}", - "to {endDate}" : "do {endDate}", - "to {endDate} at {endTime}" : "do {endDate} ob {endTime}", + "From" : "Od", + "To" : "Za", "Repeat" : "Ponovi", - "End repeat" : "Končaj:", - "Select to end repeat" : "Izbor končanja ponavljanja", + "_time_::_times_" : [" ponovitvi"," ponovitvah"," ponovitvah"," ponovitvah"], "never" : "nikoli", "on date" : "na dan", "after" : "po", - "_time_::_times_" : [" ponovitvi"," ponovitvah"," ponovitvah"," ponovitvah"], + "End repeat" : "Končaj:", + "Select to end repeat" : "Izbor končanja ponavljanja", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Ta dogodek ima vpisano izjemo ponavljanja, zato pravila ponovitve ni mogoče dodati.", "first" : "1.", - "third" : "3.", - "fourth" : "4.", - "fifth" : "5.", - "second to last" : "predzadnji", - "last" : "zadnji", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Spremembe ponavljajočega dogodka bodo uveljavljene za to in vse prihodnje ponovitve.", "Repeat every" : "Ponovi na", "By day of the month" : "Na dan v mesecu", "On the" : "Na", + "_day_::_days_" : ["dan","dneva","dneve","dni"], + "_week_::_weeks_" : ["teden","tedna","tedne","tednov"], "_month_::_months_" : ["mesec","meseca","mesece","mesecev"], "_year_::_years_" : ["leto","leti","leta","let"], "weekday" : "delovni dan", "weekend day" : "vikend", - "No recurrence" : "Brez ponavljanja", + "Does not repeat" : "Se ne ponavlja", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Določilo ponavljanja tega dogodka ni v celoti podprto! Z urejanjem možnosti ponavljanja so lahko nekatera določila prepisana.", - "Suggestions" : "Predlogi", "No rooms or resources yet" : "Ni še določenih sob ali virov", + "Resources" : "Viri", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sedež","{seatingCapacity} sedeža","{seatingCapacity} sedeži","{seatingCapacity} sedežev"], "Add resource" : "Dodaj vir", "Has a projector" : "Na voljo je projektor", "Has a whiteboard" : "Na voljo je bela tabla", "Wheelchair accessible" : "Dostopno z invalidskim vozičkom", "Remove resource" : "Odstrani vir", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sedež","{seatingCapacity} sedeža","{seatingCapacity} sedeži","{seatingCapacity} sedežev"], - "Projector" : "Projektor", - "Whiteboard" : "Bela tabla", "Search for resources or rooms" : "Poišči vire in sobe", "available" : "na voljo", "unavailable" : "ni na voljo", + "Projector" : "Projektor", + "Whiteboard" : "Bela tabla", "Room type" : "Vrsta sobe", "Any" : "Katerakoli", "Minimum seating capacity" : "Najmanjša razpoložljivost sedežev", - "More" : "Več", - "Update this occurrence" : "Posodobi to pojavitev", + "More details" : "Več podrobnosti", "Update this and all future" : "Posodobi to in vse prihodnje pojavitve", + "Update this occurrence" : "Posodobi to pojavitev", "Public calendar does not exist" : "Javni koledar ne obstaja", "Maybe the share was deleted or has expired?" : "Morda je mesto souporabe izbrisano ali je časovno poteklo.", - "Please select a time zone:" : "Izbor časovnega pasu:", - "Pick a time" : "Izbor časa", - "Pick a date" : "Izbor datuma", "from {formattedDate}" : "od {formattedDate}", "to {formattedDate}" : "do {formattedDate}", "on {formattedDate}" : "na {formattedDate}", @@ -303,32 +384,51 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} ob {formattedTime}", "Please enter a valid date" : "Vpisati je treba veljaven datum", "Please enter a valid date and time" : "Vpisati je treba veljaven datum in čas", + "Select a time zone" : "Izbor časovnega pasu", + "Please select a time zone:" : "Izbor časovnega pasu:", + "Pick a time" : "Izbor časa", + "Pick a date" : "Izbor datuma", "Type to search time zone" : "Vpišite niz za iskanje časovnega pasu", "Global" : "Splošno", - "Select date" : "Izbor datuma", - "Select slot" : "Izbor časovne možnosti", + "Holidays in {region}" : "Prazniki v regiji {region}", + "Public holiday calendars" : "Koledarji praznikov", + "Public calendars" : "Javni koledarji", + "No valid public calendars configured" : "Ni nastavljenih veljavnih javnih koledarjev", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Javne koledarje omogoča program Thunderbird. Koledarji bodo prejeti s spletišča {website}", + "By {authors}" : "Po {authors}", + "Subscribed" : "Naročeno", + "Subscribe" : "Naročilo", + "Could not fetch slots" : "Pridobivanje podatkov o časovnih terminih je spodletelo", + "Select a date" : "Izbor datuma", + "Select slot" : "Izbor časovnega termina", + "No slots available" : "Ni razpoložljivih časovnih terminov", + "The slot for your appointment has been confirmed" : "Časovni termin sestanka je potrjen", "Appointment Details:" : "Podrobnosti sestanka:", "Time:" : "Čas:", - "See all available slots" : "Pokaži vse razpoložljive možnosti", + "Booked for:" : "Rezervirano za:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Rezervacija od {startDate} do {endDate} je potrjena.", + "Book another appointment:" : "Dogovorite se za drug sestanek:", + "See all available slots" : "Pokaži vse razpoložljive termine", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Termin sestanka med {startDate} in {endDate} ni več na voljo.", + "Please book a different slot:" : "Zabeležite si drug časovni termin:", + "Book an appointment with {name}" : "Dogovorite se za sestanek z osebo {name}", + "No public appointments found for {name}" : "Za uporabnika {name} ni načrtovanih javnih srečanj.", "Personal" : "Osebno", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Samodejno zaznavanje časovnega pasu določa časovni pas kot UTC.\nTo je najverjetneje prilagojeno na varnostne nastavitve spletnega brskalnika.\nČasovni pas lahko določite tudi ročno med nastavitvami koledarja.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Nastavljenega časovnega pasu ({timezoneId}) ni mogoče najti. Povrnjena bo nastavitev na UTC.\nČasovni pas določite ročno med nastavitvami koledarja in pošljite poročilo o napaki.", - "No more events today" : "Danes ni več načrtovanih dogodkov", - "No upcoming events" : "Ni prihajajočih dogodkov", - "Create a new event" : "Ustvari nov dogodek", - "[Today]" : "[Danes]", - "[Tomorrow]" : "[Jutri]", - "[Yesterday]" : "[Včeraj]", - "[Last] dddd" : "[Zadnje] dddd", + "Edit event" : "Uredi dogodek", "Event does not exist" : "Dogodek ne obstaja", + "Duplicate" : "Podvoji", "Delete this occurrence" : "Izbriši to pojavitev", "Delete this and all future" : "Izbriši to in vse prihodnje pojavitve", - "Details" : "Podrobnosti", - "Attendees" : "Udeleženci", - "Resources" : "Viri", + "All day" : "Ves dan", + "Managing shared access" : "Upravljanje z dostopom", + "Deny access" : "Zavrni dostop", + "Invite" : "Povabi", + "Untitled event" : "Neimenovan dogodek", "Close" : "Zapri", - "Show more details" : "Pokaži več podrobnosti", "Subscribe to {name}" : "Naroči na {name}", + "Export {name}" : "Izvozi {name}", "Anniversary" : "Obletnica", "Appointment" : "Sestanek", "Business" : "Posel", @@ -356,7 +456,6 @@ OC.L10N.register( "on {time}" : "ob {time}", "on {time} ({timezoneId})" : "ob {time} ({timezoneId})", "Week {number} of {year}" : "{number}. teden leta {year}", - "Does not repeat" : "Se ne ponavlja", "Daily" : "Dnevno", "Weekly" : "Tedensko", "Monthly" : "Mesečno", @@ -368,18 +467,17 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : [": {weekday}",": {weekday}",": {weekday}",": {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : [": na {dayOfMonthList}",": na {dayOfMonthList}",": na {dayOfMonthList}",": na {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : ": {ordinalNumber} {byDaySet}", - "in {monthNames}" : ": {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : ": {monthNames} : {ordinalNumber} {byDaySet}", "until {untilDate}" : "do {untilDate}", "_%n time_::_%n times_" : ["%n-krat","%n-krat","%n-krat","%n-krat"], - "Untitled event" : "Neimenovan dogodek", + "second" : "drugi", + "third" : "3.", + "fourth" : "4.", + "fifth" : "5.", + "second to last" : "predzadnji", + "last" : "zadnji", "Untitled task" : "Neimenovana naloga", "Please ask your administrator to enable the Tasks App." : "Obvestite skrbnika, da je treba omogočiti program Tasks.", - "Prev" : "Predhodno", - "Next" : "Naslednje", - "Prev year" : "Predhodno leto", - "Next year" : "Naslednje leto", - "Year" : "Leto", "W" : "T", "%n more" : "%n več", "No events to display" : "Ni dogodkov za prikaz", @@ -398,10 +496,9 @@ OC.L10N.register( "When shared hide this event" : "V souporabi skrij ta dogodek", "The visibility of this event in shared calendars." : "Vidnost tega dogodka v koledarjih v souporabi.", "Add a location" : "Dodaj mesto ...", - "Add a description" : "Dodaj opis ...", "Status" : "Stanje", "Confirmed" : "Potrjeno", - "Canceled" : "sestanek preklican", + "Canceled" : "Preklicano", "Confirmation about the overall status of the event." : "Potrditev splošnega stanja dogodka.", "Show as" : "Pokaži kot", "Take this event into account when calculating free-busy information." : "Ta dogodek upoštevaj pri preračunavanju podatkov o zasedenosti udeležencev.", @@ -411,134 +508,20 @@ OC.L10N.register( "Add this as a new category" : "Dodaj kot novo kategorijo", "Custom color" : "Barva po meri", "Special color of this event. Overrides the calendar-color." : "Posebna barva dogodka prepiše privzeto barvo koledarja.", - "Chat room for event" : "Klepetalnica za dogodek", + "Error while sharing file" : "Prišlo je do napake med souporabo datoteke", + "Error while sharing file with user" : "Prišlo je do napake med souporabo datoteke z uporabnikom", + "Attachment {fileName} already exists!" : "Priloga {fileName} že obstaja!", + "An error occurred during getting file information" : "Prišlo je do napake med pridobivanjem podrobnosti datoteke", + "An error occurred, unable to delete the calendar." : "Prišlo je do napake; ni mogoče izbrisati koledarja.", "Imported {filename}" : "Uvožena datoteka {filename}", - "Meditation" : "Meditacija", - "Relaxing" : "Sproščanje", - "Relax" : "Počitek", - "Break" : "Odmor", - "Commute" : "Med vožnjo", - "Commuting" : "Med vožnjo", - "Invoice" : "Račun", - "Finance" : "Finance", - "Bank" : "Banka", - "Money" : "Denar", - "Wedding" : "Poroka", - "Dog" : "Pes", - "Concert" : "Koncert", - "Festival" : "Festival", - "Theater" : "Gledališče", - "Theatre" : "Predstava", - "Presentation" : "Predstavitev", - "Talk" : "Pogovor", - "Speech" : "Govor", - "Deadline" : "Rok", - "Submission" : "Objava", - "Reporting" : "Poročilo", - "Camping" : "Kampiranje", - "Camp" : "Kamp", - "Election" : "Volitve", - "Voting" : "Glasovanje", - "Vote" : "Glas", - "Barbecue" : "Pečenje", - "Barbeque" : "Piknik", - "Garden" : "Vrt", - "Farm" : "Kmetija", - "Movie" : "Film", - "Cinema" : "Kino", - "Graduation" : "Diploma", - "Brainstorm" : "Možganska nevihta", - "Review" : "Pregled", - "Audit" : "Revizija", - "Inspection" : "Inšpekcija", - "Proofreading" : "Pregled", - "Baseball" : "Baseball", - "Meet" : "Srečanje", - "Planning" : "Načrtovanje", - "Pointing" : "Nakazovanje", - "Retrospective" : "Retrospektiva", - "Office" : "Pisarna", - "Contributor week" : "Sodelovalni teden", - "Mail" : "Pošta", - "Soccer" : "Nogomet", - "Football" : "Ameriški nogomet", - "Gaming" : "Igrice", - "Drive" : "Vožnja", - "Driving" : "Vožnja", - "Bicycle" : "Kolo", - "Cycle" : "Kolesarjenje", - "Cycling" : "Kolesa", - "Biking" : "Kolesarjenje", - "Bike" : "Kolo", - "Podcast" : "Podkast", - "Basketball" : "Košarka", - "Fishing" : "Ribolov", - "Hiking" : "Pohodništvo", - "Hike" : "Pohod", - "Art" : "Umetnost", - "Exhibition" : "Razstava", - "Museum" : "Muzej", - "Pilates" : "Pilates", - "Park" : "Park", - "Walk" : "Sprehod", - "Studying" : "Učenje", - "Doctor" : "Zdravnik", - "Health" : "Zdravje", - "Dentist" : "Zobozdravnik", - "Hospital" : "Bolnišnica", - "Interview" : "Intervju", - "Training" : "Kondicijski", - "Practice" : "Potenje", - "Sports" : "Šport", - "Exercise" : "Vaja", - "Work out" : "Trening", - "Working out" : "Treniranje", - "Gym" : "Telovadnica", - "Barber" : "Brivec", - "Haircut" : "Frizer", - "Hairdresser" : "Frizer", - "Exam" : "Izpit", - "Written test" : "Pisni izpit, preizkus ali test", - "Oral test" : "Ustni izpit, preizkus ali test", - "Working" : "Delo", - "New Years Eve" : "Novo leto", - "NYE" : "Ognjemet", - "Fireworks" : "Ognjemet", - "Running" : "Tek", - "Go for a run" : "Priprave na tek", - "Marathon" : "Maraton", - "Video-conference" : "Videokonferenca", - "Conference-call" : "Konferenčni klic", - "Video-call" : "Video klic", - "Video-chat" : "Video klepet", - "Video-meeting" : "Video srečanje", - "Call" : "Klic", - "Calling" : "Klicanje", - "Christmas" : "Božič", - "Conference" : "Konferenca", - "Pizza" : "Pizza", - "Travelling" : "Potovanje", - "Trip" : "Potepanje", - "Journey" : "Popotovanje", - "Collaborate" : "Sodelovanje", - "Pair" : "Par", - "Lecture" : "Predavanje", - "Seminar" : "Seminar", - "Teaching" : "Poučevanje", - "Photograph" : "Fotografija", - "Party" : "Zabava", - "Celebration" : "Praznovanje", - "Celebrate" : "Praznovanje", - "Birthday" : "Rojstni dan", - "Shopping" : "Nakupovanje", - "Groceries" : "Trgovina", - "Skate" : "Skejt", - "Skateboard" : "Skejtanje", - "Wine tasting" : "Vino", - "Golf" : "Golf", - "Dinner" : "Večerja", - "Lunch" : "Kosilo", + "This is an event reminder." : "To je opomnik dogodka.", "Appointment not found" : "Sestanka ni mogoče najti", - "User not found" : "Uporabnika ni mogoče najti" + "User not found" : "Uporabnika ni mogoče najti", + "Reminder" : "Opomnik", + "+ Add reminder" : "+ Dodaj opomnik", + "with" : "z", + "Available times:" : "Razpoložljivi termini", + "Suggestions" : "Predlogi", + "Details" : "Podrobnosti" }, "nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);"); diff --git a/l10n/sl.json b/l10n/sl.json index 6ff10f40a937c4f518079fa6aa2b7a30e5f75d1d..d949e01df7fd22bf34b5aa2283d434ff309d42aa 100644 --- a/l10n/sl.json +++ b/l10n/sl.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "Ponujen elektronski naslov je predolg", "User-Session unexpectedly expired" : "Uporabniška seja se je nepričakovano končala", "Provided email-address is not valid" : "Podan elektronski naslov ni veljaven naslov", "%s has published the calendar »%s«" : "%s objavi koledar » %s «", @@ -9,118 +10,155 @@ "Open »%s«" : "Odpri »%s«", "Cheers!" : "Lep pozdrav!", "Upcoming events" : "Prihajajoči dogodki", + "No more events today" : "Danes ni več načrtovanih dogodkov", + "No upcoming events" : "Ni prihajajočih dogodkov", + "More events" : "Več dogodkov", + "%1$s with %2$s" : "%1$s z %2$s", + "Calendar" : "Koledar", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) naznani sestanek »{config_display_name}« na dan {date_time}.", "Appointments" : "Sestanki", "Schedule appointment \"%s\"" : "Načrtovanje sestanka »%s«", "Schedule an appointment" : "Načrtovanje sestanka", + "%1$s - %2$s" : "%1$s – %2$s", "Prepare for %s" : "Pripravi za %s", - "Your appointment \"%s\" needs confirmation" : "Sestanek »%s« zahteva potrditev", + "Follow up for %s" : "Nadaljevanje za %s", + "Your appointment \"%s\" with %s needs confirmation" : "Sestanek »%s« z osebo %s zahteva potrditev", + "Dear %s, please confirm your booking" : "%s, prosim potrdite rezervacijo", "Confirm" : "Potrdi", - "Appointment:" : "Sestanek:", + "Appointment with:" : "Sestanek:", + "Description:" : "Opis:", + "This confirmation link expires in %s hours." : "Potrditvena povezava poteče po %s urah.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Če vseeno želite preklicati sestanek, stopite v stik z organizatorjem z odgovorom na njegovo elektronsko sporočilo oziroma z obiskom strani profila.", + "Your appointment \"%s\" with %s has been accepted" : "Sestanek »%s« z osebo %s je potrjen", + "Dear %s, your booking has been accepted." : " %s, sestanek je potrjen.", + "Appointment for:" : "Sestanek:", "Date:" : "Datum:", + "You will receive a link with the confirmation email" : "Prejeli boste elektronsko sporočilo z overitveno povezavo", "Where:" : "Kje:", - "Description:" : "Opis:", - "Calendar" : "Koledar", + "Comment:" : "Opomba", "A Calendar app for Nextcloud" : "Program za urejanje koledarja Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Program Koledar je uporabniški vmesnik v okolju Nextcloud za strežnik CalDAV. Omogoča enostavno usklajevanje dogodkov z različnih naprav in urejanje na spletu.\n\n* 🚀 **Podpira druge programe Nextcloud!** Trenutno Stike, drugi bodo na voljo kmalu.\n* 🌐 **Omogočena je podpora za WebCal!** Ali želite spremljati tekme priljubljenega moštva iz svojega koledarja? Ni problema!\n* 🙋 **Povabila udeležencem!** Pošljite vabila na dogodke.\n* ⌚️ **Zasedeno/Prosto!** Sproti preverite, ali so potencialni udeleženci prosti za sestanke.\n ⏰ **Opomniki!** Prejmite alarme in obvestila v brskalniku in po elektronski pošti.\n* 🔍 Iskalnik! Enostavno iskanje dogodkov.\n* ☑️ Naloge! Sedaj so naloge z datumi preteka vidni v koledarju.\n* 🙈 **Ne odkrivamo po nepotrebnem kolesa!** Zasnovano na odličnih knjižnicah [c-dav](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) in [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Predhodni dan", "Previous week" : "Predhodni teden", + "Previous year" : "Predhodno leto", "Previous month" : "Predhodni mesec", "Next day" : "Naslednji dan", "Next week" : "Naslednji teden", + "Next year" : "Naslednje leto", "Next month" : "Naslednji mesec", - "New event" : "Nov dogodek", + "Create new event" : "Ustvari nov dogodek", + "Event" : "Dogodek", "Today" : "Danes", "Day" : "Dan", "Week" : "Teden", "Month" : "Mesec", + "Year" : "Leto", "List" : "Seznam", + "Appointment link was copied to clipboard" : "Povezava sestanka je kopirana v odložišče.", + "Appointment link could not be copied to clipboard" : "Povezave sestanka ni mogoče kopirati v odložišče.", "Preview" : "Predogled", "Copy link" : "Kopiraj povezavo", "Edit" : "Uredi", "Delete" : "Izbriši", - "Add new" : "Dodaj novo", - "Untitled calendar" : "Neimenovan koledar", - "Edit name" : "Uredi ime", - "Saving name …" : "Shranjevanje imena ...", - "Edit color" : "Uredi barvo", - "Saving color …" : "Shranjevanje barve ...", - "Copy private link" : "Kopiraj zasebno povezavo", - "Export" : "Izvozi", - "Unshare from me" : "Prekini souporabo", + "Create new" : "Ustvari novo", + "Disable calendar \"{calendar}\"" : "Onemogoči koledar »{calendar}«", + "Disable untitled calendar" : "Onemogoči neimenovan koledar", + "Enable calendar \"{calendar}\"" : "Omogoči koledar »{calendar}«", + "Enable untitled calendar" : "Omogoči neimenovan koledar", "An error occurred, unable to change visibility of the calendar." : "Prišlo je do napake; ni mogoče spremeniti vidnosti koledarja.", - "An error occurred, unable to delete the calendar." : "Prišlo je do napake; ni mogoče izbrisati koledarja.", - "Calendar link copied to clipboard." : "Povezava koledarja je kopirana v odložišče.", - "Calendar link could not be copied to clipboard." : "Povezave koledarja ni mogoče kopirati v odložišče.", - "An error occurred, unable to rename the calendar." : "Prišlo je do napake; koledarja ni mogoče preimenovati.", - "An error occurred, unable to change the calendar's color." : "Prišlo je do napake; ni mogoče spremeniti barve koledarja.", + "Untitled calendar" : "Neimenovan koledar", + "Shared with you by" : "Souporabo omogoča", + "Edit and share calendar" : "Uredi in omogoči souporabo koledarja", + "Edit calendar" : "Uredi koledar", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Souporaba koledarja bo onemogočena čez {countdown} sekundo","Souporaba koledarja bo onemogočena čez {countdown} sekundi","Souporaba koledarja bo onemogočena čez {countdown} sekunde","Souporaba koledarja bo prekinjena čez {countdown} sekund"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Koledar bo izbrisan čez {countdown} sekundo","Koledar bo izbrisan čez {countdown} sekundi","Koledar bo izbrisan čez {countdown} sekunde","Koledar bo izbrisan čez {countdown} sekund"], + "An error occurred, unable to create the calendar." : "Prišlo je do napake, koledarja ni mogoče ustvariti.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vpisati je treba veljavne povezave (začeti se morajo s http://, https://, webcal://, ali webcals://)", + "Calendars" : "Koledarji", + "Add new" : "Dodaj novo", + "New calendar" : "Nov koledar", + "Name for new calendar" : "Naziv novega koledarja", + "Creating calendar …" : "Poteka ustvarjanje koledarja ...", + "New calendar with task list" : "Nov koledar s seznamom nalog", + "New subscription from link (read-only)" : "Naročnina prek povezave (le za branje)", + "Creating subscription …" : "Poteka ustvarjanje naročnine ...", + "Add public holiday calendar" : "Dodaj koledar javnih praznikov", + "Add custom public calendar" : "Dodaj javni koledar po meri", + "Calendar link copied to clipboard." : "Povezava koledarja je kopirana v odložišče.", + "Calendar link could not be copied to clipboard." : "Povezave koledarja ni mogoče kopirati v odložišče.", + "Copy subscription link" : "Kopiraj povezavo naročnine", + "Copying link …" : "Kopiranje povezave ...", + "Copied link" : "Kopirana povezava", + "Could not copy link" : "Povezave ni mogoče kopirati", + "Export" : "Izvozi", + "Untitled item" : "Neimenovan predmet", + "Unknown calendar" : "Neznan koledar", + "Could not load deleted calendars and objects" : "Ni mogoče naložiti izbrisanih koledarjev in predmetov", + "Could not delete calendar or event" : "Ni mogoče izbrisati koledarja ali dogodka", + "Could not restore calendar or event" : "Ni mogoče obnoviti koledarja ali dogodka", + "Do you really want to empty the trash bin?" : "Ali zares želite izprazniti smetnjak?", + "Empty trash bin" : "Izprazni smeti", + "Trash bin" : "Smetnjak", + "Loading deleted items." : "Poteka nalaganje izbrisanih predmetov.", + "You do not have any deleted items." : "Ni izbrisanih predmetov.", + "Name" : "Ime", + "Deleted" : "Izbrisano", + "Restore" : "Obnovi", + "Delete permanently" : "Izbriši trajno", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Predmeti v smetnjaku se izbrišejo po {numDays} dnevu.","Predmeti v smetnjaku se izbrišejo po {numDays} dnevih.","Predmeti v smetnjaku se izbrišejo po {numDays} dnevih.","Predmeti v smetnjaku se izbrišejo po {numDays} dnevih."], + "Could not update calendar order." : "Ni mogoče posodobiti koledarja", + "Shared calendars" : "Koledarji v souporabi", + "Deck" : "Deck", + "Hidden" : "Skrito", + "Internal link" : "Notranja povezava", + "A private link that can be used with external clients" : "Zasebna povezava, ki se lahko uporablja z zunanjimi odjemalci", + "Copy internal link" : "Kopiraj krajevno povezavo", + "An error occurred, unable to publish calendar." : "Prišlo je do napake; koledarja ni mogoče objaviti.", + "An error occurred, unable to send email." : "Prišlo je do napake; ni mogoče poslati elektronskega sporočila.", + "Embed code copied to clipboard." : "Vstavljiva koda je kopirana v odložišče.", + "Embed code could not be copied to clipboard." : "Vstavljive kode ni mogoče kopirati v odložišče.", + "Unpublishing calendar failed" : "Preklic objave koledarja je spodletel", "Share link" : "Povezava za souporabo", - "Publish calendar" : "Objavi koledar", - "Publishing calendar" : "Poteka objavljanje koledarja", "Copy public link" : "Kopiraj javno povezavo", "Send link to calendar via email" : "Pošlji povezavo za koledar prek elektronske pošte", "Enter one address" : "Vpišite en naslov", "Sending email …" : "Poteka pošiljanje elektronske pošte ...", - "Copy subscription link" : "Kopiraj povezavo naročnine", - "Copying link …" : "Kopiranje povezave ...", - "Copied link" : "Kopirana povezava", - "Could not copy link" : "Povezave ni mogoče kopirati", "Copy embedding code" : "Kopiraj vstavljivo kodo", "Copying code …" : "Kopiranje kode ...", "Copied code" : "Koda je kopirana", "Could not copy code" : "Kode ni mogoče kopirati", "Delete share link" : "Izbriši povezavo za souporabo", "Deleting share link …" : "Poteka brisanje povezave souporabe ...", - "An error occurred, unable to publish calendar." : "Prišlo je do napake; koledarja ni mogoče objaviti.", - "An error occurred, unable to send email." : "Prišlo je do napake; ni mogoče poslati elektronskega sporočila.", - "Embed code copied to clipboard." : "Vstavljiva koda je kopirana v odložišče.", - "Embed code could not be copied to clipboard." : "Vstavljive kode ni mogoče kopirati v odložišče.", - "Unpublishing calendar failed" : "Preklic objave koledarja je spodletel", - "Share with users or groups" : "Souporaba z uporabniki in skupinami", - "No users or groups" : "Ni uporabnikov ali skupin", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Skupina)", + "An error occurred while unsharing the calendar." : "Prišlo je do napake med onemogočanjem souporabe koledarja.", + "An error occurred, unable to change the permission of the share." : "Prišlo je do napake; ni mogoče spremeniti dovoljenj souporabe.", "can edit" : "lahko ureja", "Unshare with {displayName}" : "Odstrani souporabo z uporabnikom {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Prišlo je do napake; ni mogoče spremeniti souporabe koledarja.", - "An error occurred, unable to change the permission of the share." : "Prišlo je do napake; ni mogoče spremeniti dovoljenj souporabe.", - "+ New calendar" : "+ Nov koledar", - "New calendar" : "Nov koledar", - "Name for new calendar" : "Naziv novega koledarja", - "Creating calendar …" : "Poteka ustvarjanje koledarja ...", - "New calendar with task list" : "Nov koledar s seznamom nalog", - "New subscription from link (read-only)" : "Naročnina prek povezave (le za branje)", - "Creating subscription …" : "Poteka ustvarjanje naročnine ...", - "An error occurred, unable to create the calendar." : "Prišlo je do napake, koledarja ni mogoče ustvariti.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vpisati je treba veljavne povezave (začeti se morajo s http://, https://, webcal://, ali webcals://)", - "Trash bin" : "Smetnjak", - "Loading deleted elements." : "Poteka nalaganje izbrisanih predmetov.", - "You do not have any deleted elements." : "Ni izbrisanih predmetov.", - "Name" : "Ime", - "Deleted" : "Izbrisano", - "Restore" : "Obnovi", - "Delete permanently" : "Izbriši trajno", - "Empty trash bin" : "Izprazni smeti", - "Untitled element" : "Neimenovan predmet", - "Unknown calendar" : "Neznan koledar", - "Could not load deleted calendars and objects" : "Ni mogoče naložiti izbrisanih koledarjev in predmetov", - "Could not restore calendar or event" : "Ni mogoče obnoviti koledarja ali dogodka", - "Do you really want to empty the trash bin?" : "Ali zares želite izprazniti smetnjak?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Predmeti v smetnjaku se izbrišejo po {numDays} dnevu","Predmeti v smetnjaku se izbrišejo po {numDays} dnevih","Predmeti v smetnjaku se izbrišejo po {numDays} dnevih","Predmeti v smetnjaku se izbrišejo po {numDays} dnevih"], - "Could not update calendar order." : "Ni mogoče posodobiti koledarja", + "Share with users or groups" : "Souporaba z uporabniki in skupinami", + "No users or groups" : "Ni uporabnikov ali skupin", + "Failed to save calendar name and color" : "Shranjevanje imena koledarja in barve je spodletelo", + "Calendar name …" : "Ime koledarja …", + "Share calendar" : "Omogoči souporabo koledarja", + "Unshare from me" : "Prekini souporabo", + "Save" : "Shrani", "Import calendars" : "Uvozi koledarje", - "Please select a calendar to import into …" : "Izberite koledar, v katerega naj se uvozi ...", + "Please select a calendar to import into …" : "Izberite koledar za uvoz ...", "Filename" : "Ime datoteke", "Calendar to import into" : "Koledar, v katerega naj se uvozi", "Cancel" : "Prekliči", "_Import calendar_::_Import calendars_" : ["Uvozi koledar","Uvozi koledarja","Uvozi koledarje","Uvozi koledarje"], + "Select the default location for attachments" : "Izbor privzetega mesta za priloge", + "Pick" : "Izbor", + "Invalid location selected" : "Izbrano je neveljavno mesto", + "Attachments folder successfully saved." : "Mapa prilog je uspešno shranjena.", + "Error on saving attachments folder." : "Napaka med shranjevanjem mape prilog", + "Default attachments location" : "Privzeto mesto prilog", "{filename} could not be parsed" : "Datoteke {filename} ni mogoče razčleniti", "No valid files found, aborting import" : "Ni najdenih veljavnih datotek, uvoz bo preklican", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Uspešno je uvožen %n dogodek.","Uspešno sta uvožena %n dogodka.","Uspešno so uvoženi %n dogodki.","Uspešno je uvoženih %n dogodkov."], "Import partially failed. Imported {accepted} out of {total}." : "Uvoz je delno spodletel. Uvoženih je {accepted} od skupno {total}.", "Automatic" : "Samodejno", "Automatic ({detected})" : "Samodejno ({detected})", "New setting was not saved successfully." : "Novih nastavitev ni bilo mogoče shraniti.", - "Shortcut overview" : "Pregled tipkovnih bližnjic", - "or" : "ali", "Navigation" : "Krmarjenje", "Previous period" : "Predhodno obdobje", "Next period" : "Naslednje obdobje", @@ -128,6 +166,7 @@ "Day view" : "Dnevni pogled", "Week view" : "Tedenski pogled", "Month view" : "Mesečni pogled", + "Year view" : "Letni pogled", "List view" : "Seznamski pogled", "Actions" : "Dejanja", "Create event" : "Ustvari dogodek", @@ -136,29 +175,42 @@ "Close editor" : "Zapri urejevalnik", "Save edited event" : "Shrani spremenjen dogodek", "Delete edited event" : "Izbriši spremenjen dogodek", + "Duplicate event" : "Podvoji dogodek", + "Shortcut overview" : "Pregled tipkovnih bližnjic", + "or" : "ali", + "Calendar settings" : "Nastavitve koledarja", + "No reminder" : "Brez opomnika", + "Failed to save default calendar" : "Shranjevanje privzetega koledarja je spodletelo", + "CalDAV link copied to clipboard." : "Povezava CalDAV je kopirana v odložišče.", + "CalDAV link could not be copied to clipboard." : "Povezave CalDAV ni mogoče kopirati v odložišče.", "Enable birthday calendar" : "Omogoči koledar rojstnih dni", "Show tasks in calendar" : "Pokaži naloge v koledarju", "Enable simplified editor" : "Omogoči poenostavljen urejevalnik", - "Limit visible events per view" : "Omeji prikaz dogodkov v pogledu", + "Limit the number of events displayed in the monthly view" : "Omeji število dogodkov v pogledu meseca", "Show weekends" : "Pokaži vikende", "Show week numbers" : "Pokaži številke tednov", "Time increments" : "Časovno povečevanje", + "Default calendar for incoming invitations" : "Privzeti koledar za prihajajoča povabila", "Default reminder" : "Privzeti opomnik", "Copy primary CalDAV address" : "Kopiraj osnovni naslov CalDAV", "Copy iOS/macOS CalDAV address" : "Kopiraj naslov CalDAV za iOS/macOS", "Personal availability settings" : "Nastavitve osebne dejavnosti", "Show keyboard shortcuts" : "Pokaži tipkovne bližnjice", - "No reminder" : "Brez opomnika", - "CalDAV link copied to clipboard." : "Povezava CalDAV je kopirana v odložišče.", - "CalDAV link could not be copied to clipboard." : "Povezave CalDAV ni mogoče kopirati v odložišče.", - "Appointment was created successfully" : "Sestanek je bil uspešno ustvarjen", - "Appointment was updated successfully" : "Sestanek je bil uspešno posodobljen", "_{duration} minute_::_{duration} minutes_" : ["{duration} minuta","{duration} minuti","{duration} minute","{duration} minut"], "0 minutes" : "0 minut", + "_{duration} hour_::_{duration} hours_" : ["{duration} ura","{duration} uri","{duration} ure","{duration} ur"], + "_{duration} day_::_{duration} days_" : ["{duration} dan","{duration} dneva","{duration} dni","{duration} dni"], + "_{duration} week_::_{duration} weeks_" : ["{duration} teden","{duration} tedna","{duration} tedne","{duration} tednov"], + "_{duration} month_::_{duration} months_" : ["{duration} mesec","{duration} meseca","{duration} mesece","{duration} mesecev"], + "_{duration} year_::_{duration} years_" : ["{duration} leto","{duration} leti","{duration} leta","{duration} let"], "To configure appointments, add your email address in personal settings." : "Za nastavljanje sestankov dodajte elektronski naslov med osebne nastavitve.", "Public – shown on the profile page" : "Javno – prikazano na strani profila", "Private – only accessible via secret link" : "Zasebno – dostopno le z zasebno povezavo", + "Update" : "Posodobi", + "Appointment name" : "Ime srečanja", "Location" : "Mesto", + "Create a Talk room" : "Ustvari skupino Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Enoznačna povezava bo ustvarjena za vsak rezerviran termin in poslana s potrditvenim poštnim sporočilom.", "Description" : "Opis", "Visibility" : "Vidnost", "Duration" : "Trajanje", @@ -166,7 +218,7 @@ "Additional calendars to check for conflicts" : "Dodatni koledarji za preverjanje sporov", "Pick time ranges where appointments are allowed" : "Izbor časovnih obdobij, ko so sestanki mogoči", "to" : "do", - "Delete slot" : "Izbriši možnost", + "Delete slot" : "Izbriši termin", "No times set" : "Ni določenih obdobij", "Add" : "Dodaj", "Monday" : "ponedeljek", @@ -176,18 +228,25 @@ "Friday" : "petek", "Saturday" : "sobota", "Sunday" : "nedelja", + "Weekdays" : "Delovni dnevi", "Add time before and after the event" : "Dodaj čas pred in po dogodku", "Before the event" : "Pred dogodkom", "After the event" : "Po dogodku", "Planning restrictions" : "Omejitve načrtovanja", - "Create appointment" : "Ustvari sestanek", - "Edit appointment" : "Uredi sestanek", - "Save" : "Shrani", - "Update" : "Posodobi", + "Minimum time before next available slot" : "Najmanjši čas do naslednjega časovnega termina", + "Max slots per day" : "Največje število časovnih terminov na dan", + "Limit how far in the future appointments can be booked" : "Omeji, kako daleč v prihodnost je mogoče rezervirati sestanke. ", + "Please confirm your reservation" : "Potrdite rezervacijo", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Na elektronski naslov je bilo poslano sporočilo. Prosim, potrdite sestanek z uporabe povezave v sporočilu. To stran lahko zaprete.", "Your name" : "Ime", "Your email address" : "Elektronski naslov", - "Book the appointment" : "Zabeležite si sestanek", - "Reminder" : "Opomnik", + "Please share anything that will help prepare for our meeting" : "Pošljite vse predloge in dokumente, ki so pomembni pri pripravi na srečanje.", + "Could not book the appointment. Please try again later or contact the organizer." : "Sestanka ni mogoče rezervirati. Poskusite znova kasneje oziroma stopite v stik z organizatorjem.", + "Back" : "Nazaj", + "Create a new conversation" : "Ustvari nov pogovor", + "Select conversation" : "pogovora", + "on" : "na", + "at" : "ob", "before at" : "prej ob", "Notification" : "Obvestilo", "Email" : "Elektronsko sporočilo", @@ -198,100 +257,122 @@ "Edit time" : "Uredi čas", "Save time" : "Shrani čas", "Remove reminder" : "Odstrani opomnik", - "on" : "na", - "at" : "ob", - "+ Add reminder" : "+ Dodaj opomnik", "Add reminder" : "Dodaj opomnik", - "_second_::_seconds_" : ["sekunda","sekundi","sekunde","sekund"], - "_minute_::_minutes_" : ["minuta","minuti","minute","minut"], - "_hour_::_hours_" : ["ura","uri","ure","ur"], - "_day_::_days_" : ["dan","dneva","dneve","dni"], - "_week_::_weeks_" : ["teden","tedna","tedne","tednov"], + "seconds" : "sekunde", + "minutes" : "minute", + "hours" : "ure", + "days" : "dnevi", + "weeks" : "tedne", + "Choose a file to add as attachment" : "Izbor datoteke za prilogo", + "Choose a file to share as a link" : "Izberite datoteko, ki jo želite dati v skupno rabo kot povezavo", + "Attachment {name} already exist!" : "Priloga {name} že obstaja!", + "Could not upload attachment(s)" : "Prilog ni mogoče poslati", + "Proceed" : "Nadaljuj", + "No attachments" : "Ni prilog", + "Add from Files" : "Izbor iz datotek", + "Upload from device" : "Pošlji z naprave", + "Delete file" : "Izbriši datoteko", + "Confirmation" : "Potrjevanje", + "_{count} attachment_::_{count} attachments_" : ["{count} priloga","{count} prilogi","{count} priloge","{count} prilog"], + "Suggested" : "Predlagano", "Available" : "Na voljo", - "Not available" : "Ni na voljo", - "Checking availability" : "Preverjanje razpoložljivosti", "Invitation accepted" : "Vabilo je sprejeto.", + "Accepted {organizerName}'s invitation" : "Sprejeto vabilo organizatorja: {organizerName}", + "Participation marked as tentative" : "Udeležba je označena kot nedorečena", + "Invitation is delegated" : "Povabilo je dodeljeno", + "Not available" : "Ni na voljo", "Invitation declined" : "Vabilo je zavrnjeno.", - "Availability of attendees, resources and rooms" : "Razpoložljivost udeležencev, virov in sob", + "Declined {organizerName}'s invitation" : "Zavrnjeno vabilo organizatorja: {organizerName}", + "Awaiting response" : "Čakajoč na odziv", + "Checking availability" : "Preverjanje razpoložljivosti", + "Has not responded to {organizerName}'s invitation yet" : "Še ni odgovora na na vabilo organizatorja: {organizerName}", + "chairperson" : "vodja dogodka", + "required participant" : "zahtevan udeleženec", + "non-participant" : "neudeleženec", + "optional participant" : "udeleženec na željo", "{organizer} (organizer)" : "{organizer} (organizator)", + "Availability of attendees, resources and rooms" : "Razpoložljivost udeležencev, virov in sob", + "Suggestion accepted" : "Predlog je sprejet", + "Legend" : "Legenda", + "Out of office" : "Službena odsotnost", + "Attendees:" : "Udeleženci:", + "Done" : "Končano", + "Room name" : "Ime sobe", "Free" : "Prosto", "Busy (tentative)" : "Načrtovano delo", "Busy" : "Zasedeno", - "Out of office" : "Službena odsotnost", "Unknown" : "Neopredeljeno", + "Find a time" : "Najdi čas", + "The invitation has been accepted successfully." : "Vabilo je uspešno sprejeto.", + "Failed to accept the invitation." : "Sprejemanje povabila je spodletelo.", + "The invitation has been declined successfully." : "Vabilo je uspešno zavrnjeno.", + "Failed to decline the invitation." : "Zavrnitev vabila je spodletela.", + "Your participation has been marked as tentative." : "Vaša udeležba je označena kot nedorečena.", + "Failed to set the participation status to tentative." : "Spreminjanje stanja udeležbe na nedorečeno je spodletelo.", "Accept" : "Sprejmi", "Decline" : "Zavrni", "Tentative" : "V usklajevanju", - "Create Talk room for this event" : "Za dogodek ustvari povezavo Talk", - "Show busy times" : "Pokaži urnike udeležencev", "No attendees yet" : "Ni še vpisanih udeležencev", "Successfully appended link to talk room to description." : "Povezava do sobe Talk je uspešno dodana v opis.", "Error creating Talk room" : "Prišlo je do napake med ustvarjanjem klepetalnice Talk", - "Send email" : "Pošlji elektronsko sporočilo", + "Attendees" : "Udeleženci", + "Remove group" : "Odstrani skupino", + "Remove attendee" : "Odstrani udeleženca", "Chairperson" : "Vodja dogodka", "Required participant" : "Nujna udeležba", "Optional participant" : "Udeležba na željo", "Non-participant" : "Neudeležba", - "Remove attendee" : "Odstrani udeleženca", + "_%n member_::_%n members_" : ["%n član","%n člana","%n člani","%n članov"], "No match found" : "Ni najdenih zadetkov", "(organizer)" : " (skliče dogodek)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Za pošiljanje vabil in urejanje odzivov mora biti [linkopen]vaš elektronski naslov vpisan med osebnimi nastavitvami[linkclose].", "Remove color" : "Odstrani barvo", "Event title" : "Naslov dogodka", - "All day" : "Ves dan", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Ni mogoče spremeniti nastavitve »celodnevno« za dogodke, ki so opredeljeni kot ponavljajoči.", - "from {startDate}" : "od {startDate}", - "from {startDate} at {startTime}" : "od {startDate} ob {startTime}", - "to {endDate}" : "do {endDate}", - "to {endDate} at {endTime}" : "do {endDate} ob {endTime}", + "From" : "Od", + "To" : "Za", "Repeat" : "Ponovi", - "End repeat" : "Končaj:", - "Select to end repeat" : "Izbor končanja ponavljanja", + "_time_::_times_" : [" ponovitvi"," ponovitvah"," ponovitvah"," ponovitvah"], "never" : "nikoli", "on date" : "na dan", "after" : "po", - "_time_::_times_" : [" ponovitvi"," ponovitvah"," ponovitvah"," ponovitvah"], + "End repeat" : "Končaj:", + "Select to end repeat" : "Izbor končanja ponavljanja", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Ta dogodek ima vpisano izjemo ponavljanja, zato pravila ponovitve ni mogoče dodati.", "first" : "1.", - "third" : "3.", - "fourth" : "4.", - "fifth" : "5.", - "second to last" : "predzadnji", - "last" : "zadnji", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Spremembe ponavljajočega dogodka bodo uveljavljene za to in vse prihodnje ponovitve.", "Repeat every" : "Ponovi na", "By day of the month" : "Na dan v mesecu", "On the" : "Na", + "_day_::_days_" : ["dan","dneva","dneve","dni"], + "_week_::_weeks_" : ["teden","tedna","tedne","tednov"], "_month_::_months_" : ["mesec","meseca","mesece","mesecev"], "_year_::_years_" : ["leto","leti","leta","let"], "weekday" : "delovni dan", "weekend day" : "vikend", - "No recurrence" : "Brez ponavljanja", + "Does not repeat" : "Se ne ponavlja", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Določilo ponavljanja tega dogodka ni v celoti podprto! Z urejanjem možnosti ponavljanja so lahko nekatera določila prepisana.", - "Suggestions" : "Predlogi", "No rooms or resources yet" : "Ni še določenih sob ali virov", + "Resources" : "Viri", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sedež","{seatingCapacity} sedeža","{seatingCapacity} sedeži","{seatingCapacity} sedežev"], "Add resource" : "Dodaj vir", "Has a projector" : "Na voljo je projektor", "Has a whiteboard" : "Na voljo je bela tabla", "Wheelchair accessible" : "Dostopno z invalidskim vozičkom", "Remove resource" : "Odstrani vir", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} sedež","{seatingCapacity} sedeža","{seatingCapacity} sedeži","{seatingCapacity} sedežev"], - "Projector" : "Projektor", - "Whiteboard" : "Bela tabla", "Search for resources or rooms" : "Poišči vire in sobe", "available" : "na voljo", "unavailable" : "ni na voljo", + "Projector" : "Projektor", + "Whiteboard" : "Bela tabla", "Room type" : "Vrsta sobe", "Any" : "Katerakoli", "Minimum seating capacity" : "Najmanjša razpoložljivost sedežev", - "More" : "Več", - "Update this occurrence" : "Posodobi to pojavitev", + "More details" : "Več podrobnosti", "Update this and all future" : "Posodobi to in vse prihodnje pojavitve", + "Update this occurrence" : "Posodobi to pojavitev", "Public calendar does not exist" : "Javni koledar ne obstaja", "Maybe the share was deleted or has expired?" : "Morda je mesto souporabe izbrisano ali je časovno poteklo.", - "Please select a time zone:" : "Izbor časovnega pasu:", - "Pick a time" : "Izbor časa", - "Pick a date" : "Izbor datuma", "from {formattedDate}" : "od {formattedDate}", "to {formattedDate}" : "do {formattedDate}", "on {formattedDate}" : "na {formattedDate}", @@ -301,32 +382,51 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} ob {formattedTime}", "Please enter a valid date" : "Vpisati je treba veljaven datum", "Please enter a valid date and time" : "Vpisati je treba veljaven datum in čas", + "Select a time zone" : "Izbor časovnega pasu", + "Please select a time zone:" : "Izbor časovnega pasu:", + "Pick a time" : "Izbor časa", + "Pick a date" : "Izbor datuma", "Type to search time zone" : "Vpišite niz za iskanje časovnega pasu", "Global" : "Splošno", - "Select date" : "Izbor datuma", - "Select slot" : "Izbor časovne možnosti", + "Holidays in {region}" : "Prazniki v regiji {region}", + "Public holiday calendars" : "Koledarji praznikov", + "Public calendars" : "Javni koledarji", + "No valid public calendars configured" : "Ni nastavljenih veljavnih javnih koledarjev", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Javne koledarje omogoča program Thunderbird. Koledarji bodo prejeti s spletišča {website}", + "By {authors}" : "Po {authors}", + "Subscribed" : "Naročeno", + "Subscribe" : "Naročilo", + "Could not fetch slots" : "Pridobivanje podatkov o časovnih terminih je spodletelo", + "Select a date" : "Izbor datuma", + "Select slot" : "Izbor časovnega termina", + "No slots available" : "Ni razpoložljivih časovnih terminov", + "The slot for your appointment has been confirmed" : "Časovni termin sestanka je potrjen", "Appointment Details:" : "Podrobnosti sestanka:", "Time:" : "Čas:", - "See all available slots" : "Pokaži vse razpoložljive možnosti", + "Booked for:" : "Rezervirano za:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Rezervacija od {startDate} do {endDate} je potrjena.", + "Book another appointment:" : "Dogovorite se za drug sestanek:", + "See all available slots" : "Pokaži vse razpoložljive termine", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Termin sestanka med {startDate} in {endDate} ni več na voljo.", + "Please book a different slot:" : "Zabeležite si drug časovni termin:", + "Book an appointment with {name}" : "Dogovorite se za sestanek z osebo {name}", + "No public appointments found for {name}" : "Za uporabnika {name} ni načrtovanih javnih srečanj.", "Personal" : "Osebno", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Samodejno zaznavanje časovnega pasu določa časovni pas kot UTC.\nTo je najverjetneje prilagojeno na varnostne nastavitve spletnega brskalnika.\nČasovni pas lahko določite tudi ročno med nastavitvami koledarja.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Nastavljenega časovnega pasu ({timezoneId}) ni mogoče najti. Povrnjena bo nastavitev na UTC.\nČasovni pas določite ročno med nastavitvami koledarja in pošljite poročilo o napaki.", - "No more events today" : "Danes ni več načrtovanih dogodkov", - "No upcoming events" : "Ni prihajajočih dogodkov", - "Create a new event" : "Ustvari nov dogodek", - "[Today]" : "[Danes]", - "[Tomorrow]" : "[Jutri]", - "[Yesterday]" : "[Včeraj]", - "[Last] dddd" : "[Zadnje] dddd", + "Edit event" : "Uredi dogodek", "Event does not exist" : "Dogodek ne obstaja", + "Duplicate" : "Podvoji", "Delete this occurrence" : "Izbriši to pojavitev", "Delete this and all future" : "Izbriši to in vse prihodnje pojavitve", - "Details" : "Podrobnosti", - "Attendees" : "Udeleženci", - "Resources" : "Viri", + "All day" : "Ves dan", + "Managing shared access" : "Upravljanje z dostopom", + "Deny access" : "Zavrni dostop", + "Invite" : "Povabi", + "Untitled event" : "Neimenovan dogodek", "Close" : "Zapri", - "Show more details" : "Pokaži več podrobnosti", "Subscribe to {name}" : "Naroči na {name}", + "Export {name}" : "Izvozi {name}", "Anniversary" : "Obletnica", "Appointment" : "Sestanek", "Business" : "Posel", @@ -354,7 +454,6 @@ "on {time}" : "ob {time}", "on {time} ({timezoneId})" : "ob {time} ({timezoneId})", "Week {number} of {year}" : "{number}. teden leta {year}", - "Does not repeat" : "Se ne ponavlja", "Daily" : "Dnevno", "Weekly" : "Tedensko", "Monthly" : "Mesečno", @@ -366,18 +465,17 @@ "_on {weekday}_::_on {weekdays}_" : [": {weekday}",": {weekday}",": {weekday}",": {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : [": na {dayOfMonthList}",": na {dayOfMonthList}",": na {dayOfMonthList}",": na {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : ": {ordinalNumber} {byDaySet}", - "in {monthNames}" : ": {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : ": {monthNames} : {ordinalNumber} {byDaySet}", "until {untilDate}" : "do {untilDate}", "_%n time_::_%n times_" : ["%n-krat","%n-krat","%n-krat","%n-krat"], - "Untitled event" : "Neimenovan dogodek", + "second" : "drugi", + "third" : "3.", + "fourth" : "4.", + "fifth" : "5.", + "second to last" : "predzadnji", + "last" : "zadnji", "Untitled task" : "Neimenovana naloga", "Please ask your administrator to enable the Tasks App." : "Obvestite skrbnika, da je treba omogočiti program Tasks.", - "Prev" : "Predhodno", - "Next" : "Naslednje", - "Prev year" : "Predhodno leto", - "Next year" : "Naslednje leto", - "Year" : "Leto", "W" : "T", "%n more" : "%n več", "No events to display" : "Ni dogodkov za prikaz", @@ -396,10 +494,9 @@ "When shared hide this event" : "V souporabi skrij ta dogodek", "The visibility of this event in shared calendars." : "Vidnost tega dogodka v koledarjih v souporabi.", "Add a location" : "Dodaj mesto ...", - "Add a description" : "Dodaj opis ...", "Status" : "Stanje", "Confirmed" : "Potrjeno", - "Canceled" : "sestanek preklican", + "Canceled" : "Preklicano", "Confirmation about the overall status of the event." : "Potrditev splošnega stanja dogodka.", "Show as" : "Pokaži kot", "Take this event into account when calculating free-busy information." : "Ta dogodek upoštevaj pri preračunavanju podatkov o zasedenosti udeležencev.", @@ -409,134 +506,20 @@ "Add this as a new category" : "Dodaj kot novo kategorijo", "Custom color" : "Barva po meri", "Special color of this event. Overrides the calendar-color." : "Posebna barva dogodka prepiše privzeto barvo koledarja.", - "Chat room for event" : "Klepetalnica za dogodek", + "Error while sharing file" : "Prišlo je do napake med souporabo datoteke", + "Error while sharing file with user" : "Prišlo je do napake med souporabo datoteke z uporabnikom", + "Attachment {fileName} already exists!" : "Priloga {fileName} že obstaja!", + "An error occurred during getting file information" : "Prišlo je do napake med pridobivanjem podrobnosti datoteke", + "An error occurred, unable to delete the calendar." : "Prišlo je do napake; ni mogoče izbrisati koledarja.", "Imported {filename}" : "Uvožena datoteka {filename}", - "Meditation" : "Meditacija", - "Relaxing" : "Sproščanje", - "Relax" : "Počitek", - "Break" : "Odmor", - "Commute" : "Med vožnjo", - "Commuting" : "Med vožnjo", - "Invoice" : "Račun", - "Finance" : "Finance", - "Bank" : "Banka", - "Money" : "Denar", - "Wedding" : "Poroka", - "Dog" : "Pes", - "Concert" : "Koncert", - "Festival" : "Festival", - "Theater" : "Gledališče", - "Theatre" : "Predstava", - "Presentation" : "Predstavitev", - "Talk" : "Pogovor", - "Speech" : "Govor", - "Deadline" : "Rok", - "Submission" : "Objava", - "Reporting" : "Poročilo", - "Camping" : "Kampiranje", - "Camp" : "Kamp", - "Election" : "Volitve", - "Voting" : "Glasovanje", - "Vote" : "Glas", - "Barbecue" : "Pečenje", - "Barbeque" : "Piknik", - "Garden" : "Vrt", - "Farm" : "Kmetija", - "Movie" : "Film", - "Cinema" : "Kino", - "Graduation" : "Diploma", - "Brainstorm" : "Možganska nevihta", - "Review" : "Pregled", - "Audit" : "Revizija", - "Inspection" : "Inšpekcija", - "Proofreading" : "Pregled", - "Baseball" : "Baseball", - "Meet" : "Srečanje", - "Planning" : "Načrtovanje", - "Pointing" : "Nakazovanje", - "Retrospective" : "Retrospektiva", - "Office" : "Pisarna", - "Contributor week" : "Sodelovalni teden", - "Mail" : "Pošta", - "Soccer" : "Nogomet", - "Football" : "Ameriški nogomet", - "Gaming" : "Igrice", - "Drive" : "Vožnja", - "Driving" : "Vožnja", - "Bicycle" : "Kolo", - "Cycle" : "Kolesarjenje", - "Cycling" : "Kolesa", - "Biking" : "Kolesarjenje", - "Bike" : "Kolo", - "Podcast" : "Podkast", - "Basketball" : "Košarka", - "Fishing" : "Ribolov", - "Hiking" : "Pohodništvo", - "Hike" : "Pohod", - "Art" : "Umetnost", - "Exhibition" : "Razstava", - "Museum" : "Muzej", - "Pilates" : "Pilates", - "Park" : "Park", - "Walk" : "Sprehod", - "Studying" : "Učenje", - "Doctor" : "Zdravnik", - "Health" : "Zdravje", - "Dentist" : "Zobozdravnik", - "Hospital" : "Bolnišnica", - "Interview" : "Intervju", - "Training" : "Kondicijski", - "Practice" : "Potenje", - "Sports" : "Šport", - "Exercise" : "Vaja", - "Work out" : "Trening", - "Working out" : "Treniranje", - "Gym" : "Telovadnica", - "Barber" : "Brivec", - "Haircut" : "Frizer", - "Hairdresser" : "Frizer", - "Exam" : "Izpit", - "Written test" : "Pisni izpit, preizkus ali test", - "Oral test" : "Ustni izpit, preizkus ali test", - "Working" : "Delo", - "New Years Eve" : "Novo leto", - "NYE" : "Ognjemet", - "Fireworks" : "Ognjemet", - "Running" : "Tek", - "Go for a run" : "Priprave na tek", - "Marathon" : "Maraton", - "Video-conference" : "Videokonferenca", - "Conference-call" : "Konferenčni klic", - "Video-call" : "Video klic", - "Video-chat" : "Video klepet", - "Video-meeting" : "Video srečanje", - "Call" : "Klic", - "Calling" : "Klicanje", - "Christmas" : "Božič", - "Conference" : "Konferenca", - "Pizza" : "Pizza", - "Travelling" : "Potovanje", - "Trip" : "Potepanje", - "Journey" : "Popotovanje", - "Collaborate" : "Sodelovanje", - "Pair" : "Par", - "Lecture" : "Predavanje", - "Seminar" : "Seminar", - "Teaching" : "Poučevanje", - "Photograph" : "Fotografija", - "Party" : "Zabava", - "Celebration" : "Praznovanje", - "Celebrate" : "Praznovanje", - "Birthday" : "Rojstni dan", - "Shopping" : "Nakupovanje", - "Groceries" : "Trgovina", - "Skate" : "Skejt", - "Skateboard" : "Skejtanje", - "Wine tasting" : "Vino", - "Golf" : "Golf", - "Dinner" : "Večerja", - "Lunch" : "Kosilo", + "This is an event reminder." : "To je opomnik dogodka.", "Appointment not found" : "Sestanka ni mogoče najti", - "User not found" : "Uporabnika ni mogoče najti" + "User not found" : "Uporabnika ni mogoče najti", + "Reminder" : "Opomnik", + "+ Add reminder" : "+ Dodaj opomnik", + "with" : "z", + "Available times:" : "Razpoložljivi termini", + "Suggestions" : "Predlogi", + "Details" : "Podrobnosti" },"pluralForm" :"nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);" } \ No newline at end of file diff --git a/l10n/sq.js b/l10n/sq.js index 1a1f86cf63c43c7ef3fafdb28656fcf6cd92c601..19578da3da684d308409e9e9a5d4faf1e030e1ab 100644 --- a/l10n/sq.js +++ b/l10n/sq.js @@ -6,12 +6,11 @@ OC.L10N.register( "We wanted to inform you that %s has published the calendar »%s«." : "Donim t'ju informonim se %s ka publikuar kalendarin »%s«", "Open »%s«" : "Hap »%s«", "Cheers!" : "Gëzuar!", + "Calendar" : "Kalendar", "Appointments" : "Takime", "Confirm" : "Konfirmo", - "Where:" : "Ku:", "Description:" : "Përshkrimi:", - "Calendar" : "Kalendar", - "New event" : "Veprimtari e re", + "Where:" : "Ku:", "Today" : "Sot", "Day" : "Ditë", "Week" : "Javë", @@ -21,21 +20,27 @@ OC.L10N.register( "Copy link" : "Kopjo linkun", "Edit" : "Përpuno", "Delete" : "Fshije", - "Export" : "Eksport", - "Share link" : "Ndani lidhjen", - "Share with users or groups" : "Nda me përdoruesit ose grupet", - "can edit" : "mund të përpunojnë", + "Create new" : "Krijo të ri", "New calendar" : "Kalendar i ri", + "Export" : "Eksport", "Name" : "Emri", "Deleted" : "E fshirë", "Restore" : "Rikthe", "Delete permanently" : "Fshije përgjithmonë", + "Deck" : "Shto paisjen U2F", + "Hidden" : "I fshehur", + "Copy internal link" : "Kopjoni lidhjen e brendshme", + "Share link" : "Ndani lidhjen", + "can edit" : "mund të përpunojnë", + "Share with users or groups" : "Nda me përdoruesit ose grupet", + "Save" : "Ruaj", "Filename" : "Emri i skedarit", "Cancel" : "Anuloje", "Automatic" : "Automatike", "List view" : "Pamje listë", "Actions" : "Veprimet", "Show week numbers" : "Shfaq numra javësh", + "Update" : "Përditësoje", "Location" : "Vendndodhje", "Description" : "Përshkrim", "Duration" : "Kohëzgjatja", @@ -48,35 +53,42 @@ OC.L10N.register( "Friday" : "E premte", "Saturday" : "E shtunë", "Sunday" : "E dielë", - "Save" : "Ruaj", - "Update" : "Përditësoje", "Your email address" : "Adresa juaj email", + "Back" : "Mbrapsht", "Notification" : "Njoftim", "Email" : "Emaili", + "seconds" : "sekonda", + "minutes" : "minuta", + "hours" : "orë", + "days" : "ditë", + "weeks" : "javë", + "Choose a file to add as attachment" : "Zgjidhni një kartelë që të shtohet si bashkëngjitje", + "Delete file" : "Fshi skedarin", "Available" : "i disponueshëm", + "Done" : "U bë", + "Room name" : "Emri i dhomës", "Unknown" : "I/E panjohur", "Accept" : "Prano", "Decline" : "Refuzo", "Tentative" : "Tentativë", - "Send email" : "Dërgo email", - "All day" : "Gjithë ditën", + "Attendees" : "Pjesëmarrës", + "Remove group" : "Hiq grupin", "Repeat" : "Përsërite", "never" : "kurrë", "after" : "pas", + "Resources" : "Burimet", "available" : "në gjëndje", - "More" : "Më tepër", "Global" : "Globale", + "Subscribe" : "Abonohu", "Personal" : "Personale", - "Details" : "Detajet", - "Attendees" : "Pjesëmarrës", - "Resources" : "Burimet", + "Edit event" : "Përpunoni veprimtarinë", + "All day" : "Gjithë ditën", "Close" : "Mbylle", "Anniversary" : "Përvjetor", "Week {number} of {year}" : "Java e {number} e {year}", "Daily" : "Përditë", "Weekly" : "Çdo javë", - "Prev" : "I mëparshëm", - "Next" : "Tjetër", + "second" : "sekondë", "Other" : "Tjetër", "When shared show full event" : "Kur ndahet shfaqje e veprimtarisë së plotë", "When shared show only busy" : "Kur ndahet shfaqje vetëm i zënë", @@ -85,9 +97,6 @@ OC.L10N.register( "Confirmed" : "E konfirmuar", "Canceled" : "Anuluar", "Categories" : "Kategoritë", - "Presentation" : "Paraqitje", - "Office" : "Zyrë", - "Mail" : "Posta", - "Birthday" : "Datëlindje" + "Details" : "Detajet" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/sq.json b/l10n/sq.json index 67b33396276e3a3e064922882ea01b0bbfab9fbb..a44f7e62664909ead3460a7a997f1b914ecf9255 100644 --- a/l10n/sq.json +++ b/l10n/sq.json @@ -4,12 +4,11 @@ "We wanted to inform you that %s has published the calendar »%s«." : "Donim t'ju informonim se %s ka publikuar kalendarin »%s«", "Open »%s«" : "Hap »%s«", "Cheers!" : "Gëzuar!", + "Calendar" : "Kalendar", "Appointments" : "Takime", "Confirm" : "Konfirmo", - "Where:" : "Ku:", "Description:" : "Përshkrimi:", - "Calendar" : "Kalendar", - "New event" : "Veprimtari e re", + "Where:" : "Ku:", "Today" : "Sot", "Day" : "Ditë", "Week" : "Javë", @@ -19,21 +18,27 @@ "Copy link" : "Kopjo linkun", "Edit" : "Përpuno", "Delete" : "Fshije", - "Export" : "Eksport", - "Share link" : "Ndani lidhjen", - "Share with users or groups" : "Nda me përdoruesit ose grupet", - "can edit" : "mund të përpunojnë", + "Create new" : "Krijo të ri", "New calendar" : "Kalendar i ri", + "Export" : "Eksport", "Name" : "Emri", "Deleted" : "E fshirë", "Restore" : "Rikthe", "Delete permanently" : "Fshije përgjithmonë", + "Deck" : "Shto paisjen U2F", + "Hidden" : "I fshehur", + "Copy internal link" : "Kopjoni lidhjen e brendshme", + "Share link" : "Ndani lidhjen", + "can edit" : "mund të përpunojnë", + "Share with users or groups" : "Nda me përdoruesit ose grupet", + "Save" : "Ruaj", "Filename" : "Emri i skedarit", "Cancel" : "Anuloje", "Automatic" : "Automatike", "List view" : "Pamje listë", "Actions" : "Veprimet", "Show week numbers" : "Shfaq numra javësh", + "Update" : "Përditësoje", "Location" : "Vendndodhje", "Description" : "Përshkrim", "Duration" : "Kohëzgjatja", @@ -46,35 +51,42 @@ "Friday" : "E premte", "Saturday" : "E shtunë", "Sunday" : "E dielë", - "Save" : "Ruaj", - "Update" : "Përditësoje", "Your email address" : "Adresa juaj email", + "Back" : "Mbrapsht", "Notification" : "Njoftim", "Email" : "Emaili", + "seconds" : "sekonda", + "minutes" : "minuta", + "hours" : "orë", + "days" : "ditë", + "weeks" : "javë", + "Choose a file to add as attachment" : "Zgjidhni një kartelë që të shtohet si bashkëngjitje", + "Delete file" : "Fshi skedarin", "Available" : "i disponueshëm", + "Done" : "U bë", + "Room name" : "Emri i dhomës", "Unknown" : "I/E panjohur", "Accept" : "Prano", "Decline" : "Refuzo", "Tentative" : "Tentativë", - "Send email" : "Dërgo email", - "All day" : "Gjithë ditën", + "Attendees" : "Pjesëmarrës", + "Remove group" : "Hiq grupin", "Repeat" : "Përsërite", "never" : "kurrë", "after" : "pas", + "Resources" : "Burimet", "available" : "në gjëndje", - "More" : "Më tepër", "Global" : "Globale", + "Subscribe" : "Abonohu", "Personal" : "Personale", - "Details" : "Detajet", - "Attendees" : "Pjesëmarrës", - "Resources" : "Burimet", + "Edit event" : "Përpunoni veprimtarinë", + "All day" : "Gjithë ditën", "Close" : "Mbylle", "Anniversary" : "Përvjetor", "Week {number} of {year}" : "Java e {number} e {year}", "Daily" : "Përditë", "Weekly" : "Çdo javë", - "Prev" : "I mëparshëm", - "Next" : "Tjetër", + "second" : "sekondë", "Other" : "Tjetër", "When shared show full event" : "Kur ndahet shfaqje e veprimtarisë së plotë", "When shared show only busy" : "Kur ndahet shfaqje vetëm i zënë", @@ -83,9 +95,6 @@ "Confirmed" : "E konfirmuar", "Canceled" : "Anuluar", "Categories" : "Kategoritë", - "Presentation" : "Paraqitje", - "Office" : "Zyrë", - "Mail" : "Posta", - "Birthday" : "Datëlindje" + "Details" : "Detajet" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/sr.js b/l10n/sr.js index 2fc888fbdd6c005f784fe053ebdce045fae806fc..684a7f747ee3b34ac83baff587ff592784e45766 100644 --- a/l10n/sr.js +++ b/l10n/sr.js @@ -1,56 +1,239 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Наведена и-мејл адреса је предугачка", + "User-Session unexpectedly expired" : "Корисничка сесија је неочекивано истекла", + "Provided email-address is not valid" : "Наведена и-мејл адреса није исправна", "%s has published the calendar »%s«" : "%s је објавио календар »%s«", + "Unexpected error sending email. Please contact your administrator." : "Неочекивана грешка током слања и-мејла. Молимо вас да се обратите свом администратору.", + "Successfully sent email to %1$s" : "И-мејл је успешно послат на %1$s", "Hello," : "Здраво, ", "We wanted to inform you that %s has published the calendar »%s«." : "Желимо да Вас обавестимо да је %s објавио календар »%s«.", "Open »%s«" : "Отвори »%s«", "Cheers!" : "Здраво!", + "Upcoming events" : "Предстојећи догађаји", + "No more events today" : "Данас нема више догађаја", + "No upcoming events" : "Нема догађаја у блиској будућности", + "More events" : "Још догађаја", + "%1$s with %2$s" : "%1$s са %2$s", + "Calendar" : "Календар", + "New booking {booking}" : "Нова резервација {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) је резервисао састанак „{config_display_name}” у {date_time}.", + "Appointments" : "Састанци", + "Schedule appointment \"%s\"" : "Планирај састанак „%s”", + "Schedule an appointment" : "Планирање састанка", + "%1$s - %2$s" : "%1$s %2$s", + "Prepare for %s" : "Припрема за %s", + "Follow up for %s" : "Праћење за %s", + "Your appointment \"%s\" with %s needs confirmation" : "Потребна је потврда за ваш састанак „%s” са %s", + "Dear %s, please confirm your booking" : "Поштовани %s, молим вас да потврдите своју резервацију", "Confirm" : "Потврди", + "Appointment with:" : "Састанак са:", + "Description:" : "Опис:", + "This confirmation link expires in %s hours." : "Овај линк за потврду истиче за %s сати.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Ако желите да откажете овај састанак, молимо вас да се обратите организатору одговором на овај и-мејл или посетом њихове странице профила.", + "Your appointment \"%s\" with %s has been accepted" : "Ваш састанак „%s” са %s је прихваћен", + "Dear %s, your booking has been accepted." : "Поштовани %s, ваша резервација је прихваћена.", + "Appointment for:" : "Састанак за:", "Date:" : "Датум:", + "You will receive a link with the confirmation email" : "Примићете линк у и-мејлу за потврду", "Where:" : "Место:", - "Description:" : "Опис:", - "Calendar" : "Календар", + "Comment:" : "Коментар:", + "You have a new appointment booking \"%s\" from %s" : "Имате нову резервацију састанака „%s” коју је послао %s", + "Dear %s, %s (%s) booked an appointment with you." : "Поштовани %s, %s (%s) је резервисао састанак са вама.", "A Calendar app for Nextcloud" : "Календар апликација за Некстклауд", - "New event" : "Нови догађај", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Апликација Календар за Nextcloud. Једноставно синхронизујте догађаје из разних уређаја са вашим Nextcloud сервером и уређујте их на мрежи.\n\n* 🚀 **Интеграција са осталим Nextcloud апликацијама!** Као што су Контакти, Задаци, Шпил и Кругови.\n* 🌐 **WebCal подршка!** Желите да у свом календару видите датуме мечева свог омиљеног тима? Нема проблема!\n* 🙋 **Учесници!** Позовите људе на своје догађаје\n* ⌚ **Слободан/Заузет!** Видите када ваши учесници могу да присуствују састанку\n* ⏰ **Подсетници!** Примајте аларме за своје догађаје унутар прегледача и путем и-мејла\n* 🔍 **Претрага!** Једноставно пронађите своје догађаје\n* ☑️ **Задаци!** Видите задатке са постављеним роком директно у календару\n🔈 **Talk собе!** Када заказујете састанак, једим кликом креирајте придружену Talk собу\n* 📆 **Заказивање састанка** Шаљите људима линк тако да могу да закажу састанак са вама [користећи ову апликацију](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Прилози!** Додајте, отпремајте и прегледајте прилоге догађаја\n* 🙈 **Не измишљамо рупу на саксији!** Заснована на одличној [c-dav библиотеци](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) и [fullcalendar](https://github.com/fullcalendar/fullcalendar) библиотекама.", + "Previous day" : "Претходни дан", + "Previous week" : "Претходна недеља", + "Previous year" : "Претходна година", + "Previous month" : "Претходни месец", + "Next day" : "Наредни дан", + "Next week" : "Наредне недеље", + "Next year" : "Наредна година", + "Next month" : "Наредног месеца", + "Create new event" : "Креирај нови догађај", + "Event" : "Догађај", "Today" : "Данас", "Day" : "Дан", "Week" : "Недеља", "Month" : "Месец", + "Year" : "Година", "List" : "Излистај", + "Appointment link was copied to clipboard" : "Линк састанка је копиран у клипборд", + "Appointment link could not be copied to clipboard" : "Линк састанка није могао да се копира у клипборд", "Preview" : "Претпреглед", "Copy link" : "Копирај везу", "Edit" : "Измени", "Delete" : "Обриши", - "Edit name" : "Измени име", - "Copy private link" : "Копирај приватну везу", - "Export" : "Извези", - "An error occurred, unable to delete the calendar." : "Догодила се грешка, не могу да обришем календар.", + "Appointment schedules" : "Распореди састанака", + "Create new" : "Направи нови", + "Disable calendar \"{calendar}\"" : "Искључи календар „{calendar}”", + "Disable untitled calendar" : "Искључи неименовани календар", + "Enable calendar \"{calendar}\"" : "Укључи календар „{calendar}”", + "Enable untitled calendar" : "Укључи неименовани календар", + "An error occurred, unable to change visibility of the calendar." : "Дошло је до грешке, не може да се промени видљивост календара.", + "Untitled calendar" : "Неименовани календар", + "Shared with you by" : "Са вама је поделио", + "Edit and share calendar" : "Уреди и подели календар", + "Edit calendar" : "Уреди календар", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Календар престаје да се дели за {countdown} секунду","Календар престаје да се дели за {countdown} секунде","Календар престаје да се дели за {countdown} секунди"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Календар се брише за {countdown} секунду","Календар се брише за {countdown} секунде","Календар се брише за {countdown} секунди"], + "An error occurred, unable to create the calendar." : "Дошло је до грешке, календар не може да се креира.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Молимо вас да унесете исправан линк (који полиње са http://, https://, webcal://, или webcals://)", + "Calendars" : "Календари", + "Add new" : "Додај нови", + "New calendar" : "Нови календар", + "Name for new calendar" : "Назив новог календара", + "Creating calendar …" : "Календар се креира …", + "New calendar with task list" : "Нови календар са листом задатака", + "New subscription from link (read-only)" : "Нова претплата преко линка (само-за-читање)", + "Creating subscription …" : "Претплата се креира …", + "Add public holiday calendar" : "Додај календар државних празника", + "Add custom public calendar" : "Додај прилагођени јавни календар", "Calendar link copied to clipboard." : "Веза календара копирана у оставу.", "Calendar link could not be copied to clipboard." : "Веза календара није могла да се копира у оставу.", - "Share link" : "Дели везу", - "Delete share link" : "Обриши везу дељења", - "Share with users or groups" : "Дели са корисницима или групама", - "No users or groups" : "Нема корисника или група", - "can edit" : "може да мења", - "Unshare with {displayName}" : "Уклони дељење са {displayName}", - "New calendar" : "Нови календар", + "Copy subscription link" : "Копирај линк за претплату", + "Copying link …" : "Линк се копира …", + "Copied link" : "Линк је копиран", + "Could not copy link" : "Линк није могао да се копира", + "Export" : "Извези", + "Untitled item" : "Неименована ставка", + "Unknown calendar" : "Непознати календар", + "Could not load deleted calendars and objects" : "Обрисани календари и објекти не могу да се учитају.", + "Could not delete calendar or event" : "Календар или догађај није могао да се обрише", + "Could not restore calendar or event" : "Календар или догађај није могао да се обнови", + "Do you really want to empty the trash bin?" : "Да ли заиста желите да испразните корпу за отпатке?", + "Empty trash bin" : "Испразни корпу за отпатке", + "Trash bin" : "Корпа за отпатке", + "Loading deleted items." : "Учитавање обрисаних ставки.", + "You do not have any deleted items." : "Немате ниједну обрисану ставку.", "Name" : "Име", "Deleted" : "Обрисано", "Restore" : "Врати", "Delete permanently" : "Обриши заувек", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Ставке у корпи за отпатке се бришу након {numDays} дана","Ставке у корпи за отпатке се бришу након {numDays} дана","Ставке у корпи за отпатке се бришу након {numDays} дана"], + "Could not update calendar order." : "Није могао да се ажурира редослед календара.", + "Shared calendars" : "Дељени календари", + "Deck" : "Deck", + "Hidden" : "Сакривен", + "Internal link" : "Интерна веза", + "A private link that can be used with external clients" : "Приватни линк који може да се користи са спољним клијентима", + "Copy internal link" : "Копирај интерну везу", + "An error occurred, unable to publish calendar." : "Дошло је до грешке, календар не може да се објави.", + "An error occurred, unable to send email." : "Дошло је до грешке, и-мејл не може да се пошаље.", + "Embed code copied to clipboard." : "Кôд за уградњу је копиран у клипборд.", + "Embed code could not be copied to clipboard." : "Кôд за уградњу није могао да се копира у клипборд.", + "Unpublishing calendar failed" : "Није успео прекид објављивања календара", + "Share link" : "Дели везу", + "Copy public link" : "Копирај јавни линк", + "Send link to calendar via email" : "Пошаљи и-мејлом линк на календар", + "Enter one address" : "Унесите једну адресу", + "Sending email …" : "И-мејл се шаље …", + "Copy embedding code" : "Копирај кôд за уградњу", + "Copying code …" : "Кôд се копира …", + "Copied code" : "Кôд је копиран", + "Could not copy code" : "Кôд није могао да се копира", + "Delete share link" : "Обриши везу дељења", + "Deleting share link …" : "Линк за дељење се брише …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Тим)", + "An error occurred while unsharing the calendar." : "Дошло је до грешке приликом уклањања дељења календара.", + "An error occurred, unable to change the permission of the share." : "Дошло је до грешке, не може да се измени дозвола дељења.", + "can edit" : "може да мења", + "Unshare with {displayName}" : "Уклони дељење са {displayName}", + "Share with users or groups" : "Дели са корисницима или групама", + "No users or groups" : "Нема корисника или група", + "Failed to save calendar name and color" : "Није успело чување назива календара и боје", + "Calendar name …" : "Назив календара ...", + "Never show me as busy (set this calendar to transparent)" : "Никад не приказуј статус заузет (поставља овај календар на транспарентно)", + "Share calendar" : "Дели календар", + "Unshare from me" : "Уклони дељење за мене", + "Save" : "Сачувај", + "Import calendars" : "Увоз календара", + "Please select a calendar to import into …" : "Молимо вас да изаберете календар у који се увози …", "Filename" : "Име фајла", + "Calendar to import into" : "Календар у који се увози", "Cancel" : "Одустани", + "_Import calendar_::_Import calendars_" : ["Увези календар","Увези календара","Увези календаре"], + "Select the default location for attachments" : "Изаберите подразумевану локацију за прилоге", + "Pick" : "Изаберите", + "Invalid location selected" : "Изабрана је неисправна локација", + "Attachments folder successfully saved." : "Фолдер за прилоге је успешно сачуван.", + "Error on saving attachments folder." : "Грешка приликом чувања фолдера са додацима.", + "Default attachments location" : "Подразумевана локација прилога", + "{filename} could not be parsed" : "{filename} не може да се парсира", + "No valid files found, aborting import" : "Нису пронађени исправни фајлови, увоз се прекида", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n догађај је успешно увезен","%n догађаја је успешно увезено","%n догађаја је успешно увезено"], + "Import partially failed. Imported {accepted} out of {total}." : "Увоз делимично није био успешан. Увезено је {accepted} од {total} укупно.", "Automatic" : "Аутоматски", - "or" : "или", + "Automatic ({detected})" : "Аутоматски ({detected})", + "New setting was not saved successfully." : "Ново подешавање није успешно сачувано.", + "Navigation" : "Навигација", + "Previous period" : "Претходни период", + "Next period" : "Наредни период", + "Views" : "Прикази", + "Day view" : "Дневни приказ", + "Week view" : "Недељни приказ", + "Month view" : "Месечни приказ", + "Year view" : "Годишњи приказ", "List view" : "Приказ листе", "Actions" : "Радње", + "Create event" : "Креирај догађај", + "Show shortcuts" : "Прикажи пречице", + "Editor" : "Едитор", + "Close editor" : "Затвори едитор", + "Save edited event" : "Сачувај уређени догађај", + "Delete edited event" : "Обриши уређени догађај", + "Duplicate event" : "Дуплирај догађај", + "Shortcut overview" : "Преглед пречица", + "or" : "или", + "Calendar settings" : "Подешавања календара", + "At event start" : "На почетку догађаја", + "No reminder" : "Нема подсетника", + "Failed to save default calendar" : "Није успело чување подразумеваног календара", + "CalDAV link copied to clipboard." : "CalDAV линк је копиран у клипборд.", + "CalDAV link could not be copied to clipboard." : "CalDAV линк није могао да се копира у клипборд.", + "Enable birthday calendar" : "Укључи календар рођендана", + "Show tasks in calendar" : "Прикажи задатке у календару", + "Enable simplified editor" : "Укључи поједностављени едитор", + "Limit the number of events displayed in the monthly view" : "Ограничи број догађаја који се приказују у месечном приказу", + "Show weekends" : "Прикажи викенде", "Show week numbers" : "Прикажи број седмице", + "Time increments" : "Временски кораци", + "Default calendar for incoming invitations" : "Подразумевани календар за долазеће позивнице", + "Default reminder" : "Подразумевани подсетник", + "Copy primary CalDAV address" : "Копирај примарну CalDAV адресу", + "Copy iOS/macOS CalDAV address" : "Копирај iOS/macOS CalDAV адресу", + "Personal availability settings" : "Подешавања личне доступности", "Show keyboard shortcuts" : "Прикажи пречице тастатуре", + "Appointment schedule successfully created" : "Успешно је креиран распоред састанка", + "Appointment schedule successfully updated" : "Успешно је ажуриран распоред састанка", + "_{duration} minute_::_{duration} minutes_" : ["{duration} минут","{duration} минута","{duration} минута"], + "0 minutes" : "0 минута", + "_{duration} hour_::_{duration} hours_" : ["{duration} сат","{duration} сата","{duration} сати"], + "_{duration} day_::_{duration} days_" : ["{duration} дан","{duration} дана","{duration} дана"], + "_{duration} week_::_{duration} weeks_" : ["{duration} седмица","{duration} седмице","{duration} седмица"], + "_{duration} month_::_{duration} months_" : ["{duration} месец","{duration} месеца","{duration} месеци"], + "_{duration} year_::_{duration} years_" : ["{duration} година","{duration} године","{duration} година"], + "To configure appointments, add your email address in personal settings." : "Да бисте подесили састанке, додајте своу и-мејл адресу у личним подешавањима.", + "Public – shown on the profile page" : "Јавно – приказује се на страници профила", + "Private – only accessible via secret link" : "Приватно – доступно само путем тајног линка", + "Appointment schedule saved" : "Сачуван је распоред састанка", + "Create appointment schedule" : "Креирај распоред састанка", + "Edit appointment schedule" : "Уреди распоред састанка", + "Update" : "Ажурирај", + "Appointment name" : "Назив састанка", "Location" : "Локација", + "Create a Talk room" : "Креирај Talk собу", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "За сваки заказани састанак ће се креирати јединствени линк који ће се послати и-мејлом за потврду", "Description" : "Опис", + "Visibility" : "Видљивост", "Duration" : "Трајање", + "Increments" : "Кораци", + "Additional calendars to check for conflicts" : "Додатни календари у којима се проверавају конфликти", + "Pick time ranges where appointments are allowed" : "Изаберите опсеге времена у којима су дозвољени састанци", "to" : "за", + "Delete slot" : "Обриши термин", + "No times set" : "Није постављено ниједно време", "Add" : "Додај", "Monday" : "Понедељак", "Tuesday" : "Уторак", @@ -59,60 +242,359 @@ OC.L10N.register( "Friday" : "Петак", "Saturday" : "Субота", "Sunday" : "Недеља", - "Save" : "Сачувај", - "Update" : "Ажурирај", + "Weekdays" : "Дани у недељи", + "Add time before and after the event" : "Додај време пре и након догађаја", + "Before the event" : "Пре догађаја", + "After the event" : "Након догађаја", + "Planning restrictions" : "Ограничења планирања", + "Minimum time before next available slot" : "Минимално време пре наредног доступног термина", + "Max slots per day" : "Максимални број термина у дану", + "Limit how far in the future appointments can be booked" : "Ограничава колико далеко у будућност могу да се закажу састанци", + "It seems a rate limit has been reached. Please try again later." : "Изгледа да је достигнуто ограничење учесталости. Молимо вас да касније покушајте поново.", + "Please confirm your reservation" : "Молимо вас да потврдите своју резервацију", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Послали смо вам и-мејл са детаљима. Молимо вас да за потврђивање састанка употребите линк у и-мејлу. Сада можете да затворите ову страницу.", + "Your name" : "Ваше име", "Your email address" : "Адреса Ваше е-поште", + "Please share anything that will help prepare for our meeting" : "Молимо вас да поделите све што нам може помоћи у припреми нашег састанка", + "Could not book the appointment. Please try again later or contact the organizer." : "Састанак није могао да се закаже. Молимо вас покушајте касније поново, или се обратите организатору.", + "Back" : "Назад", + "Book appointment" : "Закажи састанак", + "Error fetching Talk conversations." : "Грешка приликом преузимања Talk разговора", + "Conversation does not have a valid URL." : "Разговор нема исправну URL адресу.", + "Successfully added Talk conversation link to location." : "Линк на Talk разговор је успешно додат у локацију.", + "Successfully added Talk conversation link to description." : "Линк на Talk разговор је успешно додат у опис.", + "Failed to apply Talk room." : "Није успело примењивање Talk собе.", + "Error creating Talk conversation" : "Грешка при креирању Talk разговора", + "Select a Talk Room" : "Изабери Talk собу", + "Add Talk conversation" : "Додај Talk разговор", + "Fetching Talk rooms…" : "Преузимају се Talk собе…", + "No Talk room available" : "Није доступна ниједна Talk соба", + "Create a new conversation" : "Креирај нови разговор", + "Select conversation" : "Одаберите разговор", + "on" : "дана", + "at" : "у", + "before at" : "раније у", "Notification" : "Обавештење", "Email" : "Е-пошта", + "Audio notification" : "Звучно обавештење", + "Other notification" : "Друго обавештење", + "Relative to event" : "Релативно у односу на догађај", + "On date" : "Дана", + "Edit time" : "Уреди време", + "Save time" : "Сачувај време", + "Remove reminder" : "Уклони подсетник", + "Add reminder" : "Додавање подсетника", + "seconds" : "секунди", + "minutes" : "минута", + "hours" : "сати", + "days" : "дана", + "weeks" : "седмица", + "Choose a file to add as attachment" : "Изаберите фајл за прилог", + "Choose a file to share as a link" : "Одаберите фајл који желите да поделите као везу", + "Attachment {name} already exist!" : "Прилог {name} веђ постоји!", + "Could not upload attachment(s)" : "Не могу да се отпреме прилози", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Управо ћете да преузмете фајл. Молимо вас да пре отварања проверите име фајла. Да ли заиста желите да наставите?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Управо ћете да посетите {host}. Да ли желите да наставите? Линк: {link}", + "Proceed" : "Настави", + "No attachments" : "Без прилога", + "Add from Files" : "Додај из Фајлова", + "Upload from device" : "Отпреми са уређаја", + "Delete file" : "Обриши фајл", + "Confirmation" : "Потврда", + "_{count} attachment_::_{count} attachments_" : ["{count} прилог","{count} прилога","{count} прилога"], + "Suggested" : "Предложени", "Available" : "Доступно", + "Invitation accepted" : "Позивница је прихваћена", + "Accepted {organizerName}'s invitation" : "Позивница коју је послао {organizerName} је прихваћена", + "Participation marked as tentative" : "Пристуство је обележено као несигурно", + "Invitation is delegated" : "Позивница је прослеђена", + "Not available" : "Није доступно", + "Invitation declined" : "Позивница је одбијена", + "Declined {organizerName}'s invitation" : "Позивница коју је послао {organizerName} је одбијена", + "Availability will be checked" : "Провериће се доступност", + "Invitation will be sent" : "Послаће се позивница", + "Failed to check availability" : "Није успела провера доступности", + "Failed to deliver invitation" : "Позивница није могла да се достави", + "Awaiting response" : "Чека се одговор", + "Checking availability" : "Провера доступности", + "Has not responded to {organizerName}'s invitation yet" : "Још увек није одговорено на позивницу коју је послао {organizerName}", + "Suggested times" : "Предложена времена", + "chairperson" : "председавајући", + "required participant" : "обавезни учесник", + "non-participant" : "особа која није учесник", + "optional participant" : "необавезни учесник", + "{organizer} (organizer)" : "{organizer} (организатор)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Доступност учесника, ресурса и соба", + "Suggestion accepted" : "Сугестија је прихваћена", + "Previous date" : "Претходни датум", + "Next date" : "Наредни датум", + "Legend" : "Легенда", + "Out of office" : "Ван канцеларије", + "Attendees:" : "Присутни:", + "Done" : "Завршено", + "Search room" : "Претражи собу", + "Room name" : "Име собе", + "Check room availability" : "Провери доступност собе", + "Free" : "Слободан", + "Busy (tentative)" : "Заузет (несигурно)", "Busy" : "Заузет", "Unknown" : "Непознато", + "Find a time" : "Пронађи време", + "The invitation has been accepted successfully." : "Позивница је успешно прихваћена.", + "Failed to accept the invitation." : "Није успело прихватање позивнице.", + "The invitation has been declined successfully." : "Позивница је успешно одбијена.", + "Failed to decline the invitation." : "Није успело одбијање позивнице.", + "Your participation has been marked as tentative." : "Ваше учешће је означено као несигурно.", + "Failed to set the participation status to tentative." : "Није успело постављање статуса учесника као несигуно.", "Accept" : "Прихвати", "Decline" : "Одбиј", "Tentative" : "Условна потврда", - "Send email" : "Пошаљи е-пошту", - "All day" : "Цео дан", + "No attendees yet" : "Још увек нема учесника", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} позваних, {confirmedCount} потврдило", + "Please add at least one attendee to use the \"Find a time\" feature." : "Молимо вас да додате барем једног учесника како бисте могли користити функцију „Пронађи време”.", + "Successfully appended link to talk room to location." : "У локацију је успешно додат линк на Talk собу.", + "Successfully appended link to talk room to description." : "У опис је успешно додат линк на Talk собу.", + "Error creating Talk room" : "Грешка приликом креирања Talk собе", + "Attendees" : "Присутни", + "_%n more guest_::_%n more guests_" : ["још %n гост","још %n госта","још %n гостију"], + "Remove group" : "Уклони групу", + "Remove attendee" : "Уклони учесника", + "Request reply" : "Захтевај одговор", + "Chairperson" : "Председавајући", + "Required participant" : "Обавезни учесник", + "Optional participant" : "Необавезни учесник", + "Non-participant" : "Особа која није учесник", + "_%n member_::_%n members_" : ["%n члан","%n члана","%n чланова"], + "Search for emails, users, contacts, contact groups or teams" : "Претрага и-мејлова, корисника, контакта, група контаката или тимова", + "No match found" : "Нема подударања", + "Note that members of circles get invited but are not synced yet." : "Чланови кругова се позивају али се још увек не синхронизују.", + "Note that members of contact groups get invited but are not synced yet." : "Чланови група контаката се позивају али се још увек не синхронизују.", + "(organizer)" : "(организатор)", + "Make {label} the organizer" : "Учини {label} организатором", + "Make {label} the organizer and attend" : "Учини {label} организатором и учествуј", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Да бисте слали позивнице и обрађивали одговоре, [linkopen]додајте своју и-мејл адресу у своја лична подешавања[linkclose].", + "Remove color" : "Уклони боју", + "Event title" : "Назив догађаја", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Подешавање трајања цео дан не може да се измени за догађаје који су део скупа догађаја који се понављају.", + "From" : "Од", + "To" : "За", "Repeat" : "Понављај", + "Repeat event" : "Понављај догађај", + "_time_::_times_" : ["време","времена","времена"], "never" : "никада", + "on date" : "дана", "after" : "након", + "End repeat" : "Заврши понављање", + "Select to end repeat" : "Изаберите да бисте завршили понављање", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Овај догађај је изузетак од понављања у скупу понављајућих догађаја. Њему не може да се додели правило понављања.", + "first" : "прва", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Измене правила понављања ће се применити само на ово и на сва будућа појављивања.", + "Repeat every" : "Понављај сваки", + "By day of the month" : "По дану у месецу", + "On the" : "На", + "_day_::_days_" : ["дан","дана","дана"], + "_week_::_weeks_" : ["седмица","седмице","седмица"], + "_month_::_months_" : ["месец","месеца","месеци"], + "_year_::_years_" : ["година","године","година"], + "On specific day" : "Одређеног дана", + "weekday" : "дан у недељи", + "weekend day" : "дан викенда", + "Does not repeat" : "Не понавља се", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud не подржава у потпуности дефиницију понављања овог догађаја. Ако уредите опције понављања, могуће је да ће се нека понављања изгубити.", + "No rooms or resources yet" : "Још увек нема соба или ресурса", + "Resources" : "Ресурси", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} седиште","{seatingCapacity} седишта","{seatingCapacity} седишта"], + "Add resource" : "Додај ресурс", + "Has a projector" : "Поседује пројектор", + "Has a whiteboard" : "Поседује таблу", + "Wheelchair accessible" : "Приступ инвалидским колицима", + "Remove resource" : "Уклони ресурс", + "Search for resources or rooms" : "Претрага ресурса или соба", "available" : "доступно", - "More" : "Остало", + "unavailable" : "није доступно", + "Show all rooms" : "Прикажи све собе", + "Projector" : "Пројектор", + "Whiteboard" : "Табла", + "Room type" : "Тип собе", + "Any" : "Било који", + "Minimum seating capacity" : "Минимални број места за седење", + "More details" : "Још детаља", + "Update this and all future" : "Ажурирај ово и сва будућа", + "Update this occurrence" : "Ажурирај ово појављивање", + "Public calendar does not exist" : "Јавни календар не постоји", + "Maybe the share was deleted or has expired?" : "Можда је дељење обрисано или истекло?", + "from {formattedDate}" : "од {formattedDate}", + "to {formattedDate}" : "до {formattedDate}", + "on {formattedDate}" : "дана {formattedDate}", + "from {formattedDate} at {formattedTime}" : "од {formattedDate} у {formattedTime}", + "to {formattedDate} at {formattedTime}" : "до {formattedDate} у {formattedTime}", + "on {formattedDate} at {formattedTime}" : "дана {formattedDate} у {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} у {formattedTime}", + "Please enter a valid date" : "Молимо вас да унесете исправни датум", + "Please enter a valid date and time" : "Молимо вас да унесете исправни датум и време", + "Select a time zone" : "Изаберите временску зону", + "Please select a time zone:" : "Молимо вас да изаберете временску зону:", + "Pick a time" : "Изаберите време", + "Pick a date" : "Изаберите датум", + "Type to search time zone" : "Куцајте да потражите временску зону", "Global" : "Цео свет", + "Holidays in {region}" : "Празници у {region}", + "An error occurred, unable to read public calendars." : "Дошло је до грешке, не могу да се прочитају јавни календари.", + "An error occurred, unable to subscribe to calendar." : "Дошло је до грешке, не може да се претплати на календар.", + "Public holiday calendars" : "Календари државних празника", + "Public calendars" : "Јавни календари", + "No valid public calendars configured" : "Није подешен ниједан исправан јавни календар", + "Speak to the server administrator to resolve this issue." : "Да бисте решили овај проблем, разговарајте са администратором сервера.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Календаре државних празника обезбеђује Thunderbird. Подаци за календар ће да се преузму са {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Администратор сервера предлаже ове јавне календаре. Подаци за календар ће се преузети са одговарајућег веб сајта.", + "By {authors}" : "Урадили {authors}", + "Subscribed" : "Претплаћен", + "Subscribe" : "Претплати се", + "Could not fetch slots" : "Не могу да се добаве термини", + "Select a date" : "Изаберите датум", + "Select slot" : "Изаберите термин", + "No slots available" : "Нема доступних термина", + "The slot for your appointment has been confirmed" : "Термин за ваш састанак је потврђен", + "Appointment Details:" : "Детаљи састанка:", "Time:" : "Време:", + "Booked for:" : "Резервисано за:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Хвала вам. Ваша резервација од {startDate} до {endDate} је потврђена.", + "Book another appointment:" : "Резервишите још један састанак:", + "See all available slots" : "Погледајте све доступне термине", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Термин за ваш састанак од {startDate} до {endDate} више није слободан.", + "Please book a different slot:" : "Молимо вас да резервишете други термин:", + "Book an appointment with {name}" : "Резервиши састанак са {name}", + "No public appointments found for {name}" : "Није пронађен ниједан јавни састанак са {name}", "Personal" : "Лично", - "[Today]" : "[Данас]", - "[Tomorrow]" : "[Сутра]", - "[Yesterday]" : "[Јуче]", - "Details" : "Детаљи", - "Attendees" : "Присутни", - "Resources" : "Ресурси", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Аутоматска детекција временске зоне је одредила да је ваша временска зона UTC.\nОво је највероватније последица безбедносних мера у вашем веб прегледачу.\nМолимо вас да ручно подесите своју временску зону у подешавањима календара.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Није пронађена временска зона ({timezoneId}) коју сте подесили. Стога се поставља на UTC.\nМолимо вас да промените своју временску зону у подешавањима и пријавите проблем.", + "Availability of {displayName}" : "Доступност корисника {displayName}", + "Edit event" : "Измени догађај", + "Event does not exist" : "Догађај не постоји", + "Duplicate" : "Дупликат", + "Delete this occurrence" : "Обриши ово појављивање", + "Delete this and all future" : "Обриши ово и сва будућа", + "All day" : "Цео дан", + "Modifications wont get propagated to the organizer and other attendees" : "Измене неће отићи организатору и осталим учесницима", + "Managing shared access" : "Управљање дељеним приступом", + "Deny access" : "Одбиј приступ", + "Invite" : "Позив", + "_User requires access to your file_::_Users require access to your file_" : ["Корисник тражи приступ вашем фајлу","Корисника траже приступ вашем фајлу","Корисника тражи приступ вашем фајлу"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Прилог тражи дељени приступ","Прилога траже дељени приступ","Прилога тражи дељени приступ"], + "Untitled event" : "Неименовани догађај", "Close" : "Затвори", + "Modifications will not get propagated to the organizer and other attendees" : "Измене неће отићи организатору и осталим учесницима", + "Subscribe to {name}" : "Претплати се на {name}", + "Export {name}" : "Извези {name}", + "Show availability" : "Прикажи доступност", "Anniversary" : "Годишњица", + "Appointment" : "Састанак", + "Business" : "Посао", + "Education" : "Образовање", + "Holiday" : "Одмор", + "Meeting" : "Састанак", + "Miscellaneous" : "Разно", + "Non-working hours" : "Нерадни сати", + "Not in office" : "Ван канцеларије", + "Phone call" : "Телефонски позив", + "Sick day" : "Боловање", + "Special occasion" : "Посебна прилика", + "Travel" : "Путовање", + "Vacation" : "Летовање", + "Midnight on the day the event starts" : "Поноћ на дан почетка догађаја", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n дан пре догађаја у {formattedHourMinute}","%n дана пре догађаја у {formattedHourMinute}","%n дана пре догађаја у {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n седмица пре догађаја у {formattedHourMinute}","%n седмице пре догађаја у {formattedHourMinute}","%n седмица пре догађаја у {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "на дан догађаја у {formattedHourMinute}", + "at the event's start" : "на почетку догађаја", + "at the event's end" : "на крају догађаја", + "{time} before the event starts" : "{time} пре почетка догађаја", + "{time} before the event ends" : "{time} пре краја догађаја", + "{time} after the event starts" : "{time} након почетка догађаја", + "{time} after the event ends" : "{time} након краја догађаја", + "on {time}" : "у {time}", + "on {time} ({timezoneId})" : "у {time} ({timezoneId})", "Week {number} of {year}" : "Недеља {number} у {year}", "Daily" : "дневно", "Weekly" : "недељно", - "Untitled event" : "Неименовани догађај", + "Monthly" : "Месечно", + "Yearly" : "Годишње", + "_Every %n day_::_Every %n days_" : ["Сваки %n дан","Свака %n дана","Сваких %n дана"], + "_Every %n week_::_Every %n weeks_" : ["Сваку %n седмицу","Сваке %n седмице","Сваких %n седмица"], + "_Every %n month_::_Every %n months_" : ["Сваки %n месец","Свака %n месеца","Сваких %n месеци"], + "_Every %n year_::_Every %n years_" : ["Сваку %n годину","Сваке %n године","Сваких %n година"], + "_on {weekday}_::_on {weekdays}_" : ["у {weekday}","у {weekdays}","у {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["на дан {dayOfMonthList}","на дане {dayOfMonthList}","на дане {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "на {ordinalNumber} {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "у {monthNames} данима {dayOfMonthList}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "у {monthNames} на {ordinalNumber} {byDaySet}", + "until {untilDate}" : "до {untilDate}", + "_%n time_::_%n times_" : ["%n пут","%n пута","%n пута"], + "second" : "секунд", + "third" : "трећи", + "fourth" : "четврти", + "fifth" : "пети", + "second to last" : "претпоследњи", + "last" : "последња", "Untitled task" : "Неименовани задатак", - "Prev" : "Претходни", - "Next" : "Следећа", - "Year" : "Година", + "Please ask your administrator to enable the Tasks App." : "Молимо вас да замолите свог администратора да укључи апликацију Задаци.", + "You are not allowed to edit this event as an attendee." : "Није вам дозвољено да уређујете овај догађај као учесник.", + "W" : "С", + "%n more" : "Још %n", + "No events to display" : "Нема више догађаја за приказ", + "All participants declined" : "Сви учесници су одбили", + "Please confirm your participation" : "Молимо вас да потврдите своје учешће", + "You declined this event" : "Одбили сте овај догађај", + "Your participation is tentative" : "Ваше учешће није сигурно", + "_+%n more_::_+%n more_" : ["+%n још","+%n још","+%n још"], + "No events" : "Нема догађаја", + "Create a new event or change the visible time-range" : "Креирање новог догађаја или измена временског опсега видљивости", + "Failed to save event" : "Није успело чување догађаја", + "It might have been deleted, or there was a typo in a link" : "Можда је обрисан, или је било грешке у куцању линка", + "It might have been deleted, or there was a typo in the link" : "Можда је обрисан, или је било грешке у куцању линка", + "Meeting room" : "Соба за састанке", + "Lecture hall" : "Хала за предавања", + "Seminar room" : "Соба за семинаре", "Other" : "Остало", + "When shared show" : "Када се дели, прикажи", "When shared show full event" : "Прикажи цео догађај када је догађај дељен", "When shared show only busy" : "Прикажи само да сте заузети када је догађај дељен", "When shared hide this event" : "Сакриј догађај када је догађај дељен", + "The visibility of this event in shared calendars." : "Видљивост овог догађаја у дељеним календарима.", + "Add a location" : "Додај локацију", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Додајте опис\n\n- Шта је тема састанка\n- Ставке дневног реда\n- Било шта што учесници треба да припреме", "Status" : "Статус", "Confirmed" : "Потврђен", "Canceled" : "Отказано", + "Confirmation about the overall status of the event." : "Потврда о свеобухватном статусу догађаја.", + "Show as" : "Прикажи као", + "Take this event into account when calculating free-busy information." : "Узми у обзир овај догађај када се одређује информација слободан-заузет.", "Categories" : "Категорије", + "Categories help you to structure and organize your events." : "Категорије вам помажу да класификујете и организујете своје догађаје.", + "Search or add categories" : "Претражи или додај категорије", "Add this as a new category" : "Додај ово као нову категорију", - "Talk" : "Разговор", - "Movie" : "Филм", - "Cinema" : "Биоскоп", - "Review" : "Претпреглед", - "Mail" : "поштом", - "Dentist" : "Стоматолог", - "Hospital" : "Болница", - "Birthday" : "Рођендан", - "User not found" : "Корисник није нађен" + "Custom color" : "Прилагођена боја", + "Special color of this event. Overrides the calendar-color." : "Посебна боја овог догађаја. Преиначује боју календара.", + "Error while sharing file" : "Грешка приликом дељења фајла", + "Error while sharing file with user" : "Грешка приликом дељења фајла са корисником", + "Error creating a folder {folder}" : "Грешка при креирању фолдера {folder}", + "Attachment {fileName} already exists!" : "Прилог {fileName} већ постоји!", + "Attachment {fileName} added!" : "Додат је прилог {fileName}!", + "An error occurred during uploading file {fileName}" : "Дошло је до грешке приликом отпремања фајла {fileName}", + "An error occurred during getting file information" : "Дошло је до грешке током преузимања информација о фајлу", + "Talk conversation for event" : "Talk разговор за догађај", + "An error occurred, unable to delete the calendar." : "Догодила се грешка, не могу да обришем календар.", + "Imported {filename}" : "Увезен {filename}", + "This is an event reminder." : "Ово је подсетник за догађај.", + "Error while parsing a PROPFIND error" : "Грешка приликом парсирања PROPFIND грешке", + "Appointment not found" : "Састанак није пронађен", + "User not found" : "Корисник није нађен", + "Reminder" : "Подсетник", + "+ Add reminder" : "+ Додај подсетник", + "Select automatic slot" : "Изабери аутоматски термин", + "with" : "са", + "Available times:" : "Времена доступности:", + "Suggestions" : "Предлози", + "Details" : "Детаљи" }, "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"); diff --git a/l10n/sr.json b/l10n/sr.json index 22b12b9fbb3d569db15498484f3fee63232891ea..07589a9948874b79629e1cfada70594345490b21 100644 --- a/l10n/sr.json +++ b/l10n/sr.json @@ -1,54 +1,237 @@ { "translations": { + "Provided email-address is too long" : "Наведена и-мејл адреса је предугачка", + "User-Session unexpectedly expired" : "Корисничка сесија је неочекивано истекла", + "Provided email-address is not valid" : "Наведена и-мејл адреса није исправна", "%s has published the calendar »%s«" : "%s је објавио календар »%s«", + "Unexpected error sending email. Please contact your administrator." : "Неочекивана грешка током слања и-мејла. Молимо вас да се обратите свом администратору.", + "Successfully sent email to %1$s" : "И-мејл је успешно послат на %1$s", "Hello," : "Здраво, ", "We wanted to inform you that %s has published the calendar »%s«." : "Желимо да Вас обавестимо да је %s објавио календар »%s«.", "Open »%s«" : "Отвори »%s«", "Cheers!" : "Здраво!", + "Upcoming events" : "Предстојећи догађаји", + "No more events today" : "Данас нема више догађаја", + "No upcoming events" : "Нема догађаја у блиској будућности", + "More events" : "Још догађаја", + "%1$s with %2$s" : "%1$s са %2$s", + "Calendar" : "Календар", + "New booking {booking}" : "Нова резервација {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) је резервисао састанак „{config_display_name}” у {date_time}.", + "Appointments" : "Састанци", + "Schedule appointment \"%s\"" : "Планирај састанак „%s”", + "Schedule an appointment" : "Планирање састанка", + "%1$s - %2$s" : "%1$s %2$s", + "Prepare for %s" : "Припрема за %s", + "Follow up for %s" : "Праћење за %s", + "Your appointment \"%s\" with %s needs confirmation" : "Потребна је потврда за ваш састанак „%s” са %s", + "Dear %s, please confirm your booking" : "Поштовани %s, молим вас да потврдите своју резервацију", "Confirm" : "Потврди", + "Appointment with:" : "Састанак са:", + "Description:" : "Опис:", + "This confirmation link expires in %s hours." : "Овај линк за потврду истиче за %s сати.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Ако желите да откажете овај састанак, молимо вас да се обратите организатору одговором на овај и-мејл или посетом њихове странице профила.", + "Your appointment \"%s\" with %s has been accepted" : "Ваш састанак „%s” са %s је прихваћен", + "Dear %s, your booking has been accepted." : "Поштовани %s, ваша резервација је прихваћена.", + "Appointment for:" : "Састанак за:", "Date:" : "Датум:", + "You will receive a link with the confirmation email" : "Примићете линк у и-мејлу за потврду", "Where:" : "Место:", - "Description:" : "Опис:", - "Calendar" : "Календар", + "Comment:" : "Коментар:", + "You have a new appointment booking \"%s\" from %s" : "Имате нову резервацију састанака „%s” коју је послао %s", + "Dear %s, %s (%s) booked an appointment with you." : "Поштовани %s, %s (%s) је резервисао састанак са вама.", "A Calendar app for Nextcloud" : "Календар апликација за Некстклауд", - "New event" : "Нови догађај", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Апликација Календар за Nextcloud. Једноставно синхронизујте догађаје из разних уређаја са вашим Nextcloud сервером и уређујте их на мрежи.\n\n* 🚀 **Интеграција са осталим Nextcloud апликацијама!** Као што су Контакти, Задаци, Шпил и Кругови.\n* 🌐 **WebCal подршка!** Желите да у свом календару видите датуме мечева свог омиљеног тима? Нема проблема!\n* 🙋 **Учесници!** Позовите људе на своје догађаје\n* ⌚ **Слободан/Заузет!** Видите када ваши учесници могу да присуствују састанку\n* ⏰ **Подсетници!** Примајте аларме за своје догађаје унутар прегледача и путем и-мејла\n* 🔍 **Претрага!** Једноставно пронађите своје догађаје\n* ☑️ **Задаци!** Видите задатке са постављеним роком директно у календару\n🔈 **Talk собе!** Када заказујете састанак, једим кликом креирајте придружену Talk собу\n* 📆 **Заказивање састанка** Шаљите људима линк тако да могу да закажу састанак са вама [користећи ову апликацију](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Прилози!** Додајте, отпремајте и прегледајте прилоге догађаја\n* 🙈 **Не измишљамо рупу на саксији!** Заснована на одличној [c-dav библиотеци](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) и [fullcalendar](https://github.com/fullcalendar/fullcalendar) библиотекама.", + "Previous day" : "Претходни дан", + "Previous week" : "Претходна недеља", + "Previous year" : "Претходна година", + "Previous month" : "Претходни месец", + "Next day" : "Наредни дан", + "Next week" : "Наредне недеље", + "Next year" : "Наредна година", + "Next month" : "Наредног месеца", + "Create new event" : "Креирај нови догађај", + "Event" : "Догађај", "Today" : "Данас", "Day" : "Дан", "Week" : "Недеља", "Month" : "Месец", + "Year" : "Година", "List" : "Излистај", + "Appointment link was copied to clipboard" : "Линк састанка је копиран у клипборд", + "Appointment link could not be copied to clipboard" : "Линк састанка није могао да се копира у клипборд", "Preview" : "Претпреглед", "Copy link" : "Копирај везу", "Edit" : "Измени", "Delete" : "Обриши", - "Edit name" : "Измени име", - "Copy private link" : "Копирај приватну везу", - "Export" : "Извези", - "An error occurred, unable to delete the calendar." : "Догодила се грешка, не могу да обришем календар.", + "Appointment schedules" : "Распореди састанака", + "Create new" : "Направи нови", + "Disable calendar \"{calendar}\"" : "Искључи календар „{calendar}”", + "Disable untitled calendar" : "Искључи неименовани календар", + "Enable calendar \"{calendar}\"" : "Укључи календар „{calendar}”", + "Enable untitled calendar" : "Укључи неименовани календар", + "An error occurred, unable to change visibility of the calendar." : "Дошло је до грешке, не може да се промени видљивост календара.", + "Untitled calendar" : "Неименовани календар", + "Shared with you by" : "Са вама је поделио", + "Edit and share calendar" : "Уреди и подели календар", + "Edit calendar" : "Уреди календар", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Календар престаје да се дели за {countdown} секунду","Календар престаје да се дели за {countdown} секунде","Календар престаје да се дели за {countdown} секунди"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Календар се брише за {countdown} секунду","Календар се брише за {countdown} секунде","Календар се брише за {countdown} секунди"], + "An error occurred, unable to create the calendar." : "Дошло је до грешке, календар не може да се креира.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Молимо вас да унесете исправан линк (који полиње са http://, https://, webcal://, или webcals://)", + "Calendars" : "Календари", + "Add new" : "Додај нови", + "New calendar" : "Нови календар", + "Name for new calendar" : "Назив новог календара", + "Creating calendar …" : "Календар се креира …", + "New calendar with task list" : "Нови календар са листом задатака", + "New subscription from link (read-only)" : "Нова претплата преко линка (само-за-читање)", + "Creating subscription …" : "Претплата се креира …", + "Add public holiday calendar" : "Додај календар државних празника", + "Add custom public calendar" : "Додај прилагођени јавни календар", "Calendar link copied to clipboard." : "Веза календара копирана у оставу.", "Calendar link could not be copied to clipboard." : "Веза календара није могла да се копира у оставу.", - "Share link" : "Дели везу", - "Delete share link" : "Обриши везу дељења", - "Share with users or groups" : "Дели са корисницима или групама", - "No users or groups" : "Нема корисника или група", - "can edit" : "може да мења", - "Unshare with {displayName}" : "Уклони дељење са {displayName}", - "New calendar" : "Нови календар", + "Copy subscription link" : "Копирај линк за претплату", + "Copying link …" : "Линк се копира …", + "Copied link" : "Линк је копиран", + "Could not copy link" : "Линк није могао да се копира", + "Export" : "Извези", + "Untitled item" : "Неименована ставка", + "Unknown calendar" : "Непознати календар", + "Could not load deleted calendars and objects" : "Обрисани календари и објекти не могу да се учитају.", + "Could not delete calendar or event" : "Календар или догађај није могао да се обрише", + "Could not restore calendar or event" : "Календар или догађај није могао да се обнови", + "Do you really want to empty the trash bin?" : "Да ли заиста желите да испразните корпу за отпатке?", + "Empty trash bin" : "Испразни корпу за отпатке", + "Trash bin" : "Корпа за отпатке", + "Loading deleted items." : "Учитавање обрисаних ставки.", + "You do not have any deleted items." : "Немате ниједну обрисану ставку.", "Name" : "Име", "Deleted" : "Обрисано", "Restore" : "Врати", "Delete permanently" : "Обриши заувек", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Ставке у корпи за отпатке се бришу након {numDays} дана","Ставке у корпи за отпатке се бришу након {numDays} дана","Ставке у корпи за отпатке се бришу након {numDays} дана"], + "Could not update calendar order." : "Није могао да се ажурира редослед календара.", + "Shared calendars" : "Дељени календари", + "Deck" : "Deck", + "Hidden" : "Сакривен", + "Internal link" : "Интерна веза", + "A private link that can be used with external clients" : "Приватни линк који може да се користи са спољним клијентима", + "Copy internal link" : "Копирај интерну везу", + "An error occurred, unable to publish calendar." : "Дошло је до грешке, календар не може да се објави.", + "An error occurred, unable to send email." : "Дошло је до грешке, и-мејл не може да се пошаље.", + "Embed code copied to clipboard." : "Кôд за уградњу је копиран у клипборд.", + "Embed code could not be copied to clipboard." : "Кôд за уградњу није могао да се копира у клипборд.", + "Unpublishing calendar failed" : "Није успео прекид објављивања календара", + "Share link" : "Дели везу", + "Copy public link" : "Копирај јавни линк", + "Send link to calendar via email" : "Пошаљи и-мејлом линк на календар", + "Enter one address" : "Унесите једну адресу", + "Sending email …" : "И-мејл се шаље …", + "Copy embedding code" : "Копирај кôд за уградњу", + "Copying code …" : "Кôд се копира …", + "Copied code" : "Кôд је копиран", + "Could not copy code" : "Кôд није могао да се копира", + "Delete share link" : "Обриши везу дељења", + "Deleting share link …" : "Линк за дељење се брише …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Тим)", + "An error occurred while unsharing the calendar." : "Дошло је до грешке приликом уклањања дељења календара.", + "An error occurred, unable to change the permission of the share." : "Дошло је до грешке, не може да се измени дозвола дељења.", + "can edit" : "може да мења", + "Unshare with {displayName}" : "Уклони дељење са {displayName}", + "Share with users or groups" : "Дели са корисницима или групама", + "No users or groups" : "Нема корисника или група", + "Failed to save calendar name and color" : "Није успело чување назива календара и боје", + "Calendar name …" : "Назив календара ...", + "Never show me as busy (set this calendar to transparent)" : "Никад не приказуј статус заузет (поставља овај календар на транспарентно)", + "Share calendar" : "Дели календар", + "Unshare from me" : "Уклони дељење за мене", + "Save" : "Сачувај", + "Import calendars" : "Увоз календара", + "Please select a calendar to import into …" : "Молимо вас да изаберете календар у који се увози …", "Filename" : "Име фајла", + "Calendar to import into" : "Календар у који се увози", "Cancel" : "Одустани", + "_Import calendar_::_Import calendars_" : ["Увези календар","Увези календара","Увези календаре"], + "Select the default location for attachments" : "Изаберите подразумевану локацију за прилоге", + "Pick" : "Изаберите", + "Invalid location selected" : "Изабрана је неисправна локација", + "Attachments folder successfully saved." : "Фолдер за прилоге је успешно сачуван.", + "Error on saving attachments folder." : "Грешка приликом чувања фолдера са додацима.", + "Default attachments location" : "Подразумевана локација прилога", + "{filename} could not be parsed" : "{filename} не може да се парсира", + "No valid files found, aborting import" : "Нису пронађени исправни фајлови, увоз се прекида", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n догађај је успешно увезен","%n догађаја је успешно увезено","%n догађаја је успешно увезено"], + "Import partially failed. Imported {accepted} out of {total}." : "Увоз делимично није био успешан. Увезено је {accepted} од {total} укупно.", "Automatic" : "Аутоматски", - "or" : "или", + "Automatic ({detected})" : "Аутоматски ({detected})", + "New setting was not saved successfully." : "Ново подешавање није успешно сачувано.", + "Navigation" : "Навигација", + "Previous period" : "Претходни период", + "Next period" : "Наредни период", + "Views" : "Прикази", + "Day view" : "Дневни приказ", + "Week view" : "Недељни приказ", + "Month view" : "Месечни приказ", + "Year view" : "Годишњи приказ", "List view" : "Приказ листе", "Actions" : "Радње", + "Create event" : "Креирај догађај", + "Show shortcuts" : "Прикажи пречице", + "Editor" : "Едитор", + "Close editor" : "Затвори едитор", + "Save edited event" : "Сачувај уређени догађај", + "Delete edited event" : "Обриши уређени догађај", + "Duplicate event" : "Дуплирај догађај", + "Shortcut overview" : "Преглед пречица", + "or" : "или", + "Calendar settings" : "Подешавања календара", + "At event start" : "На почетку догађаја", + "No reminder" : "Нема подсетника", + "Failed to save default calendar" : "Није успело чување подразумеваног календара", + "CalDAV link copied to clipboard." : "CalDAV линк је копиран у клипборд.", + "CalDAV link could not be copied to clipboard." : "CalDAV линк није могао да се копира у клипборд.", + "Enable birthday calendar" : "Укључи календар рођендана", + "Show tasks in calendar" : "Прикажи задатке у календару", + "Enable simplified editor" : "Укључи поједностављени едитор", + "Limit the number of events displayed in the monthly view" : "Ограничи број догађаја који се приказују у месечном приказу", + "Show weekends" : "Прикажи викенде", "Show week numbers" : "Прикажи број седмице", + "Time increments" : "Временски кораци", + "Default calendar for incoming invitations" : "Подразумевани календар за долазеће позивнице", + "Default reminder" : "Подразумевани подсетник", + "Copy primary CalDAV address" : "Копирај примарну CalDAV адресу", + "Copy iOS/macOS CalDAV address" : "Копирај iOS/macOS CalDAV адресу", + "Personal availability settings" : "Подешавања личне доступности", "Show keyboard shortcuts" : "Прикажи пречице тастатуре", + "Appointment schedule successfully created" : "Успешно је креиран распоред састанка", + "Appointment schedule successfully updated" : "Успешно је ажуриран распоред састанка", + "_{duration} minute_::_{duration} minutes_" : ["{duration} минут","{duration} минута","{duration} минута"], + "0 minutes" : "0 минута", + "_{duration} hour_::_{duration} hours_" : ["{duration} сат","{duration} сата","{duration} сати"], + "_{duration} day_::_{duration} days_" : ["{duration} дан","{duration} дана","{duration} дана"], + "_{duration} week_::_{duration} weeks_" : ["{duration} седмица","{duration} седмице","{duration} седмица"], + "_{duration} month_::_{duration} months_" : ["{duration} месец","{duration} месеца","{duration} месеци"], + "_{duration} year_::_{duration} years_" : ["{duration} година","{duration} године","{duration} година"], + "To configure appointments, add your email address in personal settings." : "Да бисте подесили састанке, додајте своу и-мејл адресу у личним подешавањима.", + "Public – shown on the profile page" : "Јавно – приказује се на страници профила", + "Private – only accessible via secret link" : "Приватно – доступно само путем тајног линка", + "Appointment schedule saved" : "Сачуван је распоред састанка", + "Create appointment schedule" : "Креирај распоред састанка", + "Edit appointment schedule" : "Уреди распоред састанка", + "Update" : "Ажурирај", + "Appointment name" : "Назив састанка", "Location" : "Локација", + "Create a Talk room" : "Креирај Talk собу", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "За сваки заказани састанак ће се креирати јединствени линк који ће се послати и-мејлом за потврду", "Description" : "Опис", + "Visibility" : "Видљивост", "Duration" : "Трајање", + "Increments" : "Кораци", + "Additional calendars to check for conflicts" : "Додатни календари у којима се проверавају конфликти", + "Pick time ranges where appointments are allowed" : "Изаберите опсеге времена у којима су дозвољени састанци", "to" : "за", + "Delete slot" : "Обриши термин", + "No times set" : "Није постављено ниједно време", "Add" : "Додај", "Monday" : "Понедељак", "Tuesday" : "Уторак", @@ -57,60 +240,359 @@ "Friday" : "Петак", "Saturday" : "Субота", "Sunday" : "Недеља", - "Save" : "Сачувај", - "Update" : "Ажурирај", + "Weekdays" : "Дани у недељи", + "Add time before and after the event" : "Додај време пре и након догађаја", + "Before the event" : "Пре догађаја", + "After the event" : "Након догађаја", + "Planning restrictions" : "Ограничења планирања", + "Minimum time before next available slot" : "Минимално време пре наредног доступног термина", + "Max slots per day" : "Максимални број термина у дану", + "Limit how far in the future appointments can be booked" : "Ограничава колико далеко у будућност могу да се закажу састанци", + "It seems a rate limit has been reached. Please try again later." : "Изгледа да је достигнуто ограничење учесталости. Молимо вас да касније покушајте поново.", + "Please confirm your reservation" : "Молимо вас да потврдите своју резервацију", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Послали смо вам и-мејл са детаљима. Молимо вас да за потврђивање састанка употребите линк у и-мејлу. Сада можете да затворите ову страницу.", + "Your name" : "Ваше име", "Your email address" : "Адреса Ваше е-поште", + "Please share anything that will help prepare for our meeting" : "Молимо вас да поделите све што нам може помоћи у припреми нашег састанка", + "Could not book the appointment. Please try again later or contact the organizer." : "Састанак није могао да се закаже. Молимо вас покушајте касније поново, или се обратите организатору.", + "Back" : "Назад", + "Book appointment" : "Закажи састанак", + "Error fetching Talk conversations." : "Грешка приликом преузимања Talk разговора", + "Conversation does not have a valid URL." : "Разговор нема исправну URL адресу.", + "Successfully added Talk conversation link to location." : "Линк на Talk разговор је успешно додат у локацију.", + "Successfully added Talk conversation link to description." : "Линк на Talk разговор је успешно додат у опис.", + "Failed to apply Talk room." : "Није успело примењивање Talk собе.", + "Error creating Talk conversation" : "Грешка при креирању Talk разговора", + "Select a Talk Room" : "Изабери Talk собу", + "Add Talk conversation" : "Додај Talk разговор", + "Fetching Talk rooms…" : "Преузимају се Talk собе…", + "No Talk room available" : "Није доступна ниједна Talk соба", + "Create a new conversation" : "Креирај нови разговор", + "Select conversation" : "Одаберите разговор", + "on" : "дана", + "at" : "у", + "before at" : "раније у", "Notification" : "Обавештење", "Email" : "Е-пошта", + "Audio notification" : "Звучно обавештење", + "Other notification" : "Друго обавештење", + "Relative to event" : "Релативно у односу на догађај", + "On date" : "Дана", + "Edit time" : "Уреди време", + "Save time" : "Сачувај време", + "Remove reminder" : "Уклони подсетник", + "Add reminder" : "Додавање подсетника", + "seconds" : "секунди", + "minutes" : "минута", + "hours" : "сати", + "days" : "дана", + "weeks" : "седмица", + "Choose a file to add as attachment" : "Изаберите фајл за прилог", + "Choose a file to share as a link" : "Одаберите фајл који желите да поделите као везу", + "Attachment {name} already exist!" : "Прилог {name} веђ постоји!", + "Could not upload attachment(s)" : "Не могу да се отпреме прилози", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Управо ћете да преузмете фајл. Молимо вас да пре отварања проверите име фајла. Да ли заиста желите да наставите?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Управо ћете да посетите {host}. Да ли желите да наставите? Линк: {link}", + "Proceed" : "Настави", + "No attachments" : "Без прилога", + "Add from Files" : "Додај из Фајлова", + "Upload from device" : "Отпреми са уређаја", + "Delete file" : "Обриши фајл", + "Confirmation" : "Потврда", + "_{count} attachment_::_{count} attachments_" : ["{count} прилог","{count} прилога","{count} прилога"], + "Suggested" : "Предложени", "Available" : "Доступно", + "Invitation accepted" : "Позивница је прихваћена", + "Accepted {organizerName}'s invitation" : "Позивница коју је послао {organizerName} је прихваћена", + "Participation marked as tentative" : "Пристуство је обележено као несигурно", + "Invitation is delegated" : "Позивница је прослеђена", + "Not available" : "Није доступно", + "Invitation declined" : "Позивница је одбијена", + "Declined {organizerName}'s invitation" : "Позивница коју је послао {organizerName} је одбијена", + "Availability will be checked" : "Провериће се доступност", + "Invitation will be sent" : "Послаће се позивница", + "Failed to check availability" : "Није успела провера доступности", + "Failed to deliver invitation" : "Позивница није могла да се достави", + "Awaiting response" : "Чека се одговор", + "Checking availability" : "Провера доступности", + "Has not responded to {organizerName}'s invitation yet" : "Још увек није одговорено на позивницу коју је послао {organizerName}", + "Suggested times" : "Предложена времена", + "chairperson" : "председавајући", + "required participant" : "обавезни учесник", + "non-participant" : "особа која није учесник", + "optional participant" : "необавезни учесник", + "{organizer} (organizer)" : "{organizer} (организатор)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Доступност учесника, ресурса и соба", + "Suggestion accepted" : "Сугестија је прихваћена", + "Previous date" : "Претходни датум", + "Next date" : "Наредни датум", + "Legend" : "Легенда", + "Out of office" : "Ван канцеларије", + "Attendees:" : "Присутни:", + "Done" : "Завршено", + "Search room" : "Претражи собу", + "Room name" : "Име собе", + "Check room availability" : "Провери доступност собе", + "Free" : "Слободан", + "Busy (tentative)" : "Заузет (несигурно)", "Busy" : "Заузет", "Unknown" : "Непознато", + "Find a time" : "Пронађи време", + "The invitation has been accepted successfully." : "Позивница је успешно прихваћена.", + "Failed to accept the invitation." : "Није успело прихватање позивнице.", + "The invitation has been declined successfully." : "Позивница је успешно одбијена.", + "Failed to decline the invitation." : "Није успело одбијање позивнице.", + "Your participation has been marked as tentative." : "Ваше учешће је означено као несигурно.", + "Failed to set the participation status to tentative." : "Није успело постављање статуса учесника као несигуно.", "Accept" : "Прихвати", "Decline" : "Одбиј", "Tentative" : "Условна потврда", - "Send email" : "Пошаљи е-пошту", - "All day" : "Цео дан", + "No attendees yet" : "Још увек нема учесника", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} позваних, {confirmedCount} потврдило", + "Please add at least one attendee to use the \"Find a time\" feature." : "Молимо вас да додате барем једног учесника како бисте могли користити функцију „Пронађи време”.", + "Successfully appended link to talk room to location." : "У локацију је успешно додат линк на Talk собу.", + "Successfully appended link to talk room to description." : "У опис је успешно додат линк на Talk собу.", + "Error creating Talk room" : "Грешка приликом креирања Talk собе", + "Attendees" : "Присутни", + "_%n more guest_::_%n more guests_" : ["још %n гост","још %n госта","још %n гостију"], + "Remove group" : "Уклони групу", + "Remove attendee" : "Уклони учесника", + "Request reply" : "Захтевај одговор", + "Chairperson" : "Председавајући", + "Required participant" : "Обавезни учесник", + "Optional participant" : "Необавезни учесник", + "Non-participant" : "Особа која није учесник", + "_%n member_::_%n members_" : ["%n члан","%n члана","%n чланова"], + "Search for emails, users, contacts, contact groups or teams" : "Претрага и-мејлова, корисника, контакта, група контаката или тимова", + "No match found" : "Нема подударања", + "Note that members of circles get invited but are not synced yet." : "Чланови кругова се позивају али се још увек не синхронизују.", + "Note that members of contact groups get invited but are not synced yet." : "Чланови група контаката се позивају али се још увек не синхронизују.", + "(organizer)" : "(организатор)", + "Make {label} the organizer" : "Учини {label} организатором", + "Make {label} the organizer and attend" : "Учини {label} организатором и учествуј", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Да бисте слали позивнице и обрађивали одговоре, [linkopen]додајте своју и-мејл адресу у своја лична подешавања[linkclose].", + "Remove color" : "Уклони боју", + "Event title" : "Назив догађаја", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Подешавање трајања цео дан не може да се измени за догађаје који су део скупа догађаја који се понављају.", + "From" : "Од", + "To" : "За", "Repeat" : "Понављај", + "Repeat event" : "Понављај догађај", + "_time_::_times_" : ["време","времена","времена"], "never" : "никада", + "on date" : "дана", "after" : "након", + "End repeat" : "Заврши понављање", + "Select to end repeat" : "Изаберите да бисте завршили понављање", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Овај догађај је изузетак од понављања у скупу понављајућих догађаја. Њему не може да се додели правило понављања.", + "first" : "прва", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Измене правила понављања ће се применити само на ово и на сва будућа појављивања.", + "Repeat every" : "Понављај сваки", + "By day of the month" : "По дану у месецу", + "On the" : "На", + "_day_::_days_" : ["дан","дана","дана"], + "_week_::_weeks_" : ["седмица","седмице","седмица"], + "_month_::_months_" : ["месец","месеца","месеци"], + "_year_::_years_" : ["година","године","година"], + "On specific day" : "Одређеног дана", + "weekday" : "дан у недељи", + "weekend day" : "дан викенда", + "Does not repeat" : "Не понавља се", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud не подржава у потпуности дефиницију понављања овог догађаја. Ако уредите опције понављања, могуће је да ће се нека понављања изгубити.", + "No rooms or resources yet" : "Још увек нема соба или ресурса", + "Resources" : "Ресурси", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} седиште","{seatingCapacity} седишта","{seatingCapacity} седишта"], + "Add resource" : "Додај ресурс", + "Has a projector" : "Поседује пројектор", + "Has a whiteboard" : "Поседује таблу", + "Wheelchair accessible" : "Приступ инвалидским колицима", + "Remove resource" : "Уклони ресурс", + "Search for resources or rooms" : "Претрага ресурса или соба", "available" : "доступно", - "More" : "Остало", + "unavailable" : "није доступно", + "Show all rooms" : "Прикажи све собе", + "Projector" : "Пројектор", + "Whiteboard" : "Табла", + "Room type" : "Тип собе", + "Any" : "Било који", + "Minimum seating capacity" : "Минимални број места за седење", + "More details" : "Још детаља", + "Update this and all future" : "Ажурирај ово и сва будућа", + "Update this occurrence" : "Ажурирај ово појављивање", + "Public calendar does not exist" : "Јавни календар не постоји", + "Maybe the share was deleted or has expired?" : "Можда је дељење обрисано или истекло?", + "from {formattedDate}" : "од {formattedDate}", + "to {formattedDate}" : "до {formattedDate}", + "on {formattedDate}" : "дана {formattedDate}", + "from {formattedDate} at {formattedTime}" : "од {formattedDate} у {formattedTime}", + "to {formattedDate} at {formattedTime}" : "до {formattedDate} у {formattedTime}", + "on {formattedDate} at {formattedTime}" : "дана {formattedDate} у {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} у {formattedTime}", + "Please enter a valid date" : "Молимо вас да унесете исправни датум", + "Please enter a valid date and time" : "Молимо вас да унесете исправни датум и време", + "Select a time zone" : "Изаберите временску зону", + "Please select a time zone:" : "Молимо вас да изаберете временску зону:", + "Pick a time" : "Изаберите време", + "Pick a date" : "Изаберите датум", + "Type to search time zone" : "Куцајте да потражите временску зону", "Global" : "Цео свет", + "Holidays in {region}" : "Празници у {region}", + "An error occurred, unable to read public calendars." : "Дошло је до грешке, не могу да се прочитају јавни календари.", + "An error occurred, unable to subscribe to calendar." : "Дошло је до грешке, не може да се претплати на календар.", + "Public holiday calendars" : "Календари државних празника", + "Public calendars" : "Јавни календари", + "No valid public calendars configured" : "Није подешен ниједан исправан јавни календар", + "Speak to the server administrator to resolve this issue." : "Да бисте решили овај проблем, разговарајте са администратором сервера.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Календаре државних празника обезбеђује Thunderbird. Подаци за календар ће да се преузму са {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Администратор сервера предлаже ове јавне календаре. Подаци за календар ће се преузети са одговарајућег веб сајта.", + "By {authors}" : "Урадили {authors}", + "Subscribed" : "Претплаћен", + "Subscribe" : "Претплати се", + "Could not fetch slots" : "Не могу да се добаве термини", + "Select a date" : "Изаберите датум", + "Select slot" : "Изаберите термин", + "No slots available" : "Нема доступних термина", + "The slot for your appointment has been confirmed" : "Термин за ваш састанак је потврђен", + "Appointment Details:" : "Детаљи састанка:", "Time:" : "Време:", + "Booked for:" : "Резервисано за:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Хвала вам. Ваша резервација од {startDate} до {endDate} је потврђена.", + "Book another appointment:" : "Резервишите још један састанак:", + "See all available slots" : "Погледајте све доступне термине", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Термин за ваш састанак од {startDate} до {endDate} више није слободан.", + "Please book a different slot:" : "Молимо вас да резервишете други термин:", + "Book an appointment with {name}" : "Резервиши састанак са {name}", + "No public appointments found for {name}" : "Није пронађен ниједан јавни састанак са {name}", "Personal" : "Лично", - "[Today]" : "[Данас]", - "[Tomorrow]" : "[Сутра]", - "[Yesterday]" : "[Јуче]", - "Details" : "Детаљи", - "Attendees" : "Присутни", - "Resources" : "Ресурси", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Аутоматска детекција временске зоне је одредила да је ваша временска зона UTC.\nОво је највероватније последица безбедносних мера у вашем веб прегледачу.\nМолимо вас да ручно подесите своју временску зону у подешавањима календара.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Није пронађена временска зона ({timezoneId}) коју сте подесили. Стога се поставља на UTC.\nМолимо вас да промените своју временску зону у подешавањима и пријавите проблем.", + "Availability of {displayName}" : "Доступност корисника {displayName}", + "Edit event" : "Измени догађај", + "Event does not exist" : "Догађај не постоји", + "Duplicate" : "Дупликат", + "Delete this occurrence" : "Обриши ово појављивање", + "Delete this and all future" : "Обриши ово и сва будућа", + "All day" : "Цео дан", + "Modifications wont get propagated to the organizer and other attendees" : "Измене неће отићи организатору и осталим учесницима", + "Managing shared access" : "Управљање дељеним приступом", + "Deny access" : "Одбиј приступ", + "Invite" : "Позив", + "_User requires access to your file_::_Users require access to your file_" : ["Корисник тражи приступ вашем фајлу","Корисника траже приступ вашем фајлу","Корисника тражи приступ вашем фајлу"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Прилог тражи дељени приступ","Прилога траже дељени приступ","Прилога тражи дељени приступ"], + "Untitled event" : "Неименовани догађај", "Close" : "Затвори", + "Modifications will not get propagated to the organizer and other attendees" : "Измене неће отићи организатору и осталим учесницима", + "Subscribe to {name}" : "Претплати се на {name}", + "Export {name}" : "Извези {name}", + "Show availability" : "Прикажи доступност", "Anniversary" : "Годишњица", + "Appointment" : "Састанак", + "Business" : "Посао", + "Education" : "Образовање", + "Holiday" : "Одмор", + "Meeting" : "Састанак", + "Miscellaneous" : "Разно", + "Non-working hours" : "Нерадни сати", + "Not in office" : "Ван канцеларије", + "Phone call" : "Телефонски позив", + "Sick day" : "Боловање", + "Special occasion" : "Посебна прилика", + "Travel" : "Путовање", + "Vacation" : "Летовање", + "Midnight on the day the event starts" : "Поноћ на дан почетка догађаја", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n дан пре догађаја у {formattedHourMinute}","%n дана пре догађаја у {formattedHourMinute}","%n дана пре догађаја у {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n седмица пре догађаја у {formattedHourMinute}","%n седмице пре догађаја у {formattedHourMinute}","%n седмица пре догађаја у {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "на дан догађаја у {formattedHourMinute}", + "at the event's start" : "на почетку догађаја", + "at the event's end" : "на крају догађаја", + "{time} before the event starts" : "{time} пре почетка догађаја", + "{time} before the event ends" : "{time} пре краја догађаја", + "{time} after the event starts" : "{time} након почетка догађаја", + "{time} after the event ends" : "{time} након краја догађаја", + "on {time}" : "у {time}", + "on {time} ({timezoneId})" : "у {time} ({timezoneId})", "Week {number} of {year}" : "Недеља {number} у {year}", "Daily" : "дневно", "Weekly" : "недељно", - "Untitled event" : "Неименовани догађај", + "Monthly" : "Месечно", + "Yearly" : "Годишње", + "_Every %n day_::_Every %n days_" : ["Сваки %n дан","Свака %n дана","Сваких %n дана"], + "_Every %n week_::_Every %n weeks_" : ["Сваку %n седмицу","Сваке %n седмице","Сваких %n седмица"], + "_Every %n month_::_Every %n months_" : ["Сваки %n месец","Свака %n месеца","Сваких %n месеци"], + "_Every %n year_::_Every %n years_" : ["Сваку %n годину","Сваке %n године","Сваких %n година"], + "_on {weekday}_::_on {weekdays}_" : ["у {weekday}","у {weekdays}","у {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["на дан {dayOfMonthList}","на дане {dayOfMonthList}","на дане {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "на {ordinalNumber} {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "у {monthNames} данима {dayOfMonthList}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "у {monthNames} на {ordinalNumber} {byDaySet}", + "until {untilDate}" : "до {untilDate}", + "_%n time_::_%n times_" : ["%n пут","%n пута","%n пута"], + "second" : "секунд", + "third" : "трећи", + "fourth" : "четврти", + "fifth" : "пети", + "second to last" : "претпоследњи", + "last" : "последња", "Untitled task" : "Неименовани задатак", - "Prev" : "Претходни", - "Next" : "Следећа", - "Year" : "Година", + "Please ask your administrator to enable the Tasks App." : "Молимо вас да замолите свог администратора да укључи апликацију Задаци.", + "You are not allowed to edit this event as an attendee." : "Није вам дозвољено да уређујете овај догађај као учесник.", + "W" : "С", + "%n more" : "Још %n", + "No events to display" : "Нема више догађаја за приказ", + "All participants declined" : "Сви учесници су одбили", + "Please confirm your participation" : "Молимо вас да потврдите своје учешће", + "You declined this event" : "Одбили сте овај догађај", + "Your participation is tentative" : "Ваше учешће није сигурно", + "_+%n more_::_+%n more_" : ["+%n још","+%n још","+%n још"], + "No events" : "Нема догађаја", + "Create a new event or change the visible time-range" : "Креирање новог догађаја или измена временског опсега видљивости", + "Failed to save event" : "Није успело чување догађаја", + "It might have been deleted, or there was a typo in a link" : "Можда је обрисан, или је било грешке у куцању линка", + "It might have been deleted, or there was a typo in the link" : "Можда је обрисан, или је било грешке у куцању линка", + "Meeting room" : "Соба за састанке", + "Lecture hall" : "Хала за предавања", + "Seminar room" : "Соба за семинаре", "Other" : "Остало", + "When shared show" : "Када се дели, прикажи", "When shared show full event" : "Прикажи цео догађај када је догађај дељен", "When shared show only busy" : "Прикажи само да сте заузети када је догађај дељен", "When shared hide this event" : "Сакриј догађај када је догађај дељен", + "The visibility of this event in shared calendars." : "Видљивост овог догађаја у дељеним календарима.", + "Add a location" : "Додај локацију", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Додајте опис\n\n- Шта је тема састанка\n- Ставке дневног реда\n- Било шта што учесници треба да припреме", "Status" : "Статус", "Confirmed" : "Потврђен", "Canceled" : "Отказано", + "Confirmation about the overall status of the event." : "Потврда о свеобухватном статусу догађаја.", + "Show as" : "Прикажи као", + "Take this event into account when calculating free-busy information." : "Узми у обзир овај догађај када се одређује информација слободан-заузет.", "Categories" : "Категорије", + "Categories help you to structure and organize your events." : "Категорије вам помажу да класификујете и организујете своје догађаје.", + "Search or add categories" : "Претражи или додај категорије", "Add this as a new category" : "Додај ово као нову категорију", - "Talk" : "Разговор", - "Movie" : "Филм", - "Cinema" : "Биоскоп", - "Review" : "Претпреглед", - "Mail" : "поштом", - "Dentist" : "Стоматолог", - "Hospital" : "Болница", - "Birthday" : "Рођендан", - "User not found" : "Корисник није нађен" + "Custom color" : "Прилагођена боја", + "Special color of this event. Overrides the calendar-color." : "Посебна боја овог догађаја. Преиначује боју календара.", + "Error while sharing file" : "Грешка приликом дељења фајла", + "Error while sharing file with user" : "Грешка приликом дељења фајла са корисником", + "Error creating a folder {folder}" : "Грешка при креирању фолдера {folder}", + "Attachment {fileName} already exists!" : "Прилог {fileName} већ постоји!", + "Attachment {fileName} added!" : "Додат је прилог {fileName}!", + "An error occurred during uploading file {fileName}" : "Дошло је до грешке приликом отпремања фајла {fileName}", + "An error occurred during getting file information" : "Дошло је до грешке током преузимања информација о фајлу", + "Talk conversation for event" : "Talk разговор за догађај", + "An error occurred, unable to delete the calendar." : "Догодила се грешка, не могу да обришем календар.", + "Imported {filename}" : "Увезен {filename}", + "This is an event reminder." : "Ово је подсетник за догађај.", + "Error while parsing a PROPFIND error" : "Грешка приликом парсирања PROPFIND грешке", + "Appointment not found" : "Састанак није пронађен", + "User not found" : "Корисник није нађен", + "Reminder" : "Подсетник", + "+ Add reminder" : "+ Додај подсетник", + "Select automatic slot" : "Изабери аутоматски термин", + "with" : "са", + "Available times:" : "Времена доступности:", + "Suggestions" : "Предлози", + "Details" : "Детаљи" },"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" } \ No newline at end of file diff --git a/l10n/sr@latin.js b/l10n/sr@latin.js index df51ab69f2f4bf18d440f13c3f5cc731f87c9fe8..cfb02139358b317c63220f557d43e4456f4aed63 100644 --- a/l10n/sr@latin.js +++ b/l10n/sr@latin.js @@ -7,14 +7,18 @@ OC.L10N.register( "Copy link" : "Kopiraj vezu", "Edit" : "Izmeni", "Delete" : "Delete", - "Share link" : "Veza deljenja", - "can edit" : "može da menja", + "Empty trash bin" : "Isprazni kantu", "Name" : "Ime", "Deleted" : "Obrisano", "Delete permanently" : "Obriši zauvek", + "Copy internal link" : "Kopiraj internu vezu", + "Share link" : "Veza deljenja", + "can edit" : "može da menja", + "Save" : "Save", "Filename" : "Ime fajla", "Cancel" : "Cancel", "List view" : "Prikaz liste", + "Update" : "Ažuriraj", "Description" : "Opis", "Add" : "Dodaj", "Monday" : "Ponedeljak", @@ -24,18 +28,17 @@ OC.L10N.register( "Friday" : "Petak", "Saturday" : "Subota", "Sunday" : "Nedelja", - "Save" : "Save", - "Update" : "Ažuriraj", "Email" : "email", + "Proceed" : "Nastavi", + "Out of office" : "Van kancelarije", + "Done" : "Gotovo", "Unknown" : "Nepoznato", "never" : "never", - "More" : "More", - "Details" : "Detalji", "Close" : "Zatvori", "Daily" : "дневно", "Weekly" : "недељно", + "second" : "sekund", "Other" : "Ostali", - "Movie" : "Film", - "Mail" : "Pošta" + "Details" : "Detalji" }, "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"); diff --git a/l10n/sr@latin.json b/l10n/sr@latin.json index 396b99f23ce6064b83ebcac14cbff3877c076424..d446a244a8dc507035ae3afe8da07d483f3bc93c 100644 --- a/l10n/sr@latin.json +++ b/l10n/sr@latin.json @@ -5,14 +5,18 @@ "Copy link" : "Kopiraj vezu", "Edit" : "Izmeni", "Delete" : "Delete", - "Share link" : "Veza deljenja", - "can edit" : "može da menja", + "Empty trash bin" : "Isprazni kantu", "Name" : "Ime", "Deleted" : "Obrisano", "Delete permanently" : "Obriši zauvek", + "Copy internal link" : "Kopiraj internu vezu", + "Share link" : "Veza deljenja", + "can edit" : "može da menja", + "Save" : "Save", "Filename" : "Ime fajla", "Cancel" : "Cancel", "List view" : "Prikaz liste", + "Update" : "Ažuriraj", "Description" : "Opis", "Add" : "Dodaj", "Monday" : "Ponedeljak", @@ -22,18 +26,17 @@ "Friday" : "Petak", "Saturday" : "Subota", "Sunday" : "Nedelja", - "Save" : "Save", - "Update" : "Ažuriraj", "Email" : "email", + "Proceed" : "Nastavi", + "Out of office" : "Van kancelarije", + "Done" : "Gotovo", "Unknown" : "Nepoznato", "never" : "never", - "More" : "More", - "Details" : "Detalji", "Close" : "Zatvori", "Daily" : "дневно", "Weekly" : "недељно", + "second" : "sekund", "Other" : "Ostali", - "Movie" : "Film", - "Mail" : "Pošta" + "Details" : "Detalji" },"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" } \ No newline at end of file diff --git a/l10n/sv.js b/l10n/sv.js index ae8d6ebd1062d5a624db194843747a8cf4bec8ed..6211fd8f96c3952dac42396b3c3fca45afa6ec5e 100644 --- a/l10n/sv.js +++ b/l10n/sv.js @@ -1,127 +1,171 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Den angivna e-postadressen är för lång", "User-Session unexpectedly expired" : "Användarsessionen upphörde oväntat", "Provided email-address is not valid" : "Den angivna e-postadressen är inte giltig", - "%s has published the calendar »%s«" : "%s har publicerat kalender »%s«", - "Unexpected error sending email. Please contact your administrator." : "Oväntat fel vid skickande av e-post. Kontakta din administratör.", + "%s has published the calendar »%s«" : "%s har publicerat kalender \"%s\"", + "Unexpected error sending email. Please contact your administrator." : "Oväntat fel vid utskick av e-post. Kontakta din administratör.", "Successfully sent email to %1$s" : "E-post skickad till %1$s", "Hello," : "Hej,", - "We wanted to inform you that %s has published the calendar »%s«." : "Vi vill informera dig att %s har publicerat kalendern »%s«.", - "Open »%s«" : "Öppna »%s«", + "We wanted to inform you that %s has published the calendar »%s«." : "Vi vill informera dig att %s har publicerat kalendern \"%s«\"", + "Open »%s«" : "Öppna \"%s\"", "Cheers!" : "Ha de fint!", "Upcoming events" : "Kommande händelser", + "No more events today" : "Inga fler händelser idag", + "No upcoming events" : "Inga kommande händelser", + "More events" : "Fler händelser", + "%1$s with %2$s" : "%1$s med %2$s", + "Calendar" : "Kalender", + "New booking {booking}" : "Ny bokning {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) bokade mötet \"{config_display_name}\" den {date_time}.", "Appointments" : "Möten", "Schedule appointment \"%s\"" : "Schemalägg möte ”%s”", "Schedule an appointment" : "Schemalägg ett möte", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Förberedelse inför %s", "Follow up for %s" : "Uppföljning av %s", + "Your appointment \"%s\" with %s needs confirmation" : "Ditt möte \"%s\" med %s behöver bekräftas", + "Dear %s, please confirm your booking" : "Kära %s, vänligen bekräfta din bokning", "Confirm" : "Bekräfta", - "Appointment:" : "Möte:", + "Appointment with:" : "Möte med:", + "Description:" : "Beskrivning:", + "This confirmation link expires in %s hours." : "Bekräftelselänken slutar gälla om %s timmar.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Vänligen kontakta arrangören om du skulle vilja avboka mötet efter bekräftelse, genom att svara på denna e-post eller genom att besöka deras profil.", + "Your appointment \"%s\" with %s has been accepted" : "Ditt möte \"%s\" med %s har accepterats", + "Dear %s, your booking has been accepted." : "%s, din bokning har accepterats.", + "Appointment for:" : "Möte för:", "Date:" : "Datum:", + "You will receive a link with the confirmation email" : "Du kommer att få en länk med bekräftelsemailet", "Where:" : "Plats:", - "Description:" : "Beskrivning:", - "Calendar" : "Kalender", + "Comment:" : "Kommentar:", + "You have a new appointment booking \"%s\" from %s" : "Du har en ny mötesbokning \"%s\" från %s", + "Dear %s, %s (%s) booked an appointment with you." : "%s, %s (%s) bokade ett möte med dig.", "A Calendar app for Nextcloud" : "En kalender-app för Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Kalendar-appen är ett gränssnitt till Nextclouds CalDAV server. Synkronisera händelser enkelt från diverse enheter till Nextcloud samt redigera dem online.\n\n* 🚀 **Integrerad med andra Nextcloud-appar!** För tillfället Kontakter - fler på väg.\n* 🌐 **WebCal Support!** Vill du se ditt favoritlags matchdagar i din kalender? Inga problem!\n* 🙋 **Deltagare!** Bjud in andra deltagare till dina aktiviteter\n* ⌚️ **Ledig/Upptagen!** Se när andra deltagare har ledig tid\n* ⏰ **Påminnelser!** Få påminnelser för aktiviteter i webbläsaren och på e-mail.\n* 🔍 Sök! Hitta dina event lätt!\n* ☑️ Uppgifter! Se dina uppgifters slutdatum direkt i kalendern\n* 🙈 **Vi uppfinner inte hjulet igen!** Appen är baserad på de fantastiska biblioteken [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) och [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Föregående dag", "Previous week" : "Föregående vecka", + "Previous year" : "Föregående år", "Previous month" : "Föregående månad", "Next day" : "Nästa dag", "Next week" : "Nästa vecka", + "Next year" : "Nästa år", "Next month" : "Nästa månad", - "New event" : "Ny händelse", + "Create new event" : "Skapa ny händelse", + "Event" : "Händelse", "Today" : "Idag", "Day" : "Dag", "Week" : "Vecka", "Month" : "Månad", + "Year" : "År", "List" : "Lista", - "Preview" : "Förhandsvisning", + "Appointment link was copied to clipboard" : "Möteslänken kopierades till urklippet", + "Appointment link could not be copied to clipboard" : "Möteslänk kunde ej kopieras till urklipp", + "Preview" : "Förhandsvisa", "Copy link" : "Kopiera länk", "Edit" : "Redigera", "Delete" : "Ta bort", - "Add new" : "Lägg till ny", - "Untitled calendar" : "Namnlös kalender", - "Edit name" : "Ändra namn", - "Saving name …" : "Sparar namn …", - "Edit color" : "Ändra färg", - "Saving color …" : "Sparar färg …", - "Copy private link" : "Kopiera privat länk", - "Export" : "Exportera", - "Unshare from me" : "Sluta dela från mig", + "Appointment schedules" : "Mötesscheman", + "Create new" : "Skapa ny", + "Disable calendar \"{calendar}\"" : "Inaktivera kalendern \"{calendar}\"", + "Disable untitled calendar" : "Inaktivera ej namngiven kalender", + "Enable calendar \"{calendar}\"" : "Aktivera kalendern \"{calendar}\"", + "Enable untitled calendar" : "Aktivera ej namngiven kalender", "An error occurred, unable to change visibility of the calendar." : "Ett fel inträffade, kunde inte ändra synlighet på kalendern.", - "An error occurred, unable to delete the calendar." : "Ett fel inträffade, kunde inte radera kalendern.", - "Calendar link copied to clipboard." : "Kalenderlänk kopierad till urklipp.", - "Calendar link could not be copied to clipboard." : "Kalenderlänk kunde inte kopieras till urklipp.", - "An error occurred, unable to rename the calendar." : "Ett fel inträffade, kunde inte byta namn på kalendern.", - "An error occurred, unable to change the calendar's color." : "Ett fel inträffade, kunde inte byta färg på kalendern.", + "Untitled calendar" : "Namnlös kalender", + "Shared with you by" : "Delad med dig av", + "Edit and share calendar" : "Redigera och dela kalender", + "Edit calendar" : "Redigera kalender", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Slutar dela kalendern om {countdown} sekund","Slutar dela kalendern om {countdown} sekunder"], - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Slutar dela kalendern om {countdown} sekund","Raderar kalendern {countdown} sekunder"], - "Share link" : "Dela länk", - "Publish calendar" : "Publicera kalender ", - "Publishing calendar" : "Publicerar kalender", - "Copy public link" : "Kopiera publik länk", - "Send link to calendar via email" : "Skicka länk till kalender via e-post", - "Enter one address" : "Mata in en adress", - "Sending email …" : "Skickar e-post …", - "Copy subscription link" : "Kopiera abonnemangslänk", - "Copying link …" : "Kopierar länk …", - "Copied link" : "Kopierad länk", - "Could not copy link" : "Kunde inte kopiera länk", - "Copy embedding code" : "Kopiera inbäddad kod", - "Copying code …" : "Kopierar kod …", - "Copied code" : "Kopierad kod", - "Could not copy code" : "Kunde inte kopiera kod", - "Delete share link" : "Ta bort delad länk", - "Deleting share link …" : "Raderar delad länk …", - "An error occurred, unable to publish calendar." : "Ett fel inträffade, kunde inte publicera kalendern.", - "An error occurred, unable to send email." : "Fel uppstod. Mejlet kunde inte skickas.", - "Embed code copied to clipboard." : "Inbäddad kod kopierad till urklipp.", - "Embed code could not be copied to clipboard." : "Inbäddad kod kunde inte kopieras till urklipp.", - "Unpublishing calendar failed" : "Avpublicering av kalendern misslyckades", - "Share with users or groups" : "Dela med användare eller grupper", - "No users or groups" : "Inga användare eller grupper", - "can edit" : "kan redigera", - "Unshare with {displayName}" : "Sluta dela med {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Fel uppstod. Det gick inte att ta bort kalenderdelningen.", - "An error occurred, unable to change the permission of the share." : "Ett fel inträffade. Det gick inte att ändra behörighet för delningen.", - "+ New calendar" : "+ Ny kalender", + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Raderar kalendern om {countdown} sekund","Raderar kalendern om {countdown} sekunder"], + "An error occurred, unable to create the calendar." : "Ett fel inträffade, kunde inte skapa kalender.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Ange en giltig länk (börjar med http://, https://, webcal://, eller webcals://)", + "Calendars" : "Kalendrar", + "Add new" : "Lägg till ny", "New calendar" : "Ny kalender", + "Name for new calendar" : "Namn på nya kalendern", "Creating calendar …" : "Skapar kalender …", "New calendar with task list" : "Ny kalender med uppgiftslista", "New subscription from link (read-only)" : "Ny prenumeration från länk (skrivskyddad)", - "Creating subscription …" : "Skapar abonnemang …", - "An error occurred, unable to create the calendar." : "Ett fel inträffade, kunde inte skapa kalender.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Ange en giltig länk (startar med http://, https://, webcal://, eller webcals://)", + "Creating subscription …" : "Skapar prenumeration …", + "Add public holiday calendar" : "Lägg till helgdagskalender", + "Add custom public calendar" : "Lägg till anpassad publik kalender", + "Calendar link copied to clipboard." : "Kalenderlänk kopierad till urklipp.", + "Calendar link could not be copied to clipboard." : "Kalenderlänk kunde inte kopieras till urklipp.", + "Copy subscription link" : "Kopiera prenumerationslänk", + "Copying link …" : "Kopierar länk …", + "Copied link" : "Länk kopierad", + "Could not copy link" : "Kunde inte kopiera länk", + "Export" : "Exportera", + "Untitled item" : "Namnlöst objekt", + "Unknown calendar" : "Okänd kalender", + "Could not load deleted calendars and objects" : "Kunde inte ladda borttagna kalendrar och objekt", + "Could not delete calendar or event" : "Det gick inte att ta bort kalender eller händelse", + "Could not restore calendar or event" : "Kunde inte återställa kalender eller händelse", + "Do you really want to empty the trash bin?" : "Vill du verkligen tömma papperskorgen?", + "Empty trash bin" : "Töm papperskorgen", "Trash bin" : "Papperskorg", - "Loading deleted elements." : "Laddar borttagna element.", - "You do not have any deleted elements." : "Du har inga borttagna element.", + "Loading deleted items." : "Laddar borttagna objekt.", + "You do not have any deleted items." : "Du har inga borttagna objekt.", "Name" : "Namn", "Deleted" : "Borttagen", "Restore" : "Återställ", "Delete permanently" : "Ta bort permanent", - "Empty trash bin" : "Töm papperskorgen", - "Untitled element" : "Namnlöst element", - "Unknown calendar" : "Okänd kalender", - "Could not load deleted calendars and objects" : "Kunde inte ladda borttagna kalendrar och objekt", - "Could not restore calendar or event" : "Kunde inte återställa kalender eller händelse", - "Do you really want to empty the trash bin?" : "Vill du verkligen tömma papperskorgen?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Element i papperskorgen tas bort efter {numDays} dag","Element i papperskorgen tas bort efter {numDays} dagar"], + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Objekt i papperskorgen tas bort efter {numDays} dag","Objekt i papperskorgen tas bort efter {numDays} dagar"], "Could not update calendar order." : "Det gick inte att uppdatera kalenderordningen.", + "Shared calendars" : "Delade kalendrar", + "Deck" : "Deck", + "Hidden" : "Gömd", + "Internal link" : "Intern länk", + "A private link that can be used with external clients" : "En privat länk som kan användas med externa klienter", + "Copy internal link" : "Kopiera intern länk", + "An error occurred, unable to publish calendar." : "Ett fel inträffade, kunde inte publicera kalendern.", + "An error occurred, unable to send email." : "Fel uppstod. Mejlet kunde inte skickas.", + "Embed code copied to clipboard." : "Inbäddningskod kopierad till urklipp.", + "Embed code could not be copied to clipboard." : "Inbäddningskod kunde inte kopieras till urklipp.", + "Unpublishing calendar failed" : "Avpublicering av kalendern misslyckades", + "Share link" : "Dela länk", + "Copy public link" : "Kopiera offentlig länk", + "Send link to calendar via email" : "Skicka länk till kalender via e-post", + "Enter one address" : "Mata in en adress", + "Sending email …" : "Skickar e-post …", + "Copy embedding code" : "Kopiera inbäddningskod", + "Copying code …" : "Kopierar kod …", + "Copied code" : "Kod kopierad", + "Could not copy code" : "Kunde inte kopiera kod", + "Delete share link" : "Ta bort delningslänk", + "Deleting share link …" : "Raderar delningslänk …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "Ett fel uppstod när delningen av kalendern skulle tas bort.", + "An error occurred, unable to change the permission of the share." : "Ett fel inträffade. Det gick inte att ändra behörighet för delningen.", + "can edit" : "kan redigera", + "Unshare with {displayName}" : "Sluta dela med {displayName}", + "Share with users or groups" : "Dela med användare eller grupper", + "No users or groups" : "Inga användare eller grupper", + "Failed to save calendar name and color" : "Det gick inte att spara kalendernamn och färg", + "Calendar name …" : "Kalendernamn ...", + "Never show me as busy (set this calendar to transparent)" : "Visa mig aldrig som upptagen (ställ in den här kalendern på transparent)", + "Share calendar" : "Dela kalender", + "Unshare from me" : "Sluta dela från mig", + "Save" : "Spara", "Import calendars" : "Importera kalendrar", "Please select a calendar to import into …" : "Vänligen välj en kalender du vill importera till …", "Filename" : "Filnamn", "Calendar to import into" : "Kalender att importera till", "Cancel" : "Avbryt", "_Import calendar_::_Import calendars_" : ["Importera kalender","Importera kalendrar"], + "Select the default location for attachments" : "Välj standardplats för bilagor", + "Pick" : "Välj", + "Invalid location selected" : "Ogiltig plats vald", + "Attachments folder successfully saved." : "Mapp för bilagor har sparats ", + "Error on saving attachments folder." : "Ett fel uppstod vid ändring av mapp för bilagor", + "Default attachments location" : "Standardplats för bilagor", "{filename} could not be parsed" : "{filename} kunde inte läsas", "No valid files found, aborting import" : "Inga giltiga filer hittades, avbryter import", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Lyckades importera %n händelse","Lyckades importera %n händelser"], "Import partially failed. Imported {accepted} out of {total}." : "Importen misslyckades delvis. Importerade {accepted} av {total}.", "Automatic" : "Automatisk", "Automatic ({detected})" : "Automatisk ({detected})", "New setting was not saved successfully." : "Den nya inställningen kunde inte sparas.", - "Shortcut overview" : "Översikt av genvägar", - "or" : "eller", "Navigation" : "Navigering", "Previous period" : "Föregående period", "Next period" : "Nästa period", @@ -129,24 +173,39 @@ OC.L10N.register( "Day view" : "Översikt dag", "Week view" : "Översikt vecka", "Month view" : "Översikt månad", + "Year view" : "Årsvy", "List view" : "Listvy", "Actions" : "Åtgärder", "Create event" : "Skapa händelse", "Show shortcuts" : "Visa genvägar", + "Editor" : "Redigerare", + "Close editor" : "Stäng redigeraren", + "Save edited event" : "Spara ändrad händelse", + "Delete edited event" : "Radera ändrad händelse", + "Duplicate event" : "Duplicera händelse", + "Shortcut overview" : "Översikt av genvägar", + "or" : "eller", + "Calendar settings" : "Kalenderinställningar", + "At event start" : "Vid händelsens start", + "No reminder" : "Ingen påminnelse", + "Failed to save default calendar" : "Det gick inte att spara standardkalendern", + "CalDAV link copied to clipboard." : "CalDAV-länk kopierad till urklipp.", + "CalDAV link could not be copied to clipboard." : "CalDAV-länk kunde inte kopieras till urklipp.", "Enable birthday calendar" : "Aktivera födelsedagskalender", "Show tasks in calendar" : "Visa uppgifter i kalendern", "Enable simplified editor" : "Aktivera förenklad redigerare", - "Limit visible events per view" : "Begränsa synliga händelser per vy", + "Limit the number of events displayed in the monthly view" : "Begränsa antalet händelser som visas i månadsvyn", "Show weekends" : "Visa helger", "Show week numbers" : "Visa veckonummer", "Time increments" : "Tidsintervall", + "Default calendar for incoming invitations" : "Standardkalender för inkommande inbjudningar", "Default reminder" : "Standardpåminnelse", "Copy primary CalDAV address" : "Kopiera primär CalDAV-adress", "Copy iOS/macOS CalDAV address" : "Kopiera iOS/macOS CalDAV-adress", + "Personal availability settings" : "Dina tillgänglighetsinställningar", "Show keyboard shortcuts" : "Visa tangentbordsgenvägar", - "No reminder" : "Ingen påminnelse", - "CalDAV link copied to clipboard." : "CalDAV-länk kopierad till urklipp.", - "CalDAV link could not be copied to clipboard." : "CalDAV-länk kunde inte kopieras till urklipp.", + "Appointment schedule successfully created" : "Mötesschema skapat", + "Appointment schedule successfully updated" : "Mötesschema uppdaterat", "_{duration} minute_::_{duration} minutes_" : ["{duration} minut","{duration} minuter"], "0 minutes" : "0 minuter", "_{duration} hour_::_{duration} hours_" : ["{duration} timme","{duration} timmar"], @@ -154,12 +213,26 @@ OC.L10N.register( "_{duration} week_::_{duration} weeks_" : ["{duration} vecka","{duration} veckor"], "_{duration} month_::_{duration} months_" : ["{duration} månad","{duration} månader"], "_{duration} year_::_{duration} years_" : ["{duration} år","{duration} år"], + "To configure appointments, add your email address in personal settings." : "För att konfigurera möten, fyll i din e-postadress i dina inställningar.", + "Public – shown on the profile page" : "Offentlig - visas på profilsidan", + "Private – only accessible via secret link" : "Privat - endast tillgänglig via hemlig länk", + "Appointment schedule saved" : "Mötesschema sparat", + "Create appointment schedule" : "Skapa mötesschema", + "Edit appointment schedule" : "Redigera mötesschema", + "Update" : "Uppdatera", + "Appointment name" : "Namn på möte", "Location" : "Plats", + "Create a Talk room" : "Skapa ett rum i Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "En unik länk kommer att genereras för varje bokat möte och skickas via bekräftelsemailet", "Description" : "Beskrivning", "Visibility" : "Synlighet", "Duration" : "Varaktighet", "Increments" : "Tidsintervall", + "Additional calendars to check for conflicts" : "Ytterligare kalendrar att ta hänsyn till", + "Pick time ranges where appointments are allowed" : "Välj tidsintervall där möten är tillåtna", "to" : "till", + "Delete slot" : "Radera lucka", + "No times set" : "Inga tider satta", "Add" : "Lägg till", "Monday" : "Måndag", "Tuesday" : "Tisdag", @@ -168,14 +241,37 @@ OC.L10N.register( "Friday" : "Fredag", "Saturday" : "Lördag", "Sunday" : "Söndag", - "Create appointment" : "Skapa möte", - "Edit appointment" : "Redigera möte", - "Save" : "Spara", - "Update" : "Uppdatera", + "Weekdays" : "Vardagar", + "Add time before and after the event" : "Lägg till tid innan och efter händelsen", + "Before the event" : "Innan händelsen", + "After the event" : "Efter händelsen", + "Planning restrictions" : "Planeringsbegränsningar", + "Minimum time before next available slot" : "Minimumpaus mellan möten", + "Max slots per day" : "Maximalt antal möten per dag", + "Limit how far in the future appointments can be booked" : "Begränsa hur långt fram i tiden möten kan bokas", + "It seems a rate limit has been reached. Please try again later." : "Det verkar som en hastighetsbegränsning har uppnåtts. Försök igen senare.", + "Please confirm your reservation" : "Vänligen bekräfta din reservation", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Vi har skickat dig ett e-postmeddelande med detaljer. Vänligen bekräfta ditt möte med länken som erhålls i meddelandet. Du kan stänga den här sidan nu.", "Your name" : "Ditt namn", "Your email address" : "Din e-postadress", - "Book the appointment" : "Boka mötet", - "Reminder" : "Påminnelse", + "Please share anything that will help prepare for our meeting" : "Vänligen delge eventuella saker som hjälper att förbereda för vårt möte", + "Could not book the appointment. Please try again later or contact the organizer." : "Kunde inte boka mötet. Vänligen försök igen senare eller kontakta arrangören.", + "Back" : "Tillbaka", + "Book appointment" : "Boka möte", + "Error fetching Talk conversations." : "Kunde inte hämta Talk-konversationer.", + "Conversation does not have a valid URL." : "Konversationen har ingen giltig URL.", + "Successfully added Talk conversation link to location." : "Länk till Talk-konversation har lagts till på platsen.", + "Successfully added Talk conversation link to description." : "Länk till Talk-konversation har lagts till i beskrivningen.", + "Failed to apply Talk room." : "Kunde inte tillämpa rum i Talk.", + "Error creating Talk conversation" : "Kunde inte skapa Talk-konversation", + "Select a Talk Room" : "Välj ett rum i Talk", + "Add Talk conversation" : "Lägg till Talk-konversation", + "Fetching Talk rooms…" : "Hämtar Talk-rum...", + "No Talk room available" : "Inget Talk-rum tillgängligt", + "Create a new conversation" : "Skapa en ny konversation", + "Select conversation" : "Välj konversation", + "on" : "den", + "at" : "kl", "before at" : "innan", "Notification" : "Notifiering", "Email" : "E-post", @@ -186,98 +282,147 @@ OC.L10N.register( "Edit time" : "Ändra tid", "Save time" : "Lagra tid", "Remove reminder" : "Ta bort påminnelse", - "on" : "på", - "at" : "kl", - "+ Add reminder" : "+Lägg till påminnelse", "Add reminder" : "Lägg till påminnelse", - "_second_::_seconds_" : ["sekund","sekunder"], - "_minute_::_minutes_" : ["minut","minuter"], - "_hour_::_hours_" : ["timme","timmar"], - "_day_::_days_" : ["dag","dagar"], - "_week_::_weeks_" : ["vecka","veckor"], + "seconds" : "sekunder", + "minutes" : "minuter", + "hours" : "timmar", + "days" : "dagar", + "weeks" : "veckor", + "Choose a file to add as attachment" : "Välj en fil att lägga till som bilaga", + "Choose a file to share as a link" : "Välj en fil att dela som länk", + "Attachment {name} already exist!" : "Bilagan {name} finns redan!", + "Could not upload attachment(s)" : "Kunde inte ladda upp bilagor", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Du håller på att ladda ner en fil. Kontrollera filnamnet innan du öppnar den. Är du säker på att du vill fortsätta?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Du är på väg att navigera till {host}. Är du säker på att du vill fortsätta? Länk: {link}", + "Proceed" : "Fortsätt", + "No attachments" : "Inga bilagor", + "Add from Files" : "Lägg till från Filer", + "Upload from device" : "Ladda upp från enheten", + "Delete file" : "Ta bort fil", + "Confirmation" : "Bekräftelse", + "_{count} attachment_::_{count} attachments_" : ["{count} bilaga","{count} bilagor"], + "Suggested" : "Föreslagen", "Available" : "Tillgänglig", + "Invitation accepted" : "Inbjudan accepterad", + "Accepted {organizerName}'s invitation" : "Accepterade inbjudan från {organizerName}", + "Participation marked as tentative" : "Deltagande markerat som preliminärt", + "Invitation is delegated" : "Inbjudan är delegerad", "Not available" : "Inte tillgänglig", - "Availability of attendees, resources and rooms" : "Deltagares tillgänglighet, resurser och lokaler", + "Invitation declined" : "Inbjudan avböjd", + "Declined {organizerName}'s invitation" : "Avböjde inbjudan från {organizerName}", + "Availability will be checked" : "Tillgänglighet kommer att kontrolleras", + "Invitation will be sent" : "Inbjudan kommer att skickas", + "Failed to check availability" : "Det gick inte att kontrollera tillgänglighet", + "Failed to deliver invitation" : "Det gick inte att leverera inbjudan", + "Awaiting response" : "Väntar på svar", + "Checking availability" : "Kontrollerar tillgänglighet", + "Has not responded to {organizerName}'s invitation yet" : "Har ej svarat på inbjudan från {organizerName} än", + "Suggested times" : "Föreslagna tider", + "chairperson" : "ordförande", + "required participant" : "obligatorisk deltagare", + "non-participant" : "icke-deltagare", + "optional participant" : "valfri deltagare", "{organizer} (organizer)" : "{organizer} (arrangör)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Tillgänglighet för deltagare, resurser och lokaler", + "Suggestion accepted" : "Förslaget accepterat", + "Previous date" : "Föregående datum", + "Next date" : "Nästa datum", + "Legend" : "Etikett", + "Out of office" : "Ej på plats", + "Attendees:" : "Deltagare:", + "Done" : "Klar", + "Search room" : "Sök rum", + "Room name" : "Rumsnamn", + "Check room availability" : "Kontrollera rums tillgänglighet", "Free" : "Ledig", "Busy (tentative)" : "Upptagen (preliminär)", "Busy" : "Upptagen", - "Out of office" : "Ej på plats", "Unknown" : "Okänd", + "Find a time" : "Hitta en tid", + "The invitation has been accepted successfully." : "Inbjudan har accepterats", + "Failed to accept the invitation." : "Misslyckades med att acceptera inbjudan.", + "The invitation has been declined successfully." : "Inbjudan avböjdes.", + "Failed to decline the invitation." : "Misslyckades med att tacka nej till inbjudan.", + "Your participation has been marked as tentative." : "Ditt deltagande har markerats som preliminärt.", + "Failed to set the participation status to tentative." : "Misslyckades med att ange deltagande som preliminärt.", "Accept" : "Acceptera", "Decline" : "Avböj", "Tentative" : "Preliminärt", - "Create Talk room for this event" : "Skapa ett rum i Talk för denna händelse", - "Show busy times" : "Visa upptagna tider", - "No attendees yet" : "Inga deltagare ännu", + "No attendees yet" : "Inga deltagare än", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} inbjudna, {confirmedCount} bekräftade", + "Please add at least one attendee to use the \"Find a time\" feature." : "Lägg till minst en deltagare för att använda funktionen “Hitta en tid”.", + "Successfully appended link to talk room to location." : "Länk till rum i Talk tillagd i plats.", "Successfully appended link to talk room to description." : "Länk till rum i Talk tillagd i beskrivningen.", "Error creating Talk room" : "Kunde inte skapa rum i Talk", - "Send email" : "Skicka e-post", + "Attendees" : "Deltagare", + "_%n more guest_::_%n more guests_" : ["%n gäst till","%n gäster till"], + "Remove group" : "Ta bort grupp", + "Remove attendee" : "Ta bort deltagaren", + "Request reply" : "Begär svar", "Chairperson" : "Ordförande", "Required participant" : "Obligatorisk deltagare", - "Optional participant" : "Valfri deltagare", + "Optional participant" : "Frivillig deltagare", "Non-participant" : "Icke-deltagare", - "Remove attendee" : "Ta bort deltagaren", - "Search for emails, users or contacts" : "Sök efter e-postadresser, användare eller kontakter", + "_%n member_::_%n members_" : ["%n medlem","%n medlemmar"], + "Search for emails, users, contacts, contact groups or teams" : "Sök efter e-post, användare, kontakter, kontaktgrupper eller team", "No match found" : "Ingen träff", + "Note that members of circles get invited but are not synced yet." : "Observera att medlemmar i cirklar blir inbjudna men är inte synkroniserade än.", + "Note that members of contact groups get invited but are not synced yet." : "Observera att medlemmar i kontaktgrupper blir inbjudna men är inte synkroniserade än.", "(organizer)" : "(arrangör)", - "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "För att kunna skicka inbjudningar och hantera svar måste du [linkopen]lägga till din e-mailadress i inställningarna[linkclose].", + "Make {label} the organizer" : "Gör {label} till arrangör", + "Make {label} the organizer and attend" : "Gör {label} arrangör och delta", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "För att kunna skicka inbjudningar och hantera svar måste du [linkopen]lägga till din e-postadress i inställningarna[linkclose].", "Remove color" : "Ta bort färg", "Event title" : "Händelsens titel", - "All day" : "Heldag", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Kan inte ändra inställning för heldag när händelsen är återkommande.", - "from {startDate}" : "från {startDate}", - "from {startDate} at {startTime}" : "från {startDate} kl {startTime}", - "to {endDate}" : "till {endDate}", - "to {endDate} at {endTime}" : "till {endDate} kl {endTime}", + "From" : "Från", + "To" : "Till", "Repeat" : "Upprepa", - "End repeat" : "Sluta upprepa", - "Select to end repeat" : "Välj för att avsluta upprepning", + "Repeat event" : "Upprepa händelse", + "_time_::_times_" : ["gång","gånger"], "never" : "aldrig", "on date" : "på datum", "after" : "efter", - "_time_::_times_" : ["gång","gånger"], + "End repeat" : "Sluta upprepa", + "Select to end repeat" : "Välj för att avsluta upprepning", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Den här händelsen är återkommande undantag för en upprepning. Du kan inte lägga till en regel för den.", "first" : "första", - "third" : "tredje", - "fourth" : "fjärde", - "fifth" : "femte", - "second to last" : "näst sist", - "last" : "sist", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Ändringar av återkommande regel gäller endast för denna och alla framtida händelser.", "Repeat every" : "Upprepa varje", "By day of the month" : "Efter dag i månaden", "On the" : "På den", + "_day_::_days_" : ["dag","dagar"], + "_week_::_weeks_" : ["vecka","veckor"], "_month_::_months_" : ["månad","månader"], "_year_::_years_" : ["år","år"], + "On specific day" : "På specifik dag", "weekday" : "veckodag", "weekend day" : "helgdag", - "No recurrence" : "Ingen upprepning", + "Does not repeat" : "Upprepar inte", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Återkommande definition av denna händelse stöds inte helt av Nextcloud. Om du redigerar återfallsalternativen kan vissa återfall försvinna.", - "Suggestions" : "Rekommendationer", "No rooms or resources yet" : "Inga rum eller resurser än", + "Resources" : "Resurser", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} plats","{seatingCapacity} platser"], "Add resource" : "Lägg till resurs", "Has a projector" : "Projektor finns", "Has a whiteboard" : "Whiteboard finns", "Wheelchair accessible" : "Tillgänglig i rullstol", "Remove resource" : "Ta bort resurs", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} plats","{seatingCapacity} platser"], - "Projector" : "Projektor", - "Whiteboard" : "Whiteboard", "Search for resources or rooms" : "Sök efter resurser eller rum", "available" : "tillgänglig", "unavailable" : "ej tillgänglig", + "Show all rooms" : "Visa alla rum", + "Projector" : "Projektor", + "Whiteboard" : "Whiteboard", "Room type" : "Rumtyp", "Any" : "Alla", "Minimum seating capacity" : "Minsta antal platser", - "More" : "Mer", - "Update this occurrence" : "Uppdatera denna förekomst", + "More details" : "Fler detaljer", "Update this and all future" : "Uppdatera denna och alla kommande", + "Update this occurrence" : "Uppdatera denna förekomst", "Public calendar does not exist" : "Publik kalender finns inte", "Maybe the share was deleted or has expired?" : "Kanske har delningen tagits bort eller har gått ut?", - "Please select a time zone:" : "Välj en tidszon:", - "Pick a time" : "Välj en tidpunkt", - "Pick a date" : "Välj ett datum", "from {formattedDate}" : "från {formattedDate}", "to {formattedDate}" : "till {formattedDate}", "on {formattedDate}" : "på {formattedDate}", @@ -287,31 +432,62 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} kl {formattedTime}", "Please enter a valid date" : "Ange ett giltigt datum", "Please enter a valid date and time" : "Ange giltigt datum och tid", + "Select a time zone" : "Välj en tidszon", + "Please select a time zone:" : "Välj en tidszon:", + "Pick a time" : "Välj en tidpunkt", + "Pick a date" : "Välj ett datum", "Type to search time zone" : "Skriv för att söka tidszon", "Global" : "Global", - "Select date" : "Välj datum", + "Holidays in {region}" : "Helgdagar i {region}", + "An error occurred, unable to read public calendars." : "Ett fel inträffade, kan inte läsa publika kalendrar.", + "An error occurred, unable to subscribe to calendar." : "Ett fel inträffade, det går inte att prenumerera på kalendern.", + "Public holiday calendars" : "Helgdagskalendrar", + "Public calendars" : "Publika kalendrar", + "No valid public calendars configured" : "Inga giltiga publika kalendrar konfigurerade", + "Speak to the server administrator to resolve this issue." : "Kontakta serveradministratören för att lösa detta problem.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Helgdagskalendrar tillhandahålls av Thunderbird. Kalenderdata kommer att laddas ner från {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Dessa publika kalendrar föreslås av serveradministratören. Kalenderdata kommer att hämtas från respektive webbplats.", + "By {authors}" : "Av {authors}", + "Subscribed" : "Prenumeration aktiverad", + "Subscribe" : "Prenumerera", + "Could not fetch slots" : "Det gick inte att hämta platser", + "Select a date" : "Välj ett datum", + "Select slot" : "Välj tid", + "No slots available" : "Inga tider tillgängliga", + "The slot for your appointment has been confirmed" : "Tiden för ditt möte har bekräftats", + "Appointment Details:" : "Mötesdetaljer:", "Time:" : "Tid:", "Booked for:" : "Bokad för:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Tack så mycket! Din bokning från {startDate} till {endDate} har bekräftats.", + "Book another appointment:" : "Boka ytterligare möte:", + "See all available slots" : "Se alla tillgängliga tider", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Tiden för ditt möte från {startDate} till {endDate} är inte tillgänglig längre.", + "Please book a different slot:" : "Vänligen boka en annan tid:", + "Book an appointment with {name}" : "Boka ett möte med {name}", + "No public appointments found for {name}" : "Inga offentliga möten hittades för {name}", "Personal" : "Privat", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Den automatiska tidszon-detekteringen fastställde din tidszon till UTC.\nDetta är troligtvis resultatet av säkerhetsinställningar i din webbläsare.\nVänligen ställ in din tidszon manuellt i kalenderinställningarna.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Din tidszon ({timezoneId}) hittades inte. Återgår till UTC.\nVänligen ändra din tidszon i inställningarna och rapportera detta problem.", - "No more events today" : "Inga fler händelser idag", - "No upcoming events" : "Inga kommande händelser", - "Create a new event" : "Skapa en ny händelse", - "[Today]" : "[Idag]", - "[Tomorrow]" : "[Imorgon]", - "[Yesterday]" : "[Igår]", - "[Last] dddd" : "[Sista] dddd", + "Availability of {displayName}" : "Tillgänglighet för {displayName}", + "Edit event" : "Redigera händelse", "Event does not exist" : "Händelsen existerar inte", + "Duplicate" : "Duplicera", "Delete this occurrence" : "Ta bort denna förekomst", "Delete this and all future" : "Ta bort denna och alla kommande", - "Details" : "Detaljer", - "Attendees" : "Deltagare", - "Resources" : "Resurser", + "All day" : "Heldag", + "Modifications wont get propagated to the organizer and other attendees" : "Ändringar kommer inte att skickas till organisatören eller andra deltagare", + "Managing shared access" : "Hantering av delad åtkomst", + "Deny access" : "Neka åtkomst", + "Invite" : "Bjud in", + "_User requires access to your file_::_Users require access to your file_" : ["En användare behöver tillgång till din fil","Användare behöver tillgång till din fil"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Bilaga i behov av delat åtkomst","Bilagor i behov av delad åtkomst"], + "Untitled event" : "Namnlös händelse", "Close" : "Stäng", - "Show more details" : "Visa mer information", + "Modifications will not get propagated to the organizer and other attendees" : "Ändringar kommer inte att skickas till organisatören eller andra deltagare", "Subscribe to {name}" : "Prenumerera på {name}", - "Anniversary" : "Födelsedag", + "Export {name}" : "Exportera {name}", + "Show availability" : "Visa tillgänglighet", + "Anniversary" : "Jubileum", "Appointment" : "Bokning", "Business" : "Företag", "Education" : "Utbildning", @@ -338,7 +514,6 @@ OC.L10N.register( "on {time}" : "klockan {time}", "on {time} ({timezoneId})" : "klockan {time} ({timezoneId})", "Week {number} of {year}" : "Vecka {number} år {year}", - "Does not repeat" : "Upprepar inte", "Daily" : "Varje dag", "Weekly" : "Varje vecka", "Monthly" : "Varje månad", @@ -350,24 +525,30 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["på {weekday}","på {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["på dag {dayOfMonthList}","på dagar {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "på den {ordinalNumber} {byDaySet}", - "in {monthNames}" : "i {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "i {monthNames} på den {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "i {monthNames} på den {ordinalNumber} {byDaySet}", "until {untilDate}" : "till {untilDate}", "_%n time_::_%n times_" : ["%n gång","%n gånger"], - "Untitled event" : "Namnlös händelse", + "second" : "sekund", + "third" : "tredje", + "fourth" : "fjärde", + "fifth" : "femte", + "second to last" : "näst sist", + "last" : "sist", "Untitled task" : "Namnlös uppgift", "Please ask your administrator to enable the Tasks App." : "Be din administratör aktivera Tasks-appen.", - "Prev" : "Föregående", - "Next" : "Nästa", - "Prev year" : "Föreg. år", - "Next year" : "Nästa år", - "Year" : "År", + "You are not allowed to edit this event as an attendee." : "Du har inte behörighet att redigera denna händelse som deltagare.", "W" : "v", "%n more" : " %n till", "No events to display" : "Inga händelser att visa", + "All participants declined" : "Alla deltagare avböjde", + "Please confirm your participation" : "Vänligen bekräfta ditt deltagande", + "You declined this event" : "Du avböjde denna händelse", + "Your participation is tentative" : "Ditt deltagande är preliminärt", "_+%n more_::_+%n more_" : ["och %n till","och %n till"], "No events" : "Inga händelser", "Create a new event or change the visible time-range" : "Skapa ny händelse eller ändra det synliga tidspannet", + "Failed to save event" : "Kunde inte spara händelse", "It might have been deleted, or there was a typo in a link" : "Den kan ha raderats eller så var länken felaktig", "It might have been deleted, or there was a typo in the link" : "Den kan ha raderats eller så var länken felaktig", "Meeting room" : "Mötesrum", @@ -380,7 +561,7 @@ OC.L10N.register( "When shared hide this event" : "Om delad, dölj denna händelse", "The visibility of this event in shared calendars." : "Synligheten för denna händelse i delade kalendrar.", "Add a location" : "Lägg till en plats", - "Add a description" : "Lägg till en beskrivning", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Lägg till en beskrivning\n\n- Vad handlar mötet om\n- Punkter på dagordningen\n- Något som deltagare behöver förbereda", "Status" : "Status", "Confirmed" : "Bekräftad", "Canceled" : "Avbruten", @@ -393,135 +574,26 @@ OC.L10N.register( "Add this as a new category" : "Lägg till som en ny kategori", "Custom color" : "Anpassad färg", "Special color of this event. Overrides the calendar-color." : "Anpassad färg på denna händelse. Åsidosätter kalenderfärgen.", - "Chat room for event" : "Mötesrum för event", + "Error while sharing file" : "Fel vid delning av fil", + "Error while sharing file with user" : "Ett fel uppstod vid delning av fil med användare", + "Error creating a folder {folder}" : "Det gick inte att skapa mappen {folder}", + "Attachment {fileName} already exists!" : "Bilagan {fileName} finns redan!", + "Attachment {fileName} added!" : "Bilaga {fileName} tillagd!", + "An error occurred during uploading file {fileName}" : "Ett fel uppstod vid uppladdning av filen {fileName}", + "An error occurred during getting file information" : "Ett fel uppstod vid hämtning av filinformation", + "Talk conversation for event" : "Talk-konversation för händelse", + "An error occurred, unable to delete the calendar." : "Ett fel inträffade, kunde inte radera kalendern.", "Imported {filename}" : "Importerad {filename}", - "Meditation" : "Meditation", - "Relaxing" : "Relaxa", - "Relax" : "Relax", - "Break" : "Paus", - "Commute" : "Pendla", - "Commuting" : "Pendlar", - "Shuttle" : "Pendel", - "Invoice" : "Faktura", - "Finance" : "Finans", - "Bank" : "Bank", - "Money" : "Pengar", - "Wedding" : "Bröllop", - "Dog" : "Hund", - "Concert" : "Konsert", - "Festival" : "Festival", - "Theater" : "Teater", - "Theatre" : "Teater", - "Presentation" : "Presentation", - "Talk" : "Samtal", - "Speech" : "Föredrag", - "Deadline" : "Deadline", - "Submission" : "Inlämning", - "Reporting" : "Rapport", - "Camping" : "Camping", - "Camp" : "Camp", - "Election" : "Val", - "Voting" : "Röstning", - "Vote" : "Rösta", - "Barbecue" : "Grillning", - "Barbeque" : "Grillning", - "Garden" : "Trädgård", - "Farm" : "Gård", - "Movie" : "Film", - "Cinema" : "Bio", - "Graduation" : "Examen", - "Brainstorm" : "Brainstorm", - "Review" : "Granska", - "Audit" : "Granskning", - "Inspection" : "Inspektion", - "Proofreading" : "Korrektur", - "Baseball" : "Baseball", - "Meet" : "Möte", - "Planning" : "Planering", - "Pointing" : "Peka", - "Retrospective" : "Återkoppling", - "Office" : "Kontor", - "Contributor week" : "Bidragarvecka", - "Mail" : "E-post", - "Soccer" : "Fotboll", - "Football" : "Fotboll", - "Gaming" : "Gaming", - "Drive" : "Biltur", - "Driving" : "Körning", - "Bicycle" : "Cykel", - "Cycle" : "Cykling", - "Cycling" : "Cykling", - "Biking" : "Cykling", - "Bike" : "Cykel", - "Podcast" : "Podcast", - "Basketball" : "Basketboll", - "Fishing" : "Fiske", - "Hiking" : "Vandring", - "Hike" : "Vandra", - "Art" : "Konst", - "Exhibition" : "Utställning", - "Museum" : "Museum", - "Pilates" : "Pilates", - "Park" : "Park", - "Walk" : "Promenad", - "Studying" : "Studerar", - "Doctor" : "Läkare", - "Health" : "Hälsa", - "Dentist" : "Tandläkare", - "Hospital" : "Sjukhus", - "Interview" : "Intervju", - "Training" : "Träning", - "Practice" : "Träning", - "Sports" : "Sport", - "Exercise" : "Träning", - "Work out" : "Work out", - "Working out" : "Working out", - "Gym" : "Gym", - "Barber" : "Frisör", - "Haircut" : "Frisyr", - "Hairdresser" : "Frisör", - "Exam" : "Prov", - "Written test" : "Skriftligt prov", - "Oral test" : "Muntligt prov", - "Working" : "Arbete", - "New Years Eve" : "Nyårsafton", - "NYE" : "Nyårsafton", - "Fireworks" : "Fyrverkerier", - "Running" : "Löpning", - "Go for a run" : "Löprunda", - "Marathon" : "Marathon", - "Video-conference" : "Videokonferens", - "Conference-call" : "Konferenssamtal", - "Video-call" : "Video-samtal", - "Video-chat" : "Video-chat", - "Video-meeting" : "Video-möte", - "Call" : "Samtal", - "Calling" : "Ringer", - "Christmas" : "Jul", - "Conference" : "Konferens", - "Pizza" : "Pizza", - "Travelling" : "Reser", - "Trip" : "Resa", - "Journey" : "Resa", - "Collaborate" : "Samarbete", - "Pair" : "Par", - "Lecture" : "Föreläsning", - "Seminar" : "Seminarium", - "Teaching" : "Undervisa", - "Photograph" : "Fotograf", - "Party" : "Fest", - "Celebration" : "Firande", - "Celebrate" : "Fira", - "Birthday" : "Födelsedag", - "Shopping" : "Shopping", - "Groceries" : "Mat", - "Skate" : "Skate", - "Skateboard" : "Skateboard", - "Wine tasting" : "Vinprovning", - "Golf" : "Golf", - "Dinner" : "Middag", - "Lunch" : "Lunch", + "This is an event reminder." : "Detta är en händelsepåminnelse.", + "Error while parsing a PROPFIND error" : "Fel vid analys av ett PROPFIND-fel", "Appointment not found" : "Mötet hittades inte", - "User not found" : "Användaren hittades inte" + "User not found" : "Användaren hittades inte", + "Reminder" : "Påminnelse", + "+ Add reminder" : "+ Lägg till påminnelse", + "Select automatic slot" : "Välj automatisk lucka", + "with" : "med", + "Available times:" : "Tillgängliga tider:", + "Suggestions" : "Rekommendationer", + "Details" : "Detaljer" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/sv.json b/l10n/sv.json index 8cc1c50c0a8c8b78c275f5de7e4afe301ce4fb37..5fb02fd766c4858480070e160112768a18921467 100644 --- a/l10n/sv.json +++ b/l10n/sv.json @@ -1,125 +1,169 @@ { "translations": { + "Provided email-address is too long" : "Den angivna e-postadressen är för lång", "User-Session unexpectedly expired" : "Användarsessionen upphörde oväntat", "Provided email-address is not valid" : "Den angivna e-postadressen är inte giltig", - "%s has published the calendar »%s«" : "%s har publicerat kalender »%s«", - "Unexpected error sending email. Please contact your administrator." : "Oväntat fel vid skickande av e-post. Kontakta din administratör.", + "%s has published the calendar »%s«" : "%s har publicerat kalender \"%s\"", + "Unexpected error sending email. Please contact your administrator." : "Oväntat fel vid utskick av e-post. Kontakta din administratör.", "Successfully sent email to %1$s" : "E-post skickad till %1$s", "Hello," : "Hej,", - "We wanted to inform you that %s has published the calendar »%s«." : "Vi vill informera dig att %s har publicerat kalendern »%s«.", - "Open »%s«" : "Öppna »%s«", + "We wanted to inform you that %s has published the calendar »%s«." : "Vi vill informera dig att %s har publicerat kalendern \"%s«\"", + "Open »%s«" : "Öppna \"%s\"", "Cheers!" : "Ha de fint!", "Upcoming events" : "Kommande händelser", + "No more events today" : "Inga fler händelser idag", + "No upcoming events" : "Inga kommande händelser", + "More events" : "Fler händelser", + "%1$s with %2$s" : "%1$s med %2$s", + "Calendar" : "Kalender", + "New booking {booking}" : "Ny bokning {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) bokade mötet \"{config_display_name}\" den {date_time}.", "Appointments" : "Möten", "Schedule appointment \"%s\"" : "Schemalägg möte ”%s”", "Schedule an appointment" : "Schemalägg ett möte", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "Förberedelse inför %s", "Follow up for %s" : "Uppföljning av %s", + "Your appointment \"%s\" with %s needs confirmation" : "Ditt möte \"%s\" med %s behöver bekräftas", + "Dear %s, please confirm your booking" : "Kära %s, vänligen bekräfta din bokning", "Confirm" : "Bekräfta", - "Appointment:" : "Möte:", + "Appointment with:" : "Möte med:", + "Description:" : "Beskrivning:", + "This confirmation link expires in %s hours." : "Bekräftelselänken slutar gälla om %s timmar.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Vänligen kontakta arrangören om du skulle vilja avboka mötet efter bekräftelse, genom att svara på denna e-post eller genom att besöka deras profil.", + "Your appointment \"%s\" with %s has been accepted" : "Ditt möte \"%s\" med %s har accepterats", + "Dear %s, your booking has been accepted." : "%s, din bokning har accepterats.", + "Appointment for:" : "Möte för:", "Date:" : "Datum:", + "You will receive a link with the confirmation email" : "Du kommer att få en länk med bekräftelsemailet", "Where:" : "Plats:", - "Description:" : "Beskrivning:", - "Calendar" : "Kalender", + "Comment:" : "Kommentar:", + "You have a new appointment booking \"%s\" from %s" : "Du har en ny mötesbokning \"%s\" från %s", + "Dear %s, %s (%s) booked an appointment with you." : "%s, %s (%s) bokade ett möte med dig.", "A Calendar app for Nextcloud" : "En kalender-app för Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Kalendar-appen är ett gränssnitt till Nextclouds CalDAV server. Synkronisera händelser enkelt från diverse enheter till Nextcloud samt redigera dem online.\n\n* 🚀 **Integrerad med andra Nextcloud-appar!** För tillfället Kontakter - fler på väg.\n* 🌐 **WebCal Support!** Vill du se ditt favoritlags matchdagar i din kalender? Inga problem!\n* 🙋 **Deltagare!** Bjud in andra deltagare till dina aktiviteter\n* ⌚️ **Ledig/Upptagen!** Se när andra deltagare har ledig tid\n* ⏰ **Påminnelser!** Få påminnelser för aktiviteter i webbläsaren och på e-mail.\n* 🔍 Sök! Hitta dina event lätt!\n* ☑️ Uppgifter! Se dina uppgifters slutdatum direkt i kalendern\n* 🙈 **Vi uppfinner inte hjulet igen!** Appen är baserad på de fantastiska biblioteken [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) och [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Föregående dag", "Previous week" : "Föregående vecka", + "Previous year" : "Föregående år", "Previous month" : "Föregående månad", "Next day" : "Nästa dag", "Next week" : "Nästa vecka", + "Next year" : "Nästa år", "Next month" : "Nästa månad", - "New event" : "Ny händelse", + "Create new event" : "Skapa ny händelse", + "Event" : "Händelse", "Today" : "Idag", "Day" : "Dag", "Week" : "Vecka", "Month" : "Månad", + "Year" : "År", "List" : "Lista", - "Preview" : "Förhandsvisning", + "Appointment link was copied to clipboard" : "Möteslänken kopierades till urklippet", + "Appointment link could not be copied to clipboard" : "Möteslänk kunde ej kopieras till urklipp", + "Preview" : "Förhandsvisa", "Copy link" : "Kopiera länk", "Edit" : "Redigera", "Delete" : "Ta bort", - "Add new" : "Lägg till ny", - "Untitled calendar" : "Namnlös kalender", - "Edit name" : "Ändra namn", - "Saving name …" : "Sparar namn …", - "Edit color" : "Ändra färg", - "Saving color …" : "Sparar färg …", - "Copy private link" : "Kopiera privat länk", - "Export" : "Exportera", - "Unshare from me" : "Sluta dela från mig", + "Appointment schedules" : "Mötesscheman", + "Create new" : "Skapa ny", + "Disable calendar \"{calendar}\"" : "Inaktivera kalendern \"{calendar}\"", + "Disable untitled calendar" : "Inaktivera ej namngiven kalender", + "Enable calendar \"{calendar}\"" : "Aktivera kalendern \"{calendar}\"", + "Enable untitled calendar" : "Aktivera ej namngiven kalender", "An error occurred, unable to change visibility of the calendar." : "Ett fel inträffade, kunde inte ändra synlighet på kalendern.", - "An error occurred, unable to delete the calendar." : "Ett fel inträffade, kunde inte radera kalendern.", - "Calendar link copied to clipboard." : "Kalenderlänk kopierad till urklipp.", - "Calendar link could not be copied to clipboard." : "Kalenderlänk kunde inte kopieras till urklipp.", - "An error occurred, unable to rename the calendar." : "Ett fel inträffade, kunde inte byta namn på kalendern.", - "An error occurred, unable to change the calendar's color." : "Ett fel inträffade, kunde inte byta färg på kalendern.", + "Untitled calendar" : "Namnlös kalender", + "Shared with you by" : "Delad med dig av", + "Edit and share calendar" : "Redigera och dela kalender", + "Edit calendar" : "Redigera kalender", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Slutar dela kalendern om {countdown} sekund","Slutar dela kalendern om {countdown} sekunder"], - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Slutar dela kalendern om {countdown} sekund","Raderar kalendern {countdown} sekunder"], - "Share link" : "Dela länk", - "Publish calendar" : "Publicera kalender ", - "Publishing calendar" : "Publicerar kalender", - "Copy public link" : "Kopiera publik länk", - "Send link to calendar via email" : "Skicka länk till kalender via e-post", - "Enter one address" : "Mata in en adress", - "Sending email …" : "Skickar e-post …", - "Copy subscription link" : "Kopiera abonnemangslänk", - "Copying link …" : "Kopierar länk …", - "Copied link" : "Kopierad länk", - "Could not copy link" : "Kunde inte kopiera länk", - "Copy embedding code" : "Kopiera inbäddad kod", - "Copying code …" : "Kopierar kod …", - "Copied code" : "Kopierad kod", - "Could not copy code" : "Kunde inte kopiera kod", - "Delete share link" : "Ta bort delad länk", - "Deleting share link …" : "Raderar delad länk …", - "An error occurred, unable to publish calendar." : "Ett fel inträffade, kunde inte publicera kalendern.", - "An error occurred, unable to send email." : "Fel uppstod. Mejlet kunde inte skickas.", - "Embed code copied to clipboard." : "Inbäddad kod kopierad till urklipp.", - "Embed code could not be copied to clipboard." : "Inbäddad kod kunde inte kopieras till urklipp.", - "Unpublishing calendar failed" : "Avpublicering av kalendern misslyckades", - "Share with users or groups" : "Dela med användare eller grupper", - "No users or groups" : "Inga användare eller grupper", - "can edit" : "kan redigera", - "Unshare with {displayName}" : "Sluta dela med {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Fel uppstod. Det gick inte att ta bort kalenderdelningen.", - "An error occurred, unable to change the permission of the share." : "Ett fel inträffade. Det gick inte att ändra behörighet för delningen.", - "+ New calendar" : "+ Ny kalender", + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Raderar kalendern om {countdown} sekund","Raderar kalendern om {countdown} sekunder"], + "An error occurred, unable to create the calendar." : "Ett fel inträffade, kunde inte skapa kalender.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Ange en giltig länk (börjar med http://, https://, webcal://, eller webcals://)", + "Calendars" : "Kalendrar", + "Add new" : "Lägg till ny", "New calendar" : "Ny kalender", + "Name for new calendar" : "Namn på nya kalendern", "Creating calendar …" : "Skapar kalender …", "New calendar with task list" : "Ny kalender med uppgiftslista", "New subscription from link (read-only)" : "Ny prenumeration från länk (skrivskyddad)", - "Creating subscription …" : "Skapar abonnemang …", - "An error occurred, unable to create the calendar." : "Ett fel inträffade, kunde inte skapa kalender.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Ange en giltig länk (startar med http://, https://, webcal://, eller webcals://)", + "Creating subscription …" : "Skapar prenumeration …", + "Add public holiday calendar" : "Lägg till helgdagskalender", + "Add custom public calendar" : "Lägg till anpassad publik kalender", + "Calendar link copied to clipboard." : "Kalenderlänk kopierad till urklipp.", + "Calendar link could not be copied to clipboard." : "Kalenderlänk kunde inte kopieras till urklipp.", + "Copy subscription link" : "Kopiera prenumerationslänk", + "Copying link …" : "Kopierar länk …", + "Copied link" : "Länk kopierad", + "Could not copy link" : "Kunde inte kopiera länk", + "Export" : "Exportera", + "Untitled item" : "Namnlöst objekt", + "Unknown calendar" : "Okänd kalender", + "Could not load deleted calendars and objects" : "Kunde inte ladda borttagna kalendrar och objekt", + "Could not delete calendar or event" : "Det gick inte att ta bort kalender eller händelse", + "Could not restore calendar or event" : "Kunde inte återställa kalender eller händelse", + "Do you really want to empty the trash bin?" : "Vill du verkligen tömma papperskorgen?", + "Empty trash bin" : "Töm papperskorgen", "Trash bin" : "Papperskorg", - "Loading deleted elements." : "Laddar borttagna element.", - "You do not have any deleted elements." : "Du har inga borttagna element.", + "Loading deleted items." : "Laddar borttagna objekt.", + "You do not have any deleted items." : "Du har inga borttagna objekt.", "Name" : "Namn", "Deleted" : "Borttagen", "Restore" : "Återställ", "Delete permanently" : "Ta bort permanent", - "Empty trash bin" : "Töm papperskorgen", - "Untitled element" : "Namnlöst element", - "Unknown calendar" : "Okänd kalender", - "Could not load deleted calendars and objects" : "Kunde inte ladda borttagna kalendrar och objekt", - "Could not restore calendar or event" : "Kunde inte återställa kalender eller händelse", - "Do you really want to empty the trash bin?" : "Vill du verkligen tömma papperskorgen?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Element i papperskorgen tas bort efter {numDays} dag","Element i papperskorgen tas bort efter {numDays} dagar"], + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Objekt i papperskorgen tas bort efter {numDays} dag","Objekt i papperskorgen tas bort efter {numDays} dagar"], "Could not update calendar order." : "Det gick inte att uppdatera kalenderordningen.", + "Shared calendars" : "Delade kalendrar", + "Deck" : "Deck", + "Hidden" : "Gömd", + "Internal link" : "Intern länk", + "A private link that can be used with external clients" : "En privat länk som kan användas med externa klienter", + "Copy internal link" : "Kopiera intern länk", + "An error occurred, unable to publish calendar." : "Ett fel inträffade, kunde inte publicera kalendern.", + "An error occurred, unable to send email." : "Fel uppstod. Mejlet kunde inte skickas.", + "Embed code copied to clipboard." : "Inbäddningskod kopierad till urklipp.", + "Embed code could not be copied to clipboard." : "Inbäddningskod kunde inte kopieras till urklipp.", + "Unpublishing calendar failed" : "Avpublicering av kalendern misslyckades", + "Share link" : "Dela länk", + "Copy public link" : "Kopiera offentlig länk", + "Send link to calendar via email" : "Skicka länk till kalender via e-post", + "Enter one address" : "Mata in en adress", + "Sending email …" : "Skickar e-post …", + "Copy embedding code" : "Kopiera inbäddningskod", + "Copying code …" : "Kopierar kod …", + "Copied code" : "Kod kopierad", + "Could not copy code" : "Kunde inte kopiera kod", + "Delete share link" : "Ta bort delningslänk", + "Deleting share link …" : "Raderar delningslänk …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "Ett fel uppstod när delningen av kalendern skulle tas bort.", + "An error occurred, unable to change the permission of the share." : "Ett fel inträffade. Det gick inte att ändra behörighet för delningen.", + "can edit" : "kan redigera", + "Unshare with {displayName}" : "Sluta dela med {displayName}", + "Share with users or groups" : "Dela med användare eller grupper", + "No users or groups" : "Inga användare eller grupper", + "Failed to save calendar name and color" : "Det gick inte att spara kalendernamn och färg", + "Calendar name …" : "Kalendernamn ...", + "Never show me as busy (set this calendar to transparent)" : "Visa mig aldrig som upptagen (ställ in den här kalendern på transparent)", + "Share calendar" : "Dela kalender", + "Unshare from me" : "Sluta dela från mig", + "Save" : "Spara", "Import calendars" : "Importera kalendrar", "Please select a calendar to import into …" : "Vänligen välj en kalender du vill importera till …", "Filename" : "Filnamn", "Calendar to import into" : "Kalender att importera till", "Cancel" : "Avbryt", "_Import calendar_::_Import calendars_" : ["Importera kalender","Importera kalendrar"], + "Select the default location for attachments" : "Välj standardplats för bilagor", + "Pick" : "Välj", + "Invalid location selected" : "Ogiltig plats vald", + "Attachments folder successfully saved." : "Mapp för bilagor har sparats ", + "Error on saving attachments folder." : "Ett fel uppstod vid ändring av mapp för bilagor", + "Default attachments location" : "Standardplats för bilagor", "{filename} could not be parsed" : "{filename} kunde inte läsas", "No valid files found, aborting import" : "Inga giltiga filer hittades, avbryter import", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Lyckades importera %n händelse","Lyckades importera %n händelser"], "Import partially failed. Imported {accepted} out of {total}." : "Importen misslyckades delvis. Importerade {accepted} av {total}.", "Automatic" : "Automatisk", "Automatic ({detected})" : "Automatisk ({detected})", "New setting was not saved successfully." : "Den nya inställningen kunde inte sparas.", - "Shortcut overview" : "Översikt av genvägar", - "or" : "eller", "Navigation" : "Navigering", "Previous period" : "Föregående period", "Next period" : "Nästa period", @@ -127,24 +171,39 @@ "Day view" : "Översikt dag", "Week view" : "Översikt vecka", "Month view" : "Översikt månad", + "Year view" : "Årsvy", "List view" : "Listvy", "Actions" : "Åtgärder", "Create event" : "Skapa händelse", "Show shortcuts" : "Visa genvägar", + "Editor" : "Redigerare", + "Close editor" : "Stäng redigeraren", + "Save edited event" : "Spara ändrad händelse", + "Delete edited event" : "Radera ändrad händelse", + "Duplicate event" : "Duplicera händelse", + "Shortcut overview" : "Översikt av genvägar", + "or" : "eller", + "Calendar settings" : "Kalenderinställningar", + "At event start" : "Vid händelsens start", + "No reminder" : "Ingen påminnelse", + "Failed to save default calendar" : "Det gick inte att spara standardkalendern", + "CalDAV link copied to clipboard." : "CalDAV-länk kopierad till urklipp.", + "CalDAV link could not be copied to clipboard." : "CalDAV-länk kunde inte kopieras till urklipp.", "Enable birthday calendar" : "Aktivera födelsedagskalender", "Show tasks in calendar" : "Visa uppgifter i kalendern", "Enable simplified editor" : "Aktivera förenklad redigerare", - "Limit visible events per view" : "Begränsa synliga händelser per vy", + "Limit the number of events displayed in the monthly view" : "Begränsa antalet händelser som visas i månadsvyn", "Show weekends" : "Visa helger", "Show week numbers" : "Visa veckonummer", "Time increments" : "Tidsintervall", + "Default calendar for incoming invitations" : "Standardkalender för inkommande inbjudningar", "Default reminder" : "Standardpåminnelse", "Copy primary CalDAV address" : "Kopiera primär CalDAV-adress", "Copy iOS/macOS CalDAV address" : "Kopiera iOS/macOS CalDAV-adress", + "Personal availability settings" : "Dina tillgänglighetsinställningar", "Show keyboard shortcuts" : "Visa tangentbordsgenvägar", - "No reminder" : "Ingen påminnelse", - "CalDAV link copied to clipboard." : "CalDAV-länk kopierad till urklipp.", - "CalDAV link could not be copied to clipboard." : "CalDAV-länk kunde inte kopieras till urklipp.", + "Appointment schedule successfully created" : "Mötesschema skapat", + "Appointment schedule successfully updated" : "Mötesschema uppdaterat", "_{duration} minute_::_{duration} minutes_" : ["{duration} minut","{duration} minuter"], "0 minutes" : "0 minuter", "_{duration} hour_::_{duration} hours_" : ["{duration} timme","{duration} timmar"], @@ -152,12 +211,26 @@ "_{duration} week_::_{duration} weeks_" : ["{duration} vecka","{duration} veckor"], "_{duration} month_::_{duration} months_" : ["{duration} månad","{duration} månader"], "_{duration} year_::_{duration} years_" : ["{duration} år","{duration} år"], + "To configure appointments, add your email address in personal settings." : "För att konfigurera möten, fyll i din e-postadress i dina inställningar.", + "Public – shown on the profile page" : "Offentlig - visas på profilsidan", + "Private – only accessible via secret link" : "Privat - endast tillgänglig via hemlig länk", + "Appointment schedule saved" : "Mötesschema sparat", + "Create appointment schedule" : "Skapa mötesschema", + "Edit appointment schedule" : "Redigera mötesschema", + "Update" : "Uppdatera", + "Appointment name" : "Namn på möte", "Location" : "Plats", + "Create a Talk room" : "Skapa ett rum i Talk", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "En unik länk kommer att genereras för varje bokat möte och skickas via bekräftelsemailet", "Description" : "Beskrivning", "Visibility" : "Synlighet", "Duration" : "Varaktighet", "Increments" : "Tidsintervall", + "Additional calendars to check for conflicts" : "Ytterligare kalendrar att ta hänsyn till", + "Pick time ranges where appointments are allowed" : "Välj tidsintervall där möten är tillåtna", "to" : "till", + "Delete slot" : "Radera lucka", + "No times set" : "Inga tider satta", "Add" : "Lägg till", "Monday" : "Måndag", "Tuesday" : "Tisdag", @@ -166,14 +239,37 @@ "Friday" : "Fredag", "Saturday" : "Lördag", "Sunday" : "Söndag", - "Create appointment" : "Skapa möte", - "Edit appointment" : "Redigera möte", - "Save" : "Spara", - "Update" : "Uppdatera", + "Weekdays" : "Vardagar", + "Add time before and after the event" : "Lägg till tid innan och efter händelsen", + "Before the event" : "Innan händelsen", + "After the event" : "Efter händelsen", + "Planning restrictions" : "Planeringsbegränsningar", + "Minimum time before next available slot" : "Minimumpaus mellan möten", + "Max slots per day" : "Maximalt antal möten per dag", + "Limit how far in the future appointments can be booked" : "Begränsa hur långt fram i tiden möten kan bokas", + "It seems a rate limit has been reached. Please try again later." : "Det verkar som en hastighetsbegränsning har uppnåtts. Försök igen senare.", + "Please confirm your reservation" : "Vänligen bekräfta din reservation", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Vi har skickat dig ett e-postmeddelande med detaljer. Vänligen bekräfta ditt möte med länken som erhålls i meddelandet. Du kan stänga den här sidan nu.", "Your name" : "Ditt namn", "Your email address" : "Din e-postadress", - "Book the appointment" : "Boka mötet", - "Reminder" : "Påminnelse", + "Please share anything that will help prepare for our meeting" : "Vänligen delge eventuella saker som hjälper att förbereda för vårt möte", + "Could not book the appointment. Please try again later or contact the organizer." : "Kunde inte boka mötet. Vänligen försök igen senare eller kontakta arrangören.", + "Back" : "Tillbaka", + "Book appointment" : "Boka möte", + "Error fetching Talk conversations." : "Kunde inte hämta Talk-konversationer.", + "Conversation does not have a valid URL." : "Konversationen har ingen giltig URL.", + "Successfully added Talk conversation link to location." : "Länk till Talk-konversation har lagts till på platsen.", + "Successfully added Talk conversation link to description." : "Länk till Talk-konversation har lagts till i beskrivningen.", + "Failed to apply Talk room." : "Kunde inte tillämpa rum i Talk.", + "Error creating Talk conversation" : "Kunde inte skapa Talk-konversation", + "Select a Talk Room" : "Välj ett rum i Talk", + "Add Talk conversation" : "Lägg till Talk-konversation", + "Fetching Talk rooms…" : "Hämtar Talk-rum...", + "No Talk room available" : "Inget Talk-rum tillgängligt", + "Create a new conversation" : "Skapa en ny konversation", + "Select conversation" : "Välj konversation", + "on" : "den", + "at" : "kl", "before at" : "innan", "Notification" : "Notifiering", "Email" : "E-post", @@ -184,98 +280,147 @@ "Edit time" : "Ändra tid", "Save time" : "Lagra tid", "Remove reminder" : "Ta bort påminnelse", - "on" : "på", - "at" : "kl", - "+ Add reminder" : "+Lägg till påminnelse", "Add reminder" : "Lägg till påminnelse", - "_second_::_seconds_" : ["sekund","sekunder"], - "_minute_::_minutes_" : ["minut","minuter"], - "_hour_::_hours_" : ["timme","timmar"], - "_day_::_days_" : ["dag","dagar"], - "_week_::_weeks_" : ["vecka","veckor"], + "seconds" : "sekunder", + "minutes" : "minuter", + "hours" : "timmar", + "days" : "dagar", + "weeks" : "veckor", + "Choose a file to add as attachment" : "Välj en fil att lägga till som bilaga", + "Choose a file to share as a link" : "Välj en fil att dela som länk", + "Attachment {name} already exist!" : "Bilagan {name} finns redan!", + "Could not upload attachment(s)" : "Kunde inte ladda upp bilagor", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Du håller på att ladda ner en fil. Kontrollera filnamnet innan du öppnar den. Är du säker på att du vill fortsätta?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Du är på väg att navigera till {host}. Är du säker på att du vill fortsätta? Länk: {link}", + "Proceed" : "Fortsätt", + "No attachments" : "Inga bilagor", + "Add from Files" : "Lägg till från Filer", + "Upload from device" : "Ladda upp från enheten", + "Delete file" : "Ta bort fil", + "Confirmation" : "Bekräftelse", + "_{count} attachment_::_{count} attachments_" : ["{count} bilaga","{count} bilagor"], + "Suggested" : "Föreslagen", "Available" : "Tillgänglig", + "Invitation accepted" : "Inbjudan accepterad", + "Accepted {organizerName}'s invitation" : "Accepterade inbjudan från {organizerName}", + "Participation marked as tentative" : "Deltagande markerat som preliminärt", + "Invitation is delegated" : "Inbjudan är delegerad", "Not available" : "Inte tillgänglig", - "Availability of attendees, resources and rooms" : "Deltagares tillgänglighet, resurser och lokaler", + "Invitation declined" : "Inbjudan avböjd", + "Declined {organizerName}'s invitation" : "Avböjde inbjudan från {organizerName}", + "Availability will be checked" : "Tillgänglighet kommer att kontrolleras", + "Invitation will be sent" : "Inbjudan kommer att skickas", + "Failed to check availability" : "Det gick inte att kontrollera tillgänglighet", + "Failed to deliver invitation" : "Det gick inte att leverera inbjudan", + "Awaiting response" : "Väntar på svar", + "Checking availability" : "Kontrollerar tillgänglighet", + "Has not responded to {organizerName}'s invitation yet" : "Har ej svarat på inbjudan från {organizerName} än", + "Suggested times" : "Föreslagna tider", + "chairperson" : "ordförande", + "required participant" : "obligatorisk deltagare", + "non-participant" : "icke-deltagare", + "optional participant" : "valfri deltagare", "{organizer} (organizer)" : "{organizer} (arrangör)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Tillgänglighet för deltagare, resurser och lokaler", + "Suggestion accepted" : "Förslaget accepterat", + "Previous date" : "Föregående datum", + "Next date" : "Nästa datum", + "Legend" : "Etikett", + "Out of office" : "Ej på plats", + "Attendees:" : "Deltagare:", + "Done" : "Klar", + "Search room" : "Sök rum", + "Room name" : "Rumsnamn", + "Check room availability" : "Kontrollera rums tillgänglighet", "Free" : "Ledig", "Busy (tentative)" : "Upptagen (preliminär)", "Busy" : "Upptagen", - "Out of office" : "Ej på plats", "Unknown" : "Okänd", + "Find a time" : "Hitta en tid", + "The invitation has been accepted successfully." : "Inbjudan har accepterats", + "Failed to accept the invitation." : "Misslyckades med att acceptera inbjudan.", + "The invitation has been declined successfully." : "Inbjudan avböjdes.", + "Failed to decline the invitation." : "Misslyckades med att tacka nej till inbjudan.", + "Your participation has been marked as tentative." : "Ditt deltagande har markerats som preliminärt.", + "Failed to set the participation status to tentative." : "Misslyckades med att ange deltagande som preliminärt.", "Accept" : "Acceptera", "Decline" : "Avböj", "Tentative" : "Preliminärt", - "Create Talk room for this event" : "Skapa ett rum i Talk för denna händelse", - "Show busy times" : "Visa upptagna tider", - "No attendees yet" : "Inga deltagare ännu", + "No attendees yet" : "Inga deltagare än", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} inbjudna, {confirmedCount} bekräftade", + "Please add at least one attendee to use the \"Find a time\" feature." : "Lägg till minst en deltagare för att använda funktionen “Hitta en tid”.", + "Successfully appended link to talk room to location." : "Länk till rum i Talk tillagd i plats.", "Successfully appended link to talk room to description." : "Länk till rum i Talk tillagd i beskrivningen.", "Error creating Talk room" : "Kunde inte skapa rum i Talk", - "Send email" : "Skicka e-post", + "Attendees" : "Deltagare", + "_%n more guest_::_%n more guests_" : ["%n gäst till","%n gäster till"], + "Remove group" : "Ta bort grupp", + "Remove attendee" : "Ta bort deltagaren", + "Request reply" : "Begär svar", "Chairperson" : "Ordförande", "Required participant" : "Obligatorisk deltagare", - "Optional participant" : "Valfri deltagare", + "Optional participant" : "Frivillig deltagare", "Non-participant" : "Icke-deltagare", - "Remove attendee" : "Ta bort deltagaren", - "Search for emails, users or contacts" : "Sök efter e-postadresser, användare eller kontakter", + "_%n member_::_%n members_" : ["%n medlem","%n medlemmar"], + "Search for emails, users, contacts, contact groups or teams" : "Sök efter e-post, användare, kontakter, kontaktgrupper eller team", "No match found" : "Ingen träff", + "Note that members of circles get invited but are not synced yet." : "Observera att medlemmar i cirklar blir inbjudna men är inte synkroniserade än.", + "Note that members of contact groups get invited but are not synced yet." : "Observera att medlemmar i kontaktgrupper blir inbjudna men är inte synkroniserade än.", "(organizer)" : "(arrangör)", - "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "För att kunna skicka inbjudningar och hantera svar måste du [linkopen]lägga till din e-mailadress i inställningarna[linkclose].", + "Make {label} the organizer" : "Gör {label} till arrangör", + "Make {label} the organizer and attend" : "Gör {label} arrangör och delta", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "För att kunna skicka inbjudningar och hantera svar måste du [linkopen]lägga till din e-postadress i inställningarna[linkclose].", "Remove color" : "Ta bort färg", "Event title" : "Händelsens titel", - "All day" : "Heldag", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Kan inte ändra inställning för heldag när händelsen är återkommande.", - "from {startDate}" : "från {startDate}", - "from {startDate} at {startTime}" : "från {startDate} kl {startTime}", - "to {endDate}" : "till {endDate}", - "to {endDate} at {endTime}" : "till {endDate} kl {endTime}", + "From" : "Från", + "To" : "Till", "Repeat" : "Upprepa", - "End repeat" : "Sluta upprepa", - "Select to end repeat" : "Välj för att avsluta upprepning", + "Repeat event" : "Upprepa händelse", + "_time_::_times_" : ["gång","gånger"], "never" : "aldrig", "on date" : "på datum", "after" : "efter", - "_time_::_times_" : ["gång","gånger"], + "End repeat" : "Sluta upprepa", + "Select to end repeat" : "Välj för att avsluta upprepning", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Den här händelsen är återkommande undantag för en upprepning. Du kan inte lägga till en regel för den.", "first" : "första", - "third" : "tredje", - "fourth" : "fjärde", - "fifth" : "femte", - "second to last" : "näst sist", - "last" : "sist", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Ändringar av återkommande regel gäller endast för denna och alla framtida händelser.", "Repeat every" : "Upprepa varje", "By day of the month" : "Efter dag i månaden", "On the" : "På den", + "_day_::_days_" : ["dag","dagar"], + "_week_::_weeks_" : ["vecka","veckor"], "_month_::_months_" : ["månad","månader"], "_year_::_years_" : ["år","år"], + "On specific day" : "På specifik dag", "weekday" : "veckodag", "weekend day" : "helgdag", - "No recurrence" : "Ingen upprepning", + "Does not repeat" : "Upprepar inte", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Återkommande definition av denna händelse stöds inte helt av Nextcloud. Om du redigerar återfallsalternativen kan vissa återfall försvinna.", - "Suggestions" : "Rekommendationer", "No rooms or resources yet" : "Inga rum eller resurser än", + "Resources" : "Resurser", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} plats","{seatingCapacity} platser"], "Add resource" : "Lägg till resurs", "Has a projector" : "Projektor finns", "Has a whiteboard" : "Whiteboard finns", "Wheelchair accessible" : "Tillgänglig i rullstol", "Remove resource" : "Ta bort resurs", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} plats","{seatingCapacity} platser"], - "Projector" : "Projektor", - "Whiteboard" : "Whiteboard", "Search for resources or rooms" : "Sök efter resurser eller rum", "available" : "tillgänglig", "unavailable" : "ej tillgänglig", + "Show all rooms" : "Visa alla rum", + "Projector" : "Projektor", + "Whiteboard" : "Whiteboard", "Room type" : "Rumtyp", "Any" : "Alla", "Minimum seating capacity" : "Minsta antal platser", - "More" : "Mer", - "Update this occurrence" : "Uppdatera denna förekomst", + "More details" : "Fler detaljer", "Update this and all future" : "Uppdatera denna och alla kommande", + "Update this occurrence" : "Uppdatera denna förekomst", "Public calendar does not exist" : "Publik kalender finns inte", "Maybe the share was deleted or has expired?" : "Kanske har delningen tagits bort eller har gått ut?", - "Please select a time zone:" : "Välj en tidszon:", - "Pick a time" : "Välj en tidpunkt", - "Pick a date" : "Välj ett datum", "from {formattedDate}" : "från {formattedDate}", "to {formattedDate}" : "till {formattedDate}", "on {formattedDate}" : "på {formattedDate}", @@ -285,31 +430,62 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} kl {formattedTime}", "Please enter a valid date" : "Ange ett giltigt datum", "Please enter a valid date and time" : "Ange giltigt datum och tid", + "Select a time zone" : "Välj en tidszon", + "Please select a time zone:" : "Välj en tidszon:", + "Pick a time" : "Välj en tidpunkt", + "Pick a date" : "Välj ett datum", "Type to search time zone" : "Skriv för att söka tidszon", "Global" : "Global", - "Select date" : "Välj datum", + "Holidays in {region}" : "Helgdagar i {region}", + "An error occurred, unable to read public calendars." : "Ett fel inträffade, kan inte läsa publika kalendrar.", + "An error occurred, unable to subscribe to calendar." : "Ett fel inträffade, det går inte att prenumerera på kalendern.", + "Public holiday calendars" : "Helgdagskalendrar", + "Public calendars" : "Publika kalendrar", + "No valid public calendars configured" : "Inga giltiga publika kalendrar konfigurerade", + "Speak to the server administrator to resolve this issue." : "Kontakta serveradministratören för att lösa detta problem.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Helgdagskalendrar tillhandahålls av Thunderbird. Kalenderdata kommer att laddas ner från {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Dessa publika kalendrar föreslås av serveradministratören. Kalenderdata kommer att hämtas från respektive webbplats.", + "By {authors}" : "Av {authors}", + "Subscribed" : "Prenumeration aktiverad", + "Subscribe" : "Prenumerera", + "Could not fetch slots" : "Det gick inte att hämta platser", + "Select a date" : "Välj ett datum", + "Select slot" : "Välj tid", + "No slots available" : "Inga tider tillgängliga", + "The slot for your appointment has been confirmed" : "Tiden för ditt möte har bekräftats", + "Appointment Details:" : "Mötesdetaljer:", "Time:" : "Tid:", "Booked for:" : "Bokad för:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Tack så mycket! Din bokning från {startDate} till {endDate} har bekräftats.", + "Book another appointment:" : "Boka ytterligare möte:", + "See all available slots" : "Se alla tillgängliga tider", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Tiden för ditt möte från {startDate} till {endDate} är inte tillgänglig längre.", + "Please book a different slot:" : "Vänligen boka en annan tid:", + "Book an appointment with {name}" : "Boka ett möte med {name}", + "No public appointments found for {name}" : "Inga offentliga möten hittades för {name}", "Personal" : "Privat", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Den automatiska tidszon-detekteringen fastställde din tidszon till UTC.\nDetta är troligtvis resultatet av säkerhetsinställningar i din webbläsare.\nVänligen ställ in din tidszon manuellt i kalenderinställningarna.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Din tidszon ({timezoneId}) hittades inte. Återgår till UTC.\nVänligen ändra din tidszon i inställningarna och rapportera detta problem.", - "No more events today" : "Inga fler händelser idag", - "No upcoming events" : "Inga kommande händelser", - "Create a new event" : "Skapa en ny händelse", - "[Today]" : "[Idag]", - "[Tomorrow]" : "[Imorgon]", - "[Yesterday]" : "[Igår]", - "[Last] dddd" : "[Sista] dddd", + "Availability of {displayName}" : "Tillgänglighet för {displayName}", + "Edit event" : "Redigera händelse", "Event does not exist" : "Händelsen existerar inte", + "Duplicate" : "Duplicera", "Delete this occurrence" : "Ta bort denna förekomst", "Delete this and all future" : "Ta bort denna och alla kommande", - "Details" : "Detaljer", - "Attendees" : "Deltagare", - "Resources" : "Resurser", + "All day" : "Heldag", + "Modifications wont get propagated to the organizer and other attendees" : "Ändringar kommer inte att skickas till organisatören eller andra deltagare", + "Managing shared access" : "Hantering av delad åtkomst", + "Deny access" : "Neka åtkomst", + "Invite" : "Bjud in", + "_User requires access to your file_::_Users require access to your file_" : ["En användare behöver tillgång till din fil","Användare behöver tillgång till din fil"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Bilaga i behov av delat åtkomst","Bilagor i behov av delad åtkomst"], + "Untitled event" : "Namnlös händelse", "Close" : "Stäng", - "Show more details" : "Visa mer information", + "Modifications will not get propagated to the organizer and other attendees" : "Ändringar kommer inte att skickas till organisatören eller andra deltagare", "Subscribe to {name}" : "Prenumerera på {name}", - "Anniversary" : "Födelsedag", + "Export {name}" : "Exportera {name}", + "Show availability" : "Visa tillgänglighet", + "Anniversary" : "Jubileum", "Appointment" : "Bokning", "Business" : "Företag", "Education" : "Utbildning", @@ -336,7 +512,6 @@ "on {time}" : "klockan {time}", "on {time} ({timezoneId})" : "klockan {time} ({timezoneId})", "Week {number} of {year}" : "Vecka {number} år {year}", - "Does not repeat" : "Upprepar inte", "Daily" : "Varje dag", "Weekly" : "Varje vecka", "Monthly" : "Varje månad", @@ -348,24 +523,30 @@ "_on {weekday}_::_on {weekdays}_" : ["på {weekday}","på {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["på dag {dayOfMonthList}","på dagar {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "på den {ordinalNumber} {byDaySet}", - "in {monthNames}" : "i {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "i {monthNames} på den {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "i {monthNames} på den {ordinalNumber} {byDaySet}", "until {untilDate}" : "till {untilDate}", "_%n time_::_%n times_" : ["%n gång","%n gånger"], - "Untitled event" : "Namnlös händelse", + "second" : "sekund", + "third" : "tredje", + "fourth" : "fjärde", + "fifth" : "femte", + "second to last" : "näst sist", + "last" : "sist", "Untitled task" : "Namnlös uppgift", "Please ask your administrator to enable the Tasks App." : "Be din administratör aktivera Tasks-appen.", - "Prev" : "Föregående", - "Next" : "Nästa", - "Prev year" : "Föreg. år", - "Next year" : "Nästa år", - "Year" : "År", + "You are not allowed to edit this event as an attendee." : "Du har inte behörighet att redigera denna händelse som deltagare.", "W" : "v", "%n more" : " %n till", "No events to display" : "Inga händelser att visa", + "All participants declined" : "Alla deltagare avböjde", + "Please confirm your participation" : "Vänligen bekräfta ditt deltagande", + "You declined this event" : "Du avböjde denna händelse", + "Your participation is tentative" : "Ditt deltagande är preliminärt", "_+%n more_::_+%n more_" : ["och %n till","och %n till"], "No events" : "Inga händelser", "Create a new event or change the visible time-range" : "Skapa ny händelse eller ändra det synliga tidspannet", + "Failed to save event" : "Kunde inte spara händelse", "It might have been deleted, or there was a typo in a link" : "Den kan ha raderats eller så var länken felaktig", "It might have been deleted, or there was a typo in the link" : "Den kan ha raderats eller så var länken felaktig", "Meeting room" : "Mötesrum", @@ -378,7 +559,7 @@ "When shared hide this event" : "Om delad, dölj denna händelse", "The visibility of this event in shared calendars." : "Synligheten för denna händelse i delade kalendrar.", "Add a location" : "Lägg till en plats", - "Add a description" : "Lägg till en beskrivning", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Lägg till en beskrivning\n\n- Vad handlar mötet om\n- Punkter på dagordningen\n- Något som deltagare behöver förbereda", "Status" : "Status", "Confirmed" : "Bekräftad", "Canceled" : "Avbruten", @@ -391,135 +572,26 @@ "Add this as a new category" : "Lägg till som en ny kategori", "Custom color" : "Anpassad färg", "Special color of this event. Overrides the calendar-color." : "Anpassad färg på denna händelse. Åsidosätter kalenderfärgen.", - "Chat room for event" : "Mötesrum för event", + "Error while sharing file" : "Fel vid delning av fil", + "Error while sharing file with user" : "Ett fel uppstod vid delning av fil med användare", + "Error creating a folder {folder}" : "Det gick inte att skapa mappen {folder}", + "Attachment {fileName} already exists!" : "Bilagan {fileName} finns redan!", + "Attachment {fileName} added!" : "Bilaga {fileName} tillagd!", + "An error occurred during uploading file {fileName}" : "Ett fel uppstod vid uppladdning av filen {fileName}", + "An error occurred during getting file information" : "Ett fel uppstod vid hämtning av filinformation", + "Talk conversation for event" : "Talk-konversation för händelse", + "An error occurred, unable to delete the calendar." : "Ett fel inträffade, kunde inte radera kalendern.", "Imported {filename}" : "Importerad {filename}", - "Meditation" : "Meditation", - "Relaxing" : "Relaxa", - "Relax" : "Relax", - "Break" : "Paus", - "Commute" : "Pendla", - "Commuting" : "Pendlar", - "Shuttle" : "Pendel", - "Invoice" : "Faktura", - "Finance" : "Finans", - "Bank" : "Bank", - "Money" : "Pengar", - "Wedding" : "Bröllop", - "Dog" : "Hund", - "Concert" : "Konsert", - "Festival" : "Festival", - "Theater" : "Teater", - "Theatre" : "Teater", - "Presentation" : "Presentation", - "Talk" : "Samtal", - "Speech" : "Föredrag", - "Deadline" : "Deadline", - "Submission" : "Inlämning", - "Reporting" : "Rapport", - "Camping" : "Camping", - "Camp" : "Camp", - "Election" : "Val", - "Voting" : "Röstning", - "Vote" : "Rösta", - "Barbecue" : "Grillning", - "Barbeque" : "Grillning", - "Garden" : "Trädgård", - "Farm" : "Gård", - "Movie" : "Film", - "Cinema" : "Bio", - "Graduation" : "Examen", - "Brainstorm" : "Brainstorm", - "Review" : "Granska", - "Audit" : "Granskning", - "Inspection" : "Inspektion", - "Proofreading" : "Korrektur", - "Baseball" : "Baseball", - "Meet" : "Möte", - "Planning" : "Planering", - "Pointing" : "Peka", - "Retrospective" : "Återkoppling", - "Office" : "Kontor", - "Contributor week" : "Bidragarvecka", - "Mail" : "E-post", - "Soccer" : "Fotboll", - "Football" : "Fotboll", - "Gaming" : "Gaming", - "Drive" : "Biltur", - "Driving" : "Körning", - "Bicycle" : "Cykel", - "Cycle" : "Cykling", - "Cycling" : "Cykling", - "Biking" : "Cykling", - "Bike" : "Cykel", - "Podcast" : "Podcast", - "Basketball" : "Basketboll", - "Fishing" : "Fiske", - "Hiking" : "Vandring", - "Hike" : "Vandra", - "Art" : "Konst", - "Exhibition" : "Utställning", - "Museum" : "Museum", - "Pilates" : "Pilates", - "Park" : "Park", - "Walk" : "Promenad", - "Studying" : "Studerar", - "Doctor" : "Läkare", - "Health" : "Hälsa", - "Dentist" : "Tandläkare", - "Hospital" : "Sjukhus", - "Interview" : "Intervju", - "Training" : "Träning", - "Practice" : "Träning", - "Sports" : "Sport", - "Exercise" : "Träning", - "Work out" : "Work out", - "Working out" : "Working out", - "Gym" : "Gym", - "Barber" : "Frisör", - "Haircut" : "Frisyr", - "Hairdresser" : "Frisör", - "Exam" : "Prov", - "Written test" : "Skriftligt prov", - "Oral test" : "Muntligt prov", - "Working" : "Arbete", - "New Years Eve" : "Nyårsafton", - "NYE" : "Nyårsafton", - "Fireworks" : "Fyrverkerier", - "Running" : "Löpning", - "Go for a run" : "Löprunda", - "Marathon" : "Marathon", - "Video-conference" : "Videokonferens", - "Conference-call" : "Konferenssamtal", - "Video-call" : "Video-samtal", - "Video-chat" : "Video-chat", - "Video-meeting" : "Video-möte", - "Call" : "Samtal", - "Calling" : "Ringer", - "Christmas" : "Jul", - "Conference" : "Konferens", - "Pizza" : "Pizza", - "Travelling" : "Reser", - "Trip" : "Resa", - "Journey" : "Resa", - "Collaborate" : "Samarbete", - "Pair" : "Par", - "Lecture" : "Föreläsning", - "Seminar" : "Seminarium", - "Teaching" : "Undervisa", - "Photograph" : "Fotograf", - "Party" : "Fest", - "Celebration" : "Firande", - "Celebrate" : "Fira", - "Birthday" : "Födelsedag", - "Shopping" : "Shopping", - "Groceries" : "Mat", - "Skate" : "Skate", - "Skateboard" : "Skateboard", - "Wine tasting" : "Vinprovning", - "Golf" : "Golf", - "Dinner" : "Middag", - "Lunch" : "Lunch", + "This is an event reminder." : "Detta är en händelsepåminnelse.", + "Error while parsing a PROPFIND error" : "Fel vid analys av ett PROPFIND-fel", "Appointment not found" : "Mötet hittades inte", - "User not found" : "Användaren hittades inte" + "User not found" : "Användaren hittades inte", + "Reminder" : "Påminnelse", + "+ Add reminder" : "+ Lägg till påminnelse", + "Select automatic slot" : "Välj automatisk lucka", + "with" : "med", + "Available times:" : "Tillgängliga tider:", + "Suggestions" : "Rekommendationer", + "Details" : "Detaljer" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/sw.js b/l10n/sw.js new file mode 100644 index 0000000000000000000000000000000000000000..71c365feced03acff8cf83caa438e9e1bcfc406d --- /dev/null +++ b/l10n/sw.js @@ -0,0 +1,600 @@ +OC.L10N.register( + "calendar", + { + "Provided email-address is too long" : "Anuani ya barua pepe iliyotolewa ni ndefu sana", + "User-Session unexpectedly expired" : "Kipindi cha mtumiaji kiliisha muda wake bila kutarajiwa", + "Provided email-address is not valid" : "Anuani ya barua pepe iliyotolewa si halali", + "%s has published the calendar »%s«" : "%s wamechapisha kalenda>>\n1%s <<", + "Unexpected error sending email. Please contact your administrator." : "Makosa ya utumaji wa barua pepe yasiyotarajiwa\nTafadhali wasiliana na msimamizi/mtawala", + "Successfully sent email to %1$s" : "Barua pepe iliyotumwa imefanikiwa kwa 1%1$s", + "Hello," : "Hallo,", + "We wanted to inform you that %s has published the calendar »%s«." : "Tulitaka kukujulisha kwamba %s\nwamechapisha kalenda >> %s <<.", + "Open »%s«" : "Fungua >> %s <<", + "Cheers!" : "Hongera!", + "Upcoming events" : "Matukio yajayo", + "No more events today" : "Hakuna matukio zaidi leo", + "No upcoming events" : "Hakuna matukio yajayo", + "More events" : "Matukio zaidi", + "%1$s with %2$s" : "%1$s kwa %2$s", + "Calendar" : "Kalenda", + "New booking {booking}" : "Nafasi mpya iliyoshikwa {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name}{email} muadi ulioshikwa' {config_display_name} katika {date_time}", + "Appointments" : "Miadi", + "Schedule appointment \"%s\"" : "Panga muadi \"%s\"", + "Schedule an appointment" : "Panga muadi", + "%1$s - %2$s" : "%1$s-%2$s", + "Prepare for %s" : "Jiandae kwa %s", + "Follow up for %s" : "Fuatilia kwa %s", + "Your appointment \"%s\" with %s needs confirmation" : "Muadi wako %sna %s unahitaji uthibitisho", + "Dear %s, please confirm your booking" : "Ndugu %s, tafadhali thibitisha nafasi yako iliyoshikwa", + "Confirm" : "Thibitisha", + "Appointment with:" : "Muadi na:", + "Description:" : "Maelezo", + "This confirmation link expires in %s hours." : "Uthibitisho huu unaunganisha iliyoisha muda %s masaa", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Kama unatamani kughairi muadi baada ya yote, tafadhali wasiliana na mratibu wako kwa kujibu barua pepe hii au kwa kutembelea wasifu wa kurasa zao.", + "Your appointment \"%s\" with %s has been accepted" : "Muadi wako\"%s\" na %s umekubaliwa", + "Dear %s, your booking has been accepted." : "Ndugu %s, nafasi yako uliyoshika imekubaliwa", + "Appointment for:" : "Muadi kwa:", + "Date:" : "Tarehe:", + "You will receive a link with the confirmation email" : "Utapokea kiungio na uthibitisho wa barua pepe", + "Where:" : "Wapi:", + "Comment:" : "Maoni", + "You have a new appointment booking \"%s\" from %s" : "Una muadi mpya wa nafasi uliyoshika\" %s tangu %s", + "Dear %s, %s (%s) booked an appointment with you." : "Ndugu %s, %s (%s ) walishika nafasi ya muadi na wewe.", + "A Calendar app for Nextcloud" : "app ya kalenda kwa Nextcloud", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "App ya Kalenda ya Nextcloud. Sawazisha matukio kutoka kwa vifaa mbalimbali kwa urahisi na Nextcloud yako na uyahariri mtandaoni.\n\n* 🚀 **Muunganisho na programu zingine za Nextcloud!** Kama vile Anwani, Maongezi, Majukumu, Staha na Miduara\n* 🌐 **Usaidizi wa Wavuti!** Je, ungependa kuona siku za mechi za timu unayopenda kwenye kalenda yako? Hakuna tatizo!\n* 🙋 **Waliohudhuria!** Alika watu kwenye matukio yako\n* ⌚ **Bila/Bure!** Angalia wakati waliohudhuria wanapatikana ili kukutana\n* ⏰ **Vikumbusho!** Pata kengele za matukio ndani ya kivinjari chako na kupitia barua pepe\n* 🔍 **Tafuta!** Pata matukio yako kwa urahisi\n* ☑️ **Kazi!** Angalia kazi au Kadi za Staha zilizo na tarehe ya kukamilisha moja kwa moja kwenye kalenda\n* 🔈 **Vyumba vya maongezi!** Unda chumba cha Maongezi husika unapohifadhi mkutano kwa mbofyo mmoja tu\n* 📆 **Kuhifadhi miadi** Tumia watu kiungo ili waweze kuweka miadi nawe [kwa kutumia programu hii](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Viambatisho!** Ongeza, pakia na tazama viambatisho vya tukio\n* 🙈 **Hatubuni tena gurudumu!** Kulingana na [c-dav maktaba] kuu (https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) na [fullcalendar] (https://github.com/fullcalendar/fullcalendar) maktaba. ", + "Previous day" : "Siku iliyopita", + "Previous week" : "Wiki iliyopita", + "Previous year" : "Mwaka uliopita", + "Previous month" : "Mwezi uliopita", + "Next day" : "Siku inayofuata", + "Next week" : "Wiki ijayo", + "Next year" : "Mwaka ujao", + "Next month" : "Mwezi ujao", + "Create new event" : "Tengeneza tukio jipya", + "Event" : "Tukio", + "Today" : "Leo", + "Day" : "Siku", + "Week" : "Wiki", + "Month" : "Mwezi", + "Year" : "Mwaka", + "List" : "Orodha", + "Appointment link was copied to clipboard" : "Kiungio cha muadi kilinakiliwa kwenye clipboard", + "Appointment link could not be copied to clipboard" : "Kiungio cha muadi hakikuweza kunakiliwa kwenye clipboard", + "Preview" : "Mwonekano wa awali", + "Copy link" : "Nakili kiungio", + "Edit" : "Hariri", + "Delete" : "Futa", + "Appointment schedules" : "Ratiba za miadi", + "Create new" : "Tengeneza mpya", + "Disable calendar \"{calendar}\"" : "Fifisha kalenda{calendar}", + "Disable untitled calendar" : "Fifisha kalenda isiyo na jina", + "Enable calendar \"{calendar}\"" : "Wezesha kalenda{calendar}", + "Enable untitled calendar" : "Wezesha kalenda isiyo na jina", + "An error occurred, unable to change visibility of the calendar." : "Makosa yametokea, fifisha kubadili mwonekano wa kalenda", + "Untitled calendar" : "Kalenda isiyo na jina", + "Shared with you by" : "Imeshirikishwa na wewe na", + "Edit and share calendar" : "Hariri na shirikisha kalenda", + "Edit calendar" : "Hariri kalenda", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Unsharing the calendar in {countdown} second","Kutoshirikisha kalenda katika{countdown} kwa sekunde"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Deleting the calendar in {countdown} second","Kufuta kalenda katika {countdown} kwa sekunde"], + "An error occurred, unable to create the calendar." : "Kosa limetokea, fifisha kutengeneza kalenda", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Tafadhali ingiza kiungio halisi (anza na http://, https://, webcal://, or webcals://)", + "Calendars" : "Kalenda", + "Add new" : "Ongeza mpya", + "New calendar" : "Kalenda mpya", + "Name for new calendar" : "Jina la kalenda", + "Creating calendar …" : "Kutengeneza kalenda", + "New calendar with task list" : "Kalenda mpya na orodha ya kazi", + "New subscription from link (read-only)" : "Usajili mpya kutoka katika kiungo (soma-tu)", + "Creating subscription …" : "Tengeneza usajili", + "Add public holiday calendar" : "Ongeza kalenda ya likizo ya umma", + "Add custom public calendar" : "Ongeza kalenda ya wateja wa umma", + "Calendar link copied to clipboard." : "Kiungo cha kalenda kimenakiliwa kwenye clipboard.", + "Calendar link could not be copied to clipboard." : "Kiungo cha kalenda hakikuweza kunakiliwa kwenye clipboard", + "Copy subscription link" : "Nakili kiungio cha usajili", + "Copying link …" : "Nakili kiungio", + "Copied link" : "Kiungio kilichonakiliwa", + "Could not copy link" : "Isingeweza kunakili kiungio", + "Export" : "Agiza", + "Untitled item" : "Kipengele kisichotajwa", + "Unknown calendar" : "Kalenda isiyojulikana", + "Could not load deleted calendars and objects" : "Haikuwaza kupakia kalenda na vitu vilivyofutwa", + "Could not delete calendar or event" : "Haikuweza kufuta kalenda au matukio", + "Could not restore calendar or event" : "Haikuweza kuhifadhi upya kalenda au matukio", + "Do you really want to empty the trash bin?" : "Je, unataka kuweka tupu chombo cha takataka?", + "Empty trash bin" : "Weka tupu chombo cha takataka", + "Trash bin" : "Chombo cha takataka", + "Loading deleted items." : "Inapakia vitu vilivyofutwa", + "You do not have any deleted items." : "Huna vitu vyovyote vilivyofutwa", + "Name" : "Jina", + "Deleted" : "Vilivyofutwa", + "Restore" : "Hifadhi upya", + "Delete permanently" : "Futa moja kwa moja", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Items in the trash bin are deleted after {numDays} day","Vipengee vilivyo kwenye pipa la uchafu hufutwa baada ya siku {numDays}"], + "Could not update calendar order." : "Haikuweza kusasisha mtiririko wa kalenda", + "Shared calendars" : "Kalenda zilizoshirikishwa", + "Deck" : "Deki", + "Hidden" : "Iliyofichwa", + "Internal link" : "Kiungo cha ndani", + "A private link that can be used with external clients" : "Kiungo cha binafsi ambacho kinaweza kutumiwa na wateja wa nje", + "Copy internal link" : "Nakili kiungo cha ndani", + "An error occurred, unable to publish calendar." : "Kosa limetokea, haiwezeshi kuchapisha kalenda", + "An error occurred, unable to send email." : "Kosa limetokea, haiwezeshi kutuma barua pepe", + "Embed code copied to clipboard." : "Pachika code iliyonakiliwa kwenye clipboard", + "Embed code could not be copied to clipboard." : "Code iliyopachikwa haikuweza kunakiliwa kwenye clipboard", + "Unpublishing calendar failed" : "Imeshindwa kubatilisha uchapishaji wa kalenda", + "Share link" : "Shirikisha kiungo", + "Copy public link" : "Nakili kiungo cha umma", + "Send link to calendar via email" : "Tuma kiungo kwenye kalenda kupitia barua pepe", + "Enter one address" : "Ingiza anwuani moja", + "Sending email …" : "Inatuma barua pepe", + "Copy embedding code" : "Nakili msimbo uliyopachikwa", + "Copying code …" : "Nakili msimbo", + "Copied code" : "Msimbo ulionakiliwa", + "Could not copy code" : "Haikuweza kunakili msimbo", + "Delete share link" : "Futa kiungo cha kushiriki", + "Deleting share link …" : "Inafuta kiungo cha kushiriki", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Timu)", + "An error occurred while unsharing the calendar." : "Kosa limetokea wakati wa kutoshirikisha kalenda", + "An error occurred, unable to change the permission of the share." : "Kosa limetokea, haiwezi kubadili ruhusa za kushirikisha", + "can edit" : "Inaweza kuhariri", + "Unshare with {displayName}" : "Acha kushirikisha na {displayName}", + "Share with users or groups" : "Shiriki na watumiaji au makundi", + "No users or groups" : "Hakuna watumiaji au makundi", + "Failed to save calendar name and color" : "Imeshindwa kuhifadhi jina la kalenda na rangi", + "Calendar name …" : "Jina la kalenda", + "Never show me as busy (set this calendar to transparent)" : "Usinioneshe kama bize (panga kalenda hii kwa uwazi)", + "Share calendar" : "Shirikisha kalenda", + "Unshare from me" : "Batilisha kushiriki kutoka kwangu", + "Save" : "Hifadhi", + "Import calendars" : "Agiza kalenda", + "Please select a calendar to import into …" : "Tafadhali chagua kalenda ya kuagiza ndani ya", + "Filename" : "Jina la faili", + "Calendar to import into" : "Kalenda ya kuagiza ndani ya", + "Cancel" : "Sitisha/Futa/ghaili", + "_Import calendar_::_Import calendars_" : ["Import calendar","Ingiza kalenda"], + "Select the default location for attachments" : "Chagua eneo la chaguo msingi kwa maambatanisho", + "Pick" : "Chagua", + "Invalid location selected" : "Eneo batili limechaguliwa", + "Attachments folder successfully saved." : "Folda ya viambatanisho imehifadhiwa kwa ukamilifu.", + "Error on saving attachments folder." : "Kosa katika uhifadhi wa folda ya viambatanisho.", + "Default attachments location" : "Chaguo msingi la eneo la viambatanisho.", + "{filename} could not be parsed" : "{filename}haikuweza kuchanganuliwa", + "No valid files found, aborting import" : "Hakuna mafaili halali yaliyopatikana, katisha uagizaji", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Successfully imported %n event","Kikamilifu imeingiza matukio %n"], + "Import partially failed. Imported {accepted} out of {total}." : "Imeshindwa kuingiza kiasi. Imeingizwa {accepted}kati ya {total}", + "Automatic" : "Moja kwa moja", + "Automatic ({detected})" : "Otomatiki {detected}", + "New setting was not saved successfully." : "Mipangilio mipya haikuweza kuhifadhiwa kikamilifu.", + "Navigation" : "Uendeshaji", + "Previous period" : "Kipindi kilichopita", + "Next period" : "Kipindi kijacho", + "Views" : "Mionekano", + "Day view" : "Mwonekano wa siku", + "Week view" : "Mwaonekano wa wiki", + "Month view" : "Mwonekano wa mwezi", + "Year view" : "Mwonekano wa mwaka", + "List view" : "Mwonekano wa orodha", + "Actions" : "Matendo", + "Create event" : "Tengeneza matukio", + "Show shortcuts" : "Onesha mikato", + "Editor" : "Mhariri", + "Close editor" : "Funga mhariri", + "Save edited event" : "Hifadhi tukio liliohaririwa", + "Delete edited event" : "Futa tukio lililohaririwa", + "Duplicate event" : "Zalisha tukio", + "Shortcut overview" : "Muhtasari wa mkato", + "or" : "au", + "Calendar settings" : "Mipangilio ya kalenda", + "At event start" : "Katika kuanza kwa tukio", + "No reminder" : "Hakuna kikumbushio", + "Failed to save default calendar" : "Imeshindwa kuhifadhi kalenda ya chaguo-msingi", + "CalDAV link copied to clipboard." : "Kiungio cha CalDAV kimenakiliwa kwenye clipboard ", + "CalDAV link could not be copied to clipboard." : "Kiungo cha CalDAV hakikuweza kunakuliwa kwenye clipboard", + "Enable birthday calendar" : "Wezesha kalenda ya siku ya kuzaliwa", + "Show tasks in calendar" : "Onesha kazi katika kalenda", + "Enable simplified editor" : "Wezesha mhariri aliyerahisishwa", + "Limit the number of events displayed in the monthly view" : "Zuia namba za matukio yanayooneshwa katika mwonekano wa mwezi", + "Show weekends" : "Onesha wikendi", + "Show week numbers" : "Onesha namba za wiki", + "Time increments" : "Uongezekaji wa muda", + "Default calendar for incoming invitations" : "Kalenda ya chaguo msingi kwa mialiko inayoingia", + "Default reminder" : "Kikumbusho cha chaguo-msingi", + "Copy primary CalDAV address" : "Nakili anwani msingi ya CalDAV", + "Copy iOS/macOS CalDAV address" : "Nakili anwani ya iOS/macOS CalDAV", + "Personal availability settings" : "Mipangilio ya Upatikanaji binafsi", + "Show keyboard shortcuts" : "Onesha mikato ya keyboard", + "Appointment schedule successfully created" : "Ratiba ya miadi imetengenezwa kikamilifu", + "Appointment schedule successfully updated" : "Ratiba ya miadi imesasishwa kikamilifu", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minute","{duration}dakika"], + "0 minutes" : "Dakika 0", + "_{duration} hour_::_{duration} hours_" : ["{duration} hour","{duration} masaa"], + "_{duration} day_::_{duration} days_" : ["{duration} day","{duration} siku"], + "_{duration} week_::_{duration} weeks_" : ["{duration} week","{duration} wiki"], + "_{duration} month_::_{duration} months_" : ["{duration} month","{duration} miezi"], + "_{duration} year_::_{duration} years_" : ["{duration} year","{duration} miaka"], + "To configure appointments, add your email address in personal settings." : "Kusanidi miadi, ongeza barua pepe yako katika mipangilio binafsi", + "Public – shown on the profile page" : "Imeoneshwa kwa umma kwenye ukurasa wa wasifu", + "Private – only accessible via secret link" : "Inapatikana kwa faragha pekee kupitia kiungo cha siri", + "Appointment schedule saved" : "Ratiba ya muadi imehifadhiwa", + "Create appointment schedule" : "Tengeneza ratiba ya muadi", + "Edit appointment schedule" : "Hariri ratiba ya muadi", + "Update" : "Sasisha", + "Appointment name" : "Jina la muadi", + "Location" : "Mahali/eneo", + "Create a Talk room" : "Tengeneza chumba cha mazungumzo", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Kiungo cha kipekee kitazalishwa kwa kila muadi uliokatishiwa nafasi na kutumwa kupitia barua pepe iliyothibitishwa", + "Description" : "Maelezo", + "Visibility" : "Mwonekano", + "Duration" : "Muda", + "Increments" : "Maongezeko", + "Additional calendars to check for conflicts" : "Kalenda ya nyongeza kwa kuangalia migogoro", + "Pick time ranges where appointments are allowed" : "Chagua safu za wakati ambapo miadi inaruhusiwa", + "to" : "kwa", + "Delete slot" : "Futa slot", + "No times set" : "Hakuna muda uliowekwa", + "Add" : "Ongeza", + "Monday" : "Jumatatu", + "Tuesday" : "Jumanne", + "Wednesday" : "Jumatano", + "Thursday" : "Alhamisi", + "Friday" : "Ijumaa", + "Saturday" : "Jumamosi", + "Sunday" : "Jumapili", + "Weekdays" : "Siku za wiki", + "Add time before and after the event" : "Ongeza muda kabla na baada ya tukio", + "Before the event" : "Kabla ya tukio", + "After the event" : "Baada ya tukio", + "Planning restrictions" : "Kupanga mazuio/vikwazo", + "Minimum time before next available slot" : "Kiwango cha chini cha muda kabla ya slot inayofuata inayopatikana", + "Max slots per day" : "Kiwango cha juu cha slots kwa siku", + "Limit how far in the future appointments can be booked" : "Zuia ni kwa kiwango gani wakati ujao miadi inaweza kukatishiwa nafasi", + "It seems a rate limit has been reached. Please try again later." : "Inaonekana kiwango cha juu kimefikiwa.\nTafadhali jaribu tena baadaye.", + "Please confirm your reservation" : "Tafadhali thibitisha kutoridhishwa kwako", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Tulikutumia barua pepe yenye maelekezo.\nTafadhali thibitisha muadi wako kwa kutumia kiungo katika barua pepe. Unaweza kufunga ukurasa huu sasa.", + "Your name" : "Jina lako", + "Your email address" : "Anwani yako ya barua pepe", + "Please share anything that will help prepare for our meeting" : "Tafadhali shirikisha kitu chochote kitakachosaidia kuandaliwa kwa mkutano wetu", + "Could not book the appointment. Please try again later or contact the organizer." : "Haikuweza kukatisha nafasi ya muadi.\nTafadhali jaribu tena baadaye au wasiliana na mratibu.", + "Back" : "Rudi", + "Book appointment" : "Katisha nafasi ya muadi", + "Error fetching Talk conversations." : "Hitilafu katika kuleta mazungumzo ya Talk", + "Conversation does not have a valid URL." : "Mazungumzo hayana URL halisi", + "Successfully added Talk conversation link to location." : "Kiungo cha mazungumzo ya Talk kimeongezwa kikamilifu katika eneo", + "Successfully added Talk conversation link to description." : "Kiungo cha mazungumzo ya Talk kwa maelekezo kimeongezwa kikamilifu", + "Failed to apply Talk room." : "Imeshindwa kuomba chumba cha Talk", + "Error creating Talk conversation" : "Hitilafu kutengeneza mzungumzo ya Talk", + "Select a Talk Room" : "Chagua chumba cha Talk", + "Add Talk conversation" : "Ongeza mazungumzo ya Talk", + "Fetching Talk rooms…" : "Inaleta vyumba vya Talk", + "No Talk room available" : "Hakuna vyumba vya Talk vinavyopatikana", + "Create a new conversation" : "Tengeneza mazungumzo mapya", + "Select conversation" : "Chagua mazungumzo", + "on" : "Juu ya", + "at" : "Katika", + "before at" : "kabla ya katika", + "Notification" : "Taarifa", + "Email" : "Barua pepe", + "Audio notification" : "Taarifa ya sauti", + "Other notification" : "Taarifa zingine", + "Relative to event" : "Uhusiano kwa tukio", + "On date" : "Kwa tarehe", + "Edit time" : "Hariri muda", + "Save time" : "Hifadhi muda", + "Remove reminder" : "Ondoa kikumbushio", + "Add reminder" : "Ongeza kikumbushio", + "seconds" : "sekunde", + "minutes" : "dakika", + "hours" : "masaa", + "days" : "siku", + "weeks" : "wiki", + "Choose a file to add as attachment" : "Chagua faili kuongeza kama kiambatanisho", + "Choose a file to share as a link" : "Chagua faili kushirikisha kama kiungo", + "Attachment {name} already exist!" : "Kiambatanishi{name}kipo tayari", + "Could not upload attachment(s)" : "Isingeweza kupakia viambatanisho", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Unakaribia kupakua faili\nTafadhali angalia jina la faili kabla ya kulifungua. Je, unauhakika wa kuendelea?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Unakaribia kwenda kwa {host}\nUnauhakika wa kuendelea? Kiungo:{link}", + "Proceed" : "Endelea", + "No attachments" : "Hakuna viambatanisho", + "Add from Files" : "Ongeza kutoka katika faili", + "Upload from device" : "Pakia kutoka katika kifaa", + "Delete file" : "Futa faili", + "Confirmation" : "Uthibitisho", + "_{count} attachment_::_{count} attachments_" : ["{count} attachment","{count} viambatanisho"], + "Suggested" : "Iliyopendekezwa", + "Available" : "Inayopatikana", + "Invitation accepted" : "Mwaliko umekubaliwa", + "Accepted {organizerName}'s invitation" : "Imekubaliwa{organizerName}'s mwaliko", + "Participation marked as tentative" : "Ushiriki umetiwa alama kuwa wa majaribio", + "Invitation is delegated" : "Mwaliko umekabidhiwa", + "Not available" : "Haipatikani", + "Invitation declined" : "Mwaliko umekataliwa", + "Declined {organizerName}'s invitation" : "Mwaliko {organizerName}uliokataliwa", + "Availability will be checked" : "Upatikanaji utaangaliwa", + "Invitation will be sent" : "Mwaliko utatumwa", + "Failed to check availability" : "Imeshindwa kuangalia upatikanaji", + "Failed to deliver invitation" : "Imeshindwa kuwasilisha mwaliko", + "Awaiting response" : "Inasubiri majibu", + "Checking availability" : "Inaangalia upatikanaji", + "Has not responded to {organizerName}'s invitation yet" : "Anapaswa kuitika kwa {organizerName} bado mwaliko", + "Suggested times" : "Mida iliyopendekezwa", + "chairperson" : "mwenyekiti", + "required participant" : "mshiriki anayetakiwa", + "non-participant" : "hakuna mshiriki", + "optional participant" : "mshiriki mbadala", + "{organizer} (organizer)" : "{organizer} (mratibu)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Upatikanaji wa wahudhuriaji, maliasili na vyumba", + "Suggestion accepted" : "Pendekezo limekubaliwa", + "Previous date" : "Tarehe iliyopita", + "Next date" : "Tarehe inayofuata ", + "Legend" : "Hadithi", + "Out of office" : "Nje ya ofisi", + "Attendees:" : "Wahudhuriaji", + "Done" : "Imefanyika", + "Search room" : "Tafuta chumba", + "Room name" : "Jina la chumba", + "Check room availability" : "Tafuta chumba kinachopatikana", + "Free" : "Huru", + "Busy (tentative)" : "Bize (vumilivu)", + "Busy" : "Bize", + "Unknown" : "Haijulikani", + "Find a time" : "Tafuta muda", + "The invitation has been accepted successfully." : "Mwaliko umekubaliwa kikamilifu", + "Failed to accept the invitation." : "Mwaliko umeshindwa kukubaliwa", + "The invitation has been declined successfully." : "Mwaliko umekataliwa kikamilifu ", + "Failed to decline the invitation." : "Imeshindwa kukataa mwaliko", + "Your participation has been marked as tentative." : "Ushiriki wako umewekewa alama kawa wa uvumilivu", + "Failed to set the participation status to tentative." : "Imeshindwa kupanga hadhi ya ushiriki kwa uvumilivu", + "Accept" : "Kubali", + "Decline" : "Kataa", + "Tentative" : "Vumilivu", + "No attendees yet" : "Hakuna mhudhuriaji bado", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount}amealikwa,\n{confirmedCount}amethibitisha", + "Please add at least one attendee to use the \"Find a time\" feature." : "Tafadhali ongeza angalau mhudhuliaji mmoja wa kutumia sifa ya \"Tafuta muda\"", + "Successfully appended link to talk room to location." : "Kikmilifu kimeongezwa kiungo kwa chumba cha talk na eneo", + "Successfully appended link to talk room to description." : "Kikmilifu kimeongezwa kiungo kwa chumba cha talk na kwa maelezo", + "Error creating Talk room" : "Hitilafu kutengeneza chumba cha Talk", + "Attendees" : "Wahudhuriaji", + "_%n more guest_::_%n more guests_" : ["%n more guest","%n wageni zaidi"], + "Remove group" : "Ondoa kundi", + "Remove attendee" : "Ondoa mhudhuriaji", + "Request reply" : "Omba mrejesho", + "Chairperson" : "Mwenyekiti", + "Required participant" : "Mshiriki anayetakiwa", + "Optional participant" : "Mshiriki mbadala", + "Non-participant" : "Hakuna mshiriki", + "_%n member_::_%n members_" : ["%n member","%n wanachama"], + "Search for emails, users, contacts, contact groups or teams" : "Utafutaji wa barua pepe, watumiaji, namba, namba za makundi au timu", + "No match found" : "Haikupatikana inayofanana", + "Note that members of circles get invited but are not synced yet." : "Nukuu kwamba mzunguko wa wanachama wanapata kualikwa lakini bado hawajasawazishwa.", + "Note that members of contact groups get invited but are not synced yet." : "Nukuu kwamba wanachama wa nambaza makundi wanapata kualikwa lakini bado hawajasawazishwa.", + "(organizer)" : "(Mratibu)", + "Make {label} the organizer" : "Tengeneza{label}kuwa mratibu", + "Make {label} the organizer and attend" : "Tengeneza {label}kuwa mratibu na kuhudhuria", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Kutuma nje mialiko na majibu yaliyoshughulikiwa, [kiungo kiko wazi] ongeza anwani ya barua pepe yako katika mipangilio binafsi [kiungo kimefungwa]", + "Remove color" : "Ondoa rangi", + "Event title" : "Kichwa cha tukio", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Haiwezi kuboresha mpangilio wa siku nzima kwa tukio ambalo ni sehemu ya set ya kujirudia.", + "From" : "Tangu/ kutoka", + "To" : "Mpaka/ hadi", + "Repeat" : "Rudia", + "Repeat event" : "Rudia tukio", + "_time_::_times_" : ["time","mara"], + "never" : "kamwe", + "on date" : "kwa tarehe", + "after" : "baada ya", + "End repeat" : "Maliza kurudia", + "Select to end repeat" : "Chagua kumaliza kurudia", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Tukio hili ni mbadala unaojirudia wa set inayojirudia. Huwezi kuongeza kwake sheria inayojirudia.", + "first" : "kwanza", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Mabadiliko kwa sheria inayojirudia yatafanya kazi tu kwa hii na matukio yajayo.", + "Repeat every" : "Rudia kila", + "By day of the month" : "Kwa siku ya mwezi", + "On the" : "Juu ya", + "_day_::_days_" : ["day","siku"], + "_week_::_weeks_" : ["week","wiki"], + "_month_::_months_" : ["month","miezi"], + "_year_::_years_" : ["year","miaka"], + "On specific day" : "Kwa siku maalum", + "weekday" : "siku za wiki", + "weekend day" : "siku ya wikendi", + "Does not repeat" : "Hairudii", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Ufafanuzi wa kujirudia wa tukio hili haukubaliwi kikamilifu na Nextcloud. Ukihariri chaguo za kujirudia, baadhi ya marudio yanaweza kupotea.", + "No rooms or resources yet" : "Bado hakuna vyumba au nyenzo", + "Resources" : "Rasilimali/nyenzo", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seat","{seatingCapacity} nafasi"], + "Add resource" : "Ongeza rasilimali", + "Has a projector" : "Ana projekta", + "Has a whiteboard" : "Ana ubao mweupe", + "Wheelchair accessible" : "Kiti cha mataili kinaweza kufikiwa", + "Remove resource" : "Ondoa rasilimali", + "Search for resources or rooms" : "Tafuta rasilimali au chumba", + "available" : "Inapatikana", + "unavailable" : "Haipatikani", + "Show all rooms" : "Onesha vyumba vyote", + "Projector" : "Projekta", + "Whiteboard" : "Ubao mweupe", + "Room type" : "Aina ya chumba", + "Any" : "Yoyote", + "Minimum seating capacity" : "Kiwango cha chini cha uwezo wa ukaaji", + "More details" : "Maelezo ya ziada", + "Update this and all future" : "Sasisha hii na zote wakati ujao", + "Update this occurrence" : "Sasisha mabadiliko haya", + "Public calendar does not exist" : "Kalenda ya umma haipatikani", + "Maybe the share was deleted or has expired?" : "Labda ushirikishaji umefutwa au umeisha muda wake", + "from {formattedDate}" : "kutoka{formattedDate}", + "to {formattedDate}" : "mpaka{formattedDate}", + "on {formattedDate}" : "juu ya {formattedDate}", + "from {formattedDate} at {formattedTime}" : "tangu{formattedDate}katika\n{formattedTime}", + "to {formattedDate} at {formattedTime}" : "mpaka{formattedDate}katika\n{formattedTime}", + "on {formattedDate} at {formattedTime}" : "juu ya {formattedDate}katika\n{formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} katika {formattedTime}", + "Please enter a valid date" : "Tafadhali ingiza tarehe halisi", + "Please enter a valid date and time" : "Tafadhali ingiza muda na tarehe halisi", + "Select a time zone" : "Chagua eneo la muda", + "Please select a time zone:" : "Tafadhali chagua eneo la muda", + "Pick a time" : "Chagua muda", + "Pick a date" : "Chagua tarehe", + "Type to search time zone" : "Andika kutafuta eneo la muda", + "Global" : "Kidunia", + "Holidays in {region}" : "Likizo katika {region}", + "An error occurred, unable to read public calendars." : "Hitilafu imetokea, haiwezi kusoma kalenda ya umma", + "An error occurred, unable to subscribe to calendar." : "Hitilafu imetokea, haiwezi kujisajili kwenye kalenda", + "Public holiday calendars" : "Kalenda za likizo za umma", + "Public calendars" : "Kalenda za umma", + "No valid public calendars configured" : "Hakuna kalenda halisi iliyosanidiwa", + "Speak to the server administrator to resolve this issue." : "Zungumza na msimamizi wa seva kutatua jambo hili", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Kalenda za umma za likizo zinagawiwa na Thunderbird. Data za kalenda zitapakuliwa kutoka {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Kalenda hizi za umma zinapendekezwa na msimamizi wa seva. Data ya kalenda itapakuliwa kutoka kwa tovuti husika.", + "By {authors}" : "Na{authors}", + "Subscribed" : "Iliyojisajili", + "Subscribe" : "Jisajili", + "Could not fetch slots" : "Haikuweza kuleta slots", + "Select a date" : "Chagua tarehe", + "Select slot" : "Chagua slot", + "No slots available" : "Hakuna slot inayopatikana", + "The slot for your appointment has been confirmed" : "Slot kwa muadi wako imethibitishwa", + "Appointment Details:" : "Maelezo ya kina ya muadi", + "Time:" : "Muda", + "Booked for:" : "Imekatishiwa nafasi kwa:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Asante. Ukatishaji wako wa nafasi kutoka {startDate}kwenda{endDate} umethibitishwa", + "Book another appointment:" : "Katisha nafasi ya muadi mwingine", + "See all available slots" : "Ona slot zote zinzopatikana", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Slot kwa muadi wako kutoka {startDate} kwenda {endDate} haupatikani tena", + "Please book a different slot:" : "Tafadhali katisha nafasi ya slot nyingine", + "Book an appointment with {name}" : "Katisha nafasi ya muadi na {name}", + "No public appointments found for {name}" : "Hakuna muadi wa umma uliopatikana kwa {name}", + "Personal" : "Binafsi", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Ugunduzi wa moja kwa moja wa saa za eneo uliamua muda wa eneo lako kuwa UTC\nHii inawezekana zaidi haya ni matokeo ya hatua za usalama za kivinjari chako cha wavuti", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Muda wako wa eneo uliosanidiwa ({timezoneId}) haukupatikana. Kuangukia nyuma kwa UTC\nTafadhali badili muda wako wa eneo katika mipangilio na toa taarifa ya jambo hili.", + "Availability of {displayName}" : "Upatikanaji wa {displayName}", + "Edit event" : "Hariri tukio", + "Event does not exist" : "Tukio halipatikani", + "Duplicate" : "Zalisha", + "Delete this occurrence" : "Futa tukio hili", + "Delete this and all future" : "Futa hii na muda wote ujao", + "All day" : "Siku yote", + "Modifications wont get propagated to the organizer and other attendees" : "Marekebisho hayataenezwa kwa mratibu na wahudhuriaji wengine", + "Managing shared access" : "Dhibiti ufikikaji shirikishi", + "Deny access" : "Zuia ufikikaji", + "Invite" : "Alika", + "_User requires access to your file_::_Users require access to your file_" : ["User requires access to your file","Watumiaji wanahitaji ufikiaji wa faili yako"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Attachment requires shared access","Viambatanisho vinavyohitaji ufikiaji wa pamoja"], + "Untitled event" : "Tukio lisilotajwa", + "Close" : "Funga", + "Modifications will not get propagated to the organizer and other attendees" : "Marekebisho hayataenezwa kwa mratibu na wahudhuriaji wengine", + "Subscribe to {name}" : "Jisajili kwa {name}", + "Export {name}" : "Agiza {name}", + "Show availability" : "Onesha upatikanaji", + "Anniversary" : "Maadhimisho ya miaka", + "Appointment" : "Muadi", + "Business" : "Biashara", + "Education" : "Elimu", + "Holiday" : "Likizo", + "Meeting" : "Mkutano", + "Miscellaneous" : "Mbalimbali", + "Non-working hours" : "Masaa yasiyo ya kazi", + "Not in office" : "Nje ya ofisi", + "Phone call" : "Mwito wa simu", + "Sick day" : "Siku ya kuumwa", + "Special occasion" : "Tukio maalum", + "Travel" : "Safari", + "Vacation" : "Likizo", + "Midnight on the day the event starts" : "Usiku wa manane siku ambayo tukio linaanza", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n day before the event at {formattedHourMinute}","%n siku kabla ya tukio katika {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n week before the event at {formattedHourMinute}","%n wiki kabla ya tukio katika {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "wakati wa siku ya tukio katika {formattedHourMinute}", + "at the event's start" : "Katika mwanzo wa tukio", + "at the event's end" : "Katika mwisho wa tukio", + "{time} before the event starts" : "{time} kabla ya tukio kuanza", + "{time} before the event ends" : "{time} kabla ya tukio kumalizika", + "{time} after the event starts" : "{time} baada ya tukio kuanza", + "{time} after the event ends" : "{time} baada ya tukio kumalizika", + "on {time}" : "juu ya {time}", + "on {time} ({timezoneId})" : "juu ya {time} ({timezoneId})", + "Week {number} of {year}" : "Wiki {number} wa {year}", + "Daily" : "Kwa kila siku", + "Weekly" : "Kwa kila wiki", + "Monthly" : "Kwa kila mwezi", + "Yearly" : "Kwa kila mwaka", + "_Every %n day_::_Every %n days_" : ["Every %n day","Kila %n siku"], + "_Every %n week_::_Every %n weeks_" : ["Every %n week","Kila %n wiki"], + "_Every %n month_::_Every %n months_" : ["Every %n month","Kila %n miezi"], + "_Every %n year_::_Every %n years_" : ["Every %n year","Kila %n miaka"], + "_on {weekday}_::_on {weekdays}_" : ["on {weekday}","kwenye {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["on day {dayOfMonthList}","katika siku {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "kwenye {ordinalNumber} {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "katika {monthNames} juu ya {dayOfMonthList}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "katika {monthNames} juu ya {ordinalNumber} {byDaySet}", + "until {untilDate}" : "mpaka {untilDate}", + "_%n time_::_%n times_" : ["%n time","%n mara"], + "second" : "pili", + "third" : "tatu", + "fourth" : "nne", + "fifth" : "tano", + "second to last" : "pili kutoka mwisho", + "last" : "mwisho", + "Untitled task" : "Kazi zisizo na jina", + "Please ask your administrator to enable the Tasks App." : "Tafadhali uliza msimamizi wako kuwezesha kazi za App", + "You are not allowed to edit this event as an attendee." : "Huruhusiwi kuhariri tukio hili kama mhudhuriaji", + "W" : "W", + "%n more" : "%n zaidi", + "No events to display" : "Hakuna tukio lililooneshwa", + "All participants declined" : "Washiriki wote walikataa", + "Please confirm your participation" : "Tafadhali thibitisha ushiriki wako", + "You declined this event" : "Umekataa tukio hili", + "Your participation is tentative" : "Ushiriki wako ni wa uvumilivu", + "_+%n more_::_+%n more_" : ["+%n more","+%n zaidi"], + "No events" : "Hakuna tukio", + "Create a new event or change the visible time-range" : "Tengeneza tukio jipya au badili masafa ya wakati yanayoonekana", + "Failed to save event" : "Imeshindikana kuhifadhi tukio", + "It might have been deleted, or there was a typo in a link" : "Huenda ilifutwa au kulikuwa na makosa ya uandishi katika kiungio", + "It might have been deleted, or there was a typo in the link" : "Huenda ilifutwa au kulikuwa na makosa ya uandishi katika kiungio", + "Meeting room" : "Chumba cha mikutano", + "Lecture hall" : "Bwalo la mihadhara", + "Seminar room" : "Chumba cha semina", + "Other" : "Mengine", + "When shared show" : "Iliyoshirikishwa inapoonesha", + "When shared show full event" : "Iliyoshirikishwa inapoonesha tukio zima", + "When shared show only busy" : "Iliyoshirikishwa inapoonesha ubize tu", + "When shared hide this event" : "Iliyoshirikishwa inapoficha tukio hili", + "The visibility of this event in shared calendars." : "Mwonekano wa tukio hili katika kalenda zilizoshirikiwa.", + "Add a location" : "Ongeza eneo", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Ongeza maelezo\n\nMkutano huu unahusu nini\nVipengele vya ajenda- kitu chochote mshiriki anahitaji kuandaa", + "Status" : "Wadhifa", + "Confirmed" : "Imethibitishwa", + "Canceled" : "Imesitishwa", + "Confirmation about the overall status of the event." : "Uthibitisho kuhusu hali ya jumla ya tukio.", + "Show as" : "Onesha kama", + "Take this event into account when calculating free-busy information." : "Zingatia tukio hili wakati wa kukokotoa maelezo yasiyo na shughuli nyingi.\n ", + "Categories" : "Vipengele", + "Categories help you to structure and organize your events." : "Vipengele vinakusaidia kuunda na kupanga matukio yako", + "Search or add categories" : "Tafuta au ongeza vipengele", + "Add this as a new category" : "Ongeza hii kama kipengele kipya", + "Custom color" : "Rangi maalum", + "Special color of this event. Overrides the calendar-color." : "Rangi maalum ya tukio hili. Inabatilisha rangi ya kalenda.", + "Error while sharing file" : "Hitilafu wakati wa kushirikisha faili", + "Error while sharing file with user" : "Hitilafu ikishirikisha faili na mtumiaji", + "Error creating a folder {folder}" : "Hitilafu wakati wa kutengeneza folda {folder}", + "Attachment {fileName} already exists!" : "Kiambatanisho {fileName}kimeshajitokeza", + "Attachment {fileName} added!" : "Kiambatanisho {fileName}kimeongezwa", + "An error occurred during uploading file {fileName}" : "Hitilafu ilitokea wakati wa kupakia faili {fileName}", + "An error occurred during getting file information" : "Hitilafu imetokea wakati wa kupata taarifa za faili", + "Talk conversation for event" : "Mazungumzo ya Talk kwa tukio", + "An error occurred, unable to delete the calendar." : "Hitilafu imetokea, haiwezi kufuta kalenda", + "Imported {filename}" : "Imeagizwa {filename}", + "This is an event reminder." : "Hiki ni kikumbishi cha tukio", + "Error while parsing a PROPFIND error" : "Hitilafu wakati wa kuchanganua hitilafu ya PROPFIND", + "Appointment not found" : "Muadi haupatikani", + "User not found" : "Mtumiaji hapatikani", + "Reminder" : "Kikumbushio", + "+ Add reminder" : "+ Ongeza kikumbushio", + "Select automatic slot" : "Chagua slot ya moja kwa moja", + "with" : "na", + "Available times:" : "Muda unaopatikana", + "Suggestions" : "Mapendekezo", + "Details" : "Maelezo ya kina" +}, +"nplurals=2; plural=(n != 1);"); diff --git a/l10n/sw.json b/l10n/sw.json new file mode 100644 index 0000000000000000000000000000000000000000..8e78a58357b549bdf7635c49b8932ce068711742 --- /dev/null +++ b/l10n/sw.json @@ -0,0 +1,598 @@ +{ "translations": { + "Provided email-address is too long" : "Anuani ya barua pepe iliyotolewa ni ndefu sana", + "User-Session unexpectedly expired" : "Kipindi cha mtumiaji kiliisha muda wake bila kutarajiwa", + "Provided email-address is not valid" : "Anuani ya barua pepe iliyotolewa si halali", + "%s has published the calendar »%s«" : "%s wamechapisha kalenda>>\n1%s <<", + "Unexpected error sending email. Please contact your administrator." : "Makosa ya utumaji wa barua pepe yasiyotarajiwa\nTafadhali wasiliana na msimamizi/mtawala", + "Successfully sent email to %1$s" : "Barua pepe iliyotumwa imefanikiwa kwa 1%1$s", + "Hello," : "Hallo,", + "We wanted to inform you that %s has published the calendar »%s«." : "Tulitaka kukujulisha kwamba %s\nwamechapisha kalenda >> %s <<.", + "Open »%s«" : "Fungua >> %s <<", + "Cheers!" : "Hongera!", + "Upcoming events" : "Matukio yajayo", + "No more events today" : "Hakuna matukio zaidi leo", + "No upcoming events" : "Hakuna matukio yajayo", + "More events" : "Matukio zaidi", + "%1$s with %2$s" : "%1$s kwa %2$s", + "Calendar" : "Kalenda", + "New booking {booking}" : "Nafasi mpya iliyoshikwa {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name}{email} muadi ulioshikwa' {config_display_name} katika {date_time}", + "Appointments" : "Miadi", + "Schedule appointment \"%s\"" : "Panga muadi \"%s\"", + "Schedule an appointment" : "Panga muadi", + "%1$s - %2$s" : "%1$s-%2$s", + "Prepare for %s" : "Jiandae kwa %s", + "Follow up for %s" : "Fuatilia kwa %s", + "Your appointment \"%s\" with %s needs confirmation" : "Muadi wako %sna %s unahitaji uthibitisho", + "Dear %s, please confirm your booking" : "Ndugu %s, tafadhali thibitisha nafasi yako iliyoshikwa", + "Confirm" : "Thibitisha", + "Appointment with:" : "Muadi na:", + "Description:" : "Maelezo", + "This confirmation link expires in %s hours." : "Uthibitisho huu unaunganisha iliyoisha muda %s masaa", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Kama unatamani kughairi muadi baada ya yote, tafadhali wasiliana na mratibu wako kwa kujibu barua pepe hii au kwa kutembelea wasifu wa kurasa zao.", + "Your appointment \"%s\" with %s has been accepted" : "Muadi wako\"%s\" na %s umekubaliwa", + "Dear %s, your booking has been accepted." : "Ndugu %s, nafasi yako uliyoshika imekubaliwa", + "Appointment for:" : "Muadi kwa:", + "Date:" : "Tarehe:", + "You will receive a link with the confirmation email" : "Utapokea kiungio na uthibitisho wa barua pepe", + "Where:" : "Wapi:", + "Comment:" : "Maoni", + "You have a new appointment booking \"%s\" from %s" : "Una muadi mpya wa nafasi uliyoshika\" %s tangu %s", + "Dear %s, %s (%s) booked an appointment with you." : "Ndugu %s, %s (%s ) walishika nafasi ya muadi na wewe.", + "A Calendar app for Nextcloud" : "app ya kalenda kwa Nextcloud", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "App ya Kalenda ya Nextcloud. Sawazisha matukio kutoka kwa vifaa mbalimbali kwa urahisi na Nextcloud yako na uyahariri mtandaoni.\n\n* 🚀 **Muunganisho na programu zingine za Nextcloud!** Kama vile Anwani, Maongezi, Majukumu, Staha na Miduara\n* 🌐 **Usaidizi wa Wavuti!** Je, ungependa kuona siku za mechi za timu unayopenda kwenye kalenda yako? Hakuna tatizo!\n* 🙋 **Waliohudhuria!** Alika watu kwenye matukio yako\n* ⌚ **Bila/Bure!** Angalia wakati waliohudhuria wanapatikana ili kukutana\n* ⏰ **Vikumbusho!** Pata kengele za matukio ndani ya kivinjari chako na kupitia barua pepe\n* 🔍 **Tafuta!** Pata matukio yako kwa urahisi\n* ☑️ **Kazi!** Angalia kazi au Kadi za Staha zilizo na tarehe ya kukamilisha moja kwa moja kwenye kalenda\n* 🔈 **Vyumba vya maongezi!** Unda chumba cha Maongezi husika unapohifadhi mkutano kwa mbofyo mmoja tu\n* 📆 **Kuhifadhi miadi** Tumia watu kiungo ili waweze kuweka miadi nawe [kwa kutumia programu hii](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Viambatisho!** Ongeza, pakia na tazama viambatisho vya tukio\n* 🙈 **Hatubuni tena gurudumu!** Kulingana na [c-dav maktaba] kuu (https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) na [fullcalendar] (https://github.com/fullcalendar/fullcalendar) maktaba. ", + "Previous day" : "Siku iliyopita", + "Previous week" : "Wiki iliyopita", + "Previous year" : "Mwaka uliopita", + "Previous month" : "Mwezi uliopita", + "Next day" : "Siku inayofuata", + "Next week" : "Wiki ijayo", + "Next year" : "Mwaka ujao", + "Next month" : "Mwezi ujao", + "Create new event" : "Tengeneza tukio jipya", + "Event" : "Tukio", + "Today" : "Leo", + "Day" : "Siku", + "Week" : "Wiki", + "Month" : "Mwezi", + "Year" : "Mwaka", + "List" : "Orodha", + "Appointment link was copied to clipboard" : "Kiungio cha muadi kilinakiliwa kwenye clipboard", + "Appointment link could not be copied to clipboard" : "Kiungio cha muadi hakikuweza kunakiliwa kwenye clipboard", + "Preview" : "Mwonekano wa awali", + "Copy link" : "Nakili kiungio", + "Edit" : "Hariri", + "Delete" : "Futa", + "Appointment schedules" : "Ratiba za miadi", + "Create new" : "Tengeneza mpya", + "Disable calendar \"{calendar}\"" : "Fifisha kalenda{calendar}", + "Disable untitled calendar" : "Fifisha kalenda isiyo na jina", + "Enable calendar \"{calendar}\"" : "Wezesha kalenda{calendar}", + "Enable untitled calendar" : "Wezesha kalenda isiyo na jina", + "An error occurred, unable to change visibility of the calendar." : "Makosa yametokea, fifisha kubadili mwonekano wa kalenda", + "Untitled calendar" : "Kalenda isiyo na jina", + "Shared with you by" : "Imeshirikishwa na wewe na", + "Edit and share calendar" : "Hariri na shirikisha kalenda", + "Edit calendar" : "Hariri kalenda", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Unsharing the calendar in {countdown} second","Kutoshirikisha kalenda katika{countdown} kwa sekunde"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Deleting the calendar in {countdown} second","Kufuta kalenda katika {countdown} kwa sekunde"], + "An error occurred, unable to create the calendar." : "Kosa limetokea, fifisha kutengeneza kalenda", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Tafadhali ingiza kiungio halisi (anza na http://, https://, webcal://, or webcals://)", + "Calendars" : "Kalenda", + "Add new" : "Ongeza mpya", + "New calendar" : "Kalenda mpya", + "Name for new calendar" : "Jina la kalenda", + "Creating calendar …" : "Kutengeneza kalenda", + "New calendar with task list" : "Kalenda mpya na orodha ya kazi", + "New subscription from link (read-only)" : "Usajili mpya kutoka katika kiungo (soma-tu)", + "Creating subscription …" : "Tengeneza usajili", + "Add public holiday calendar" : "Ongeza kalenda ya likizo ya umma", + "Add custom public calendar" : "Ongeza kalenda ya wateja wa umma", + "Calendar link copied to clipboard." : "Kiungo cha kalenda kimenakiliwa kwenye clipboard.", + "Calendar link could not be copied to clipboard." : "Kiungo cha kalenda hakikuweza kunakiliwa kwenye clipboard", + "Copy subscription link" : "Nakili kiungio cha usajili", + "Copying link …" : "Nakili kiungio", + "Copied link" : "Kiungio kilichonakiliwa", + "Could not copy link" : "Isingeweza kunakili kiungio", + "Export" : "Agiza", + "Untitled item" : "Kipengele kisichotajwa", + "Unknown calendar" : "Kalenda isiyojulikana", + "Could not load deleted calendars and objects" : "Haikuwaza kupakia kalenda na vitu vilivyofutwa", + "Could not delete calendar or event" : "Haikuweza kufuta kalenda au matukio", + "Could not restore calendar or event" : "Haikuweza kuhifadhi upya kalenda au matukio", + "Do you really want to empty the trash bin?" : "Je, unataka kuweka tupu chombo cha takataka?", + "Empty trash bin" : "Weka tupu chombo cha takataka", + "Trash bin" : "Chombo cha takataka", + "Loading deleted items." : "Inapakia vitu vilivyofutwa", + "You do not have any deleted items." : "Huna vitu vyovyote vilivyofutwa", + "Name" : "Jina", + "Deleted" : "Vilivyofutwa", + "Restore" : "Hifadhi upya", + "Delete permanently" : "Futa moja kwa moja", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Items in the trash bin are deleted after {numDays} day","Vipengee vilivyo kwenye pipa la uchafu hufutwa baada ya siku {numDays}"], + "Could not update calendar order." : "Haikuweza kusasisha mtiririko wa kalenda", + "Shared calendars" : "Kalenda zilizoshirikishwa", + "Deck" : "Deki", + "Hidden" : "Iliyofichwa", + "Internal link" : "Kiungo cha ndani", + "A private link that can be used with external clients" : "Kiungo cha binafsi ambacho kinaweza kutumiwa na wateja wa nje", + "Copy internal link" : "Nakili kiungo cha ndani", + "An error occurred, unable to publish calendar." : "Kosa limetokea, haiwezeshi kuchapisha kalenda", + "An error occurred, unable to send email." : "Kosa limetokea, haiwezeshi kutuma barua pepe", + "Embed code copied to clipboard." : "Pachika code iliyonakiliwa kwenye clipboard", + "Embed code could not be copied to clipboard." : "Code iliyopachikwa haikuweza kunakiliwa kwenye clipboard", + "Unpublishing calendar failed" : "Imeshindwa kubatilisha uchapishaji wa kalenda", + "Share link" : "Shirikisha kiungo", + "Copy public link" : "Nakili kiungo cha umma", + "Send link to calendar via email" : "Tuma kiungo kwenye kalenda kupitia barua pepe", + "Enter one address" : "Ingiza anwuani moja", + "Sending email …" : "Inatuma barua pepe", + "Copy embedding code" : "Nakili msimbo uliyopachikwa", + "Copying code …" : "Nakili msimbo", + "Copied code" : "Msimbo ulionakiliwa", + "Could not copy code" : "Haikuweza kunakili msimbo", + "Delete share link" : "Futa kiungo cha kushiriki", + "Deleting share link …" : "Inafuta kiungo cha kushiriki", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Timu)", + "An error occurred while unsharing the calendar." : "Kosa limetokea wakati wa kutoshirikisha kalenda", + "An error occurred, unable to change the permission of the share." : "Kosa limetokea, haiwezi kubadili ruhusa za kushirikisha", + "can edit" : "Inaweza kuhariri", + "Unshare with {displayName}" : "Acha kushirikisha na {displayName}", + "Share with users or groups" : "Shiriki na watumiaji au makundi", + "No users or groups" : "Hakuna watumiaji au makundi", + "Failed to save calendar name and color" : "Imeshindwa kuhifadhi jina la kalenda na rangi", + "Calendar name …" : "Jina la kalenda", + "Never show me as busy (set this calendar to transparent)" : "Usinioneshe kama bize (panga kalenda hii kwa uwazi)", + "Share calendar" : "Shirikisha kalenda", + "Unshare from me" : "Batilisha kushiriki kutoka kwangu", + "Save" : "Hifadhi", + "Import calendars" : "Agiza kalenda", + "Please select a calendar to import into …" : "Tafadhali chagua kalenda ya kuagiza ndani ya", + "Filename" : "Jina la faili", + "Calendar to import into" : "Kalenda ya kuagiza ndani ya", + "Cancel" : "Sitisha/Futa/ghaili", + "_Import calendar_::_Import calendars_" : ["Import calendar","Ingiza kalenda"], + "Select the default location for attachments" : "Chagua eneo la chaguo msingi kwa maambatanisho", + "Pick" : "Chagua", + "Invalid location selected" : "Eneo batili limechaguliwa", + "Attachments folder successfully saved." : "Folda ya viambatanisho imehifadhiwa kwa ukamilifu.", + "Error on saving attachments folder." : "Kosa katika uhifadhi wa folda ya viambatanisho.", + "Default attachments location" : "Chaguo msingi la eneo la viambatanisho.", + "{filename} could not be parsed" : "{filename}haikuweza kuchanganuliwa", + "No valid files found, aborting import" : "Hakuna mafaili halali yaliyopatikana, katisha uagizaji", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Successfully imported %n event","Kikamilifu imeingiza matukio %n"], + "Import partially failed. Imported {accepted} out of {total}." : "Imeshindwa kuingiza kiasi. Imeingizwa {accepted}kati ya {total}", + "Automatic" : "Moja kwa moja", + "Automatic ({detected})" : "Otomatiki {detected}", + "New setting was not saved successfully." : "Mipangilio mipya haikuweza kuhifadhiwa kikamilifu.", + "Navigation" : "Uendeshaji", + "Previous period" : "Kipindi kilichopita", + "Next period" : "Kipindi kijacho", + "Views" : "Mionekano", + "Day view" : "Mwonekano wa siku", + "Week view" : "Mwaonekano wa wiki", + "Month view" : "Mwonekano wa mwezi", + "Year view" : "Mwonekano wa mwaka", + "List view" : "Mwonekano wa orodha", + "Actions" : "Matendo", + "Create event" : "Tengeneza matukio", + "Show shortcuts" : "Onesha mikato", + "Editor" : "Mhariri", + "Close editor" : "Funga mhariri", + "Save edited event" : "Hifadhi tukio liliohaririwa", + "Delete edited event" : "Futa tukio lililohaririwa", + "Duplicate event" : "Zalisha tukio", + "Shortcut overview" : "Muhtasari wa mkato", + "or" : "au", + "Calendar settings" : "Mipangilio ya kalenda", + "At event start" : "Katika kuanza kwa tukio", + "No reminder" : "Hakuna kikumbushio", + "Failed to save default calendar" : "Imeshindwa kuhifadhi kalenda ya chaguo-msingi", + "CalDAV link copied to clipboard." : "Kiungio cha CalDAV kimenakiliwa kwenye clipboard ", + "CalDAV link could not be copied to clipboard." : "Kiungo cha CalDAV hakikuweza kunakuliwa kwenye clipboard", + "Enable birthday calendar" : "Wezesha kalenda ya siku ya kuzaliwa", + "Show tasks in calendar" : "Onesha kazi katika kalenda", + "Enable simplified editor" : "Wezesha mhariri aliyerahisishwa", + "Limit the number of events displayed in the monthly view" : "Zuia namba za matukio yanayooneshwa katika mwonekano wa mwezi", + "Show weekends" : "Onesha wikendi", + "Show week numbers" : "Onesha namba za wiki", + "Time increments" : "Uongezekaji wa muda", + "Default calendar for incoming invitations" : "Kalenda ya chaguo msingi kwa mialiko inayoingia", + "Default reminder" : "Kikumbusho cha chaguo-msingi", + "Copy primary CalDAV address" : "Nakili anwani msingi ya CalDAV", + "Copy iOS/macOS CalDAV address" : "Nakili anwani ya iOS/macOS CalDAV", + "Personal availability settings" : "Mipangilio ya Upatikanaji binafsi", + "Show keyboard shortcuts" : "Onesha mikato ya keyboard", + "Appointment schedule successfully created" : "Ratiba ya miadi imetengenezwa kikamilifu", + "Appointment schedule successfully updated" : "Ratiba ya miadi imesasishwa kikamilifu", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minute","{duration}dakika"], + "0 minutes" : "Dakika 0", + "_{duration} hour_::_{duration} hours_" : ["{duration} hour","{duration} masaa"], + "_{duration} day_::_{duration} days_" : ["{duration} day","{duration} siku"], + "_{duration} week_::_{duration} weeks_" : ["{duration} week","{duration} wiki"], + "_{duration} month_::_{duration} months_" : ["{duration} month","{duration} miezi"], + "_{duration} year_::_{duration} years_" : ["{duration} year","{duration} miaka"], + "To configure appointments, add your email address in personal settings." : "Kusanidi miadi, ongeza barua pepe yako katika mipangilio binafsi", + "Public – shown on the profile page" : "Imeoneshwa kwa umma kwenye ukurasa wa wasifu", + "Private – only accessible via secret link" : "Inapatikana kwa faragha pekee kupitia kiungo cha siri", + "Appointment schedule saved" : "Ratiba ya muadi imehifadhiwa", + "Create appointment schedule" : "Tengeneza ratiba ya muadi", + "Edit appointment schedule" : "Hariri ratiba ya muadi", + "Update" : "Sasisha", + "Appointment name" : "Jina la muadi", + "Location" : "Mahali/eneo", + "Create a Talk room" : "Tengeneza chumba cha mazungumzo", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Kiungo cha kipekee kitazalishwa kwa kila muadi uliokatishiwa nafasi na kutumwa kupitia barua pepe iliyothibitishwa", + "Description" : "Maelezo", + "Visibility" : "Mwonekano", + "Duration" : "Muda", + "Increments" : "Maongezeko", + "Additional calendars to check for conflicts" : "Kalenda ya nyongeza kwa kuangalia migogoro", + "Pick time ranges where appointments are allowed" : "Chagua safu za wakati ambapo miadi inaruhusiwa", + "to" : "kwa", + "Delete slot" : "Futa slot", + "No times set" : "Hakuna muda uliowekwa", + "Add" : "Ongeza", + "Monday" : "Jumatatu", + "Tuesday" : "Jumanne", + "Wednesday" : "Jumatano", + "Thursday" : "Alhamisi", + "Friday" : "Ijumaa", + "Saturday" : "Jumamosi", + "Sunday" : "Jumapili", + "Weekdays" : "Siku za wiki", + "Add time before and after the event" : "Ongeza muda kabla na baada ya tukio", + "Before the event" : "Kabla ya tukio", + "After the event" : "Baada ya tukio", + "Planning restrictions" : "Kupanga mazuio/vikwazo", + "Minimum time before next available slot" : "Kiwango cha chini cha muda kabla ya slot inayofuata inayopatikana", + "Max slots per day" : "Kiwango cha juu cha slots kwa siku", + "Limit how far in the future appointments can be booked" : "Zuia ni kwa kiwango gani wakati ujao miadi inaweza kukatishiwa nafasi", + "It seems a rate limit has been reached. Please try again later." : "Inaonekana kiwango cha juu kimefikiwa.\nTafadhali jaribu tena baadaye.", + "Please confirm your reservation" : "Tafadhali thibitisha kutoridhishwa kwako", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Tulikutumia barua pepe yenye maelekezo.\nTafadhali thibitisha muadi wako kwa kutumia kiungo katika barua pepe. Unaweza kufunga ukurasa huu sasa.", + "Your name" : "Jina lako", + "Your email address" : "Anwani yako ya barua pepe", + "Please share anything that will help prepare for our meeting" : "Tafadhali shirikisha kitu chochote kitakachosaidia kuandaliwa kwa mkutano wetu", + "Could not book the appointment. Please try again later or contact the organizer." : "Haikuweza kukatisha nafasi ya muadi.\nTafadhali jaribu tena baadaye au wasiliana na mratibu.", + "Back" : "Rudi", + "Book appointment" : "Katisha nafasi ya muadi", + "Error fetching Talk conversations." : "Hitilafu katika kuleta mazungumzo ya Talk", + "Conversation does not have a valid URL." : "Mazungumzo hayana URL halisi", + "Successfully added Talk conversation link to location." : "Kiungo cha mazungumzo ya Talk kimeongezwa kikamilifu katika eneo", + "Successfully added Talk conversation link to description." : "Kiungo cha mazungumzo ya Talk kwa maelekezo kimeongezwa kikamilifu", + "Failed to apply Talk room." : "Imeshindwa kuomba chumba cha Talk", + "Error creating Talk conversation" : "Hitilafu kutengeneza mzungumzo ya Talk", + "Select a Talk Room" : "Chagua chumba cha Talk", + "Add Talk conversation" : "Ongeza mazungumzo ya Talk", + "Fetching Talk rooms…" : "Inaleta vyumba vya Talk", + "No Talk room available" : "Hakuna vyumba vya Talk vinavyopatikana", + "Create a new conversation" : "Tengeneza mazungumzo mapya", + "Select conversation" : "Chagua mazungumzo", + "on" : "Juu ya", + "at" : "Katika", + "before at" : "kabla ya katika", + "Notification" : "Taarifa", + "Email" : "Barua pepe", + "Audio notification" : "Taarifa ya sauti", + "Other notification" : "Taarifa zingine", + "Relative to event" : "Uhusiano kwa tukio", + "On date" : "Kwa tarehe", + "Edit time" : "Hariri muda", + "Save time" : "Hifadhi muda", + "Remove reminder" : "Ondoa kikumbushio", + "Add reminder" : "Ongeza kikumbushio", + "seconds" : "sekunde", + "minutes" : "dakika", + "hours" : "masaa", + "days" : "siku", + "weeks" : "wiki", + "Choose a file to add as attachment" : "Chagua faili kuongeza kama kiambatanisho", + "Choose a file to share as a link" : "Chagua faili kushirikisha kama kiungo", + "Attachment {name} already exist!" : "Kiambatanishi{name}kipo tayari", + "Could not upload attachment(s)" : "Isingeweza kupakia viambatanisho", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Unakaribia kupakua faili\nTafadhali angalia jina la faili kabla ya kulifungua. Je, unauhakika wa kuendelea?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Unakaribia kwenda kwa {host}\nUnauhakika wa kuendelea? Kiungo:{link}", + "Proceed" : "Endelea", + "No attachments" : "Hakuna viambatanisho", + "Add from Files" : "Ongeza kutoka katika faili", + "Upload from device" : "Pakia kutoka katika kifaa", + "Delete file" : "Futa faili", + "Confirmation" : "Uthibitisho", + "_{count} attachment_::_{count} attachments_" : ["{count} attachment","{count} viambatanisho"], + "Suggested" : "Iliyopendekezwa", + "Available" : "Inayopatikana", + "Invitation accepted" : "Mwaliko umekubaliwa", + "Accepted {organizerName}'s invitation" : "Imekubaliwa{organizerName}'s mwaliko", + "Participation marked as tentative" : "Ushiriki umetiwa alama kuwa wa majaribio", + "Invitation is delegated" : "Mwaliko umekabidhiwa", + "Not available" : "Haipatikani", + "Invitation declined" : "Mwaliko umekataliwa", + "Declined {organizerName}'s invitation" : "Mwaliko {organizerName}uliokataliwa", + "Availability will be checked" : "Upatikanaji utaangaliwa", + "Invitation will be sent" : "Mwaliko utatumwa", + "Failed to check availability" : "Imeshindwa kuangalia upatikanaji", + "Failed to deliver invitation" : "Imeshindwa kuwasilisha mwaliko", + "Awaiting response" : "Inasubiri majibu", + "Checking availability" : "Inaangalia upatikanaji", + "Has not responded to {organizerName}'s invitation yet" : "Anapaswa kuitika kwa {organizerName} bado mwaliko", + "Suggested times" : "Mida iliyopendekezwa", + "chairperson" : "mwenyekiti", + "required participant" : "mshiriki anayetakiwa", + "non-participant" : "hakuna mshiriki", + "optional participant" : "mshiriki mbadala", + "{organizer} (organizer)" : "{organizer} (mratibu)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Upatikanaji wa wahudhuriaji, maliasili na vyumba", + "Suggestion accepted" : "Pendekezo limekubaliwa", + "Previous date" : "Tarehe iliyopita", + "Next date" : "Tarehe inayofuata ", + "Legend" : "Hadithi", + "Out of office" : "Nje ya ofisi", + "Attendees:" : "Wahudhuriaji", + "Done" : "Imefanyika", + "Search room" : "Tafuta chumba", + "Room name" : "Jina la chumba", + "Check room availability" : "Tafuta chumba kinachopatikana", + "Free" : "Huru", + "Busy (tentative)" : "Bize (vumilivu)", + "Busy" : "Bize", + "Unknown" : "Haijulikani", + "Find a time" : "Tafuta muda", + "The invitation has been accepted successfully." : "Mwaliko umekubaliwa kikamilifu", + "Failed to accept the invitation." : "Mwaliko umeshindwa kukubaliwa", + "The invitation has been declined successfully." : "Mwaliko umekataliwa kikamilifu ", + "Failed to decline the invitation." : "Imeshindwa kukataa mwaliko", + "Your participation has been marked as tentative." : "Ushiriki wako umewekewa alama kawa wa uvumilivu", + "Failed to set the participation status to tentative." : "Imeshindwa kupanga hadhi ya ushiriki kwa uvumilivu", + "Accept" : "Kubali", + "Decline" : "Kataa", + "Tentative" : "Vumilivu", + "No attendees yet" : "Hakuna mhudhuriaji bado", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount}amealikwa,\n{confirmedCount}amethibitisha", + "Please add at least one attendee to use the \"Find a time\" feature." : "Tafadhali ongeza angalau mhudhuliaji mmoja wa kutumia sifa ya \"Tafuta muda\"", + "Successfully appended link to talk room to location." : "Kikmilifu kimeongezwa kiungo kwa chumba cha talk na eneo", + "Successfully appended link to talk room to description." : "Kikmilifu kimeongezwa kiungo kwa chumba cha talk na kwa maelezo", + "Error creating Talk room" : "Hitilafu kutengeneza chumba cha Talk", + "Attendees" : "Wahudhuriaji", + "_%n more guest_::_%n more guests_" : ["%n more guest","%n wageni zaidi"], + "Remove group" : "Ondoa kundi", + "Remove attendee" : "Ondoa mhudhuriaji", + "Request reply" : "Omba mrejesho", + "Chairperson" : "Mwenyekiti", + "Required participant" : "Mshiriki anayetakiwa", + "Optional participant" : "Mshiriki mbadala", + "Non-participant" : "Hakuna mshiriki", + "_%n member_::_%n members_" : ["%n member","%n wanachama"], + "Search for emails, users, contacts, contact groups or teams" : "Utafutaji wa barua pepe, watumiaji, namba, namba za makundi au timu", + "No match found" : "Haikupatikana inayofanana", + "Note that members of circles get invited but are not synced yet." : "Nukuu kwamba mzunguko wa wanachama wanapata kualikwa lakini bado hawajasawazishwa.", + "Note that members of contact groups get invited but are not synced yet." : "Nukuu kwamba wanachama wa nambaza makundi wanapata kualikwa lakini bado hawajasawazishwa.", + "(organizer)" : "(Mratibu)", + "Make {label} the organizer" : "Tengeneza{label}kuwa mratibu", + "Make {label} the organizer and attend" : "Tengeneza {label}kuwa mratibu na kuhudhuria", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Kutuma nje mialiko na majibu yaliyoshughulikiwa, [kiungo kiko wazi] ongeza anwani ya barua pepe yako katika mipangilio binafsi [kiungo kimefungwa]", + "Remove color" : "Ondoa rangi", + "Event title" : "Kichwa cha tukio", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Haiwezi kuboresha mpangilio wa siku nzima kwa tukio ambalo ni sehemu ya set ya kujirudia.", + "From" : "Tangu/ kutoka", + "To" : "Mpaka/ hadi", + "Repeat" : "Rudia", + "Repeat event" : "Rudia tukio", + "_time_::_times_" : ["time","mara"], + "never" : "kamwe", + "on date" : "kwa tarehe", + "after" : "baada ya", + "End repeat" : "Maliza kurudia", + "Select to end repeat" : "Chagua kumaliza kurudia", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Tukio hili ni mbadala unaojirudia wa set inayojirudia. Huwezi kuongeza kwake sheria inayojirudia.", + "first" : "kwanza", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Mabadiliko kwa sheria inayojirudia yatafanya kazi tu kwa hii na matukio yajayo.", + "Repeat every" : "Rudia kila", + "By day of the month" : "Kwa siku ya mwezi", + "On the" : "Juu ya", + "_day_::_days_" : ["day","siku"], + "_week_::_weeks_" : ["week","wiki"], + "_month_::_months_" : ["month","miezi"], + "_year_::_years_" : ["year","miaka"], + "On specific day" : "Kwa siku maalum", + "weekday" : "siku za wiki", + "weekend day" : "siku ya wikendi", + "Does not repeat" : "Hairudii", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Ufafanuzi wa kujirudia wa tukio hili haukubaliwi kikamilifu na Nextcloud. Ukihariri chaguo za kujirudia, baadhi ya marudio yanaweza kupotea.", + "No rooms or resources yet" : "Bado hakuna vyumba au nyenzo", + "Resources" : "Rasilimali/nyenzo", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} seat","{seatingCapacity} nafasi"], + "Add resource" : "Ongeza rasilimali", + "Has a projector" : "Ana projekta", + "Has a whiteboard" : "Ana ubao mweupe", + "Wheelchair accessible" : "Kiti cha mataili kinaweza kufikiwa", + "Remove resource" : "Ondoa rasilimali", + "Search for resources or rooms" : "Tafuta rasilimali au chumba", + "available" : "Inapatikana", + "unavailable" : "Haipatikani", + "Show all rooms" : "Onesha vyumba vyote", + "Projector" : "Projekta", + "Whiteboard" : "Ubao mweupe", + "Room type" : "Aina ya chumba", + "Any" : "Yoyote", + "Minimum seating capacity" : "Kiwango cha chini cha uwezo wa ukaaji", + "More details" : "Maelezo ya ziada", + "Update this and all future" : "Sasisha hii na zote wakati ujao", + "Update this occurrence" : "Sasisha mabadiliko haya", + "Public calendar does not exist" : "Kalenda ya umma haipatikani", + "Maybe the share was deleted or has expired?" : "Labda ushirikishaji umefutwa au umeisha muda wake", + "from {formattedDate}" : "kutoka{formattedDate}", + "to {formattedDate}" : "mpaka{formattedDate}", + "on {formattedDate}" : "juu ya {formattedDate}", + "from {formattedDate} at {formattedTime}" : "tangu{formattedDate}katika\n{formattedTime}", + "to {formattedDate} at {formattedTime}" : "mpaka{formattedDate}katika\n{formattedTime}", + "on {formattedDate} at {formattedTime}" : "juu ya {formattedDate}katika\n{formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} katika {formattedTime}", + "Please enter a valid date" : "Tafadhali ingiza tarehe halisi", + "Please enter a valid date and time" : "Tafadhali ingiza muda na tarehe halisi", + "Select a time zone" : "Chagua eneo la muda", + "Please select a time zone:" : "Tafadhali chagua eneo la muda", + "Pick a time" : "Chagua muda", + "Pick a date" : "Chagua tarehe", + "Type to search time zone" : "Andika kutafuta eneo la muda", + "Global" : "Kidunia", + "Holidays in {region}" : "Likizo katika {region}", + "An error occurred, unable to read public calendars." : "Hitilafu imetokea, haiwezi kusoma kalenda ya umma", + "An error occurred, unable to subscribe to calendar." : "Hitilafu imetokea, haiwezi kujisajili kwenye kalenda", + "Public holiday calendars" : "Kalenda za likizo za umma", + "Public calendars" : "Kalenda za umma", + "No valid public calendars configured" : "Hakuna kalenda halisi iliyosanidiwa", + "Speak to the server administrator to resolve this issue." : "Zungumza na msimamizi wa seva kutatua jambo hili", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Kalenda za umma za likizo zinagawiwa na Thunderbird. Data za kalenda zitapakuliwa kutoka {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Kalenda hizi za umma zinapendekezwa na msimamizi wa seva. Data ya kalenda itapakuliwa kutoka kwa tovuti husika.", + "By {authors}" : "Na{authors}", + "Subscribed" : "Iliyojisajili", + "Subscribe" : "Jisajili", + "Could not fetch slots" : "Haikuweza kuleta slots", + "Select a date" : "Chagua tarehe", + "Select slot" : "Chagua slot", + "No slots available" : "Hakuna slot inayopatikana", + "The slot for your appointment has been confirmed" : "Slot kwa muadi wako imethibitishwa", + "Appointment Details:" : "Maelezo ya kina ya muadi", + "Time:" : "Muda", + "Booked for:" : "Imekatishiwa nafasi kwa:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Asante. Ukatishaji wako wa nafasi kutoka {startDate}kwenda{endDate} umethibitishwa", + "Book another appointment:" : "Katisha nafasi ya muadi mwingine", + "See all available slots" : "Ona slot zote zinzopatikana", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Slot kwa muadi wako kutoka {startDate} kwenda {endDate} haupatikani tena", + "Please book a different slot:" : "Tafadhali katisha nafasi ya slot nyingine", + "Book an appointment with {name}" : "Katisha nafasi ya muadi na {name}", + "No public appointments found for {name}" : "Hakuna muadi wa umma uliopatikana kwa {name}", + "Personal" : "Binafsi", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Ugunduzi wa moja kwa moja wa saa za eneo uliamua muda wa eneo lako kuwa UTC\nHii inawezekana zaidi haya ni matokeo ya hatua za usalama za kivinjari chako cha wavuti", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Muda wako wa eneo uliosanidiwa ({timezoneId}) haukupatikana. Kuangukia nyuma kwa UTC\nTafadhali badili muda wako wa eneo katika mipangilio na toa taarifa ya jambo hili.", + "Availability of {displayName}" : "Upatikanaji wa {displayName}", + "Edit event" : "Hariri tukio", + "Event does not exist" : "Tukio halipatikani", + "Duplicate" : "Zalisha", + "Delete this occurrence" : "Futa tukio hili", + "Delete this and all future" : "Futa hii na muda wote ujao", + "All day" : "Siku yote", + "Modifications wont get propagated to the organizer and other attendees" : "Marekebisho hayataenezwa kwa mratibu na wahudhuriaji wengine", + "Managing shared access" : "Dhibiti ufikikaji shirikishi", + "Deny access" : "Zuia ufikikaji", + "Invite" : "Alika", + "_User requires access to your file_::_Users require access to your file_" : ["User requires access to your file","Watumiaji wanahitaji ufikiaji wa faili yako"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Attachment requires shared access","Viambatanisho vinavyohitaji ufikiaji wa pamoja"], + "Untitled event" : "Tukio lisilotajwa", + "Close" : "Funga", + "Modifications will not get propagated to the organizer and other attendees" : "Marekebisho hayataenezwa kwa mratibu na wahudhuriaji wengine", + "Subscribe to {name}" : "Jisajili kwa {name}", + "Export {name}" : "Agiza {name}", + "Show availability" : "Onesha upatikanaji", + "Anniversary" : "Maadhimisho ya miaka", + "Appointment" : "Muadi", + "Business" : "Biashara", + "Education" : "Elimu", + "Holiday" : "Likizo", + "Meeting" : "Mkutano", + "Miscellaneous" : "Mbalimbali", + "Non-working hours" : "Masaa yasiyo ya kazi", + "Not in office" : "Nje ya ofisi", + "Phone call" : "Mwito wa simu", + "Sick day" : "Siku ya kuumwa", + "Special occasion" : "Tukio maalum", + "Travel" : "Safari", + "Vacation" : "Likizo", + "Midnight on the day the event starts" : "Usiku wa manane siku ambayo tukio linaanza", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n day before the event at {formattedHourMinute}","%n siku kabla ya tukio katika {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n week before the event at {formattedHourMinute}","%n wiki kabla ya tukio katika {formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : "wakati wa siku ya tukio katika {formattedHourMinute}", + "at the event's start" : "Katika mwanzo wa tukio", + "at the event's end" : "Katika mwisho wa tukio", + "{time} before the event starts" : "{time} kabla ya tukio kuanza", + "{time} before the event ends" : "{time} kabla ya tukio kumalizika", + "{time} after the event starts" : "{time} baada ya tukio kuanza", + "{time} after the event ends" : "{time} baada ya tukio kumalizika", + "on {time}" : "juu ya {time}", + "on {time} ({timezoneId})" : "juu ya {time} ({timezoneId})", + "Week {number} of {year}" : "Wiki {number} wa {year}", + "Daily" : "Kwa kila siku", + "Weekly" : "Kwa kila wiki", + "Monthly" : "Kwa kila mwezi", + "Yearly" : "Kwa kila mwaka", + "_Every %n day_::_Every %n days_" : ["Every %n day","Kila %n siku"], + "_Every %n week_::_Every %n weeks_" : ["Every %n week","Kila %n wiki"], + "_Every %n month_::_Every %n months_" : ["Every %n month","Kila %n miezi"], + "_Every %n year_::_Every %n years_" : ["Every %n year","Kila %n miaka"], + "_on {weekday}_::_on {weekdays}_" : ["on {weekday}","kwenye {weekdays}"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["on day {dayOfMonthList}","katika siku {dayOfMonthList}"], + "on the {ordinalNumber} {byDaySet}" : "kwenye {ordinalNumber} {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "katika {monthNames} juu ya {dayOfMonthList}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "katika {monthNames} juu ya {ordinalNumber} {byDaySet}", + "until {untilDate}" : "mpaka {untilDate}", + "_%n time_::_%n times_" : ["%n time","%n mara"], + "second" : "pili", + "third" : "tatu", + "fourth" : "nne", + "fifth" : "tano", + "second to last" : "pili kutoka mwisho", + "last" : "mwisho", + "Untitled task" : "Kazi zisizo na jina", + "Please ask your administrator to enable the Tasks App." : "Tafadhali uliza msimamizi wako kuwezesha kazi za App", + "You are not allowed to edit this event as an attendee." : "Huruhusiwi kuhariri tukio hili kama mhudhuriaji", + "W" : "W", + "%n more" : "%n zaidi", + "No events to display" : "Hakuna tukio lililooneshwa", + "All participants declined" : "Washiriki wote walikataa", + "Please confirm your participation" : "Tafadhali thibitisha ushiriki wako", + "You declined this event" : "Umekataa tukio hili", + "Your participation is tentative" : "Ushiriki wako ni wa uvumilivu", + "_+%n more_::_+%n more_" : ["+%n more","+%n zaidi"], + "No events" : "Hakuna tukio", + "Create a new event or change the visible time-range" : "Tengeneza tukio jipya au badili masafa ya wakati yanayoonekana", + "Failed to save event" : "Imeshindikana kuhifadhi tukio", + "It might have been deleted, or there was a typo in a link" : "Huenda ilifutwa au kulikuwa na makosa ya uandishi katika kiungio", + "It might have been deleted, or there was a typo in the link" : "Huenda ilifutwa au kulikuwa na makosa ya uandishi katika kiungio", + "Meeting room" : "Chumba cha mikutano", + "Lecture hall" : "Bwalo la mihadhara", + "Seminar room" : "Chumba cha semina", + "Other" : "Mengine", + "When shared show" : "Iliyoshirikishwa inapoonesha", + "When shared show full event" : "Iliyoshirikishwa inapoonesha tukio zima", + "When shared show only busy" : "Iliyoshirikishwa inapoonesha ubize tu", + "When shared hide this event" : "Iliyoshirikishwa inapoficha tukio hili", + "The visibility of this event in shared calendars." : "Mwonekano wa tukio hili katika kalenda zilizoshirikiwa.", + "Add a location" : "Ongeza eneo", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Ongeza maelezo\n\nMkutano huu unahusu nini\nVipengele vya ajenda- kitu chochote mshiriki anahitaji kuandaa", + "Status" : "Wadhifa", + "Confirmed" : "Imethibitishwa", + "Canceled" : "Imesitishwa", + "Confirmation about the overall status of the event." : "Uthibitisho kuhusu hali ya jumla ya tukio.", + "Show as" : "Onesha kama", + "Take this event into account when calculating free-busy information." : "Zingatia tukio hili wakati wa kukokotoa maelezo yasiyo na shughuli nyingi.\n ", + "Categories" : "Vipengele", + "Categories help you to structure and organize your events." : "Vipengele vinakusaidia kuunda na kupanga matukio yako", + "Search or add categories" : "Tafuta au ongeza vipengele", + "Add this as a new category" : "Ongeza hii kama kipengele kipya", + "Custom color" : "Rangi maalum", + "Special color of this event. Overrides the calendar-color." : "Rangi maalum ya tukio hili. Inabatilisha rangi ya kalenda.", + "Error while sharing file" : "Hitilafu wakati wa kushirikisha faili", + "Error while sharing file with user" : "Hitilafu ikishirikisha faili na mtumiaji", + "Error creating a folder {folder}" : "Hitilafu wakati wa kutengeneza folda {folder}", + "Attachment {fileName} already exists!" : "Kiambatanisho {fileName}kimeshajitokeza", + "Attachment {fileName} added!" : "Kiambatanisho {fileName}kimeongezwa", + "An error occurred during uploading file {fileName}" : "Hitilafu ilitokea wakati wa kupakia faili {fileName}", + "An error occurred during getting file information" : "Hitilafu imetokea wakati wa kupata taarifa za faili", + "Talk conversation for event" : "Mazungumzo ya Talk kwa tukio", + "An error occurred, unable to delete the calendar." : "Hitilafu imetokea, haiwezi kufuta kalenda", + "Imported {filename}" : "Imeagizwa {filename}", + "This is an event reminder." : "Hiki ni kikumbishi cha tukio", + "Error while parsing a PROPFIND error" : "Hitilafu wakati wa kuchanganua hitilafu ya PROPFIND", + "Appointment not found" : "Muadi haupatikani", + "User not found" : "Mtumiaji hapatikani", + "Reminder" : "Kikumbushio", + "+ Add reminder" : "+ Ongeza kikumbushio", + "Select automatic slot" : "Chagua slot ya moja kwa moja", + "with" : "na", + "Available times:" : "Muda unaopatikana", + "Suggestions" : "Mapendekezo", + "Details" : "Maelezo ya kina" +},"pluralForm" :"nplurals=2; plural=(n != 1);" +} \ No newline at end of file diff --git a/l10n/ta.js b/l10n/ta.js index fdd23f6b6e07b0ef41f1819a415eebda7db95d65..66b100d564225a9860260b82492c0c1b6a1e0ebd 100644 --- a/l10n/ta.js +++ b/l10n/ta.js @@ -8,13 +8,17 @@ OC.L10N.register( "List" : "List", "Edit" : "தொகுக்க", "Delete" : "நீக்குக", + "New calendar" : "புதிய நாட்காட்டி", "Export" : "ஏற்றுமதி", + "Name" : "பெயர்", + "Restore" : "மீட்டெடு", + "Delete permanently" : "நிரந்தரமாக நீக்கவும்", "Share link" : "Share link", "can edit" : "தொகுக்க முடியும்", - "New calendar" : "புதிய நாட்காட்டி", - "Name" : "பெயர்", + "Save" : "சேமிக்க ", "Cancel" : "இரத்து செய்க", "Actions" : "செயல்கள்", + "Update" : "இற்றைப்படுத்தல்", "Location" : "இடம்", "Description" : "விவரிப்பு", "Add" : "சேர்க்க", @@ -25,21 +29,17 @@ OC.L10N.register( "Friday" : "வெள்ளிக்கிழமை", "Saturday" : "சனிக்கிழமை", "Sunday" : "ஞாயிற்றுக்கிழமை", - "Save" : "சேமிக்க ", - "Update" : "இற்றைப்படுத்தல்", "Your email address" : "உங்களுடைய மின்னஞ்சல் முகவரி", + "Back" : "பின்னுக்கு", "Email" : "மின்னஞ்சல்", + "Done" : "Done", "Unknown" : "தெரியாத", + "Attendees" : "பங்கேற்பாளர்கள்", "Repeat" : "மீண்டும்", "never" : "ஒருபோதும்", - "More" : "மேலதிக", "Personal" : "தனிப்பட்ட", - "Details" : "விவரங்கள்", - "Attendees" : "பங்கேற்பாளர்கள்", "Close" : "மூடுக", - "Prev" : "Prev", - "Next" : "அடுத்த", "Other" : "மற்றவை", - "Birthday" : "பிறந்த நாள்" + "Details" : "விவரங்கள்" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/ta.json b/l10n/ta.json index a032c8b13ac2fcb1d67d76f50f3716dc07c13172..95429c236d7216f2165ced0bd0ab8b157c310397 100644 --- a/l10n/ta.json +++ b/l10n/ta.json @@ -6,13 +6,17 @@ "List" : "List", "Edit" : "தொகுக்க", "Delete" : "நீக்குக", + "New calendar" : "புதிய நாட்காட்டி", "Export" : "ஏற்றுமதி", + "Name" : "பெயர்", + "Restore" : "மீட்டெடு", + "Delete permanently" : "நிரந்தரமாக நீக்கவும்", "Share link" : "Share link", "can edit" : "தொகுக்க முடியும்", - "New calendar" : "புதிய நாட்காட்டி", - "Name" : "பெயர்", + "Save" : "சேமிக்க ", "Cancel" : "இரத்து செய்க", "Actions" : "செயல்கள்", + "Update" : "இற்றைப்படுத்தல்", "Location" : "இடம்", "Description" : "விவரிப்பு", "Add" : "சேர்க்க", @@ -23,21 +27,17 @@ "Friday" : "வெள்ளிக்கிழமை", "Saturday" : "சனிக்கிழமை", "Sunday" : "ஞாயிற்றுக்கிழமை", - "Save" : "சேமிக்க ", - "Update" : "இற்றைப்படுத்தல்", "Your email address" : "உங்களுடைய மின்னஞ்சல் முகவரி", + "Back" : "பின்னுக்கு", "Email" : "மின்னஞ்சல்", + "Done" : "Done", "Unknown" : "தெரியாத", + "Attendees" : "பங்கேற்பாளர்கள்", "Repeat" : "மீண்டும்", "never" : "ஒருபோதும்", - "More" : "மேலதிக", "Personal" : "தனிப்பட்ட", - "Details" : "விவரங்கள்", - "Attendees" : "பங்கேற்பாளர்கள்", "Close" : "மூடுக", - "Prev" : "Prev", - "Next" : "அடுத்த", "Other" : "மற்றவை", - "Birthday" : "பிறந்த நாள்" + "Details" : "விவரங்கள்" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/th.js b/l10n/th.js index 5d979d0a4c72b47aa5738d315c787aaa7da8e05d..3ed84e1ff3da567b46e76a9d700603b16808b769 100644 --- a/l10n/th.js +++ b/l10n/th.js @@ -1,41 +1,50 @@ OC.L10N.register( "calendar", { - "Provided email-address is not valid" : "ผู้ให้บริการอีเมลไม่ถูกต้อง", - "%s has published the calendar »%s«" : "%s ได้เผยแพร่ปฏิทิน %s", - "Unexpected error sending email. Please contact your administrator." : "เกิดข้อผิดพลาดไม่คาดคิดขณะส่งอีเมล โปรดติดต่อผู้ดูแล", + "Provided email-address is not valid" : "ที่อยู่อีเมลที่ระบุไว้ไม่ถูกต้อง", + "%s has published the calendar »%s«" : "%s ได้เผยแพร่ปฏิทิน »%s«", + "Unexpected error sending email. Please contact your administrator." : "เกิดข้อผิดพลาดไม่คาดคิดขณะส่งอีเมล โปรดติดต่อผู้ดูแลระบบของคุณ", "Successfully sent email to %1$s" : "ส่งอีเมลถึง %1$s สำเร็จ", "Hello," : "สวัสดี", "Open »%s«" : "เปิด »%s«", "Cheers!" : "ไชโย!", - "Confirm" : "ยืนยัน", "Calendar" : "ปฏิทิน", - "New event" : "เหตุการณ์ใหม่", + "Confirm" : "ยืนยัน", + "Previous year" : "ปีที่แล้ว", + "Next year" : "ปีหน้า", "Today" : "วันนี้", "Day" : "วัน", "Week" : "สัปดาห์", "Month" : "เดือน", + "Year" : "ปี", "Preview" : "ตัวอย่าง", "Copy link" : "คัดลอกลิงก์", "Edit" : "แก้ไข", "Delete" : "ลบ", - "Export" : "ส่งออก", - "Share link" : "แชร์ลิงค์", - "Share with users or groups" : "แชร์กับผู้ใช้หรือกลุ่ม", - "can edit" : "สามารถแก้ไข", + "Create new" : "สร้างใหม่", + "Calendars" : "ปฏิทิน", "New calendar" : "สร้างปฏิทินใหม่", + "Export" : "ส่งออก", + "Empty trash bin" : "ล้างข้อมูลในถังขยะ", "Name" : "ชื่อ", "Deleted" : "ลบแล้ว", "Restore" : "คืนค่า", "Delete permanently" : "ลบแบบถาวร", - "Empty trash bin" : "ล้างข้อมูลในถังขยะ", + "Hidden" : "ซ่อนอยู่", + "Share link" : "แชร์ลิงก์", + "can edit" : "สามารถแก้ไข", + "Share with users or groups" : "แชร์กับผู้ใช้หรือกลุ่ม", + "Save" : "บันทึก", "Filename" : "ชื่อไฟล์", "Cancel" : "ยกเลิก", "Automatic" : "อัตโนมัติ", + "Year view" : "มุมมองรายปี", "List view" : "มุมมองแบบรายการ", "Actions" : "การกระทำ", - "Location" : "ตำแหน่งที่อยู่", - "Description" : "รายละเอียด", + "_{duration} year_::_{duration} years_" : ["{duration}ปี"], + "Update" : "อัปเดต", + "Location" : "ตำแหน่ง", + "Description" : "คำอธิบาย", "to" : "ถึง", "Add" : "เพิ่ม", "Monday" : "วันจันทร์", @@ -45,41 +54,46 @@ OC.L10N.register( "Friday" : "วันศุกร์", "Saturday" : "วันเสาร์", "Sunday" : "วันอาทิตย์", - "Save" : "บันทึก", - "Update" : "อัพเดท", "Your email address" : "ที่อยู่อีเมลของคุณ", + "Notification" : "การแจ้งเตือน", "Email" : "อีเมล", + "seconds" : "วินาที", + "minutes" : "นาที", + "hours" : "ชั่วโมง", + "days" : "วัน", + "weeks" : "สัปดาห์", + "Choose a file to add as attachment" : "เลือกไฟล์ที่ต้องการแนบ", + "Delete file" : "ลบไฟล์", "Unknown" : "ไม่ทราบ", "Accept" : "ยอมรับ", "Decline" : "ปฏิเสธ", "Tentative" : "ชั่วคราว", - "Send email" : "ส่งอีเมล", + "Attendees" : "ผู้เข้าร่วมกิจกรรม", + "Remove group" : "ลบกลุ่ม", "Repeat" : "ทำซ้ำ", "never" : "ไม่ต้องเลย", - "after" : "หลัง", - "More" : "เพิ่มเติม", + "after" : "หลังจาก", + "Resources" : "ทรัพยากร", "Pick a date" : "เลือกวันที่", "Global" : "ทั่วไป", + "Subscribe" : "สมัครรับข้อมูล", "Personal" : "ส่วนตัว", - "Details" : "รายละเอียด", - "Attendees" : "ผู้เข้าร่วมกิจกรรม", + "Edit event" : "แก้ไขกิจกรรม", "Close" : "ปิด", "Anniversary" : "วันครบรอบ", "Week {number} of {year}" : "สัปดาห์ที่ {number} ของปี {year}", - "Daily" : "รุ่นรายวัน", + "Daily" : "รายวัน", "Weekly" : "รายสัปดาห์", - "Next" : "ถัดไป", + "Monthly" : "ทุก ๆ เดือน", + "Yearly" : "ทุก ๆ ปี", + "second" : "วินาที", "Other" : "อื่น ๆ", - "When shared show full event" : "เมื่อแชร์จะแสดงกิจกรรมทั้งหมด", + "When shared show full event" : "เมื่อแชร์จะแสดงกิจกรรมเต็ม", "When shared show only busy" : "เมื่อแชร์จะแสดงเฉพาะไม่ว่าง", "When shared hide this event" : "เมื่อแชร์จะซ่อนกิจกรรมนี้", "Status" : "สถานะ", - "Confirmed" : "ได้รับการยืนยันแล้ว", + "Confirmed" : "ยืนยันแล้ว", "Categories" : "หมวดหมู่", - "Commuting" : "กำลังเดินทาง", - "Presentation" : "งานนำเสนอ", - "Office" : "สำนักงาน", - "Mail" : "จดหมาย", - "Birthday" : "วันเกิด" + "Details" : "รายละเอียด" }, "nplurals=1; plural=0;"); diff --git a/l10n/th.json b/l10n/th.json index ec427cc8bc59d31721c081a6c304dc59d2337449..8d82ca32df2bcb6a5b8b7d7f74eb68f38db27bd5 100644 --- a/l10n/th.json +++ b/l10n/th.json @@ -1,39 +1,48 @@ { "translations": { - "Provided email-address is not valid" : "ผู้ให้บริการอีเมลไม่ถูกต้อง", - "%s has published the calendar »%s«" : "%s ได้เผยแพร่ปฏิทิน %s", - "Unexpected error sending email. Please contact your administrator." : "เกิดข้อผิดพลาดไม่คาดคิดขณะส่งอีเมล โปรดติดต่อผู้ดูแล", + "Provided email-address is not valid" : "ที่อยู่อีเมลที่ระบุไว้ไม่ถูกต้อง", + "%s has published the calendar »%s«" : "%s ได้เผยแพร่ปฏิทิน »%s«", + "Unexpected error sending email. Please contact your administrator." : "เกิดข้อผิดพลาดไม่คาดคิดขณะส่งอีเมล โปรดติดต่อผู้ดูแลระบบของคุณ", "Successfully sent email to %1$s" : "ส่งอีเมลถึง %1$s สำเร็จ", "Hello," : "สวัสดี", "Open »%s«" : "เปิด »%s«", "Cheers!" : "ไชโย!", - "Confirm" : "ยืนยัน", "Calendar" : "ปฏิทิน", - "New event" : "เหตุการณ์ใหม่", + "Confirm" : "ยืนยัน", + "Previous year" : "ปีที่แล้ว", + "Next year" : "ปีหน้า", "Today" : "วันนี้", "Day" : "วัน", "Week" : "สัปดาห์", "Month" : "เดือน", + "Year" : "ปี", "Preview" : "ตัวอย่าง", "Copy link" : "คัดลอกลิงก์", "Edit" : "แก้ไข", "Delete" : "ลบ", - "Export" : "ส่งออก", - "Share link" : "แชร์ลิงค์", - "Share with users or groups" : "แชร์กับผู้ใช้หรือกลุ่ม", - "can edit" : "สามารถแก้ไข", + "Create new" : "สร้างใหม่", + "Calendars" : "ปฏิทิน", "New calendar" : "สร้างปฏิทินใหม่", + "Export" : "ส่งออก", + "Empty trash bin" : "ล้างข้อมูลในถังขยะ", "Name" : "ชื่อ", "Deleted" : "ลบแล้ว", "Restore" : "คืนค่า", "Delete permanently" : "ลบแบบถาวร", - "Empty trash bin" : "ล้างข้อมูลในถังขยะ", + "Hidden" : "ซ่อนอยู่", + "Share link" : "แชร์ลิงก์", + "can edit" : "สามารถแก้ไข", + "Share with users or groups" : "แชร์กับผู้ใช้หรือกลุ่ม", + "Save" : "บันทึก", "Filename" : "ชื่อไฟล์", "Cancel" : "ยกเลิก", "Automatic" : "อัตโนมัติ", + "Year view" : "มุมมองรายปี", "List view" : "มุมมองแบบรายการ", "Actions" : "การกระทำ", - "Location" : "ตำแหน่งที่อยู่", - "Description" : "รายละเอียด", + "_{duration} year_::_{duration} years_" : ["{duration}ปี"], + "Update" : "อัปเดต", + "Location" : "ตำแหน่ง", + "Description" : "คำอธิบาย", "to" : "ถึง", "Add" : "เพิ่ม", "Monday" : "วันจันทร์", @@ -43,41 +52,46 @@ "Friday" : "วันศุกร์", "Saturday" : "วันเสาร์", "Sunday" : "วันอาทิตย์", - "Save" : "บันทึก", - "Update" : "อัพเดท", "Your email address" : "ที่อยู่อีเมลของคุณ", + "Notification" : "การแจ้งเตือน", "Email" : "อีเมล", + "seconds" : "วินาที", + "minutes" : "นาที", + "hours" : "ชั่วโมง", + "days" : "วัน", + "weeks" : "สัปดาห์", + "Choose a file to add as attachment" : "เลือกไฟล์ที่ต้องการแนบ", + "Delete file" : "ลบไฟล์", "Unknown" : "ไม่ทราบ", "Accept" : "ยอมรับ", "Decline" : "ปฏิเสธ", "Tentative" : "ชั่วคราว", - "Send email" : "ส่งอีเมล", + "Attendees" : "ผู้เข้าร่วมกิจกรรม", + "Remove group" : "ลบกลุ่ม", "Repeat" : "ทำซ้ำ", "never" : "ไม่ต้องเลย", - "after" : "หลัง", - "More" : "เพิ่มเติม", + "after" : "หลังจาก", + "Resources" : "ทรัพยากร", "Pick a date" : "เลือกวันที่", "Global" : "ทั่วไป", + "Subscribe" : "สมัครรับข้อมูล", "Personal" : "ส่วนตัว", - "Details" : "รายละเอียด", - "Attendees" : "ผู้เข้าร่วมกิจกรรม", + "Edit event" : "แก้ไขกิจกรรม", "Close" : "ปิด", "Anniversary" : "วันครบรอบ", "Week {number} of {year}" : "สัปดาห์ที่ {number} ของปี {year}", - "Daily" : "รุ่นรายวัน", + "Daily" : "รายวัน", "Weekly" : "รายสัปดาห์", - "Next" : "ถัดไป", + "Monthly" : "ทุก ๆ เดือน", + "Yearly" : "ทุก ๆ ปี", + "second" : "วินาที", "Other" : "อื่น ๆ", - "When shared show full event" : "เมื่อแชร์จะแสดงกิจกรรมทั้งหมด", + "When shared show full event" : "เมื่อแชร์จะแสดงกิจกรรมเต็ม", "When shared show only busy" : "เมื่อแชร์จะแสดงเฉพาะไม่ว่าง", "When shared hide this event" : "เมื่อแชร์จะซ่อนกิจกรรมนี้", "Status" : "สถานะ", - "Confirmed" : "ได้รับการยืนยันแล้ว", + "Confirmed" : "ยืนยันแล้ว", "Categories" : "หมวดหมู่", - "Commuting" : "กำลังเดินทาง", - "Presentation" : "งานนำเสนอ", - "Office" : "สำนักงาน", - "Mail" : "จดหมาย", - "Birthday" : "วันเกิด" + "Details" : "รายละเอียด" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/tr.js b/l10n/tr.js index 81e075ed7d3bbb051cdf9f6d2fe0b109f3328444..8d1696c806a37280725158687606e7ce0845dde7 100644 --- a/l10n/tr.js +++ b/l10n/tr.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Belirtilen e-posta adresi çok uzun", "User-Session unexpectedly expired" : "Kullanıcı oturumunun geçerlilik süresi beklenmedik şekilde doldu", "Provided email-address is not valid" : "Belirtilen e-posta adresi geçersiz", "%s has published the calendar »%s«" : "%s, »%s« takvimini yayınladı", @@ -11,129 +12,161 @@ OC.L10N.register( "Open »%s«" : "»%s« aç", "Cheers!" : "Görüşmek üzere", "Upcoming events" : "Yaklaşan etkinlikler", + "No more events today" : "Bugün başka bir etkinlik yok", + "No upcoming events" : "Yaklaşan bir etkinlik yok", + "More events" : "Diğer etkinlikler", + "%1$s with %2$s" : "%2$s ile %1$s ", + "Calendar" : "Takvim", + "New booking {booking}" : "Yeni {booking} alma", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) \"{config_display_name}\" randevusunu aldı. Tarih: {date_time}.", "Appointments" : "Randevular", "Schedule appointment \"%s\"" : "\"%s\" randevusu al", "Schedule an appointment" : "Bir randevu alın", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "%s için hazırlan", "Follow up for %s" : "%s için takip", - "Your appointment \"%s\" needs confirmation" : "\"%s\" randevunuzun onaylanması gerekiyor", + "Your appointment \"%s\" with %s needs confirmation" : "\"%s\" randevunuzun (%s ile) onaylanması gerekiyor", "Dear %s, please confirm your booking" : "Sayın %s, lütfen randevunuzu onaylayın", "Confirm" : "Onayla", + "Appointment with:" : "Şu kişiyle randevu:", + "Description:" : "Açıklama:", "This confirmation link expires in %s hours." : "Bu onay bağlantısının geçerlilik süresi %s saat sonra dolacak.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Randevunuzu iptal etmek isterseniz, düzenleyici ile görüşün.", - "Appointment:" : "Randevu:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Sonuçta randevuyu iptal etmek isterseniz, lütfen bu e-postayı yanıtlayarak ya da profil sayfasını ziyaret ederek düzenleyici ile görüşün.", + "Your appointment \"%s\" with %s has been accepted" : "\"%s\" randevunuz (%s ile) onaylandı", + "Dear %s, your booking has been accepted." : "Sayın %s, randevunuz onaylandı.", + "Appointment for:" : "Randevu:", "Date:" : "Tarih:", + "You will receive a link with the confirmation email" : "E-posta ile bir doğrulama bağlantısı alacaksınız", "Where:" : "Yer:", - "Description:" : "Açıklama:", - "Calendar" : "Takvim", + "Comment:" : "Açıklama:", + "You have a new appointment booking \"%s\" from %s" : "\"%s\" randevusunu %s üzerinden aldınız", + "Dear %s, %s (%s) booked an appointment with you." : "Sayın %s, %s (%s) sizin için bir randevu aldı.", "A Calendar app for Nextcloud" : "Nextcloud takvim uygulaması", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Takvim uygulaması Nextcloud CalDAV sunucusunun kullanıcı arayüzüdür. Çeşitli aygıtlar üzerindeki etkinlikleri kolayca Nextcloud hesabınız ile eşitler ve çevrimiçi olarak düzenlemenizi sağlar.\n\n* 🚀 **Diğer Nextcloud uygulamaları ile bütünleşiktir!** Şu anda Kişiler, diğerleri yolda.\n* 🌐 **WebCal Desteği!** Tuttuğunuz takımın maçlarını takvimde görmek isterseniz sorun değil!\n* 🙋 **Katılımcılar!** Etkinliklerinize kişileri çağırabilirsiniz\n* ⌚️ **Serbest/Meşgul:** Katılımcılarınız ile ne zaman görüşebileceğinize bakabilirsiniz\n* ⏰ **Anımsatıcılar!** Etkinlik bildirimlerini web tarayıcınızdan ve e-posta olarak alabilirsiniz\n* 🔍 Arama! Etkinliklerinizi kolayca bulabilirsiniz\n* ☑️ Görevler! Görevleri bitiş tarihleri ile takvim üzerinde görebilirsiniz\n* 🙈 **Tekerleği yeniden keşfetmiyoruz!** Harika [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) ve [fullcalendar](https://github.com/fullcalendar/fullcalendar) kitaplıklarını kullanıyoruz.", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Nextcloud için Takvim uygulaması. Çeşitli aygıtlardaki etkinlikleri Nextcloud kopyanızla kolayca eşitleyin ve çevrim içi olarak düzenleyin.\n\n* 🚀 **Diğer Nextcloud uygulamalarıyla bütünleşik!** Kişiler, Konuş, Görevler, Tahta ve Çevreler gibi\n* 🌐 **WebCal Desteği!** Tuttuğunuz takımın maç günlerini takviminizde görmek ister misiniz? Sorun değil!\n* 🙋 **Katılımcılar!** Etkinliklerinize insanları davet edin\n* ⌚ **Boş/Meşgul!** Katılımcılarınızın ne zaman buluşmaya uygun olduğunu görün\n* ⏰ **Anımsatıcılar!** Tarayıcınızın içinden ve e-posta ile etkinliklerle ilgili uyarılar alın\n* 🔍 **Arama!** Etkinliklerinizi kolayca bulun\n* ☑️ **Görevler!** Görevleri veya Tahta kartlarını doğrudan takvimde son teslim tarihiyle görün\n* 🔈 **Konuş odaları!** Tek bir tıklamayla bir toplantı rezervasyonu yaparken ilişkili bir Konuş odası oluşturun\n* 📆 **Randevu rezervasyonu** İnsanlara bir bağlantı gönderin, böylece sizinle [bu uygulamayı kullanarak](https://apps.nextcloud.com/apps/appointments) randevu alabilirler\n* 📎 **Ek dosyalar!** Etkinliklere dosyalar ekleyin, yükleyin ve görüntüleyin\n* 🙈 **Tekerleği yeniden icat etmiyoruz!** Harika [c-dav kitaplığı](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) ve [fullcalendar](https://github.com/fullcalendar/fullcalendar) kitaplıkları.", "Previous day" : "Önceki gün", "Previous week" : "Önceki hafta", + "Previous year" : "Önceki yıl", "Previous month" : "Önceki ay", "Next day" : "Sonraki gün", "Next week" : "Sonraki hafta", + "Next year" : "Sonraki yıl", "Next month" : "Sonraki ay", - "New event" : "Yeni etkinlik", + "Create new event" : "Etkinlik ekle", + "Event" : "Etkinlik", "Today" : "Bugün", "Day" : "Gün", "Week" : "Hafta", "Month" : "Ay", + "Year" : "Yıl", "List" : "Listele", + "Appointment link was copied to clipboard" : "Randevu bağlantısı panoya kopyalandı", + "Appointment link could not be copied to clipboard" : "Randevu bağlantısı panoya kopyalanamadı", "Preview" : "Ön izleme", "Copy link" : "Bağlantıyı kopyala", "Edit" : "Düzenle", "Delete" : "Sil", - "Appointment link was copied to clipboard" : "Randevu bağlantısı panoya kopyalandı", - "Appointment link could not be copied to clipboard" : "Randevu bağlantısı panoya kopyalanamadı", - "Add new" : "Yeni ekle", - "Untitled calendar" : "Adsız takvim", - "Edit name" : "Adı düzenle", - "Saving name …" : "Ad kaydediliyor …", - "Edit color" : "Rengi düzenle", - "Saving color …" : "Renk kaydediliyor …", - "Copy private link" : "Kişisel bağlantıyı kopyala", - "Export" : "Dışa aktar", - "Unshare from me" : "Benimle paylaşımı kaldır", - "Disable calendar \"{calendar}\"" : "\"{calendar}\" takvimini devre dışı bırak", - "Disable untitled calendar" : "Başlıksız takvimi devre dışı bırak", - "Enable calendar \"{calendar}\"" : "\"{calendar}\" takvimini etkinleştir", - "Enable untitled calendar" : "Başlıksız takvimi etkinleştir", + "Appointment schedules" : "Randevu zamanları", + "Create new" : "Yeni ekle", + "Disable calendar \"{calendar}\"" : "\"{calendar}\" takvimini kullanımdan kaldır", + "Disable untitled calendar" : "Adlandırılmamış takvimi kullanımdan kaldır", + "Enable calendar \"{calendar}\"" : "\"{calendar}\" takvimini kullanıma al", + "Enable untitled calendar" : "Adlandırılmamış takvimi kullanıma al", "An error occurred, unable to change visibility of the calendar." : "Bir sorun çıktı. Takvimin görünürlüğü değiştirilemedi.", - "An error occurred, unable to delete the calendar." : "Bir sorun çıktı. Takvim silinemedi.", - "Calendar link copied to clipboard." : "Takvim bağlantısı panoya kopyalandı.", - "Calendar link could not be copied to clipboard." : "Takvim bağlantısı panoya kopyalanamadı.", - "An error occurred, unable to rename the calendar." : "Bir sorun çıktı. Takvim yeniden adlandırılamadı.", - "An error occurred, unable to change the calendar's color." : "Bir sorun çıktı. Takvimin rengi değiştirilemedi.", + "Untitled calendar" : "Adlandırılmamış takvim", + "Shared with you by" : "Sizinle paylaşan", + "Edit and share calendar" : "Takvimi düzenle ve paylaş", + "Edit calendar" : "Takvimi düzenle", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Takvim {countdown} saniye içinde paylaşımdan kaldırılacak","Takvim {countdown} saniye içinde paylaşımdan kaldırılacak"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Takvim {countdown} saniye içinde silinecek","Takvim {countdown} saniye içinde silinecek"], - "Share link" : "Paylaşım bağlantısı", - "Publish calendar" : "Takvimi yayınla", - "Publishing calendar" : "Takvim yayınlanıyor", - "Copy public link" : "Herkese açık bağlantıyı kopyala", - "Send link to calendar via email" : "Takvim bağlantısını e-posta ile gönder", - "Enter one address" : "Bir adres yazın", - "Sending email …" : "E-posta kaydediliyor …", - "Copy subscription link" : "Abonelik bağlantısını kopyala", - "Copying link …" : "Bağlantı kopyalanıyor …", - "Copied link" : "Bağlantı kopyalandı", - "Could not copy link" : "Bağlantı kopyalanamadı", - "Copy embedding code" : "Gömme kodunu kopyala", - "Copying code …" : "Kod kopyalanıyor …", - "Copied code" : "Kod kopyalandı", - "Could not copy code" : "Kod kopyalanamadı", - "Delete share link" : "Paylaşım bağlantısını sil", - "Deleting share link …" : "Paylaşım bağlantısı siliniyor …", - "An error occurred, unable to publish calendar." : "Bir sorun çıktı. Takvim yayınlanamadı.", - "An error occurred, unable to send email." : "Bir sorun çıktığından e-posta gönderilemedi.", - "Embed code copied to clipboard." : "Gömme kodu panoya kopyalandı.", - "Embed code could not be copied to clipboard." : "Gömme kodu panoya kopyalanamadı.", - "Unpublishing calendar failed" : "Takvim yayından kaldırılamadı", - "Share with users or groups" : "Kullanıcı ya da gruplar ile paylaş", - "No users or groups" : "Herhangi bir kullanıcı ya da grup yok", - "can edit" : "düzenleyebilir", - "Unshare with {displayName}" : "{displayName} ile paylaşımı kaldır", - "An error occurred, unable to change the unshare the calendar." : "Bir sorun çıktı. Takvimin paylaşımdan kaldırma ayarı değiştirilemedi.", - "An error occurred, unable to change the permission of the share." : "Bir sorun çıktı. Takvimin izin ayarı değiştirilemedi.", - "+ New calendar" : "+ Yeni takvim", + "An error occurred, unable to create the calendar." : "Bir sorun çıktı. Takvim eklenemedi.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Lütfen geçerli bir bağlantı yazın (http://, https://, webcal:// ya da webcals:// ile başlayan)", + "Calendars" : "Takvimler", + "Add new" : "Yeni ekle", "New calendar" : "Takvim ekle", "Name for new calendar" : "Yeni takvimin adı", "Creating calendar …" : "Takvim oluşturuluyor …", "New calendar with task list" : "Görev listesi ile yeni takvim", "New subscription from link (read-only)" : "Bağlantıdan yeni abonelik (salt okunur)", "Creating subscription …" : "Abonelik oluşturuluyor …", - "An error occurred, unable to create the calendar." : "Bir sorun çıktı. Takvim eklenemedi.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Lütfen geçerli bir bağlantı yazın (http://, https://, webcal:// ya da webcals:// ile başlayan)", + "Add public holiday calendar" : "Resmi tatil takvimi ekle", + "Add custom public calendar" : "Özel herkese açık takvim ekle", + "Calendar link copied to clipboard." : "Takvim bağlantısı panoya kopyalandı.", + "Calendar link could not be copied to clipboard." : "Takvim bağlantısı panoya kopyalanamadı.", + "Copy subscription link" : "Abonelik bağlantısını kopyala", + "Copying link …" : "Bağlantı kopyalanıyor …", + "Copied link" : "Bağlantı kopyalandı", + "Could not copy link" : "Bağlantı kopyalanamadı", + "Export" : "Dışa aktar", + "Untitled item" : "Adlandırılmamış öge", + "Unknown calendar" : "Bilinmeyen takvim", + "Could not load deleted calendars and objects" : "Silinmiş takvim ve nesneler yüklenemedi", + "Could not delete calendar or event" : "Takvim ya da etkinlik silinemedi", + "Could not restore calendar or event" : "Takvim ya da etkinlik geri yüklenemedi", + "Do you really want to empty the trash bin?" : "Çöp kutusunu boşaltmak istediğinize emin misiniz?", + "Empty trash bin" : "Çöp kutusunu boşalt", "Trash bin" : "Çöp kutusu", - "Loading deleted elements." : "Silinmiş bileşenler yükleniyor.", - "You do not have any deleted elements." : "Silinmiş herhangi bir bileşen yok.", + "Loading deleted items." : "Silinmiş ögeler yükleniyor.", + "You do not have any deleted items." : "Silinmiş herhangi bir ögeniz yok.", "Name" : "Ad", "Deleted" : "Silinmiş", "Restore" : "Geri yükle", "Delete permanently" : "Kalıcı olarak sil", - "Empty trash bin" : "Çöp kutusunu boşalt", - "Untitled element" : "Adsız öge", - "Unknown calendar" : "Bilinmeyen takvim", - "Could not load deleted calendars and objects" : "Silinmiş takvim ve nesneler yüklenemedi", - "Could not restore calendar or event" : "Takvim ya da etkinlik geri yüklenemedi", - "Do you really want to empty the trash bin?" : "Çöp kutusunu boşaltmak istediğinize emin misiniz?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Çöp kutusundaki ögeler {numDays} gün sonra silinir","Çöp kutusundaki ögeler {numDays} gün sonra silinir"], + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Çöp kutusundaki ögeler {numDays} gün sonra silinir","Çöp kutusundaki ögeler {numDays} gün sonra silinir"], "Could not update calendar order." : "Takvim sıralaması güncellenemedi.", + "Shared calendars" : "Paylaşılan takvimler", + "Deck" : "Tahta", + "Hidden" : "Gizli", + "Internal link" : "İç bağlantı", + "A private link that can be used with external clients" : "Dış istemcilerle kullanılabilecek özel bir bağlantı", + "Copy internal link" : "İç bağlantıyı kopyala", + "An error occurred, unable to publish calendar." : "Bir sorun çıktı. Takvim yayınlanamadı.", + "An error occurred, unable to send email." : "Bir sorun çıktığından e-posta gönderilemedi.", + "Embed code copied to clipboard." : "Gömme kodu panoya kopyalandı.", + "Embed code could not be copied to clipboard." : "Gömme kodu panoya kopyalanamadı.", + "Unpublishing calendar failed" : "Takvim yayından kaldırılamadı", + "Share link" : "Paylaşım bağlantısı", + "Copy public link" : "Herkese açık bağlantıyı kopyala", + "Send link to calendar via email" : "Takvim bağlantısını e-posta ile gönder", + "Enter one address" : "Bir adres yazın", + "Sending email …" : "E-posta kaydediliyor…", + "Copy embedding code" : "Gömme kodunu kopyala", + "Copying code …" : "Kod kopyalanıyor …", + "Copied code" : "Kod kopyalandı", + "Could not copy code" : "Kod kopyalanamadı", + "Delete share link" : "Paylaşım bağlantısını sil", + "Deleting share link …" : "Paylaşım bağlantısı siliniyor …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Takım)", + "An error occurred while unsharing the calendar." : "Takvim paylaşımdan kaldırılırken bir sorun çıktı", + "An error occurred, unable to change the permission of the share." : "Bir sorun çıktı. Takvimin izin ayarı değiştirilemedi.", + "can edit" : "düzenleyebilir", + "Unshare with {displayName}" : "{displayName} ile paylaşımı kaldır", + "Share with users or groups" : "Kullanıcı ya da gruplar ile paylaş", + "No users or groups" : "Herhangi bir kullanıcı ya da grup yok", + "Failed to save calendar name and color" : "Takvim adı ve rengi kaydedilemedi", + "Calendar name …" : "Takvim adı…", + "Never show me as busy (set this calendar to transparent)" : "Beni asla meşgul olarak gösterme (bu takvimi şeffaf olarak ayarla)", + "Share calendar" : "Takvimi paylaş", + "Unshare from me" : "Benimle paylaşımı kaldır", + "Save" : "Kaydet", "Import calendars" : "Takvimleri içe aktar", - "Please select a calendar to import into …" : "Lütfen içine aktarılacak bir takvim seçin …", + "Please select a calendar to import into …" : "Lütfen içine aktarılacak bir takvim seçin…", "Filename" : "Dosya adı", "Calendar to import into" : "İçine aktarılacak takvim", "Cancel" : "İptal", "_Import calendar_::_Import calendars_" : ["Takvimi içe aktar","Takvimleri içe aktar"], + "Select the default location for attachments" : "Ek dosyalarının varsayılan konumunu seçin", + "Pick" : "Seçin", + "Invalid location selected" : "Seçilen konum geçersiz", + "Attachments folder successfully saved." : "Ek dosya klasörü kaydedildi.", + "Error on saving attachments folder." : "Ek dosya klasörü kaydedilirken sorun çıktı.", + "Default attachments location" : "Ek dosyaların varsayılan konumu", "{filename} could not be parsed" : "{filename} işlenemedi", "No valid files found, aborting import" : "Geçerli bir dosya bulunamadı, içe aktarım iptal ediliyor", - "Import partially failed. Imported {accepted} out of {total}." : "Etkinliklerin tümü içe aktarılamadı. İçe aktarılan: {accepted}, toplam: {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n etkinlik içe aktarıldı","%n etkinlik içe aktarıldı"], + "Import partially failed. Imported {accepted} out of {total}." : "Etkinliklerin tümü içe aktarılamadı. İçe aktarılan: {accepted}, toplam: {total}.", "Automatic" : "Otomatik", "Automatic ({detected})" : "Otomatik ({detected})", "New setting was not saved successfully." : "Yeni ayarlar kaydedilemedi.", - "Shortcut overview" : "Kısayol özeti", - "or" : "ya da", "Navigation" : "Gezinme", "Previous period" : "Önceki dönem", "Next period" : "Sonraki dönem", @@ -141,6 +174,7 @@ OC.L10N.register( "Day view" : "Günlük görünüm", "Week view" : "Haftalık görünüm", "Month view" : "Aylık görünüm", + "Year view" : "Yıllık görünüm", "List view" : "Liste görünümü", "Actions" : "İşlemler", "Create event" : "Etkinlik ekle", @@ -149,25 +183,30 @@ OC.L10N.register( "Close editor" : "Düzenleyiciyi kapat", "Save edited event" : "Düzenlenmiş etkinliği kaydet", "Delete edited event" : "Düzenlenmiş etkinliği sil", - "Duplicate event" : "Etkinliği kopyala", + "Duplicate event" : "Etkinliği çoğalt", + "Shortcut overview" : "Kısayol özeti", + "or" : "ya da", + "Calendar settings" : "Takvim ayarları", + "At event start" : "Etkinlik başlangıcında", + "No reminder" : "Herhangi bir anımsatıcı yok", + "Failed to save default calendar" : "Varsayılan takvim kaydedilemedi", + "CalDAV link copied to clipboard." : "CalDAV bağlantısı panoya kopyalandı.", + "CalDAV link could not be copied to clipboard." : "CalDAV bağlantısı panoya kopyalanamadı.", "Enable birthday calendar" : "Doğum günü takvimi kullanılsın", "Show tasks in calendar" : "Görevler takvimde görüntülensin", "Enable simplified editor" : "Basitleştirilmiş düzenleyici kullanılsın", - "Limit visible events per view" : "Bir kerede görüntülenecek etkinlik sayısı", + "Limit the number of events displayed in the monthly view" : "Aylık görünümde görüntülenecek etkinlik sayısı sınırlansın", "Show weekends" : "Hafta sonları görüntülensin", "Show week numbers" : "Hafta numaraları görüntülensin", "Time increments" : "Zaman artışı", + "Default calendar for incoming invitations" : "Gelen davetler için varsayılan takvim", "Default reminder" : "Varsayılan anımsatıcı", "Copy primary CalDAV address" : "Birincil CalDAV adresini kopyala", "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV adresini kopyala", "Personal availability settings" : "Kişisel uygunluk ayarları", "Show keyboard shortcuts" : "Kısayol tuşlarını görüntüle", - "Calendar settings" : "Takvim ayarları", - "No reminder" : "Herhangi bir anımsatıcı yok", - "CalDAV link copied to clipboard." : "CalDAV bağlantısı panoya kopyalandı.", - "CalDAV link could not be copied to clipboard." : "CalDAV bağlantısı panoya kopyalanamadı.", - "Appointment was created successfully" : "Randevu oluşturuldu", - "Appointment was updated successfully" : "Randevu güncellendi", + "Appointment schedule successfully created" : "Randevu zamanı eklendi", + "Appointment schedule successfully updated" : "Randevu zamanı güncellendi", "_{duration} minute_::_{duration} minutes_" : ["{duration} dakika","{duration} dakika"], "0 minutes" : "0 dakika", "_{duration} hour_::_{duration} hours_" : ["{duration} saat","{duration} saat"], @@ -178,7 +217,14 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Randevuları yapılandırmak için kişisel ayarlar bölümünden e-posta adresinizi yazın.", "Public – shown on the profile page" : "Herkese açık - Profil sayfasında görüntülenir", "Private – only accessible via secret link" : "Bireysel - Yalnızca gizli bir bağlantı ile erişilebilir", + "Appointment schedule saved" : "Randevu zamanlaması kaydedildi", + "Create appointment schedule" : "Randevu zamanı ekle", + "Edit appointment schedule" : "Randevu zamanını düzenle", + "Update" : "Güncelle", + "Appointment name" : "Randevu adı", "Location" : "Konum", + "Create a Talk room" : "Bir Konuş odası oluştur", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Alınan her randevu için benzersiz bir bağlantı oluşturularak onay e-postası ile gönderilecek.", "Description" : "Açıklama", "Visibility" : "Görünürlük", "Duration" : "Süre", @@ -196,25 +242,37 @@ OC.L10N.register( "Friday" : "Cuma", "Saturday" : "Cumartesi", "Sunday" : "Pazar", + "Weekdays" : "Hafta içi günleri", "Add time before and after the event" : "Etkinlik öncesi ve sonrası zaman ekle", "Before the event" : "Etkinlik öncesi", "After the event" : "Etkinlik sonrası", "Planning restrictions" : "Planlama kısıtlamaları", "Minimum time before next available slot" : "Sonraki uygun aralıktan önceki en az süre", "Max slots per day" : "Bir gündeki en fazla aralık", - "Limit how far in the future appointments can be booked" : "Gelecekteki randevuların ne kadar uzağa ayırtılabileceğini sınırlayın", - "Create appointment" : "Randevu ekle", - "Edit appointment" : "Randevuyu düzenle", - "Save" : "Kaydet", - "Update" : "Güncelle", + "Limit how far in the future appointments can be booked" : "Gelecekteki randevuların ne kadar uzağa alınabileceğini sınırlayın", + "It seems a rate limit has been reached. Please try again later." : "Sınıra ulaşıldı. Lütfen bir süre sonra yeniden deneyin.", "Please confirm your reservation" : "Lütfen randevunuzu onaylayın", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Randevu bilgilerinizi içeren bir e-posta gönderildi. Randevunuzu onaylamak için lütfen e-posta içeriğindeki bağlantıya tıklayın. Bu sayfayı kapatabilirsiniz.", "Your name" : "Adınız", "Your email address" : "E-posta adresiniz", "Please share anything that will help prepare for our meeting" : "Lütfen görüşmeye hazırlanmak için yardımcı olabilecek şeyleri paylaşın", "Could not book the appointment. Please try again later or contact the organizer." : "Randevu alınamadı. Lütfen bir süre sonra yeniden deneyin ya da düzenleyici ile görüşün.", - "Book the appointment" : "Randevu al", - "Reminder" : "Anımsatıcı", + "Back" : "Geri", + "Book appointment" : "Randevu al", + "Error fetching Talk conversations." : "Konuş görüşmeleri alınırken sorun çıktı.", + "Conversation does not have a valid URL." : "Görüşmenin geçerli bir adresi yok.", + "Successfully added Talk conversation link to location." : "Konuş görüşme bağlantısı konuma eklendi.", + "Successfully added Talk conversation link to description." : "Konuş görüşme bağlantısı açıklamaya eklendi.", + "Failed to apply Talk room." : "Konuş odası uygulanamadı.", + "Error creating Talk conversation" : "Konuş görüşmesi oluşturulurken sorun çıktı", + "Select a Talk Room" : "Bir Konuş odası seçin", + "Add Talk conversation" : "Konuş görüşmesi ekle", + "Fetching Talk rooms…" : "Konuş odaları alınıyor…", + "No Talk room available" : "Kullanılabilecek bir Konuş odası yok", + "Create a new conversation" : "Yeni bir görüşme oluştur", + "Select conversation" : "Görüşme seçin", + "on" : "şu gün", + "at" : "şu saatte", "before at" : "şundan önce", "Notification" : "Bildirim", "Email" : "E-posta", @@ -225,114 +283,143 @@ OC.L10N.register( "Edit time" : "Zamanı düzenle", "Save time" : "Zamanı kaydet", "Remove reminder" : "Anımsatıcıyı kaldır", - "on" : "şu gün", - "at" : "şu saatte", - "+ Add reminder" : "+ Anımsatıcı ekle", "Add reminder" : "Anımsatıcı ekle", - "_second_::_seconds_" : ["saniye","saniye"], - "_minute_::_minutes_" : ["dakika","dakika"], - "_hour_::_hours_" : ["saat","saat"], - "_day_::_days_" : ["gün","gün"], - "_week_::_weeks_" : ["hafta","hafta"], + "seconds" : "saniye", + "minutes" : "dakika", + "hours" : "saat", + "days" : "gün", + "weeks" : "hafta", + "Choose a file to add as attachment" : "Ek dosya olarak eklenecek dosyayı seçin", + "Choose a file to share as a link" : "Bağlantı olarak paylaşılacak bir dosya seçin", + "Attachment {name} already exist!" : "{name} ek dosyası zaten var!", + "Could not upload attachment(s)" : "Ek dosyalar yüklenemedi", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Bir dosyayı indirmek üzeresiniz. Lütfen dosyayı açmadan önce adını kontrol edin. İlerlemek istediğinize emin misiniz?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "{host} bağlantısını açmak üzeresiniz. İlerlemek istediğinize emin misiniz? Bağlantı: {link}", + "Proceed" : "İlerle", + "No attachments" : "Herhangi bir ek dosya yok", + "Add from Files" : "Dosyalardan ekle", + "Upload from device" : "Aygıttan yükle", + "Delete file" : "Dosyayı sil", + "Confirmation" : "Onaylama", + "_{count} attachment_::_{count} attachments_" : ["{count} ek dosya","{count} ek dosya"], "Suggested" : "Önerildi", "Available" : "Uygun", + "Invitation accepted" : "Davet kabul edildi", + "Accepted {organizerName}'s invitation" : "{organizerName} tarafından yapılan davet kabul edildi", + "Participation marked as tentative" : "Katılım belirsiz olarak işaretlendi", + "Invitation is delegated" : "Davet iletildi", "Not available" : "Kullanılamaz", + "Invitation declined" : "Davet reddedildi", + "Declined {organizerName}'s invitation" : "{organizerName} tarafından yapılan davet reddedildi", + "Availability will be checked" : "Uygunluk denetlenecek", + "Invitation will be sent" : "Davet gönderilecek", + "Failed to check availability" : "Uygunluk denetlenemedi", + "Failed to deliver invitation" : "Davet iletilemedi", + "Awaiting response" : "Yanıt bekleniyor", "Checking availability" : "Uygunluk denetleniyor", - "Invitation accepted" : "Çağrı onaylandı", - "Accepted {organizerName}'s invitation" : "{organizerName} tarafından yapılan çağrı onaylandı", - "Invitation declined" : "Çağrı reddedildi", - "Declined {organizerName}'s invitation" : "{organizerName} tarafından yapılan çağrı reddedildi", - "Invitation is delegated" : "Çağrı iletildi", - "Participation marked as tentative" : "Katılım belirsiz olarak işaretlendi", - "Invitation sent" : "Çağrı gönderildi", - "Has not responded to {organizerName}'s invitation yet" : "{organizerName} tarafından yapılan çağrıyı yanıtlamadı", - "Availability of attendees, resources and rooms" : "Katılımcı, kaynak ve odaların kullanılabilirliği", + "Has not responded to {organizerName}'s invitation yet" : "{organizerName} tarafından yapılan daveti yanıtlamadı", + "chairperson" : "oturum başkanı", + "required participant" : "zorunlu katılımcı", + "non-participant" : "katılımcı değil", + "optional participant" : "isteğe bağlı katılımcı", "{organizer} (organizer)" : "{organizer} (organizer)", - "Free" : "Serbest", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Katılımcı, kaynak ve odaların kullanılabilirliği", + "Suggestion accepted" : "Öneri kabul edildi", + "Legend" : "İşaret", + "Out of office" : "İş yeri dışında", + "Attendees:" : "Katılımcılar:", + "Done" : "Tamamlandı", + "Search room" : "Oda ara", + "Room name" : "Oda adı", + "Check room availability" : "Oda uygunluğuna bak", + "Free" : "Uygun", "Busy (tentative)" : "Meşgul (belirsiz)", "Busy" : "Meşgul", - "Out of office" : "İş yeri dışında", "Unknown" : "Bilinmiyor", + "Find a time" : "Bir zaman bulun", + "The invitation has been accepted successfully." : "Davet kabul edildi.", + "Failed to accept the invitation." : "Davet kabul edilemedi.", + "The invitation has been declined successfully." : "Davet reddedildi.", + "Failed to decline the invitation." : "Davet reddedilemedi.", + "Your participation has been marked as tentative." : "Katılım durumunuz belirsiz olarak işaretlendi.", + "Failed to set the participation status to tentative." : "Katılım durumunuz belirsiz olarak işaretlenemedi.", "Accept" : "Kabul et", "Decline" : "Reddet", "Tentative" : "Belirsiz", - "The invitation has been accepted successfully." : "Çağrı kabul edildi.", - "Failed to accept the invitation." : "Çağrı kabul edilemedi.", - "The invitation has been declined successfully." : "Çağrı reddedildi.", - "Failed to decline the invitation." : "Çağrı reddedilemedi.", - "Your participation has been marked as tentative." : "Katılım durumunuz belirsiz olarak işaretlendi.", - "Failed to set the participation status to tentative." : "Katılım durumunuz belirsiz olarak işaretlenemedi.", - "Create Talk room for this event" : "Bu etkinlik için Talk odası oluştur", - "Show busy times" : "Meşgul zamanlar görüntülensin", "No attendees yet" : "Henüz bir katılımcı yok", - "Successfully appended link to talk room to description." : "Bağlantı Talk odası açıklamasına eklendi.", - "Error creating Talk room" : "Talk odası oluştururken sorun çıktı", - "Send email" : "E-posta gönder", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} davet edildi, {confirmedCount} kabul etti", + "Please add at least one attendee to use the \"Find a time\" feature." : "Lütfen \"Bir zaman bul\" özelliğini kullanmak için en az bir katılımcı ekleyin.", + "Successfully appended link to talk room to location." : "Bağlantı konumu Konuş odasına eklendi.", + "Successfully appended link to talk room to description." : "Bağlantı Konuş odası açıklamasına eklendi.", + "Error creating Talk room" : "Konuş odası oluştururken sorun çıktı", + "Attendees" : "Katılanlar", + "_%n more guest_::_%n more guests_" : ["%n diğer konuk","%n diğer konuk"], + "Remove group" : "Grubu sil", + "Remove attendee" : "Katılımcıyı çıkar", + "Request reply" : "Yanıt iste", "Chairperson" : "Oturum başkanı", "Required participant" : "Zorunlu katılımcı", "Optional participant" : "İsteğe bağlı katılımcı", "Non-participant" : "Katılımcı değil", - "Remove attendee" : "Katılımcıyı çıkar", - "Search for emails, users or contacts" : "E-posta, kullanıcı ya da kişi arama", + "_%n member_::_%n members_" : ["%n üye","%n üye"], + "Search for emails, users, contacts, contact groups or teams" : "E-posta, kullanıcı, kişi, kişi grubu ya da takım arayın", "No match found" : "Herhangi bir sonuç bulunamadı", + "Note that members of circles get invited but are not synced yet." : "Takım üyelerinin davet edildiğini ancak henüz eşitlenmediğini unutmayın.", + "Note that members of contact groups get invited but are not synced yet." : "Kişi gruplarının üyelerinin davet edildiğini ancak henüz eşitlenmediğini unutmayın.", "(organizer)" : "(düzenleyen)", - "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Çağrı göndermek ve yanıtları işlemek için, [linkopen]kişisel ayarlar bölümünden e-posta adresinizi ekleyin[linkclose].", + "Make {label} the organizer" : "{label} düzenleyici olsun", + "Make {label} the organizer and attend" : "{label} düzenleyici olsun ve katıl", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Davet göndermek ve yanıtları işlemek için, [linkopen]kişisel ayarlar bölümünden e-posta adresinizi ekleyin[linkclose].", "Remove color" : "Rengi kaldır", "Event title" : "Etkinlik başlığı", - "All day" : "Tüm gün", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Bir yinelenme kümesinin ögesi olan etkinlikler tüm gün olarak ayarlanamaz.", - "from {startDate}" : "{startDate} tarihinden", - "from {startDate} at {startTime}" : "{startDate} - {startTime} saatinden", - "to {endDate}" : "{endDate} tarihine", - "to {endDate} at {endTime}" : "{endDate} - {endTime} saatine", + "From" : "Başlangıç", + "To" : "Bitiş", "Repeat" : "Yineleme", - "End repeat" : "Yinelenme sonu", - "Select to end repeat" : "Yinelenme sonunu seçin", + "_time_::_times_" : ["kez","kez"], "never" : "asla", "on date" : "şu tarihte", "after" : "şundan sonra", - "_time_::_times_" : ["kez","kez"], + "End repeat" : "Yinelenme sonu", + "Select to end repeat" : "Yinelenme sonunu seçin", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Bu etkinlik bir yinelenen etkinlik kümesinin ögesi. Bu nedenle bu ögeye bir yinelenme kuralı ekleyemezsiniz.", "first" : "birinci", - "third" : "üçüncü", - "fourth" : "dördüncü", - "fifth" : "beşinci", - "second to last" : "ikinciden sonuncuya", - "last" : "sonuncu", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Yinelenme kuralındaki değişiklikler yalnızca bu ve sonraki etkinlikler için geçerli olacak.", "Repeat every" : "Yinelenme sıklığı", "By day of the month" : "Ayın gününde", "On the" : "Şu zamanda", + "_day_::_days_" : ["gün","gün"], + "_week_::_weeks_" : ["hafta","hafta"], "_month_::_months_" : ["ay","ay"], "_year_::_years_" : ["yıl","yıl"], + "On specific day" : "Belirli günde", "weekday" : "hafta içi günleri", "weekend day" : "hafta sonu günü", - "No recurrence" : "Yinelenme yok", + "Does not repeat" : "Yinelenmiyor", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Bu etkinliğin yinelenme ayarları Nextcloud tarafından tam olarak desteklenmiyor. Yinelenme ayarlarını düzenlerseniz yinelenen bazı etkinlikler kaybolabilir.", - "Suggestions" : "Öneriler", "No rooms or resources yet" : "Henüz bir oda ya da kaynak yok", + "Resources" : "Kaynaklar", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} koltuk","{seatingCapacity} koltuk"], "Add resource" : "Kaynak ekle", "Has a projector" : "Projeksiyon var", - "Has a whiteboard" : "Beyaz tahta var", + "Has a whiteboard" : "Beyaz Tahta var", "Wheelchair accessible" : "Tekerlekli sandalyeye uygun", "Remove resource" : "Kaynağı sil", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} koltuk","{seatingCapacity} koltuk"], - "Projector" : "Projeksiyon", - "Whiteboard" : "Beyaz tahta", - "Search for resources or rooms" : "Kaynak ya da oda arama", + "Search for resources or rooms" : "Kaynak ya da oda ara", "available" : "kullanılabilir", "unavailable" : "kullanılamaz", + "Show all rooms" : "Tüm odaları görüntüle", + "Projector" : "Projeksiyon", + "Whiteboard" : "Beyaz Tahta", "Room type" : "Oda türü", "Any" : "Tümü", "Minimum seating capacity" : "En az oturma yeri sayısı", - "More" : "Diğer", - "Update this occurrence" : "Bu etkinliği güncelle", + "More details" : "Ayrıntılar", "Update this and all future" : "Bu ve sonraki etkinlikleri güncelle", + "Update this occurrence" : "Bu etkinliği güncelle", "Public calendar does not exist" : "Herkese açık takvim bulunamadı", "Maybe the share was deleted or has expired?" : "Paylaşım silinmiş ya da geçerlilik süresi dolmuş olabilir mi?", - "Please select a time zone:" : "Lütfen bir saat dilimi seçin:", - "Pick a time" : "Bir saat seçin", - "Pick a date" : "Bir tarih seçin", "from {formattedDate}" : "{formattedDate} tarihinden", "to {formattedDate}" : "{formattedDate} tarihine", "on {formattedDate}" : "{formattedDate} tarihinde", @@ -342,9 +429,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime} saatinde", "Please enter a valid date" : "Lütfen geçerli bir tarih yazın", "Please enter a valid date and time" : "Lütfen geçerli bir tarih ve saat yazın", + "Select a time zone" : "Bir saat dilimi seçin", + "Please select a time zone:" : "Lütfen bir saat dilimi seçin:", + "Pick a time" : "Bir saat seçin", + "Pick a date" : "Bir tarih seçin", "Type to search time zone" : "Saat dilimi aramak için yazmaya başlayın", "Global" : "Genel", - "Select date" : "Tarih seçin", + "Holidays in {region}" : "{region} tatilleri", + "An error occurred, unable to read public calendars." : "Bir sorun çıktı. Herkese açık takvimler okunamadı.", + "An error occurred, unable to subscribe to calendar." : "Bir sorun çıktı. Takvime abone olunamadı.", + "Public holiday calendars" : "Resmi tatil takvimleri", + "Public calendars" : "Herkese açık takvimler", + "No valid public calendars configured" : "Yapılandırılmış geçerli bir herkese açık takvim yok", + "Speak to the server administrator to resolve this issue." : "Lütfen bu sorunu çözmesi için sunucu yöneticiniz ile görüşün.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Resmi tatil takvimleri Thunderbird tarafından sağlanır. Takvim verileri {website} üzerinden indirilir", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Sunucu yöneticisi şu herkese açık takvimleri öneriyor. Takvim verileri ilgili siteden indirilir.", + "By {authors}" : "{authors} tarafından", + "Subscribed" : "Abone olundu", + "Subscribe" : "Abone ol", + "Could not fetch slots" : "Aralıklar alınamadı", + "Select a date" : "Bir tarih seçin", "Select slot" : "Aralık seçin", "No slots available" : "Seçilebilecek bir aralık yok", "The slot for your appointment has been confirmed" : "Randevunuzun aralığı onaylandı", @@ -359,26 +463,27 @@ OC.L10N.register( "Book an appointment with {name}" : "{name} için bir randevu alın", "No public appointments found for {name}" : "{name} için herkese açık bir randevu bulunamadı", "Personal" : "Kişisel", - "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Otomatik saat dilimi algılaması saat diliminizi UTC olarak belirledi.\nBu durum genellikle web tarayıcınızın sağladığı bir güvenlik önleminden kaynaklanır.\nLütfen takvim ayarları bölümünden saat diliminizi el ile ayarlayın.", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Otomatik saat dilimi algılaması saat diliminizi UTC olarak belirledi.\nBu durum genellikle tarayıcınızın sağladığı bir güvenlik önleminden kaynaklanır.\nLütfen takvim ayarları bölümünden saat diliminizi el ile ayarlayın.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Yapılandırılmış saat diliminiz {{timezoneId}} bulunamadı. UTC dilimine dönülüyor.\nLütfen ayarlardan saat diliminizi değiştirin ve bu sorunu bildirin.", - "No more events today" : "Bugün başka bir etkinlik yok", - "No upcoming events" : "Yaklaşan bir etkinlik yok", - "Create a new event" : "Etkinlik ekle", - "[Today]" : "[Bugün]", - "[Tomorrow]" : "[Yarın]", - "[Yesterday]" : "[Dün]", - "[Last] dddd" : "[Son] dddd", + "Availability of {displayName}" : "{displayName} uygunluğu", + "Edit event" : "Etkinliği düzenle", "Event does not exist" : "Etkinlik bulunamadı", - "Duplicate" : "Kopyala", + "Duplicate" : "Çoğalt", "Delete this occurrence" : "Bu etkinliği sil", "Delete this and all future" : "Bu ve sonraki etkinlikleri sil", - "Details" : "Ayrıntılar", - "Attendees" : "Katılanlar", - "Resources" : "Kaynaklar", + "All day" : "Tüm gün", + "Modifications wont get propagated to the organizer and other attendees" : "Değişiklikler düzenleyiciye ve diğer katılımcılara iletilmeyecek", + "Managing shared access" : "Paylaşılmış erişim yönetimi", + "Deny access" : "Erişimi reddet", + "Invite" : "Çağır", + "_User requires access to your file_::_Users require access to your file_" : ["Dosyanıza erişme izni isteyen kullanıcı","Dosyanıza erişme izni isteyen kullanıcılar"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Paylaşılmış erişim gereken ek dosya","Paylaşılmış erişim gereken ek dosyalar"], + "Untitled event" : "Adlandırılmamış etkinlik", "Close" : "Kapat", - "Show more details" : "Diğer ayrıntıları görüntüle", + "Modifications will not get propagated to the organizer and other attendees" : "Değişiklikler düzenleyiciye ve diğer katılımcılara iletilmeyecek", "Subscribe to {name}" : "{name} takvimine abone ol", "Export {name}" : "{name} dışa aktar", + "Show availability" : "Uygunluğu görüntüle", "Anniversary" : "Yıl dönümü", "Appointment" : "Randevu", "Business" : "İş", @@ -406,7 +511,6 @@ OC.L10N.register( "on {time}" : "{time} saatinde", "on {time} ({timezoneId})" : "{time} ({timezoneId}) zamanında", "Week {number} of {year}" : "{year} yılının {number}. haftasında", - "Does not repeat" : "Yinelenmiyor", "Daily" : "Günlük", "Weekly" : "Haftalık", "Monthly" : "Aylık", @@ -418,24 +522,30 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["{weekday} gününde","{weekdays} günlerinde"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["{dayOfMonthList} gününde","{dayOfMonthList} günlerinde"], "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber} {byDaySet} gününde", - "in {monthNames}" : "{monthNames} aylarında", + "in {monthNames} on the {dayOfMonthList}" : "{monthNames} ayı {dayOfMonthList} gününde", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames} aylarında {ordinalNumber} {byDaySet} gününde", "until {untilDate}" : "{untilDate} tarihine kadar", "_%n time_::_%n times_" : ["%n kez","%n kez"], - "Untitled event" : "Adsız etkinlik", - "Untitled task" : "Adsız görev", - "Please ask your administrator to enable the Tasks App." : "Lütfen Görevler Uygulamasını etkinleştirmesi için BT yöneticinizle görüşün.", - "Prev" : "Önceki", - "Next" : "Sonraki", - "Prev year" : "Önceki yıl", - "Next year" : "Sonraki yıl", - "Year" : "Yıl", + "second" : "saniye", + "third" : "üçüncü", + "fourth" : "dördüncü", + "fifth" : "beşinci", + "second to last" : "ikinciden sonuncuya", + "last" : "sonuncu", + "Untitled task" : "Adlandırılmamış görev", + "Please ask your administrator to enable the Tasks App." : "Lütfen Görevler uygulamasını kullanıma alması için BT yöneticiniz ile görüşün.", + "You are not allowed to edit this event as an attendee." : "Bir katılımcı olarak bu etkinliği düzenleme izniniz yok.", "W" : "W", "%n more" : "%n diğer", "No events to display" : "Görüntülenebilecek bir etkinlik yok", + "All participants declined" : "Tüm katılımcılar katılmayı reddetti", + "Please confirm your participation" : "Lütfen katılacağınızı onaylayın", + "You declined this event" : "Bu etkinliğe katılmayı reddettiniz", + "Your participation is tentative" : "Katılım durumunuz belirsiz", "_+%n more_::_+%n more_" : ["+%n diğer","+%n diğer"], "No events" : "Henüz bir etkinlik yok", "Create a new event or change the visible time-range" : "Yeni bir etkinlik ekleyin ya da görüntülenen zaman aralığını değiştirin", + "Failed to save event" : "Etkinlik kaydedilemedi", "It might have been deleted, or there was a typo in a link" : "Silinmiş olabilir ya da bir bağlantıda bir yazım hatası var", "It might have been deleted, or there was a typo in the link" : "Silinmiş olabilir ya da bağlantıda bir yazım hatası var", "Meeting room" : "Toplantı odası", @@ -448,148 +558,39 @@ OC.L10N.register( "When shared hide this event" : "Paylaşıldığında bu etkinlik gizlensin", "The visibility of this event in shared calendars." : "Bu etkinliğin paylaşılmış takvimlerdeki görünümü.", "Add a location" : "Bir konum ekleyin", - "Add a description" : "Bir açıklama ekleyin", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Bir açıklama yazın\n\n- Bu toplantı neyle ilgili\n- Gündem maddeleri\n- Katılımcıların hazırlaması gereken her şey", "Status" : "Durum", "Confirmed" : "Kabul edildi", "Canceled" : "İptal edildi", "Confirmation about the overall status of the event." : "Etkinliğin genel kabul edilme durumu.", "Show as" : "Şu şekilde görüntülensin", - "Take this event into account when calculating free-busy information." : "Serbest, meşgul zamanlar hesaplanırken bu etkinlik hesaba katılsın.", + "Take this event into account when calculating free-busy information." : "Uygun, meşgul zamanlar hesaplanırken bu etkinlik hesaba katılsın.", "Categories" : "Kategoriler", "Categories help you to structure and organize your events." : "Kategorileri kullanarak etkinliklerinizi düzenleyebilirsiniz.", "Search or add categories" : "Kategori ara ya da ekle", "Add this as a new category" : "Bunu yeni bir kategori olarak ekle", "Custom color" : "Özel renk", "Special color of this event. Overrides the calendar-color." : "Özel etkinlik rengi, takvim renginin yerine kullanılır.", - "Chat room for event" : "Etkinliğin sohbet odası", + "Error while sharing file" : "Dosya paylaşılırken sorun çıktı", + "Error while sharing file with user" : "Dosya kullanıcı ile paylaşılırken sorun çıktı", + "Error creating a folder {folder}" : "{folder} klasörü oluşturulurken sorun çıktı", + "Attachment {fileName} already exists!" : "{fileName} ek dosyası zaten var!", + "Attachment {fileName} added!" : "{fileName} dosyası eklendi!", + "An error occurred during uploading file {fileName}" : "{fileName} dosyası yüklenirken bir sorun çıktı", + "An error occurred during getting file information" : "Dosya bilgileri alınırken bir sorun çıktı", + "Talk conversation for event" : "Etkinlik için Konuş görüşmesi", + "An error occurred, unable to delete the calendar." : "Bir sorun çıktı. Takvim silinemedi.", "Imported {filename}" : "{filename} içe aktarıldı", - "Meditation" : "Meditasyon", - "Relaxing" : "Rahatlama", - "Relax" : "Rahat", - "Break" : "Kırık", - "Commute" : "İşe gidiş/geliş", - "Commuting" : "İşe gidip/gelme", - "Shuttle" : "Mekik", - "Invoice" : "Fatura", - "Finance" : "Finans", - "Bank" : "Banka", - "Money" : "Para", - "Wedding" : "Düğün", - "Dog" : "Köpek", - "Concert" : "Konser", - "Festival" : "Festival", - "Theater" : "Tiyatro", - "Theatre" : "Tiyatro", - "Presentation" : "Sunum", - "Talk" : "Görüşme", - "Speech" : "Konuşma", - "Deadline" : "Bitiş tarihi", - "Submission" : "Teslim", - "Reporting" : "Rapor", - "Camping" : "Kampçılık", - "Camp" : "Kamp", - "Election" : "Seçim", - "Voting" : "Oylama", - "Vote" : "Oy", - "Barbecue" : "Mangal", - "Barbeque" : "Mangal", - "Garden" : "Bahçe", - "Farm" : "Çiftlik", - "Movie" : "Film", - "Cinema" : "Sinema", - "Graduation" : "Mezuniyet", - "Brainstorm" : "Beyin Fırtınası", - "Review" : "Gözden geçirme", - "Audit" : "Denetim", - "Inspection" : "İnceleme", - "Proofreading" : "Düzeltme", - "Baseball" : "Beyzbol", - "Meet" : "Toplan", - "Planning" : "Planlama", - "Pointing" : "İşaret etme", - "Retrospective" : "Geçmişi değerlendirme", - "Office" : "Ofis", - "Contributor week" : "Katılımcı haftası", - "Mail" : "Posta", - "Soccer" : "Futbol", - "Football" : "Amerikan futbolu", - "Gaming" : "Oyun", - "Drive" : "Sürüş", - "Driving" : "Sürüş", - "Bicycle" : "Bisiklet", - "Cycle" : "Bisiklet", - "Cycling" : "Bisiklet", - "Biking" : "Bisiklete ninme", - "Bike" : "Bisiklet", - "Podcast" : "Podcast", - "Basketball" : "Basketbol", - "Fishing" : "Balık tutma", - "Hiking" : "Doğa yürüyüşü", - "Hike" : "Yürüyüş", - "Art" : "Sanat", - "Exhibition" : "Sergi", - "Museum" : "Müze", - "Pilates" : "Pilates", - "Park" : "Park", - "Walk" : "Yürüyüş", - "Studying" : "Ders Çalışma", - "Doctor" : "Doktor", - "Health" : "Sağlık", - "Dentist" : "Dişçi", - "Hospital" : "Hastane", - "Interview" : "Röportaj", - "Training" : "Antrenman", - "Practice" : "Uygulama", - "Sports" : "Spor", - "Exercise" : "Egzersiz", - "Work out" : "Spor çalışması", - "Working out" : "Saha çalışması", - "Gym" : "Gym", - "Barber" : "Berber", - "Haircut" : "Saç kesimi", - "Hairdresser" : "Kuaför", - "Exam" : "Sınav", - "Written test" : "Yazılı sınav", - "Oral test" : "Sözlü sınav", - "Working" : "İş", - "New Years Eve" : "Yılbaşı gecesi", - "NYE" : "Yılbaşı", - "Fireworks" : "Havai Fişek", - "Running" : "Koşu", - "Go for a run" : "Koşuya git", - "Marathon" : "Maraton", - "Video-conference" : "Görüntülü toplu görüşme", - "Conference-call" : "Konferans çağrısı", - "Video-call" : "Görüntülü çağrı", - "Video-chat" : "Görüntülü sohbet", - "Video-meeting" : "Görüntülü toplantı", - "Call" : "Çağrı", - "Calling" : "Çağrı", - "Christmas" : "Noel", - "Conference" : "Konferans", - "Pizza" : "Pizza", - "Travelling" : "Gezi", - "Trip" : "Yolculuk", - "Journey" : "Yolculuk", - "Collaborate" : "İşbirliği", - "Pair" : "Eşleştir", - "Lecture" : "Ders", - "Seminar" : "Seminer", - "Teaching" : "Ders", - "Photograph" : "Fotoğraf", - "Party" : "Parti", - "Celebration" : "Kutlama", - "Celebrate" : "Kutlama", - "Birthday" : "Doğum günü", - "Shopping" : "Alışveriş", - "Groceries" : "Market", - "Skate" : "Kayak", - "Skateboard" : "Skateboard", - "Wine tasting" : "Şarap tadımı", - "Golf" : "Golf", - "Dinner" : "Akşam yemeği", - "Lunch" : "Öğle yemeği", + "This is an event reminder." : "Bu bir etkinlik hatırlatıcısıdır.", + "Error while parsing a PROPFIND error" : "PROPFIND hatası işlenirken sorun çıktı", "Appointment not found" : "Randevu bulunamadı", - "User not found" : "Kullanıcı bulunamadı" + "User not found" : "Kullanıcı bulunamadı", + "Reminder" : "Anımsatıcı", + "+ Add reminder" : "+ Anımsatıcı ekle", + "Select automatic slot" : "Aralık otomatik seçilsin", + "with" : "şu kişi ile", + "Available times:" : "Uygun zamanlar:", + "Suggestions" : "Öneriler", + "Details" : "Ayrıntılar" }, "nplurals=2; plural=(n > 1);"); diff --git a/l10n/tr.json b/l10n/tr.json index c9c14617bf8c15179da9e232bfb6028e0ca4d2eb..27778626d6742113c03e36147ede352f0faf434f 100644 --- a/l10n/tr.json +++ b/l10n/tr.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "Belirtilen e-posta adresi çok uzun", "User-Session unexpectedly expired" : "Kullanıcı oturumunun geçerlilik süresi beklenmedik şekilde doldu", "Provided email-address is not valid" : "Belirtilen e-posta adresi geçersiz", "%s has published the calendar »%s«" : "%s, »%s« takvimini yayınladı", @@ -9,129 +10,161 @@ "Open »%s«" : "»%s« aç", "Cheers!" : "Görüşmek üzere", "Upcoming events" : "Yaklaşan etkinlikler", + "No more events today" : "Bugün başka bir etkinlik yok", + "No upcoming events" : "Yaklaşan bir etkinlik yok", + "More events" : "Diğer etkinlikler", + "%1$s with %2$s" : "%2$s ile %1$s ", + "Calendar" : "Takvim", + "New booking {booking}" : "Yeni {booking} alma", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) \"{config_display_name}\" randevusunu aldı. Tarih: {date_time}.", "Appointments" : "Randevular", "Schedule appointment \"%s\"" : "\"%s\" randevusu al", "Schedule an appointment" : "Bir randevu alın", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "%s için hazırlan", "Follow up for %s" : "%s için takip", - "Your appointment \"%s\" needs confirmation" : "\"%s\" randevunuzun onaylanması gerekiyor", + "Your appointment \"%s\" with %s needs confirmation" : "\"%s\" randevunuzun (%s ile) onaylanması gerekiyor", "Dear %s, please confirm your booking" : "Sayın %s, lütfen randevunuzu onaylayın", "Confirm" : "Onayla", + "Appointment with:" : "Şu kişiyle randevu:", + "Description:" : "Açıklama:", "This confirmation link expires in %s hours." : "Bu onay bağlantısının geçerlilik süresi %s saat sonra dolacak.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Randevunuzu iptal etmek isterseniz, düzenleyici ile görüşün.", - "Appointment:" : "Randevu:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Sonuçta randevuyu iptal etmek isterseniz, lütfen bu e-postayı yanıtlayarak ya da profil sayfasını ziyaret ederek düzenleyici ile görüşün.", + "Your appointment \"%s\" with %s has been accepted" : "\"%s\" randevunuz (%s ile) onaylandı", + "Dear %s, your booking has been accepted." : "Sayın %s, randevunuz onaylandı.", + "Appointment for:" : "Randevu:", "Date:" : "Tarih:", + "You will receive a link with the confirmation email" : "E-posta ile bir doğrulama bağlantısı alacaksınız", "Where:" : "Yer:", - "Description:" : "Açıklama:", - "Calendar" : "Takvim", + "Comment:" : "Açıklama:", + "You have a new appointment booking \"%s\" from %s" : "\"%s\" randevusunu %s üzerinden aldınız", + "Dear %s, %s (%s) booked an appointment with you." : "Sayın %s, %s (%s) sizin için bir randevu aldı.", "A Calendar app for Nextcloud" : "Nextcloud takvim uygulaması", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Takvim uygulaması Nextcloud CalDAV sunucusunun kullanıcı arayüzüdür. Çeşitli aygıtlar üzerindeki etkinlikleri kolayca Nextcloud hesabınız ile eşitler ve çevrimiçi olarak düzenlemenizi sağlar.\n\n* 🚀 **Diğer Nextcloud uygulamaları ile bütünleşiktir!** Şu anda Kişiler, diğerleri yolda.\n* 🌐 **WebCal Desteği!** Tuttuğunuz takımın maçlarını takvimde görmek isterseniz sorun değil!\n* 🙋 **Katılımcılar!** Etkinliklerinize kişileri çağırabilirsiniz\n* ⌚️ **Serbest/Meşgul:** Katılımcılarınız ile ne zaman görüşebileceğinize bakabilirsiniz\n* ⏰ **Anımsatıcılar!** Etkinlik bildirimlerini web tarayıcınızdan ve e-posta olarak alabilirsiniz\n* 🔍 Arama! Etkinliklerinizi kolayca bulabilirsiniz\n* ☑️ Görevler! Görevleri bitiş tarihleri ile takvim üzerinde görebilirsiniz\n* 🙈 **Tekerleği yeniden keşfetmiyoruz!** Harika [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) ve [fullcalendar](https://github.com/fullcalendar/fullcalendar) kitaplıklarını kullanıyoruz.", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Nextcloud için Takvim uygulaması. Çeşitli aygıtlardaki etkinlikleri Nextcloud kopyanızla kolayca eşitleyin ve çevrim içi olarak düzenleyin.\n\n* 🚀 **Diğer Nextcloud uygulamalarıyla bütünleşik!** Kişiler, Konuş, Görevler, Tahta ve Çevreler gibi\n* 🌐 **WebCal Desteği!** Tuttuğunuz takımın maç günlerini takviminizde görmek ister misiniz? Sorun değil!\n* 🙋 **Katılımcılar!** Etkinliklerinize insanları davet edin\n* ⌚ **Boş/Meşgul!** Katılımcılarınızın ne zaman buluşmaya uygun olduğunu görün\n* ⏰ **Anımsatıcılar!** Tarayıcınızın içinden ve e-posta ile etkinliklerle ilgili uyarılar alın\n* 🔍 **Arama!** Etkinliklerinizi kolayca bulun\n* ☑️ **Görevler!** Görevleri veya Tahta kartlarını doğrudan takvimde son teslim tarihiyle görün\n* 🔈 **Konuş odaları!** Tek bir tıklamayla bir toplantı rezervasyonu yaparken ilişkili bir Konuş odası oluşturun\n* 📆 **Randevu rezervasyonu** İnsanlara bir bağlantı gönderin, böylece sizinle [bu uygulamayı kullanarak](https://apps.nextcloud.com/apps/appointments) randevu alabilirler\n* 📎 **Ek dosyalar!** Etkinliklere dosyalar ekleyin, yükleyin ve görüntüleyin\n* 🙈 **Tekerleği yeniden icat etmiyoruz!** Harika [c-dav kitaplığı](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) ve [fullcalendar](https://github.com/fullcalendar/fullcalendar) kitaplıkları.", "Previous day" : "Önceki gün", "Previous week" : "Önceki hafta", + "Previous year" : "Önceki yıl", "Previous month" : "Önceki ay", "Next day" : "Sonraki gün", "Next week" : "Sonraki hafta", + "Next year" : "Sonraki yıl", "Next month" : "Sonraki ay", - "New event" : "Yeni etkinlik", + "Create new event" : "Etkinlik ekle", + "Event" : "Etkinlik", "Today" : "Bugün", "Day" : "Gün", "Week" : "Hafta", "Month" : "Ay", + "Year" : "Yıl", "List" : "Listele", + "Appointment link was copied to clipboard" : "Randevu bağlantısı panoya kopyalandı", + "Appointment link could not be copied to clipboard" : "Randevu bağlantısı panoya kopyalanamadı", "Preview" : "Ön izleme", "Copy link" : "Bağlantıyı kopyala", "Edit" : "Düzenle", "Delete" : "Sil", - "Appointment link was copied to clipboard" : "Randevu bağlantısı panoya kopyalandı", - "Appointment link could not be copied to clipboard" : "Randevu bağlantısı panoya kopyalanamadı", - "Add new" : "Yeni ekle", - "Untitled calendar" : "Adsız takvim", - "Edit name" : "Adı düzenle", - "Saving name …" : "Ad kaydediliyor …", - "Edit color" : "Rengi düzenle", - "Saving color …" : "Renk kaydediliyor …", - "Copy private link" : "Kişisel bağlantıyı kopyala", - "Export" : "Dışa aktar", - "Unshare from me" : "Benimle paylaşımı kaldır", - "Disable calendar \"{calendar}\"" : "\"{calendar}\" takvimini devre dışı bırak", - "Disable untitled calendar" : "Başlıksız takvimi devre dışı bırak", - "Enable calendar \"{calendar}\"" : "\"{calendar}\" takvimini etkinleştir", - "Enable untitled calendar" : "Başlıksız takvimi etkinleştir", + "Appointment schedules" : "Randevu zamanları", + "Create new" : "Yeni ekle", + "Disable calendar \"{calendar}\"" : "\"{calendar}\" takvimini kullanımdan kaldır", + "Disable untitled calendar" : "Adlandırılmamış takvimi kullanımdan kaldır", + "Enable calendar \"{calendar}\"" : "\"{calendar}\" takvimini kullanıma al", + "Enable untitled calendar" : "Adlandırılmamış takvimi kullanıma al", "An error occurred, unable to change visibility of the calendar." : "Bir sorun çıktı. Takvimin görünürlüğü değiştirilemedi.", - "An error occurred, unable to delete the calendar." : "Bir sorun çıktı. Takvim silinemedi.", - "Calendar link copied to clipboard." : "Takvim bağlantısı panoya kopyalandı.", - "Calendar link could not be copied to clipboard." : "Takvim bağlantısı panoya kopyalanamadı.", - "An error occurred, unable to rename the calendar." : "Bir sorun çıktı. Takvim yeniden adlandırılamadı.", - "An error occurred, unable to change the calendar's color." : "Bir sorun çıktı. Takvimin rengi değiştirilemedi.", + "Untitled calendar" : "Adlandırılmamış takvim", + "Shared with you by" : "Sizinle paylaşan", + "Edit and share calendar" : "Takvimi düzenle ve paylaş", + "Edit calendar" : "Takvimi düzenle", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Takvim {countdown} saniye içinde paylaşımdan kaldırılacak","Takvim {countdown} saniye içinde paylaşımdan kaldırılacak"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Takvim {countdown} saniye içinde silinecek","Takvim {countdown} saniye içinde silinecek"], - "Share link" : "Paylaşım bağlantısı", - "Publish calendar" : "Takvimi yayınla", - "Publishing calendar" : "Takvim yayınlanıyor", - "Copy public link" : "Herkese açık bağlantıyı kopyala", - "Send link to calendar via email" : "Takvim bağlantısını e-posta ile gönder", - "Enter one address" : "Bir adres yazın", - "Sending email …" : "E-posta kaydediliyor …", - "Copy subscription link" : "Abonelik bağlantısını kopyala", - "Copying link …" : "Bağlantı kopyalanıyor …", - "Copied link" : "Bağlantı kopyalandı", - "Could not copy link" : "Bağlantı kopyalanamadı", - "Copy embedding code" : "Gömme kodunu kopyala", - "Copying code …" : "Kod kopyalanıyor …", - "Copied code" : "Kod kopyalandı", - "Could not copy code" : "Kod kopyalanamadı", - "Delete share link" : "Paylaşım bağlantısını sil", - "Deleting share link …" : "Paylaşım bağlantısı siliniyor …", - "An error occurred, unable to publish calendar." : "Bir sorun çıktı. Takvim yayınlanamadı.", - "An error occurred, unable to send email." : "Bir sorun çıktığından e-posta gönderilemedi.", - "Embed code copied to clipboard." : "Gömme kodu panoya kopyalandı.", - "Embed code could not be copied to clipboard." : "Gömme kodu panoya kopyalanamadı.", - "Unpublishing calendar failed" : "Takvim yayından kaldırılamadı", - "Share with users or groups" : "Kullanıcı ya da gruplar ile paylaş", - "No users or groups" : "Herhangi bir kullanıcı ya da grup yok", - "can edit" : "düzenleyebilir", - "Unshare with {displayName}" : "{displayName} ile paylaşımı kaldır", - "An error occurred, unable to change the unshare the calendar." : "Bir sorun çıktı. Takvimin paylaşımdan kaldırma ayarı değiştirilemedi.", - "An error occurred, unable to change the permission of the share." : "Bir sorun çıktı. Takvimin izin ayarı değiştirilemedi.", - "+ New calendar" : "+ Yeni takvim", + "An error occurred, unable to create the calendar." : "Bir sorun çıktı. Takvim eklenemedi.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Lütfen geçerli bir bağlantı yazın (http://, https://, webcal:// ya da webcals:// ile başlayan)", + "Calendars" : "Takvimler", + "Add new" : "Yeni ekle", "New calendar" : "Takvim ekle", "Name for new calendar" : "Yeni takvimin adı", "Creating calendar …" : "Takvim oluşturuluyor …", "New calendar with task list" : "Görev listesi ile yeni takvim", "New subscription from link (read-only)" : "Bağlantıdan yeni abonelik (salt okunur)", "Creating subscription …" : "Abonelik oluşturuluyor …", - "An error occurred, unable to create the calendar." : "Bir sorun çıktı. Takvim eklenemedi.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Lütfen geçerli bir bağlantı yazın (http://, https://, webcal:// ya da webcals:// ile başlayan)", + "Add public holiday calendar" : "Resmi tatil takvimi ekle", + "Add custom public calendar" : "Özel herkese açık takvim ekle", + "Calendar link copied to clipboard." : "Takvim bağlantısı panoya kopyalandı.", + "Calendar link could not be copied to clipboard." : "Takvim bağlantısı panoya kopyalanamadı.", + "Copy subscription link" : "Abonelik bağlantısını kopyala", + "Copying link …" : "Bağlantı kopyalanıyor …", + "Copied link" : "Bağlantı kopyalandı", + "Could not copy link" : "Bağlantı kopyalanamadı", + "Export" : "Dışa aktar", + "Untitled item" : "Adlandırılmamış öge", + "Unknown calendar" : "Bilinmeyen takvim", + "Could not load deleted calendars and objects" : "Silinmiş takvim ve nesneler yüklenemedi", + "Could not delete calendar or event" : "Takvim ya da etkinlik silinemedi", + "Could not restore calendar or event" : "Takvim ya da etkinlik geri yüklenemedi", + "Do you really want to empty the trash bin?" : "Çöp kutusunu boşaltmak istediğinize emin misiniz?", + "Empty trash bin" : "Çöp kutusunu boşalt", "Trash bin" : "Çöp kutusu", - "Loading deleted elements." : "Silinmiş bileşenler yükleniyor.", - "You do not have any deleted elements." : "Silinmiş herhangi bir bileşen yok.", + "Loading deleted items." : "Silinmiş ögeler yükleniyor.", + "You do not have any deleted items." : "Silinmiş herhangi bir ögeniz yok.", "Name" : "Ad", "Deleted" : "Silinmiş", "Restore" : "Geri yükle", "Delete permanently" : "Kalıcı olarak sil", - "Empty trash bin" : "Çöp kutusunu boşalt", - "Untitled element" : "Adsız öge", - "Unknown calendar" : "Bilinmeyen takvim", - "Could not load deleted calendars and objects" : "Silinmiş takvim ve nesneler yüklenemedi", - "Could not restore calendar or event" : "Takvim ya da etkinlik geri yüklenemedi", - "Do you really want to empty the trash bin?" : "Çöp kutusunu boşaltmak istediğinize emin misiniz?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Çöp kutusundaki ögeler {numDays} gün sonra silinir","Çöp kutusundaki ögeler {numDays} gün sonra silinir"], + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Çöp kutusundaki ögeler {numDays} gün sonra silinir","Çöp kutusundaki ögeler {numDays} gün sonra silinir"], "Could not update calendar order." : "Takvim sıralaması güncellenemedi.", + "Shared calendars" : "Paylaşılan takvimler", + "Deck" : "Tahta", + "Hidden" : "Gizli", + "Internal link" : "İç bağlantı", + "A private link that can be used with external clients" : "Dış istemcilerle kullanılabilecek özel bir bağlantı", + "Copy internal link" : "İç bağlantıyı kopyala", + "An error occurred, unable to publish calendar." : "Bir sorun çıktı. Takvim yayınlanamadı.", + "An error occurred, unable to send email." : "Bir sorun çıktığından e-posta gönderilemedi.", + "Embed code copied to clipboard." : "Gömme kodu panoya kopyalandı.", + "Embed code could not be copied to clipboard." : "Gömme kodu panoya kopyalanamadı.", + "Unpublishing calendar failed" : "Takvim yayından kaldırılamadı", + "Share link" : "Paylaşım bağlantısı", + "Copy public link" : "Herkese açık bağlantıyı kopyala", + "Send link to calendar via email" : "Takvim bağlantısını e-posta ile gönder", + "Enter one address" : "Bir adres yazın", + "Sending email …" : "E-posta kaydediliyor…", + "Copy embedding code" : "Gömme kodunu kopyala", + "Copying code …" : "Kod kopyalanıyor …", + "Copied code" : "Kod kopyalandı", + "Could not copy code" : "Kod kopyalanamadı", + "Delete share link" : "Paylaşım bağlantısını sil", + "Deleting share link …" : "Paylaşım bağlantısı siliniyor …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Takım)", + "An error occurred while unsharing the calendar." : "Takvim paylaşımdan kaldırılırken bir sorun çıktı", + "An error occurred, unable to change the permission of the share." : "Bir sorun çıktı. Takvimin izin ayarı değiştirilemedi.", + "can edit" : "düzenleyebilir", + "Unshare with {displayName}" : "{displayName} ile paylaşımı kaldır", + "Share with users or groups" : "Kullanıcı ya da gruplar ile paylaş", + "No users or groups" : "Herhangi bir kullanıcı ya da grup yok", + "Failed to save calendar name and color" : "Takvim adı ve rengi kaydedilemedi", + "Calendar name …" : "Takvim adı…", + "Never show me as busy (set this calendar to transparent)" : "Beni asla meşgul olarak gösterme (bu takvimi şeffaf olarak ayarla)", + "Share calendar" : "Takvimi paylaş", + "Unshare from me" : "Benimle paylaşımı kaldır", + "Save" : "Kaydet", "Import calendars" : "Takvimleri içe aktar", - "Please select a calendar to import into …" : "Lütfen içine aktarılacak bir takvim seçin …", + "Please select a calendar to import into …" : "Lütfen içine aktarılacak bir takvim seçin…", "Filename" : "Dosya adı", "Calendar to import into" : "İçine aktarılacak takvim", "Cancel" : "İptal", "_Import calendar_::_Import calendars_" : ["Takvimi içe aktar","Takvimleri içe aktar"], + "Select the default location for attachments" : "Ek dosyalarının varsayılan konumunu seçin", + "Pick" : "Seçin", + "Invalid location selected" : "Seçilen konum geçersiz", + "Attachments folder successfully saved." : "Ek dosya klasörü kaydedildi.", + "Error on saving attachments folder." : "Ek dosya klasörü kaydedilirken sorun çıktı.", + "Default attachments location" : "Ek dosyaların varsayılan konumu", "{filename} could not be parsed" : "{filename} işlenemedi", "No valid files found, aborting import" : "Geçerli bir dosya bulunamadı, içe aktarım iptal ediliyor", - "Import partially failed. Imported {accepted} out of {total}." : "Etkinliklerin tümü içe aktarılamadı. İçe aktarılan: {accepted}, toplam: {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n etkinlik içe aktarıldı","%n etkinlik içe aktarıldı"], + "Import partially failed. Imported {accepted} out of {total}." : "Etkinliklerin tümü içe aktarılamadı. İçe aktarılan: {accepted}, toplam: {total}.", "Automatic" : "Otomatik", "Automatic ({detected})" : "Otomatik ({detected})", "New setting was not saved successfully." : "Yeni ayarlar kaydedilemedi.", - "Shortcut overview" : "Kısayol özeti", - "or" : "ya da", "Navigation" : "Gezinme", "Previous period" : "Önceki dönem", "Next period" : "Sonraki dönem", @@ -139,6 +172,7 @@ "Day view" : "Günlük görünüm", "Week view" : "Haftalık görünüm", "Month view" : "Aylık görünüm", + "Year view" : "Yıllık görünüm", "List view" : "Liste görünümü", "Actions" : "İşlemler", "Create event" : "Etkinlik ekle", @@ -147,25 +181,30 @@ "Close editor" : "Düzenleyiciyi kapat", "Save edited event" : "Düzenlenmiş etkinliği kaydet", "Delete edited event" : "Düzenlenmiş etkinliği sil", - "Duplicate event" : "Etkinliği kopyala", + "Duplicate event" : "Etkinliği çoğalt", + "Shortcut overview" : "Kısayol özeti", + "or" : "ya da", + "Calendar settings" : "Takvim ayarları", + "At event start" : "Etkinlik başlangıcında", + "No reminder" : "Herhangi bir anımsatıcı yok", + "Failed to save default calendar" : "Varsayılan takvim kaydedilemedi", + "CalDAV link copied to clipboard." : "CalDAV bağlantısı panoya kopyalandı.", + "CalDAV link could not be copied to clipboard." : "CalDAV bağlantısı panoya kopyalanamadı.", "Enable birthday calendar" : "Doğum günü takvimi kullanılsın", "Show tasks in calendar" : "Görevler takvimde görüntülensin", "Enable simplified editor" : "Basitleştirilmiş düzenleyici kullanılsın", - "Limit visible events per view" : "Bir kerede görüntülenecek etkinlik sayısı", + "Limit the number of events displayed in the monthly view" : "Aylık görünümde görüntülenecek etkinlik sayısı sınırlansın", "Show weekends" : "Hafta sonları görüntülensin", "Show week numbers" : "Hafta numaraları görüntülensin", "Time increments" : "Zaman artışı", + "Default calendar for incoming invitations" : "Gelen davetler için varsayılan takvim", "Default reminder" : "Varsayılan anımsatıcı", "Copy primary CalDAV address" : "Birincil CalDAV adresini kopyala", "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV adresini kopyala", "Personal availability settings" : "Kişisel uygunluk ayarları", "Show keyboard shortcuts" : "Kısayol tuşlarını görüntüle", - "Calendar settings" : "Takvim ayarları", - "No reminder" : "Herhangi bir anımsatıcı yok", - "CalDAV link copied to clipboard." : "CalDAV bağlantısı panoya kopyalandı.", - "CalDAV link could not be copied to clipboard." : "CalDAV bağlantısı panoya kopyalanamadı.", - "Appointment was created successfully" : "Randevu oluşturuldu", - "Appointment was updated successfully" : "Randevu güncellendi", + "Appointment schedule successfully created" : "Randevu zamanı eklendi", + "Appointment schedule successfully updated" : "Randevu zamanı güncellendi", "_{duration} minute_::_{duration} minutes_" : ["{duration} dakika","{duration} dakika"], "0 minutes" : "0 dakika", "_{duration} hour_::_{duration} hours_" : ["{duration} saat","{duration} saat"], @@ -176,7 +215,14 @@ "To configure appointments, add your email address in personal settings." : "Randevuları yapılandırmak için kişisel ayarlar bölümünden e-posta adresinizi yazın.", "Public – shown on the profile page" : "Herkese açık - Profil sayfasında görüntülenir", "Private – only accessible via secret link" : "Bireysel - Yalnızca gizli bir bağlantı ile erişilebilir", + "Appointment schedule saved" : "Randevu zamanlaması kaydedildi", + "Create appointment schedule" : "Randevu zamanı ekle", + "Edit appointment schedule" : "Randevu zamanını düzenle", + "Update" : "Güncelle", + "Appointment name" : "Randevu adı", "Location" : "Konum", + "Create a Talk room" : "Bir Konuş odası oluştur", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Alınan her randevu için benzersiz bir bağlantı oluşturularak onay e-postası ile gönderilecek.", "Description" : "Açıklama", "Visibility" : "Görünürlük", "Duration" : "Süre", @@ -194,25 +240,37 @@ "Friday" : "Cuma", "Saturday" : "Cumartesi", "Sunday" : "Pazar", + "Weekdays" : "Hafta içi günleri", "Add time before and after the event" : "Etkinlik öncesi ve sonrası zaman ekle", "Before the event" : "Etkinlik öncesi", "After the event" : "Etkinlik sonrası", "Planning restrictions" : "Planlama kısıtlamaları", "Minimum time before next available slot" : "Sonraki uygun aralıktan önceki en az süre", "Max slots per day" : "Bir gündeki en fazla aralık", - "Limit how far in the future appointments can be booked" : "Gelecekteki randevuların ne kadar uzağa ayırtılabileceğini sınırlayın", - "Create appointment" : "Randevu ekle", - "Edit appointment" : "Randevuyu düzenle", - "Save" : "Kaydet", - "Update" : "Güncelle", + "Limit how far in the future appointments can be booked" : "Gelecekteki randevuların ne kadar uzağa alınabileceğini sınırlayın", + "It seems a rate limit has been reached. Please try again later." : "Sınıra ulaşıldı. Lütfen bir süre sonra yeniden deneyin.", "Please confirm your reservation" : "Lütfen randevunuzu onaylayın", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Randevu bilgilerinizi içeren bir e-posta gönderildi. Randevunuzu onaylamak için lütfen e-posta içeriğindeki bağlantıya tıklayın. Bu sayfayı kapatabilirsiniz.", "Your name" : "Adınız", "Your email address" : "E-posta adresiniz", "Please share anything that will help prepare for our meeting" : "Lütfen görüşmeye hazırlanmak için yardımcı olabilecek şeyleri paylaşın", "Could not book the appointment. Please try again later or contact the organizer." : "Randevu alınamadı. Lütfen bir süre sonra yeniden deneyin ya da düzenleyici ile görüşün.", - "Book the appointment" : "Randevu al", - "Reminder" : "Anımsatıcı", + "Back" : "Geri", + "Book appointment" : "Randevu al", + "Error fetching Talk conversations." : "Konuş görüşmeleri alınırken sorun çıktı.", + "Conversation does not have a valid URL." : "Görüşmenin geçerli bir adresi yok.", + "Successfully added Talk conversation link to location." : "Konuş görüşme bağlantısı konuma eklendi.", + "Successfully added Talk conversation link to description." : "Konuş görüşme bağlantısı açıklamaya eklendi.", + "Failed to apply Talk room." : "Konuş odası uygulanamadı.", + "Error creating Talk conversation" : "Konuş görüşmesi oluşturulurken sorun çıktı", + "Select a Talk Room" : "Bir Konuş odası seçin", + "Add Talk conversation" : "Konuş görüşmesi ekle", + "Fetching Talk rooms…" : "Konuş odaları alınıyor…", + "No Talk room available" : "Kullanılabilecek bir Konuş odası yok", + "Create a new conversation" : "Yeni bir görüşme oluştur", + "Select conversation" : "Görüşme seçin", + "on" : "şu gün", + "at" : "şu saatte", "before at" : "şundan önce", "Notification" : "Bildirim", "Email" : "E-posta", @@ -223,114 +281,143 @@ "Edit time" : "Zamanı düzenle", "Save time" : "Zamanı kaydet", "Remove reminder" : "Anımsatıcıyı kaldır", - "on" : "şu gün", - "at" : "şu saatte", - "+ Add reminder" : "+ Anımsatıcı ekle", "Add reminder" : "Anımsatıcı ekle", - "_second_::_seconds_" : ["saniye","saniye"], - "_minute_::_minutes_" : ["dakika","dakika"], - "_hour_::_hours_" : ["saat","saat"], - "_day_::_days_" : ["gün","gün"], - "_week_::_weeks_" : ["hafta","hafta"], + "seconds" : "saniye", + "minutes" : "dakika", + "hours" : "saat", + "days" : "gün", + "weeks" : "hafta", + "Choose a file to add as attachment" : "Ek dosya olarak eklenecek dosyayı seçin", + "Choose a file to share as a link" : "Bağlantı olarak paylaşılacak bir dosya seçin", + "Attachment {name} already exist!" : "{name} ek dosyası zaten var!", + "Could not upload attachment(s)" : "Ek dosyalar yüklenemedi", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Bir dosyayı indirmek üzeresiniz. Lütfen dosyayı açmadan önce adını kontrol edin. İlerlemek istediğinize emin misiniz?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "{host} bağlantısını açmak üzeresiniz. İlerlemek istediğinize emin misiniz? Bağlantı: {link}", + "Proceed" : "İlerle", + "No attachments" : "Herhangi bir ek dosya yok", + "Add from Files" : "Dosyalardan ekle", + "Upload from device" : "Aygıttan yükle", + "Delete file" : "Dosyayı sil", + "Confirmation" : "Onaylama", + "_{count} attachment_::_{count} attachments_" : ["{count} ek dosya","{count} ek dosya"], "Suggested" : "Önerildi", "Available" : "Uygun", + "Invitation accepted" : "Davet kabul edildi", + "Accepted {organizerName}'s invitation" : "{organizerName} tarafından yapılan davet kabul edildi", + "Participation marked as tentative" : "Katılım belirsiz olarak işaretlendi", + "Invitation is delegated" : "Davet iletildi", "Not available" : "Kullanılamaz", + "Invitation declined" : "Davet reddedildi", + "Declined {organizerName}'s invitation" : "{organizerName} tarafından yapılan davet reddedildi", + "Availability will be checked" : "Uygunluk denetlenecek", + "Invitation will be sent" : "Davet gönderilecek", + "Failed to check availability" : "Uygunluk denetlenemedi", + "Failed to deliver invitation" : "Davet iletilemedi", + "Awaiting response" : "Yanıt bekleniyor", "Checking availability" : "Uygunluk denetleniyor", - "Invitation accepted" : "Çağrı onaylandı", - "Accepted {organizerName}'s invitation" : "{organizerName} tarafından yapılan çağrı onaylandı", - "Invitation declined" : "Çağrı reddedildi", - "Declined {organizerName}'s invitation" : "{organizerName} tarafından yapılan çağrı reddedildi", - "Invitation is delegated" : "Çağrı iletildi", - "Participation marked as tentative" : "Katılım belirsiz olarak işaretlendi", - "Invitation sent" : "Çağrı gönderildi", - "Has not responded to {organizerName}'s invitation yet" : "{organizerName} tarafından yapılan çağrıyı yanıtlamadı", - "Availability of attendees, resources and rooms" : "Katılımcı, kaynak ve odaların kullanılabilirliği", + "Has not responded to {organizerName}'s invitation yet" : "{organizerName} tarafından yapılan daveti yanıtlamadı", + "chairperson" : "oturum başkanı", + "required participant" : "zorunlu katılımcı", + "non-participant" : "katılımcı değil", + "optional participant" : "isteğe bağlı katılımcı", "{organizer} (organizer)" : "{organizer} (organizer)", - "Free" : "Serbest", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Katılımcı, kaynak ve odaların kullanılabilirliği", + "Suggestion accepted" : "Öneri kabul edildi", + "Legend" : "İşaret", + "Out of office" : "İş yeri dışında", + "Attendees:" : "Katılımcılar:", + "Done" : "Tamamlandı", + "Search room" : "Oda ara", + "Room name" : "Oda adı", + "Check room availability" : "Oda uygunluğuna bak", + "Free" : "Uygun", "Busy (tentative)" : "Meşgul (belirsiz)", "Busy" : "Meşgul", - "Out of office" : "İş yeri dışında", "Unknown" : "Bilinmiyor", + "Find a time" : "Bir zaman bulun", + "The invitation has been accepted successfully." : "Davet kabul edildi.", + "Failed to accept the invitation." : "Davet kabul edilemedi.", + "The invitation has been declined successfully." : "Davet reddedildi.", + "Failed to decline the invitation." : "Davet reddedilemedi.", + "Your participation has been marked as tentative." : "Katılım durumunuz belirsiz olarak işaretlendi.", + "Failed to set the participation status to tentative." : "Katılım durumunuz belirsiz olarak işaretlenemedi.", "Accept" : "Kabul et", "Decline" : "Reddet", "Tentative" : "Belirsiz", - "The invitation has been accepted successfully." : "Çağrı kabul edildi.", - "Failed to accept the invitation." : "Çağrı kabul edilemedi.", - "The invitation has been declined successfully." : "Çağrı reddedildi.", - "Failed to decline the invitation." : "Çağrı reddedilemedi.", - "Your participation has been marked as tentative." : "Katılım durumunuz belirsiz olarak işaretlendi.", - "Failed to set the participation status to tentative." : "Katılım durumunuz belirsiz olarak işaretlenemedi.", - "Create Talk room for this event" : "Bu etkinlik için Talk odası oluştur", - "Show busy times" : "Meşgul zamanlar görüntülensin", "No attendees yet" : "Henüz bir katılımcı yok", - "Successfully appended link to talk room to description." : "Bağlantı Talk odası açıklamasına eklendi.", - "Error creating Talk room" : "Talk odası oluştururken sorun çıktı", - "Send email" : "E-posta gönder", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} davet edildi, {confirmedCount} kabul etti", + "Please add at least one attendee to use the \"Find a time\" feature." : "Lütfen \"Bir zaman bul\" özelliğini kullanmak için en az bir katılımcı ekleyin.", + "Successfully appended link to talk room to location." : "Bağlantı konumu Konuş odasına eklendi.", + "Successfully appended link to talk room to description." : "Bağlantı Konuş odası açıklamasına eklendi.", + "Error creating Talk room" : "Konuş odası oluştururken sorun çıktı", + "Attendees" : "Katılanlar", + "_%n more guest_::_%n more guests_" : ["%n diğer konuk","%n diğer konuk"], + "Remove group" : "Grubu sil", + "Remove attendee" : "Katılımcıyı çıkar", + "Request reply" : "Yanıt iste", "Chairperson" : "Oturum başkanı", "Required participant" : "Zorunlu katılımcı", "Optional participant" : "İsteğe bağlı katılımcı", "Non-participant" : "Katılımcı değil", - "Remove attendee" : "Katılımcıyı çıkar", - "Search for emails, users or contacts" : "E-posta, kullanıcı ya da kişi arama", + "_%n member_::_%n members_" : ["%n üye","%n üye"], + "Search for emails, users, contacts, contact groups or teams" : "E-posta, kullanıcı, kişi, kişi grubu ya da takım arayın", "No match found" : "Herhangi bir sonuç bulunamadı", + "Note that members of circles get invited but are not synced yet." : "Takım üyelerinin davet edildiğini ancak henüz eşitlenmediğini unutmayın.", + "Note that members of contact groups get invited but are not synced yet." : "Kişi gruplarının üyelerinin davet edildiğini ancak henüz eşitlenmediğini unutmayın.", "(organizer)" : "(düzenleyen)", - "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Çağrı göndermek ve yanıtları işlemek için, [linkopen]kişisel ayarlar bölümünden e-posta adresinizi ekleyin[linkclose].", + "Make {label} the organizer" : "{label} düzenleyici olsun", + "Make {label} the organizer and attend" : "{label} düzenleyici olsun ve katıl", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Davet göndermek ve yanıtları işlemek için, [linkopen]kişisel ayarlar bölümünden e-posta adresinizi ekleyin[linkclose].", "Remove color" : "Rengi kaldır", "Event title" : "Etkinlik başlığı", - "All day" : "Tüm gün", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Bir yinelenme kümesinin ögesi olan etkinlikler tüm gün olarak ayarlanamaz.", - "from {startDate}" : "{startDate} tarihinden", - "from {startDate} at {startTime}" : "{startDate} - {startTime} saatinden", - "to {endDate}" : "{endDate} tarihine", - "to {endDate} at {endTime}" : "{endDate} - {endTime} saatine", + "From" : "Başlangıç", + "To" : "Bitiş", "Repeat" : "Yineleme", - "End repeat" : "Yinelenme sonu", - "Select to end repeat" : "Yinelenme sonunu seçin", + "_time_::_times_" : ["kez","kez"], "never" : "asla", "on date" : "şu tarihte", "after" : "şundan sonra", - "_time_::_times_" : ["kez","kez"], + "End repeat" : "Yinelenme sonu", + "Select to end repeat" : "Yinelenme sonunu seçin", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Bu etkinlik bir yinelenen etkinlik kümesinin ögesi. Bu nedenle bu ögeye bir yinelenme kuralı ekleyemezsiniz.", "first" : "birinci", - "third" : "üçüncü", - "fourth" : "dördüncü", - "fifth" : "beşinci", - "second to last" : "ikinciden sonuncuya", - "last" : "sonuncu", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Yinelenme kuralındaki değişiklikler yalnızca bu ve sonraki etkinlikler için geçerli olacak.", "Repeat every" : "Yinelenme sıklığı", "By day of the month" : "Ayın gününde", "On the" : "Şu zamanda", + "_day_::_days_" : ["gün","gün"], + "_week_::_weeks_" : ["hafta","hafta"], "_month_::_months_" : ["ay","ay"], "_year_::_years_" : ["yıl","yıl"], + "On specific day" : "Belirli günde", "weekday" : "hafta içi günleri", "weekend day" : "hafta sonu günü", - "No recurrence" : "Yinelenme yok", + "Does not repeat" : "Yinelenmiyor", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Bu etkinliğin yinelenme ayarları Nextcloud tarafından tam olarak desteklenmiyor. Yinelenme ayarlarını düzenlerseniz yinelenen bazı etkinlikler kaybolabilir.", - "Suggestions" : "Öneriler", "No rooms or resources yet" : "Henüz bir oda ya da kaynak yok", + "Resources" : "Kaynaklar", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} koltuk","{seatingCapacity} koltuk"], "Add resource" : "Kaynak ekle", "Has a projector" : "Projeksiyon var", - "Has a whiteboard" : "Beyaz tahta var", + "Has a whiteboard" : "Beyaz Tahta var", "Wheelchair accessible" : "Tekerlekli sandalyeye uygun", "Remove resource" : "Kaynağı sil", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} koltuk","{seatingCapacity} koltuk"], - "Projector" : "Projeksiyon", - "Whiteboard" : "Beyaz tahta", - "Search for resources or rooms" : "Kaynak ya da oda arama", + "Search for resources or rooms" : "Kaynak ya da oda ara", "available" : "kullanılabilir", "unavailable" : "kullanılamaz", + "Show all rooms" : "Tüm odaları görüntüle", + "Projector" : "Projeksiyon", + "Whiteboard" : "Beyaz Tahta", "Room type" : "Oda türü", "Any" : "Tümü", "Minimum seating capacity" : "En az oturma yeri sayısı", - "More" : "Diğer", - "Update this occurrence" : "Bu etkinliği güncelle", + "More details" : "Ayrıntılar", "Update this and all future" : "Bu ve sonraki etkinlikleri güncelle", + "Update this occurrence" : "Bu etkinliği güncelle", "Public calendar does not exist" : "Herkese açık takvim bulunamadı", "Maybe the share was deleted or has expired?" : "Paylaşım silinmiş ya da geçerlilik süresi dolmuş olabilir mi?", - "Please select a time zone:" : "Lütfen bir saat dilimi seçin:", - "Pick a time" : "Bir saat seçin", - "Pick a date" : "Bir tarih seçin", "from {formattedDate}" : "{formattedDate} tarihinden", "to {formattedDate}" : "{formattedDate} tarihine", "on {formattedDate}" : "{formattedDate} tarihinde", @@ -340,9 +427,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime} saatinde", "Please enter a valid date" : "Lütfen geçerli bir tarih yazın", "Please enter a valid date and time" : "Lütfen geçerli bir tarih ve saat yazın", + "Select a time zone" : "Bir saat dilimi seçin", + "Please select a time zone:" : "Lütfen bir saat dilimi seçin:", + "Pick a time" : "Bir saat seçin", + "Pick a date" : "Bir tarih seçin", "Type to search time zone" : "Saat dilimi aramak için yazmaya başlayın", "Global" : "Genel", - "Select date" : "Tarih seçin", + "Holidays in {region}" : "{region} tatilleri", + "An error occurred, unable to read public calendars." : "Bir sorun çıktı. Herkese açık takvimler okunamadı.", + "An error occurred, unable to subscribe to calendar." : "Bir sorun çıktı. Takvime abone olunamadı.", + "Public holiday calendars" : "Resmi tatil takvimleri", + "Public calendars" : "Herkese açık takvimler", + "No valid public calendars configured" : "Yapılandırılmış geçerli bir herkese açık takvim yok", + "Speak to the server administrator to resolve this issue." : "Lütfen bu sorunu çözmesi için sunucu yöneticiniz ile görüşün.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Resmi tatil takvimleri Thunderbird tarafından sağlanır. Takvim verileri {website} üzerinden indirilir", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Sunucu yöneticisi şu herkese açık takvimleri öneriyor. Takvim verileri ilgili siteden indirilir.", + "By {authors}" : "{authors} tarafından", + "Subscribed" : "Abone olundu", + "Subscribe" : "Abone ol", + "Could not fetch slots" : "Aralıklar alınamadı", + "Select a date" : "Bir tarih seçin", "Select slot" : "Aralık seçin", "No slots available" : "Seçilebilecek bir aralık yok", "The slot for your appointment has been confirmed" : "Randevunuzun aralığı onaylandı", @@ -357,26 +461,27 @@ "Book an appointment with {name}" : "{name} için bir randevu alın", "No public appointments found for {name}" : "{name} için herkese açık bir randevu bulunamadı", "Personal" : "Kişisel", - "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Otomatik saat dilimi algılaması saat diliminizi UTC olarak belirledi.\nBu durum genellikle web tarayıcınızın sağladığı bir güvenlik önleminden kaynaklanır.\nLütfen takvim ayarları bölümünden saat diliminizi el ile ayarlayın.", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Otomatik saat dilimi algılaması saat diliminizi UTC olarak belirledi.\nBu durum genellikle tarayıcınızın sağladığı bir güvenlik önleminden kaynaklanır.\nLütfen takvim ayarları bölümünden saat diliminizi el ile ayarlayın.", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Yapılandırılmış saat diliminiz {{timezoneId}} bulunamadı. UTC dilimine dönülüyor.\nLütfen ayarlardan saat diliminizi değiştirin ve bu sorunu bildirin.", - "No more events today" : "Bugün başka bir etkinlik yok", - "No upcoming events" : "Yaklaşan bir etkinlik yok", - "Create a new event" : "Etkinlik ekle", - "[Today]" : "[Bugün]", - "[Tomorrow]" : "[Yarın]", - "[Yesterday]" : "[Dün]", - "[Last] dddd" : "[Son] dddd", + "Availability of {displayName}" : "{displayName} uygunluğu", + "Edit event" : "Etkinliği düzenle", "Event does not exist" : "Etkinlik bulunamadı", - "Duplicate" : "Kopyala", + "Duplicate" : "Çoğalt", "Delete this occurrence" : "Bu etkinliği sil", "Delete this and all future" : "Bu ve sonraki etkinlikleri sil", - "Details" : "Ayrıntılar", - "Attendees" : "Katılanlar", - "Resources" : "Kaynaklar", + "All day" : "Tüm gün", + "Modifications wont get propagated to the organizer and other attendees" : "Değişiklikler düzenleyiciye ve diğer katılımcılara iletilmeyecek", + "Managing shared access" : "Paylaşılmış erişim yönetimi", + "Deny access" : "Erişimi reddet", + "Invite" : "Çağır", + "_User requires access to your file_::_Users require access to your file_" : ["Dosyanıza erişme izni isteyen kullanıcı","Dosyanıza erişme izni isteyen kullanıcılar"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Paylaşılmış erişim gereken ek dosya","Paylaşılmış erişim gereken ek dosyalar"], + "Untitled event" : "Adlandırılmamış etkinlik", "Close" : "Kapat", - "Show more details" : "Diğer ayrıntıları görüntüle", + "Modifications will not get propagated to the organizer and other attendees" : "Değişiklikler düzenleyiciye ve diğer katılımcılara iletilmeyecek", "Subscribe to {name}" : "{name} takvimine abone ol", "Export {name}" : "{name} dışa aktar", + "Show availability" : "Uygunluğu görüntüle", "Anniversary" : "Yıl dönümü", "Appointment" : "Randevu", "Business" : "İş", @@ -404,7 +509,6 @@ "on {time}" : "{time} saatinde", "on {time} ({timezoneId})" : "{time} ({timezoneId}) zamanında", "Week {number} of {year}" : "{year} yılının {number}. haftasında", - "Does not repeat" : "Yinelenmiyor", "Daily" : "Günlük", "Weekly" : "Haftalık", "Monthly" : "Aylık", @@ -416,24 +520,30 @@ "_on {weekday}_::_on {weekdays}_" : ["{weekday} gününde","{weekdays} günlerinde"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["{dayOfMonthList} gününde","{dayOfMonthList} günlerinde"], "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber} {byDaySet} gününde", - "in {monthNames}" : "{monthNames} aylarında", + "in {monthNames} on the {dayOfMonthList}" : "{monthNames} ayı {dayOfMonthList} gününde", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames} aylarında {ordinalNumber} {byDaySet} gününde", "until {untilDate}" : "{untilDate} tarihine kadar", "_%n time_::_%n times_" : ["%n kez","%n kez"], - "Untitled event" : "Adsız etkinlik", - "Untitled task" : "Adsız görev", - "Please ask your administrator to enable the Tasks App." : "Lütfen Görevler Uygulamasını etkinleştirmesi için BT yöneticinizle görüşün.", - "Prev" : "Önceki", - "Next" : "Sonraki", - "Prev year" : "Önceki yıl", - "Next year" : "Sonraki yıl", - "Year" : "Yıl", + "second" : "saniye", + "third" : "üçüncü", + "fourth" : "dördüncü", + "fifth" : "beşinci", + "second to last" : "ikinciden sonuncuya", + "last" : "sonuncu", + "Untitled task" : "Adlandırılmamış görev", + "Please ask your administrator to enable the Tasks App." : "Lütfen Görevler uygulamasını kullanıma alması için BT yöneticiniz ile görüşün.", + "You are not allowed to edit this event as an attendee." : "Bir katılımcı olarak bu etkinliği düzenleme izniniz yok.", "W" : "W", "%n more" : "%n diğer", "No events to display" : "Görüntülenebilecek bir etkinlik yok", + "All participants declined" : "Tüm katılımcılar katılmayı reddetti", + "Please confirm your participation" : "Lütfen katılacağınızı onaylayın", + "You declined this event" : "Bu etkinliğe katılmayı reddettiniz", + "Your participation is tentative" : "Katılım durumunuz belirsiz", "_+%n more_::_+%n more_" : ["+%n diğer","+%n diğer"], "No events" : "Henüz bir etkinlik yok", "Create a new event or change the visible time-range" : "Yeni bir etkinlik ekleyin ya da görüntülenen zaman aralığını değiştirin", + "Failed to save event" : "Etkinlik kaydedilemedi", "It might have been deleted, or there was a typo in a link" : "Silinmiş olabilir ya da bir bağlantıda bir yazım hatası var", "It might have been deleted, or there was a typo in the link" : "Silinmiş olabilir ya da bağlantıda bir yazım hatası var", "Meeting room" : "Toplantı odası", @@ -446,148 +556,39 @@ "When shared hide this event" : "Paylaşıldığında bu etkinlik gizlensin", "The visibility of this event in shared calendars." : "Bu etkinliğin paylaşılmış takvimlerdeki görünümü.", "Add a location" : "Bir konum ekleyin", - "Add a description" : "Bir açıklama ekleyin", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Bir açıklama yazın\n\n- Bu toplantı neyle ilgili\n- Gündem maddeleri\n- Katılımcıların hazırlaması gereken her şey", "Status" : "Durum", "Confirmed" : "Kabul edildi", "Canceled" : "İptal edildi", "Confirmation about the overall status of the event." : "Etkinliğin genel kabul edilme durumu.", "Show as" : "Şu şekilde görüntülensin", - "Take this event into account when calculating free-busy information." : "Serbest, meşgul zamanlar hesaplanırken bu etkinlik hesaba katılsın.", + "Take this event into account when calculating free-busy information." : "Uygun, meşgul zamanlar hesaplanırken bu etkinlik hesaba katılsın.", "Categories" : "Kategoriler", "Categories help you to structure and organize your events." : "Kategorileri kullanarak etkinliklerinizi düzenleyebilirsiniz.", "Search or add categories" : "Kategori ara ya da ekle", "Add this as a new category" : "Bunu yeni bir kategori olarak ekle", "Custom color" : "Özel renk", "Special color of this event. Overrides the calendar-color." : "Özel etkinlik rengi, takvim renginin yerine kullanılır.", - "Chat room for event" : "Etkinliğin sohbet odası", + "Error while sharing file" : "Dosya paylaşılırken sorun çıktı", + "Error while sharing file with user" : "Dosya kullanıcı ile paylaşılırken sorun çıktı", + "Error creating a folder {folder}" : "{folder} klasörü oluşturulurken sorun çıktı", + "Attachment {fileName} already exists!" : "{fileName} ek dosyası zaten var!", + "Attachment {fileName} added!" : "{fileName} dosyası eklendi!", + "An error occurred during uploading file {fileName}" : "{fileName} dosyası yüklenirken bir sorun çıktı", + "An error occurred during getting file information" : "Dosya bilgileri alınırken bir sorun çıktı", + "Talk conversation for event" : "Etkinlik için Konuş görüşmesi", + "An error occurred, unable to delete the calendar." : "Bir sorun çıktı. Takvim silinemedi.", "Imported {filename}" : "{filename} içe aktarıldı", - "Meditation" : "Meditasyon", - "Relaxing" : "Rahatlama", - "Relax" : "Rahat", - "Break" : "Kırık", - "Commute" : "İşe gidiş/geliş", - "Commuting" : "İşe gidip/gelme", - "Shuttle" : "Mekik", - "Invoice" : "Fatura", - "Finance" : "Finans", - "Bank" : "Banka", - "Money" : "Para", - "Wedding" : "Düğün", - "Dog" : "Köpek", - "Concert" : "Konser", - "Festival" : "Festival", - "Theater" : "Tiyatro", - "Theatre" : "Tiyatro", - "Presentation" : "Sunum", - "Talk" : "Görüşme", - "Speech" : "Konuşma", - "Deadline" : "Bitiş tarihi", - "Submission" : "Teslim", - "Reporting" : "Rapor", - "Camping" : "Kampçılık", - "Camp" : "Kamp", - "Election" : "Seçim", - "Voting" : "Oylama", - "Vote" : "Oy", - "Barbecue" : "Mangal", - "Barbeque" : "Mangal", - "Garden" : "Bahçe", - "Farm" : "Çiftlik", - "Movie" : "Film", - "Cinema" : "Sinema", - "Graduation" : "Mezuniyet", - "Brainstorm" : "Beyin Fırtınası", - "Review" : "Gözden geçirme", - "Audit" : "Denetim", - "Inspection" : "İnceleme", - "Proofreading" : "Düzeltme", - "Baseball" : "Beyzbol", - "Meet" : "Toplan", - "Planning" : "Planlama", - "Pointing" : "İşaret etme", - "Retrospective" : "Geçmişi değerlendirme", - "Office" : "Ofis", - "Contributor week" : "Katılımcı haftası", - "Mail" : "Posta", - "Soccer" : "Futbol", - "Football" : "Amerikan futbolu", - "Gaming" : "Oyun", - "Drive" : "Sürüş", - "Driving" : "Sürüş", - "Bicycle" : "Bisiklet", - "Cycle" : "Bisiklet", - "Cycling" : "Bisiklet", - "Biking" : "Bisiklete ninme", - "Bike" : "Bisiklet", - "Podcast" : "Podcast", - "Basketball" : "Basketbol", - "Fishing" : "Balık tutma", - "Hiking" : "Doğa yürüyüşü", - "Hike" : "Yürüyüş", - "Art" : "Sanat", - "Exhibition" : "Sergi", - "Museum" : "Müze", - "Pilates" : "Pilates", - "Park" : "Park", - "Walk" : "Yürüyüş", - "Studying" : "Ders Çalışma", - "Doctor" : "Doktor", - "Health" : "Sağlık", - "Dentist" : "Dişçi", - "Hospital" : "Hastane", - "Interview" : "Röportaj", - "Training" : "Antrenman", - "Practice" : "Uygulama", - "Sports" : "Spor", - "Exercise" : "Egzersiz", - "Work out" : "Spor çalışması", - "Working out" : "Saha çalışması", - "Gym" : "Gym", - "Barber" : "Berber", - "Haircut" : "Saç kesimi", - "Hairdresser" : "Kuaför", - "Exam" : "Sınav", - "Written test" : "Yazılı sınav", - "Oral test" : "Sözlü sınav", - "Working" : "İş", - "New Years Eve" : "Yılbaşı gecesi", - "NYE" : "Yılbaşı", - "Fireworks" : "Havai Fişek", - "Running" : "Koşu", - "Go for a run" : "Koşuya git", - "Marathon" : "Maraton", - "Video-conference" : "Görüntülü toplu görüşme", - "Conference-call" : "Konferans çağrısı", - "Video-call" : "Görüntülü çağrı", - "Video-chat" : "Görüntülü sohbet", - "Video-meeting" : "Görüntülü toplantı", - "Call" : "Çağrı", - "Calling" : "Çağrı", - "Christmas" : "Noel", - "Conference" : "Konferans", - "Pizza" : "Pizza", - "Travelling" : "Gezi", - "Trip" : "Yolculuk", - "Journey" : "Yolculuk", - "Collaborate" : "İşbirliği", - "Pair" : "Eşleştir", - "Lecture" : "Ders", - "Seminar" : "Seminer", - "Teaching" : "Ders", - "Photograph" : "Fotoğraf", - "Party" : "Parti", - "Celebration" : "Kutlama", - "Celebrate" : "Kutlama", - "Birthday" : "Doğum günü", - "Shopping" : "Alışveriş", - "Groceries" : "Market", - "Skate" : "Kayak", - "Skateboard" : "Skateboard", - "Wine tasting" : "Şarap tadımı", - "Golf" : "Golf", - "Dinner" : "Akşam yemeği", - "Lunch" : "Öğle yemeği", + "This is an event reminder." : "Bu bir etkinlik hatırlatıcısıdır.", + "Error while parsing a PROPFIND error" : "PROPFIND hatası işlenirken sorun çıktı", "Appointment not found" : "Randevu bulunamadı", - "User not found" : "Kullanıcı bulunamadı" + "User not found" : "Kullanıcı bulunamadı", + "Reminder" : "Anımsatıcı", + "+ Add reminder" : "+ Anımsatıcı ekle", + "Select automatic slot" : "Aralık otomatik seçilsin", + "with" : "şu kişi ile", + "Available times:" : "Uygun zamanlar:", + "Suggestions" : "Öneriler", + "Details" : "Ayrıntılar" },"pluralForm" :"nplurals=2; plural=(n > 1);" } \ No newline at end of file diff --git a/l10n/ug.js b/l10n/ug.js index 38c29348d1929837760318855434b42c1dc9c0bb..cce2cfabd06560ec5793246c47346eab45b46764 100644 --- a/l10n/ug.js +++ b/l10n/ug.js @@ -1,22 +1,226 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "تەمىنلەنگەن ئېلېكترونلۇق خەت ئادرېسى بەك ئۇزۇن", + "User-Session unexpectedly expired" : "ئىشلەتكۈچى-يىغىن ئويلىمىغان يەردىن توشىدۇ", + "Provided email-address is not valid" : "تەمىنلەنگەن ئېلېكترونلۇق خەت ئادرېسى ئىناۋەتلىك ئەمەس", + "%s has published the calendar »%s«" : "% s كالېندارنى ئېلان قىلدى »% s«", + "Unexpected error sending email. Please contact your administrator." : "ئېلېكترونلۇق خەت ئەۋەتىشتە كۈتۈلمىگەن خاتالىق. باشقۇرغۇچىڭىز بىلەن ئالاقىلىشىڭ.", + "Successfully sent email to %1$s" : "مۇۋەپپەقىيەتلىك ھالدا%1 $ s غا ئېلېكترونلۇق خەت ئەۋەتكەن", + "Hello," : "ياخشىمۇسىز ،", + "We wanted to inform you that %s has published the calendar »%s«." : "بىز سىزگە% s كالېندارنى ئېلان قىلدى »% s«.", + "Open »%s«" : "ئېچىڭ »% s«", + "Cheers!" : "خۇشال بولۇڭ!", + "Upcoming events" : "ئالدىمىزدىكى ۋەقەلەر", + "No more events today" : "بۈگۈن باشقا پائالىيەتلەر يوق", + "No upcoming events" : "پات ئارىدا يۈز بېرىدىغان ئىشلار يوق", + "More events" : "تېخىمۇ كۆپ ۋەقەلەر", + "%1$s with %2$s" : "%1 $ s بىلەن%2 $ s", "Calendar" : "يىلنامە", + "New booking {booking}" : "يېڭى زاكاز {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) {date_time} دا «{config_display_name}» تەيىنلەشنى زاكاس قىلدى.", + "Appointments" : "تەيىنلەش", + "Schedule appointment \"%s\"" : "ۋاقىت جەدۋىلى \"% s\"", + "Schedule an appointment" : "ئۇچرىشىشنى ئورۇنلاشتۇرۇڭ", + "%1$s - %2$s" : "%1 $ s -%2 $ s", + "Prepare for %s" : "% S ئۈچۈن تەييارلىق قىلىڭ", + "Follow up for %s" : "% S غا ئەگىشىڭ", + "Your appointment \"%s\" with %s needs confirmation" : "سىزنىڭ% s بىلەن ئۇچرىشىشىڭىز جەزملەشتۈرۈشكە موھتاج", + "Dear %s, please confirm your booking" : "ھۆرمەتلىك% s ، زاكاسلىرىڭىزنى جەزملەشتۈرۈڭ", + "Confirm" : "جەزملەشتۈرۈڭ", + "Appointment with:" : "تەيىنلەش:", + "Description:" : "چۈشەندۈرۈش:", + "This confirmation link expires in %s hours." : "بۇ جەزملەشتۈرۈش ئۇلىنىشى% s سائەت ئىچىدە توشىدۇ.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "زادى ئۇچرىشىشنى ئەمەلدىن قالدۇرماقچى بولسىڭىز ، بۇ ئېلېكترونلۇق خەتكە جاۋاب قايتۇرۇش ياكى ئۇلارنىڭ ئارخىپ بېتىنى زىيارەت قىلىش ئارقىلىق تەشكىللىگۈچىڭىز بىلەن ئالاقىلىشىڭ.", + "Your appointment \"%s\" with %s has been accepted" : "سىزنىڭ% s بىلەن «% s» تەيىنلىنىشىڭىز قوبۇل قىلىندى", + "Dear %s, your booking has been accepted." : "ھۆرمەتلىك% s ، زاكاس قوبۇل قىلىندى.", + "Appointment for:" : "تەيىنلەش:", + "Date:" : "چېسلا:", + "You will receive a link with the confirmation email" : "جەزملەش ئېلخېتى بىلەن ئۇلىنىش تاپشۇرۇۋالىسىز", + "Where:" : "قەيەردە:", + "Comment:" : "باھا:", + "You have a new appointment booking \"%s\" from %s" : "سىزدە% s دىن «% s» نى زاكاز قىلىش يېڭى زاكاس تالونى بار", + "Dear %s, %s (%s) booked an appointment with you." : "ھۆرمەتلىك% s ،% s (% s) سىز بىلەن كۆرۈشۈشنى زاكاز قىلدى.", + "A Calendar app for Nextcloud" : "Nextcloud ئۈچۈن كالېندار دېتالى", + "Previous day" : "ئالدىنقى كۈن", + "Previous week" : "ئالدىنقى ھەپتە", + "Previous year" : "ئالدىنقى يىل", + "Previous month" : "ئالدىنقى ئاي", + "Next day" : "ئەتىسى", + "Next week" : "كېلەر ھەپتە", + "Next year" : "كېلەر يىلى", + "Next month" : "كېلەر ئاي", + "Create new event" : "يېڭى پائالىيەت قۇر", + "Event" : "Event", "Today" : "بۈگۈن", + "Day" : "كۈن", "Week" : "ھەپتە", "Month" : "ئاي", + "Year" : "يىل", + "List" : "تىزىملىك", + "Appointment link was copied to clipboard" : "تەيىنلەش ئۇلانمىسى چاپلاش تاختىسىغا كۆچۈرۈلدى", + "Appointment link could not be copied to clipboard" : "تەيىنلەش ئۇلانمىسىنى چاپلاش تاختىسىغا كۆچۈرگىلى بولمايدۇ", + "Preview" : "ئالدىن كۆرۈش", + "Copy link" : "ئۇلانمىنى كۆچۈرۈڭ", "Edit" : "تەھرىر", "Delete" : "ئۆچۈر", - "Export" : "چىقار", - "Share link" : "Share link", + "Appointment schedules" : "تەيىنلەش ۋاقىت جەدۋىلى", + "Create new" : "يېڭى قۇر", + "Disable calendar \"{calendar}\"" : "كالېندار \"{calendar}\" نى چەكلەڭ", + "Disable untitled calendar" : "نامسىز كالېندارنى چەكلەڭ", + "Enable calendar \"{calendar}\"" : "كالېندار \"{calendar}\" نى قوزغىتىڭ", + "Enable untitled calendar" : "نامسىز كالېندارنى قوزغىتىڭ", + "An error occurred, unable to change visibility of the calendar." : "كالېندارنىڭ كۆرۈنۈشچانلىقىنى ئۆزگەرتەلمەيدىغان خاتالىق كۆرۈلدى.", + "Untitled calendar" : "نامسىز كالېندار", + "Shared with you by" : "سىز بىلەن ئورتاقلاشتى", + "Edit and share calendar" : "كالېندارنى تەھرىرلەش ۋە ئورتاقلىشىش", + "Edit calendar" : "كالېندارنى تەھرىرلەش", + "An error occurred, unable to create the calendar." : "كالېندارنى قۇرالماسلىقتا خاتالىق كۆرۈلدى.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "ئىناۋەتلىك ئۇلىنىشنى كىرگۈزۈڭ (http: // ، https: // ، webcal: // ياكى webcals: // دىن باشلاڭ)", + "Calendars" : "كالېندار", + "Add new" : "يېڭى قوشۇڭ", "New calendar" : "يېڭى يىلنامە", + "Name for new calendar" : "يېڭى كالېندارنىڭ ئىسمى", + "Creating calendar …" : "كالېندار قۇرۇش…", + "New calendar with task list" : "ۋەزىپە تىزىملىكى بىلەن يېڭى كالېندار", + "New subscription from link (read-only)" : "ئۇلىنىشتىن يېڭى مۇشتەرىلىك (پەقەت ئوقۇشقىلا بولىدۇ)", + "Creating subscription …" : "مۇشتەرى بولۇش…", + "Add public holiday calendar" : "ئاممىۋى دەم ئېلىش كالېندارىنى قوشۇڭ", + "Add custom public calendar" : "ئىختىيارىي كالېندارنى قوشۇڭ", + "Calendar link copied to clipboard." : "كالېندار ئۇلىنىشى چاپلاش تاختىسىغا كۆچۈرۈلدى.", + "Calendar link could not be copied to clipboard." : "كالېندار ئۇلىنىشىنى چاپلاش تاختىسىغا كۆچۈرگىلى بولمايدۇ.", + "Copy subscription link" : "مۇشتەرىلىك ئۇلانمىسىنى كۆچۈرۈڭ", + "Copying link …" : "كۆچۈرۈش ئۇلانمىسى…", + "Copied link" : "كۆچۈرۈلگەن ئۇلىنىش", + "Could not copy link" : "ئۇلانمىنى كۆچۈرەلمىدى", + "Export" : "چىقار", + "Untitled item" : "نامسىز تۈر", + "Unknown calendar" : "نامەلۇم كالېندار", + "Could not load deleted calendars and objects" : "ئۆچۈرۈلگەن كالېندار ۋە ئوبيېكتلارنى يۈكلىيەلمىدى", + "Could not delete calendar or event" : "كالېندار ياكى ۋەقەنى ئۆچۈرەلمىدى", + "Could not restore calendar or event" : "كالېندار ياكى ھادىسىنى ئەسلىگە كەلتۈرەلمىدى", + "Do you really want to empty the trash bin?" : "ئەخلەت ساندۇقىنى بوشاتماقچىمۇ؟", + "Empty trash bin" : "ئەخلەت ساندۇقى", + "Trash bin" : "ئەخلەت ساندۇقى", + "Loading deleted items." : "ئۆچۈرۈلگەن تۈرلەرنى يۈكلەۋاتىدۇ.", + "You do not have any deleted items." : "ئۆچۈرۈلگەن تۈرلىرىڭىز يوق.", "Name" : "ئاتى", "Deleted" : "ئۆچۈرۈلدى", + "Restore" : "ئەسلىگە كەلتۈرۈش", "Delete permanently" : "مەڭگۈلۈك ئۆچۈر", + "Could not update calendar order." : "كالېندار تەرتىپىنى يېڭىلىيالمىدى.", + "Shared calendars" : "ئورتاق كالېندار", + "Deck" : "پالۋان", + "Hidden" : "يۇشۇرۇن", + "Internal link" : "ئىچكى ئۇلىنىش", + "A private link that can be used with external clients" : "سىرتقى خېرىدارلار بىلەن ئىشلىتىشكە بولىدىغان شەخسىي ئۇلىنىش", + "Copy internal link" : "ئىچكى ئۇلىنىشنى كۆچۈرۈڭ", + "An error occurred, unable to publish calendar." : "كالېندارنى ئېلان قىلالماي خاتالىق كۆرۈلدى.", + "An error occurred, unable to send email." : "ئېلېكترونلۇق خەت ئەۋەتەلمەي خاتالىق كۆرۈلدى.", + "Embed code copied to clipboard." : "قىستۇرما تاختىغا كۆچۈرۈلگەن كود.", + "Embed code could not be copied to clipboard." : "قىستۇرما كودنى چاپلاش تاختىسىغا كۆچۈرگىلى بولمايدۇ.", + "Unpublishing calendar failed" : "كالېندارنى ئېلان قىلىش مەغلۇب بولدى", + "Share link" : "Share link", + "Copy public link" : "ئاممىۋى ئۇلىنىشنى كۆچۈرۈڭ", + "Send link to calendar via email" : "ئېلېكترونلۇق خەت ئارقىلىق كالېندارغا ئۇلىنىش ئەۋەتىڭ", + "Enter one address" : "بىر ئادرېسنى كىرگۈزۈڭ", + "Sending email …" : "ئېلېكترونلۇق خەت ئەۋەتىش…", + "Copy embedding code" : "قىستۇرما كودىنى كۆچۈرۈڭ", + "Copying code …" : "كۆچۈرۈش كودى…", + "Copied code" : "كۆچۈرۈلگەن كود", + "Could not copy code" : "كودنى كۆچۈرەلمىدى", + "Delete share link" : "ھەمبەھىر ئۇلىنىشنى ئۆچۈرۈڭ", + "Deleting share link …" : "ھەمبەھىر ئۇلىنىشنى ئۆچۈرۈۋاتىدۇ…", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "كالېندارنى ھەمبەھىرلەۋاتقاندا خاتالىق كۆرۈلدى.", + "An error occurred, unable to change the permission of the share." : "ئورتاقلىشىشنىڭ رۇخسىتىنى ئۆزگەرتەلمەي خاتالىق كۆرۈلدى.", + "can edit" : "تەھرىرلىيەلەيدۇ", + "Unshare with {displayName}" : "{displayName} بىلەن ئورتاقلاشماسلىق", + "Share with users or groups" : "ئىشلەتكۈچىلەر ياكى گۇرۇپپىلار بىلەن ئورتاقلىشىڭ", + "No users or groups" : "ئىشلەتكۈچى ياكى گۇرۇپپا يوق", + "Failed to save calendar name and color" : "كالېندار ئىسمى ۋە رەڭنى ساقلاش مەغلۇب بولدى", + "Calendar name …" : "كالېندار ئىسمى…", + "Never show me as busy (set this calendar to transparent)" : "مېنى ھەرگىز ئالدىراش دەپ كۆرسەتمەڭ (بۇ كالېندارنى سۈزۈك قىلىپ تەڭشەڭ)", + "Share calendar" : "كالېندارنى ئورتاقلىشىش", + "Unshare from me" : "مەندىن تەڭداشسىز", + "Save" : "ساقلا", + "Import calendars" : "كالېندار ئەكىرىڭ", + "Please select a calendar to import into …" : "ئىمپورت قىلىدىغان كالېندارنى تاللاڭ.", + "Filename" : "ھۆججەت ئىسمى", + "Calendar to import into" : "كىرگۈزمەكچى بولغان كالېندار", "Cancel" : "ۋاز كەچ", + "Select the default location for attachments" : "قوشۇمچە ھۆججەتلەرنىڭ سۈكۈتتىكى ئورنىنى تاللاڭ", + "Pick" : "تاللاڭ", + "Invalid location selected" : "ئىناۋەتسىز ئورۇن تاللانغان", + "Attachments folder successfully saved." : "قوشۇمچە ھۆججەت قىسقۇچ مۇۋەپپەقىيەتلىك ساقلاندى.", + "Error on saving attachments folder." : "قوشۇمچە ھۆججەت قىسقۇچنى ساقلاشتا خاتالىق.", + "Default attachments location" : "كۆڭۈلدىكى قوشۇمچە ئورنى", + "{filename} could not be parsed" : "{filename} ئىسمى} تەھلىل قىلىشقا بولمايدۇ", + "No valid files found, aborting import" : "ئۈنۈملۈك ھۆججەت تېپىلمىدى ، ئىمپورتنى ئەمەلدىن قالدۇردى", + "Import partially failed. Imported {accepted} out of {total}." : "ئىمپورت قىسمەن مەغلۇپ بولدى. {accepted} دىن ئىمپورت قىلىنغان {total} قىلىندى}.", + "Automatic" : "ئاپتوماتىك", + "Automatic ({detected})" : "ئاپتوماتىك ({detected})", + "New setting was not saved successfully." : "يېڭى تەڭشەك مۇۋەپپەقىيەتلىك ساقلانمىدى.", + "Navigation" : "يول باشلاش", + "Previous period" : "ئالدىنقى مەزگىل", + "Next period" : "كېيىنكى مەزگىل", + "Views" : "كۆرۈنۈشلەر", + "Day view" : "كۈن كۆرۈنۈشى", + "Week view" : "ھەپتە كۆرۈنۈشى", + "Month view" : "ئاي كۆرۈنۈشى", + "Year view" : "يىل كۆرۈنۈشى", + "List view" : "تىزىملىك كۆرۈنۈشى", "Actions" : "مەشغۇلاتلار", + "Create event" : "ھادىسە قۇرۇش", + "Show shortcuts" : "تېزلەتمىلەرنى كۆرسەت", + "Editor" : "تەھرىر", + "Close editor" : "تەھرىرلىگۈچنى تاقاش", + "Save edited event" : "تەھرىرلەنگەن پائالىيەتنى ساقلاڭ", + "Delete edited event" : "تەھرىرلەنگەن ۋەقەنى ئۆچۈرۈڭ", + "Duplicate event" : "كۆپەيتىلگەن ھادىسە", + "Shortcut overview" : "تېزلەتمە ئومۇمىي كۆرۈنۈش", + "or" : "ياكى", + "Calendar settings" : "كالېندار تەڭشىكى", + "At event start" : "پائالىيەت باشلانغاندا", + "No reminder" : "ئەسكەرتىش يوق", + "Failed to save default calendar" : "سۈكۈتتىكى كالېندارنى ساقلىيالمىدى", + "CalDAV link copied to clipboard." : "CalDAV ئۇلىنىشى چاپلاش تاختىسىغا كۆچۈرۈلدى.", + "CalDAV link could not be copied to clipboard." : "CalDAV ئۇلانمىسىنى چاپلاش تاختىسىغا كۆچۈرگىلى بولمايدۇ.", + "Enable birthday calendar" : "تۇغۇلغان كۈن كالىندارىنى قوزغىتىڭ", + "Show tasks in calendar" : "كالېنداردىكى ۋەزىپىلەرنى كۆرسەت", + "Enable simplified editor" : "ئاددىيلاشتۇرۇلغان تەھرىرلىگۈچنى قوزغىتىڭ", + "Limit the number of events displayed in the monthly view" : "ئايلىق كۆرۈنۈشتە كۆرسىتىلگەن پائالىيەت سانىنى چەكلەڭ", + "Show weekends" : "ھەپتە ئاخىرىنى كۆرسەت", + "Show week numbers" : "ھەپتە نومۇرىنى كۆرسەت", + "Time increments" : "ۋاقىت كۆپەيدى", + "Default calendar for incoming invitations" : "كەلگەن تەكلىپلەرنىڭ سۈكۈتتىكى كالېندارى", + "Default reminder" : "كۆڭۈلدىكى ئەسكەرتىش", + "Copy primary CalDAV address" : "دەسلەپكى CalDAV ئادرېسىنى كۆچۈرۈڭ", + "Copy iOS/macOS CalDAV address" : "IOS / macOS CalDAV ئادرېسىنى كۆچۈرۈڭ", + "Personal availability settings" : "شەخسىي ئىشلىتىش تەڭشىكى", + "Show keyboard shortcuts" : "كۇنۇپكا تاختىسىنىڭ تېزلەتمىسىنى كۆرسەت", + "Appointment schedule successfully created" : "تەيىنلەش جەدۋىلى مۇۋەپپەقىيەتلىك قۇرۇلدى", + "Appointment schedule successfully updated" : "تەيىنلەش جەدۋىلى مۇۋەپپەقىيەتلىك يېڭىلاندى", + "0 minutes" : "0 مىنۇت", + "To configure appointments, add your email address in personal settings." : "ئۇچرىشىشنى تەڭشەش ئۈچۈن ئېلېكترونلۇق خەت ئادرېسىڭىزنى شەخسىي تەڭشەكلەرگە قوشۇڭ.", + "Public – shown on the profile page" : "ئاممىۋى - ئارخىپ بېتىدە كۆرسىتىلدى", + "Private – only accessible via secret link" : "شەخسىي - پەقەت مەخپىي ئۇلىنىش ئارقىلىقلا زىيارەت قىلغىلى بولىدۇ", + "Create appointment schedule" : "ئۇچرىشىش جەدۋىلىنى تۈزۈڭ", + "Edit appointment schedule" : "تەيىنلەش جەدۋىلىنى تەھرىرلەڭ", + "Update" : "يېڭىلا", + "Appointment name" : "تەيىنلەش ئىسمى", "Location" : "ئورنى", + "Create a Talk room" : "پاراڭلىشىش ئۆيى قۇرۇش", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "ھەر بىر زاكاس قىلىنغان ئۇچرىشىشتا ئۆزگىچە ئۇلىنىش ھاسىل قىلىنىدۇ ۋە جەزملەشتۈرۈش ئېلخېتى ئارقىلىق ئەۋەتىلىدۇ", "Description" : "چۈشەندۈرۈش", + "Visibility" : "كۆرۈنۈشچانلىقى", + "Duration" : "Duration", + "Increments" : "كۆپەيتىش", + "Additional calendars to check for conflicts" : "زىددىيەتلەرنى تەكشۈرۈش ئۈچۈن قوشۇمچە كالېندار", + "Pick time ranges where appointments are allowed" : "ئۇچرىشىشقا رۇخسەت قىلىنغان ۋاقىت دائىرىسىنى تاللاڭ", + "to" : "to", + "Delete slot" : "ئورۇننى ئۆچۈرۈڭ", + "No times set" : "ۋاقىت بەلگىلەنمىدى", "Add" : "قوش", "Monday" : "دۈشەنبە", "Tuesday" : "سەيشەنبە", @@ -25,18 +229,298 @@ OC.L10N.register( "Friday" : "جۈمە", "Saturday" : "شەنبە", "Sunday" : "يەكشەنبە", - "Save" : "ساقلا", - "Update" : "يېڭىلا", + "Weekdays" : "ھەپتە كۈنلىرى", + "Add time before and after the event" : "پائالىيەتنىڭ ئالدى-كەينىدە ۋاقىت قوشۇڭ", + "Before the event" : "پائالىيەتتىن ئىلگىرى", + "After the event" : "پائالىيەتتىن كېيىن", + "Planning restrictions" : "پىلان چەكلىمىسى", + "Minimum time before next available slot" : "كېيىنكى ئىشلەتكىلى بولىدىغان ئورۇننىڭ ئەڭ تۆۋەن ۋاقتى", + "Max slots per day" : "كۈنىگە ئەڭ چوڭ ئورۇن", + "Limit how far in the future appointments can be booked" : "كەلگۈسىدىكى ئۇچرىشىشلارنىڭ قانچىلىك دەرىجىدە زاكاس قىلىنىدىغانلىقىنى چەكلەڭ", + "It seems a rate limit has been reached. Please try again later." : "قارىماققا ئۆسۈم چېكىگە يەتكەندەك قىلىدۇ. كېيىن قايتا سىناڭ.", + "Please confirm your reservation" : "زاكاسلىرىڭىزنى جەزملەشتۈرۈڭ", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "بىز سىزگە تەپسىلاتلار بىلەن ئېلېكترونلۇق خەت ئەۋەتتۇق. ئېلېكترونلۇق خەتتىكى ئۇلىنىش ئارقىلىق ئۇچرىشىشىڭىزنى جەزملەشتۈرۈڭ. بۇ بەتنى ھازىر ياپالايسىز.", + "Your name" : "ئىسمىڭىز", "Your email address" : "تورخەت ئادرېسىڭىز", + "Please share anything that will help prepare for our meeting" : "ئۇچرىشىشىمىزغا تەييارلىق قىلىشقا ياردىمى بولىدىغان نەرسىلەرنى ئورتاقلىشىڭ", + "Could not book the appointment. Please try again later or contact the organizer." : "ئۇچرىشىشنى زاكاز قىلالمىدى. كېيىن قايتا سىناڭ ياكى تەشكىللىگۈچى بىلەن ئالاقىلىشىڭ.", + "Back" : "قايتىش", + "Create a new conversation" : "يېڭى سۆھبەت قۇر", + "Select conversation" : "سۆھبەتنى تاللاڭ", + "on" : "on", + "at" : "at", + "before at" : "before at", + "Notification" : "ئۇقتۇرۇش", "Email" : "تورخەت", + "Audio notification" : "ئاۋازلىق ئۇقتۇرۇش", + "Other notification" : "باشقا ئۇقتۇرۇش", + "Relative to event" : "ۋەقەگە مۇناسىۋەتلىك", + "On date" : "چېسلا", + "Edit time" : "ۋاقىتنى تەھرىرلەش", + "Save time" : "ۋاقىت تېجەڭ", + "Remove reminder" : "ئەسكەرتىشنى ئۆچۈرۈڭ", + "Add reminder" : "ئەسكەرتىش قوشۇڭ", + "seconds" : "سېكۇنت", + "minutes" : "مىنۇت", + "hours" : "سائەت", + "days" : "كۈنلەر", + "weeks" : "ھەپتە", + "Choose a file to add as attachment" : "قوشۇمچە قىلىپ قوشماقچى بولغان ھۆججەتنى تاللاڭ", + "Choose a file to share as a link" : "ئۇلىنىش سۈپىتىدە ھەمبەھىرلىنىدىغان ھۆججەتنى تاللاڭ", + "Attachment {name} already exist!" : "قوشۇمچە {name} مەۋجۇت!", + "Could not upload attachment(s)" : "قوشۇمچە ھۆججەتلەرنى يۈكلىيەلمىدى", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "سىز {host} غا يۆتكىمەكچى بولۇۋاتىسىز. داۋاملاشتۇرامسىز؟ ئۇلىنىش: {link}", + "Proceed" : "داۋاملاشتۇرۇڭ", + "No attachments" : "قوشۇمچە ھۆججەت يوق", + "Add from Files" : "ھۆججەتلەردىن قوشۇڭ", + "Upload from device" : "ئۈسكۈنىدىن يۈكلەش", + "Delete file" : "ھۆججەتنى ئۆچۈرۈڭ", + "Confirmation" : "جەزملەشتۈرۈش", + "Suggested" : "تەكلىپ بەردى", + "Available" : "ئىشلەتكىلى بولىدۇ", + "Invitation accepted" : "تەكلىپ قوبۇل قىلىندى", + "Accepted {organizerName}'s invitation" : "{organizerName} ئىسمى} نىڭ تەكلىپىنى قوبۇل قىلدى", + "Participation marked as tentative" : "قاتنىشىش ۋاقتىنچە بەلگە قىلىندى", + "Invitation is delegated" : "تەكلىپنامە ئەۋەتىلدى", + "Not available" : "ئىشلەتكىلى بولمايدۇ", + "Invitation declined" : "تەكلىپ رەت قىلىندى", + "Declined {organizerName}'s invitation" : "رەت قىلىنغان {organizerName} ئىسمى} نىڭ تەكلىپنامىسى", + "Awaiting response" : "جاۋاب كۈتۈش", + "Checking availability" : "بار-يوقلۇقىنى تەكشۈرۈش", + "Has not responded to {organizerName}'s invitation yet" : "{organizerName} نىڭ تەكلىپىگە تېخى جاۋاب بەرمىدى", + "chairperson" : "رەئىس", + "required participant" : "تەلەپچان قاتناشقۇچى", + "non-participant" : "قاتناشمىغان", + "optional participant" : "ئىختىيارى قاتناشقۇچى", + "{organizer} (organizer)" : "{organizer} (تەشكىللىگۈچى)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "قاتناشقۇچىلار ، بايلىق ۋە ياتاقلار", + "Suggestion accepted" : "تەكلىپ قوبۇل قىلىندى", + "Legend" : "رىۋايەت", + "Out of office" : "ئىشخانىدىن چىقتى", + "Attendees:" : "قاتناشقۇچىلار:", + "Done" : "تامام", + "Search room" : "ئىزدەش ئۆيى", + "Room name" : "ياتاق ئىسمى", + "Check room availability" : "ياتاقنىڭ بار-يوقلۇقىنى تەكشۈرۈڭ", + "Free" : "ھەقسىز", + "Busy (tentative)" : "ئالدىراش (ۋاقىتلىق)", + "Busy" : "ئالدىراش", + "Unknown" : "نامەلۇم", + "Find a time" : "ۋاقىت تېپىڭ", + "The invitation has been accepted successfully." : "تەكلىپ مۇۋەپپەقىيەتلىك قوبۇل قىلىندى.", + "Failed to accept the invitation." : "تەكلىپنى قوبۇل قىلالمىدى.", + "The invitation has been declined successfully." : "تەكلىپ مۇۋەپپەقىيەتلىك رەت قىلىندى.", + "Failed to decline the invitation." : "تەكلىپنى رەت قىلدى.", + "Your participation has been marked as tentative." : "سىزنىڭ قاتنىشىشىڭىز ۋاقتىنچە بەلگە قىلىندى.", + "Failed to set the participation status to tentative." : "قاتنىشىش ھالىتىنى ۋاقتىنچە بەلگىلىيەلمىدى.", + "Accept" : "قوبۇل قىلىڭ", + "Decline" : "رەت قىلىش", + "Tentative" : "Tentative", + "No attendees yet" : "ھازىرغىچە قاتناشقۇچىلار يوق", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} قىلىنغان سان} تەكلىپ قىلىنغان ، {confirmedCount} سان} جەزملەشتۈرۈلگەن", + "Successfully appended link to talk room to location." : "مۇۋەپپەقىيەتلىك ھالدا پاراڭلىشىش ئۆيىگە ئۇلىنىش قوشۇلدى.", + "Successfully appended link to talk room to description." : "مۇۋەپپەقىيەتلىك ھالدا سۆزلىشىش ئۆيىگە ئۇلىنىش قوشۇلدى.", + "Error creating Talk room" : "سۆھبەت ئۆيى قۇرۇشتا خاتالىق", + "Attendees" : "قاتناشقۇچىلار", + "Remove group" : "گۇرۇپپىنى ئۆچۈرۈڭ", + "Remove attendee" : "قاتناشقۇچىلارنى ئېلىۋېتىڭ", + "Request reply" : "جاۋاب تەلەپ قىلىڭ", + "Chairperson" : "رەئىس", + "Required participant" : "تەلەپچان قاتناشقۇچى", + "Optional participant" : "ئىختىيارى قاتناشقۇچى", + "Non-participant" : "قاتناشمىغان", + "No match found" : "ماس كەلمىدى", + "Note that members of circles get invited but are not synced yet." : "چەمبىرەك ئەزالىرىنىڭ تەكلىپ قىلىنغانلىقىغا دىققەت قىلىڭ ، ئەمما تېخى ماسلاشمىدى.", + "(organizer)" : "(تەشكىللىگۈچى)", + "Make {label} the organizer" : "{label} تەشكىللىگۈچى", + "Make {label} the organizer and attend" : "{label} تەشكىللىگۈچى ۋە قاتنىشىڭ", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "تەكلىپنامە ئەۋەتىش ۋە جاۋابلارنى بىر تەرەپ قىلىش ئۈچۈن ، [linkopen] ئېلېكترونلۇق خەت ئادرېسىڭىزنى شەخسىي تەڭشەكلەرگە قوشۇڭ [linkclose].", + "Remove color" : "رەڭنى ئۆچۈرۈڭ", + "Event title" : "پائالىيەت ئىسمى", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "تەكرارلىنىشنىڭ بىر قىسمى بولغان ۋەقەلەرنىڭ پۈتۈن كۈنلۈك تەڭشىكىنى ئۆزگەرتەلمەيدۇ.", + "From" : "From", + "To" : "To", "Repeat" : "قايتىلا", "never" : "ھەرگىز", - "More" : "تېخىمۇ كۆپ", + "on date" : "on date", + "after" : "after", + "End repeat" : "تەكرارلاش", + "Select to end repeat" : "تەكرارلاشنى ئاخىرلاشتۇرۇشنى تاللاڭ", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "بۇ ھادىسە قايتا-قايتا تەكرارلانغاندىن باشقا. ئۇنىڭغا قايتا-قايتا قائىدە قوشالمايسىز.", + "first" : "بىرىنچى", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "تەكرارلىنىش قائىدىسىگە ئۆزگەرتىش پەقەت مۇشۇ ۋە كەلگۈسىدىكى بارلىق ئىشلارغا ماس كېلىدۇ.", + "Repeat every" : "ھەممىنى تەكرارلاڭ", + "By day of the month" : "ئاينىڭ كۈنىگە قەدەر", + "On the" : "ئۈستىدە", + "weekday" : "ھەپتە", + "weekend day" : "ھەپتە ئاخىرى", + "Does not repeat" : "تەكرارلانمايدۇ", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "بۇ پائالىيەتنىڭ قايتا-قايتا ئېنىقلىنىشى Nextcloud تەرىپىدىن تولۇق قوللىمايدۇ. ئەگەر قايتا-قايتا تاللاشلارنى تەھرىرلىسىڭىز ، بەزى تەكرارلىنىشلار يوقاپ كېتىشى مۇمكىن.", + "No rooms or resources yet" : "ھازىرچە ياتاق ۋە بايلىق يوق", + "Resources" : "بايلىق", + "Add resource" : "بايلىق قوشۇڭ", + "Has a projector" : "بىر پروجېكتور بار", + "Has a whiteboard" : "ئاق دوسكىسى بار", + "Wheelchair accessible" : "چاقلىق ئورۇندۇقنى زىيارەت قىلغىلى بولىدۇ", + "Remove resource" : "مەنبەنى ئۆچۈرۈڭ", + "Search for resources or rooms" : "بايلىق ياكى ئۆي ئىزدەڭ", + "available" : "ئىشلەتكىلى بولىدۇ", + "unavailable" : "ئىشلەتكىلى بولمايدۇ", + "Show all rooms" : "بارلىق ئۆيلەرنى كۆرسەت", + "Projector" : "Projector", + "Whiteboard" : "ئاق دوسكا", + "Room type" : "ياتاق تىپى", + "Any" : "ھەر قانداق", + "Minimum seating capacity" : "ئەڭ تۆۋەن ئولتۇرۇش ئىقتىدارى", + "More details" : "تېخىمۇ كۆپ تەپسىلاتلار", + "Update this and all future" : "بۇنى ۋە كەلگۈسىنى يېڭىلاڭ", + "Update this occurrence" : "بۇ ھادىسىنى يېڭىلاڭ", + "Public calendar does not exist" : "ئاممىۋى كالېندار مەۋجۇت ئەمەس", + "Maybe the share was deleted or has expired?" : "بەلكىم ھەمبەھىر ئۆچۈرۈلگەن ياكى ۋاقتى توشقان بولۇشى مۇمكىن؟", + "from {formattedDate}" : "from {formattedDate}", + "to {formattedDate}" : "to {formattedDate}", + "on {formattedDate}" : "on {formattedDate}", + "from {formattedDate} at {formattedTime}" : "{formattedDate} ۋاقىت} دىن {formattedTime} ۋاقىت} دىن", + "to {formattedDate} at {formattedTime}" : "{formattedDate} ۋاقىت} دىكى {formattedTime} ۋاقىت}", + "on {formattedDate} at {formattedTime}" : "{formattedDate} ۋاقىت} دىكى {formattedTime} ۋاقىت}", + "{formattedDate} at {formattedTime}" : "{formattedDate} at {formattedTime}", + "Please enter a valid date" : "ئىناۋەتلىك چېسلانى كىرگۈزۈڭ", + "Please enter a valid date and time" : "ئىناۋەتلىك چېسلا ۋە ۋاقىتنى كىرگۈزۈڭ", + "Select a time zone" : "ۋاقىت رايونىنى تاللاڭ", + "Please select a time zone:" : "ۋاقىت رايونىنى تاللاڭ:", + "Pick a time" : "ۋاقىت تاللاڭ", + "Pick a date" : "چېسلا تاللاڭ", + "Type to search time zone" : "ئىزدەش ۋاقىت رايونىغا كىرگۈزۈڭ", + "Global" : "Global", + "Holidays in {region}" : "{region} دەم ئېلىش}", + "An error occurred, unable to read public calendars." : "ئاممىۋى كالېندارنى ئوقۇيالماي خاتالىق كۆرۈلدى.", + "An error occurred, unable to subscribe to calendar." : "كالېندارغا مۇشتەرى بولالمىغان خاتالىق كۆرۈلدى.", + "Public holiday calendars" : "ئاممىۋى دەم ئېلىش كالېندارى", + "Public calendars" : "ئاممىۋى كالېندار", + "No valid public calendars configured" : "ئىناۋەتلىك ئاممىۋى كالېندار سەپلەنمىدى", + "Speak to the server administrator to resolve this issue." : "بۇ مەسىلىنى ھەل قىلىش ئۈچۈن مۇلازىمېتىر باشقۇرغۇچىغا سۆزلەڭ.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "ئاممىۋى دەم ئېلىش كالېندارىنى Thunderbird تەمىنلەيدۇ. كالېندار سانلىق مەلۇماتلىرى {website} بېكىتى} دىن چۈشۈرۈلىدۇ", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "بۇ ئاممىۋى كالېندارلارنى كەسمە باشقۇرغۇچى تەۋسىيە قىلىدۇ. كالېندار سانلىق مەلۇماتلىرى مۇناسىۋەتلىك تور بەتتىن چۈشۈرۈلىدۇ.", + "By {authors}" : "{authors}", + "Subscribed" : "مۇشتەرى بولدى", + "Subscribe" : "مۇشتەرى بولۇش", + "Could not fetch slots" : "ئورۇن ئالالمىدى", + "Select a date" : "چېسلانى تاللاڭ", + "Select slot" : "ئورۇننى تاللاڭ", + "No slots available" : "ئورۇن يوق", + "The slot for your appointment has been confirmed" : "سىزنىڭ ۋەزىپىگە تەيىنلەنگەنلىكىڭىز جەزملەشتۈرۈلدى", + "Appointment Details:" : "تەيىنلەش تەپسىلاتى:", + "Time:" : "ۋاقىت:", + "Booked for:" : "زاكاز قىلىندى:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "رەھمەت سىزگە. سىزنىڭ {startDate} دىن {endDate} گىچە زاكاس قىلىشىڭىز جەزملەشتۈرۈلدى.", + "Book another appointment:" : "باشقا ئۇچرىشىشنى زاكاز قىلىڭ:", + "See all available slots" : "بارلىق ئورۇنلارنى كۆرۈڭ", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "سىزنىڭ ئۇچرىشىشىڭىزنىڭ {startDate} دىن {endDate} غىچە بولغان ئورنى ئەمدى يوق.", + "Please book a different slot:" : "باشقا بىر كىتابنى زاكاز قىلىڭ:", + "Book an appointment with {name}" : "{name} بىلەن ئۇچرىشىشنى زاكاز قىلىڭ", + "No public appointments found for {name}" : "{name} ئۈچۈن ئاممىۋى ئۇچرىشىش تېپىلمىدى", "Personal" : "شەخسىي", - "Attendees" : "قاتناشقۇچىلار", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "ئاپتوماتىك ۋاقىت رايونىنى تەكشۈرۈش سىزنىڭ ۋاقىت رايونىڭىزنىڭ UTC ئىكەنلىكىنى بەلگىلىدى.\nبۇ بەلكىم توركۆرگۈڭىزنىڭ بىخەتەرلىك تەدبىرلىرىنىڭ نەتىجىسى بولۇشى مۇمكىن.\nۋاقىت رايونىنى كالېندار تەڭشىكىدە قولدا تەڭشەڭ.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "تەڭشەلگەن ۋاقىت رايونىڭىز ({timezoneId}) تېپىلمىدى. UTC غا قايتىش.\nتەڭشەكتىكى ۋاقىت رايونىڭىزنى ئۆزگەرتىپ بۇ مەسىلىنى دوكلات قىلىڭ.", + "Event does not exist" : "ھادىسە مەۋجۇت ئەمەس", + "Duplicate" : "كۆپەيتىلگەن", + "Delete this occurrence" : "بۇ ھادىسىنى ئۆچۈرۈڭ", + "Delete this and all future" : "بۇنى ۋە كەلگۈسىنى ئۆچۈرۈڭ", + "All day" : "پۈتۈن كۈن", + "Managing shared access" : "ئورتاق زىيارەتنى باشقۇرۇش", + "Deny access" : "زىيارەتنى رەت قىلىش", + "Invite" : "تەكلىپ قىلىڭ", + "Untitled event" : "نامسىز ھادىسە", "Close" : "ياپ", - "Next" : "كېيىنكى", + "Subscribe to {name}" : "{name} غا مۇشتەرى بولۇڭ", + "Export {name}" : "چىقىرىش {name}", + "Anniversary" : "يىللىق خاتىرە كۈنى", + "Appointment" : "تەيىنلەش", + "Business" : "سودا", + "Education" : "مائارىپ", + "Holiday" : "دەم ئېلىش", + "Meeting" : "يىغىن", + "Miscellaneous" : "ھەرخىل", + "Non-working hours" : "خىزمەت ۋاقتى يوق", + "Not in office" : "ئىشخانىدا ئەمەس", + "Phone call" : "تېلېفون", + "Sick day" : "كېسەل كۈنى", + "Special occasion" : "ئالاھىدە سورۇن", + "Travel" : "ساياھەت", + "Vacation" : "دەم ئېلىش", + "Midnight on the day the event starts" : "پائالىيەت باشلانغان كۈنى يېرىم كېچىدە", + "on the day of the event at {formattedHourMinute}" : "پائالىيەت كۈنى {formattedHourMinute} HourMinute} دىكى", + "at the event's start" : "پائالىيەت باشلانغاندا", + "at the event's end" : "پائالىيەت ئاخىرلاشقاندا", + "{time} before the event starts" : "پائالىيەت باشلىنىشتىن بۇرۇن {time}", + "{time} before the event ends" : "پائالىيەت ئاخىرلىشىشتىن بۇرۇن {time}", + "{time} after the event starts" : "پائالىيەت باشلانغاندىن كېيىن {time}", + "{time} after the event ends" : "پائالىيەت ئاخىرلاشقاندىن كېيىن {time}", + "on {time}" : "on {time}", + "on {time} ({timezoneId})" : "on {time} ({timezoneId})", + "Week {number} of {year}" : "ھەپتە {سان} يىل}", + "Daily" : "كۈندىلىك", + "Weekly" : "ھەپتىلىك", + "Monthly" : "ئايلىق", + "Yearly" : "يىللىق", + "on the {ordinalNumber} {byDaySet}" : "on {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames} دا {ordinalNumber} {byDaySet}", + "until {untilDate}" : "تاكى DateDate}", + "second" : "ئىككىنچى", + "third" : "ئۈچىنچىسى", + "fourth" : "تۆتىنچى", + "fifth" : "بەشىنچى", + "second to last" : "ئىككىنچىدىن ئاخىرقىسى", + "last" : "ئاخىرقى", + "Untitled task" : "نامسىز ۋەزىپە", + "Please ask your administrator to enable the Tasks App." : "باشقۇرغۇچىدىن ۋەزىپە ئەپىنى قوزغىتىشنى تەلەپ قىلىڭ.", + "W" : "W.", + "%n more" : "% n تېخىمۇ كۆپ", + "No events to display" : "كۆرسىتىدىغان ھېچقانداق ھادىسە يوق", + "No events" : "ھېچقانداق ۋەقە يوق", + "Create a new event or change the visible time-range" : "يېڭى ھادىسە قۇرۇڭ ياكى كۆرۈنگەن ۋاقىت دائىرىسىنى ئۆزگەرتىڭ", + "Failed to save event" : "پائالىيەتنى ساقلىيالمىدى", + "It might have been deleted, or there was a typo in a link" : "ئۇ ئۆچۈرۈلگەن بولۇشى مۇمكىن ، ياكى ئۇلىنىشتا خاتالىق بار", + "It might have been deleted, or there was a typo in the link" : "ئۇ ئۆچۈرۈلگەن بولۇشى مۇمكىن ، ياكى ئۇلىنىشتا خاتالىق بار", + "Meeting room" : "يىغىن زالى", + "Lecture hall" : "لېكسىيە زالى", + "Seminar room" : "مۇھاكىمە ئۆيى", "Other" : "باشقا", - "Birthday" : "تۇغۇلغان كۈن" + "When shared show" : "ھەمبەھىرلەنگەندە", + "When shared show full event" : "ھەمبەھىرلەنگەندە تولۇق پائالىيەتنى كۆرسىتىدۇ", + "When shared show only busy" : "ئورتاقلاشقاندا پەقەت ئالدىراش", + "When shared hide this event" : "ئورتاقلاشقاندا بۇ پائالىيەتنى يوشۇرۇڭ", + "The visibility of this event in shared calendars." : "ئورتاق كالېنداردا بۇ پائالىيەتنىڭ كۆرۈنۈشچانلىقى.", + "Add a location" : "ئورۇن قوشۇڭ", + "Status" : "ھالەت", + "Confirmed" : "جەزملەشتۈرۈلدى", + "Canceled" : "ئەمەلدىن قالدۇرۇلدى", + "Confirmation about the overall status of the event." : "پائالىيەتنىڭ ئومۇمىي ئەھۋالى توغرىسىدىكى جەزملەشتۈرۈش.", + "Show as" : "كۆرسەت", + "Take this event into account when calculating free-busy information." : "ھەقسىز ئالدىراش ئۇچۇرلارنى ھېسابلىغاندا بۇ پائالىيەتنى ئويلاڭ.", + "Categories" : "سەھىپىلەر", + "Categories help you to structure and organize your events." : "سەھىپىلەر سىزنىڭ پائالىيەتلىرىڭىزنى تەشكىللىشىڭىز ۋە تەشكىللىشىڭىزگە ياردەم بېرىدۇ.", + "Search or add categories" : "تۈرلەرنى ئىزدەڭ ياكى قوشۇڭ", + "Add this as a new category" : "بۇنى يېڭى سەھىپە قىلىپ قوشۇڭ", + "Custom color" : "ئىختىيارى رەڭ", + "Special color of this event. Overrides the calendar-color." : "بۇ پائالىيەتنىڭ ئالاھىدە رەڭگى. كالېندار-رەڭنى قاپلايدۇ.", + "Error while sharing file" : "ھۆججەتنى ھەمبەھىرلەشتە خاتالىق", + "Error while sharing file with user" : "ئىشلەتكۈچى بىلەن ھۆججەتنى ھەمبەھىرلەشتە خاتالىق", + "Attachment {fileName} already exists!" : "قوشۇمچە ھۆججەت {fileName} مەۋجۇت!", + "An error occurred during getting file information" : "ھۆججەت ئۇچۇرىغا ئېرىشىش جەريانىدا خاتالىق كۆرۈلدى", + "An error occurred, unable to delete the calendar." : "كالېندارنى ئۆچۈرەلمەي خاتالىق كۆرۈلدى.", + "Imported {filename}" : "ئىمپورت قىلىنغان {filename} ئىسمى}", + "This is an event reminder." : "بۇ بىر ۋەقە ئەسكەرتىش.", + "Error while parsing a PROPFIND error" : "PROPFIND خاتالىقىنى تەھلىل قىلغاندا خاتالىق", + "Appointment not found" : "تەيىنلەنمىدى", + "User not found" : "ئىشلەتكۈچى تېپىلمىدى", + "Reminder" : "ئەسكەرتىش", + "+ Add reminder" : "+ ئەسكەرتىش قوشۇڭ", + "Select automatic slot" : "ئاپتوماتىك ئورۇننى تاللاڭ", + "with" : "with", + "Available times:" : "ئىشلەتكىلى بولىدىغان ۋاقىت:", + "Suggestions" : "تەكلىپ", + "Details" : "تەپسىلاتى" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/ug.json b/l10n/ug.json index 211cb3164188fce71f2af836947365524e5ad298..cdd692a68b142720c60a207f19ab33d8684eb3f6 100644 --- a/l10n/ug.json +++ b/l10n/ug.json @@ -1,20 +1,224 @@ { "translations": { + "Provided email-address is too long" : "تەمىنلەنگەن ئېلېكترونلۇق خەت ئادرېسى بەك ئۇزۇن", + "User-Session unexpectedly expired" : "ئىشلەتكۈچى-يىغىن ئويلىمىغان يەردىن توشىدۇ", + "Provided email-address is not valid" : "تەمىنلەنگەن ئېلېكترونلۇق خەت ئادرېسى ئىناۋەتلىك ئەمەس", + "%s has published the calendar »%s«" : "% s كالېندارنى ئېلان قىلدى »% s«", + "Unexpected error sending email. Please contact your administrator." : "ئېلېكترونلۇق خەت ئەۋەتىشتە كۈتۈلمىگەن خاتالىق. باشقۇرغۇچىڭىز بىلەن ئالاقىلىشىڭ.", + "Successfully sent email to %1$s" : "مۇۋەپپەقىيەتلىك ھالدا%1 $ s غا ئېلېكترونلۇق خەت ئەۋەتكەن", + "Hello," : "ياخشىمۇسىز ،", + "We wanted to inform you that %s has published the calendar »%s«." : "بىز سىزگە% s كالېندارنى ئېلان قىلدى »% s«.", + "Open »%s«" : "ئېچىڭ »% s«", + "Cheers!" : "خۇشال بولۇڭ!", + "Upcoming events" : "ئالدىمىزدىكى ۋەقەلەر", + "No more events today" : "بۈگۈن باشقا پائالىيەتلەر يوق", + "No upcoming events" : "پات ئارىدا يۈز بېرىدىغان ئىشلار يوق", + "More events" : "تېخىمۇ كۆپ ۋەقەلەر", + "%1$s with %2$s" : "%1 $ s بىلەن%2 $ s", "Calendar" : "يىلنامە", + "New booking {booking}" : "يېڭى زاكاز {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) {date_time} دا «{config_display_name}» تەيىنلەشنى زاكاس قىلدى.", + "Appointments" : "تەيىنلەش", + "Schedule appointment \"%s\"" : "ۋاقىت جەدۋىلى \"% s\"", + "Schedule an appointment" : "ئۇچرىشىشنى ئورۇنلاشتۇرۇڭ", + "%1$s - %2$s" : "%1 $ s -%2 $ s", + "Prepare for %s" : "% S ئۈچۈن تەييارلىق قىلىڭ", + "Follow up for %s" : "% S غا ئەگىشىڭ", + "Your appointment \"%s\" with %s needs confirmation" : "سىزنىڭ% s بىلەن ئۇچرىشىشىڭىز جەزملەشتۈرۈشكە موھتاج", + "Dear %s, please confirm your booking" : "ھۆرمەتلىك% s ، زاكاسلىرىڭىزنى جەزملەشتۈرۈڭ", + "Confirm" : "جەزملەشتۈرۈڭ", + "Appointment with:" : "تەيىنلەش:", + "Description:" : "چۈشەندۈرۈش:", + "This confirmation link expires in %s hours." : "بۇ جەزملەشتۈرۈش ئۇلىنىشى% s سائەت ئىچىدە توشىدۇ.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "زادى ئۇچرىشىشنى ئەمەلدىن قالدۇرماقچى بولسىڭىز ، بۇ ئېلېكترونلۇق خەتكە جاۋاب قايتۇرۇش ياكى ئۇلارنىڭ ئارخىپ بېتىنى زىيارەت قىلىش ئارقىلىق تەشكىللىگۈچىڭىز بىلەن ئالاقىلىشىڭ.", + "Your appointment \"%s\" with %s has been accepted" : "سىزنىڭ% s بىلەن «% s» تەيىنلىنىشىڭىز قوبۇل قىلىندى", + "Dear %s, your booking has been accepted." : "ھۆرمەتلىك% s ، زاكاس قوبۇل قىلىندى.", + "Appointment for:" : "تەيىنلەش:", + "Date:" : "چېسلا:", + "You will receive a link with the confirmation email" : "جەزملەش ئېلخېتى بىلەن ئۇلىنىش تاپشۇرۇۋالىسىز", + "Where:" : "قەيەردە:", + "Comment:" : "باھا:", + "You have a new appointment booking \"%s\" from %s" : "سىزدە% s دىن «% s» نى زاكاز قىلىش يېڭى زاكاس تالونى بار", + "Dear %s, %s (%s) booked an appointment with you." : "ھۆرمەتلىك% s ،% s (% s) سىز بىلەن كۆرۈشۈشنى زاكاز قىلدى.", + "A Calendar app for Nextcloud" : "Nextcloud ئۈچۈن كالېندار دېتالى", + "Previous day" : "ئالدىنقى كۈن", + "Previous week" : "ئالدىنقى ھەپتە", + "Previous year" : "ئالدىنقى يىل", + "Previous month" : "ئالدىنقى ئاي", + "Next day" : "ئەتىسى", + "Next week" : "كېلەر ھەپتە", + "Next year" : "كېلەر يىلى", + "Next month" : "كېلەر ئاي", + "Create new event" : "يېڭى پائالىيەت قۇر", + "Event" : "Event", "Today" : "بۈگۈن", + "Day" : "كۈن", "Week" : "ھەپتە", "Month" : "ئاي", + "Year" : "يىل", + "List" : "تىزىملىك", + "Appointment link was copied to clipboard" : "تەيىنلەش ئۇلانمىسى چاپلاش تاختىسىغا كۆچۈرۈلدى", + "Appointment link could not be copied to clipboard" : "تەيىنلەش ئۇلانمىسىنى چاپلاش تاختىسىغا كۆچۈرگىلى بولمايدۇ", + "Preview" : "ئالدىن كۆرۈش", + "Copy link" : "ئۇلانمىنى كۆچۈرۈڭ", "Edit" : "تەھرىر", "Delete" : "ئۆچۈر", - "Export" : "چىقار", - "Share link" : "Share link", + "Appointment schedules" : "تەيىنلەش ۋاقىت جەدۋىلى", + "Create new" : "يېڭى قۇر", + "Disable calendar \"{calendar}\"" : "كالېندار \"{calendar}\" نى چەكلەڭ", + "Disable untitled calendar" : "نامسىز كالېندارنى چەكلەڭ", + "Enable calendar \"{calendar}\"" : "كالېندار \"{calendar}\" نى قوزغىتىڭ", + "Enable untitled calendar" : "نامسىز كالېندارنى قوزغىتىڭ", + "An error occurred, unable to change visibility of the calendar." : "كالېندارنىڭ كۆرۈنۈشچانلىقىنى ئۆزگەرتەلمەيدىغان خاتالىق كۆرۈلدى.", + "Untitled calendar" : "نامسىز كالېندار", + "Shared with you by" : "سىز بىلەن ئورتاقلاشتى", + "Edit and share calendar" : "كالېندارنى تەھرىرلەش ۋە ئورتاقلىشىش", + "Edit calendar" : "كالېندارنى تەھرىرلەش", + "An error occurred, unable to create the calendar." : "كالېندارنى قۇرالماسلىقتا خاتالىق كۆرۈلدى.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "ئىناۋەتلىك ئۇلىنىشنى كىرگۈزۈڭ (http: // ، https: // ، webcal: // ياكى webcals: // دىن باشلاڭ)", + "Calendars" : "كالېندار", + "Add new" : "يېڭى قوشۇڭ", "New calendar" : "يېڭى يىلنامە", + "Name for new calendar" : "يېڭى كالېندارنىڭ ئىسمى", + "Creating calendar …" : "كالېندار قۇرۇش…", + "New calendar with task list" : "ۋەزىپە تىزىملىكى بىلەن يېڭى كالېندار", + "New subscription from link (read-only)" : "ئۇلىنىشتىن يېڭى مۇشتەرىلىك (پەقەت ئوقۇشقىلا بولىدۇ)", + "Creating subscription …" : "مۇشتەرى بولۇش…", + "Add public holiday calendar" : "ئاممىۋى دەم ئېلىش كالېندارىنى قوشۇڭ", + "Add custom public calendar" : "ئىختىيارىي كالېندارنى قوشۇڭ", + "Calendar link copied to clipboard." : "كالېندار ئۇلىنىشى چاپلاش تاختىسىغا كۆچۈرۈلدى.", + "Calendar link could not be copied to clipboard." : "كالېندار ئۇلىنىشىنى چاپلاش تاختىسىغا كۆچۈرگىلى بولمايدۇ.", + "Copy subscription link" : "مۇشتەرىلىك ئۇلانمىسىنى كۆچۈرۈڭ", + "Copying link …" : "كۆچۈرۈش ئۇلانمىسى…", + "Copied link" : "كۆچۈرۈلگەن ئۇلىنىش", + "Could not copy link" : "ئۇلانمىنى كۆچۈرەلمىدى", + "Export" : "چىقار", + "Untitled item" : "نامسىز تۈر", + "Unknown calendar" : "نامەلۇم كالېندار", + "Could not load deleted calendars and objects" : "ئۆچۈرۈلگەن كالېندار ۋە ئوبيېكتلارنى يۈكلىيەلمىدى", + "Could not delete calendar or event" : "كالېندار ياكى ۋەقەنى ئۆچۈرەلمىدى", + "Could not restore calendar or event" : "كالېندار ياكى ھادىسىنى ئەسلىگە كەلتۈرەلمىدى", + "Do you really want to empty the trash bin?" : "ئەخلەت ساندۇقىنى بوشاتماقچىمۇ؟", + "Empty trash bin" : "ئەخلەت ساندۇقى", + "Trash bin" : "ئەخلەت ساندۇقى", + "Loading deleted items." : "ئۆچۈرۈلگەن تۈرلەرنى يۈكلەۋاتىدۇ.", + "You do not have any deleted items." : "ئۆچۈرۈلگەن تۈرلىرىڭىز يوق.", "Name" : "ئاتى", "Deleted" : "ئۆچۈرۈلدى", + "Restore" : "ئەسلىگە كەلتۈرۈش", "Delete permanently" : "مەڭگۈلۈك ئۆچۈر", + "Could not update calendar order." : "كالېندار تەرتىپىنى يېڭىلىيالمىدى.", + "Shared calendars" : "ئورتاق كالېندار", + "Deck" : "پالۋان", + "Hidden" : "يۇشۇرۇن", + "Internal link" : "ئىچكى ئۇلىنىش", + "A private link that can be used with external clients" : "سىرتقى خېرىدارلار بىلەن ئىشلىتىشكە بولىدىغان شەخسىي ئۇلىنىش", + "Copy internal link" : "ئىچكى ئۇلىنىشنى كۆچۈرۈڭ", + "An error occurred, unable to publish calendar." : "كالېندارنى ئېلان قىلالماي خاتالىق كۆرۈلدى.", + "An error occurred, unable to send email." : "ئېلېكترونلۇق خەت ئەۋەتەلمەي خاتالىق كۆرۈلدى.", + "Embed code copied to clipboard." : "قىستۇرما تاختىغا كۆچۈرۈلگەن كود.", + "Embed code could not be copied to clipboard." : "قىستۇرما كودنى چاپلاش تاختىسىغا كۆچۈرگىلى بولمايدۇ.", + "Unpublishing calendar failed" : "كالېندارنى ئېلان قىلىش مەغلۇب بولدى", + "Share link" : "Share link", + "Copy public link" : "ئاممىۋى ئۇلىنىشنى كۆچۈرۈڭ", + "Send link to calendar via email" : "ئېلېكترونلۇق خەت ئارقىلىق كالېندارغا ئۇلىنىش ئەۋەتىڭ", + "Enter one address" : "بىر ئادرېسنى كىرگۈزۈڭ", + "Sending email …" : "ئېلېكترونلۇق خەت ئەۋەتىش…", + "Copy embedding code" : "قىستۇرما كودىنى كۆچۈرۈڭ", + "Copying code …" : "كۆچۈرۈش كودى…", + "Copied code" : "كۆچۈرۈلگەن كود", + "Could not copy code" : "كودنى كۆچۈرەلمىدى", + "Delete share link" : "ھەمبەھىر ئۇلىنىشنى ئۆچۈرۈڭ", + "Deleting share link …" : "ھەمبەھىر ئۇلىنىشنى ئۆچۈرۈۋاتىدۇ…", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "كالېندارنى ھەمبەھىرلەۋاتقاندا خاتالىق كۆرۈلدى.", + "An error occurred, unable to change the permission of the share." : "ئورتاقلىشىشنىڭ رۇخسىتىنى ئۆزگەرتەلمەي خاتالىق كۆرۈلدى.", + "can edit" : "تەھرىرلىيەلەيدۇ", + "Unshare with {displayName}" : "{displayName} بىلەن ئورتاقلاشماسلىق", + "Share with users or groups" : "ئىشلەتكۈچىلەر ياكى گۇرۇپپىلار بىلەن ئورتاقلىشىڭ", + "No users or groups" : "ئىشلەتكۈچى ياكى گۇرۇپپا يوق", + "Failed to save calendar name and color" : "كالېندار ئىسمى ۋە رەڭنى ساقلاش مەغلۇب بولدى", + "Calendar name …" : "كالېندار ئىسمى…", + "Never show me as busy (set this calendar to transparent)" : "مېنى ھەرگىز ئالدىراش دەپ كۆرسەتمەڭ (بۇ كالېندارنى سۈزۈك قىلىپ تەڭشەڭ)", + "Share calendar" : "كالېندارنى ئورتاقلىشىش", + "Unshare from me" : "مەندىن تەڭداشسىز", + "Save" : "ساقلا", + "Import calendars" : "كالېندار ئەكىرىڭ", + "Please select a calendar to import into …" : "ئىمپورت قىلىدىغان كالېندارنى تاللاڭ.", + "Filename" : "ھۆججەت ئىسمى", + "Calendar to import into" : "كىرگۈزمەكچى بولغان كالېندار", "Cancel" : "ۋاز كەچ", + "Select the default location for attachments" : "قوشۇمچە ھۆججەتلەرنىڭ سۈكۈتتىكى ئورنىنى تاللاڭ", + "Pick" : "تاللاڭ", + "Invalid location selected" : "ئىناۋەتسىز ئورۇن تاللانغان", + "Attachments folder successfully saved." : "قوشۇمچە ھۆججەت قىسقۇچ مۇۋەپپەقىيەتلىك ساقلاندى.", + "Error on saving attachments folder." : "قوشۇمچە ھۆججەت قىسقۇچنى ساقلاشتا خاتالىق.", + "Default attachments location" : "كۆڭۈلدىكى قوشۇمچە ئورنى", + "{filename} could not be parsed" : "{filename} ئىسمى} تەھلىل قىلىشقا بولمايدۇ", + "No valid files found, aborting import" : "ئۈنۈملۈك ھۆججەت تېپىلمىدى ، ئىمپورتنى ئەمەلدىن قالدۇردى", + "Import partially failed. Imported {accepted} out of {total}." : "ئىمپورت قىسمەن مەغلۇپ بولدى. {accepted} دىن ئىمپورت قىلىنغان {total} قىلىندى}.", + "Automatic" : "ئاپتوماتىك", + "Automatic ({detected})" : "ئاپتوماتىك ({detected})", + "New setting was not saved successfully." : "يېڭى تەڭشەك مۇۋەپپەقىيەتلىك ساقلانمىدى.", + "Navigation" : "يول باشلاش", + "Previous period" : "ئالدىنقى مەزگىل", + "Next period" : "كېيىنكى مەزگىل", + "Views" : "كۆرۈنۈشلەر", + "Day view" : "كۈن كۆرۈنۈشى", + "Week view" : "ھەپتە كۆرۈنۈشى", + "Month view" : "ئاي كۆرۈنۈشى", + "Year view" : "يىل كۆرۈنۈشى", + "List view" : "تىزىملىك كۆرۈنۈشى", "Actions" : "مەشغۇلاتلار", + "Create event" : "ھادىسە قۇرۇش", + "Show shortcuts" : "تېزلەتمىلەرنى كۆرسەت", + "Editor" : "تەھرىر", + "Close editor" : "تەھرىرلىگۈچنى تاقاش", + "Save edited event" : "تەھرىرلەنگەن پائالىيەتنى ساقلاڭ", + "Delete edited event" : "تەھرىرلەنگەن ۋەقەنى ئۆچۈرۈڭ", + "Duplicate event" : "كۆپەيتىلگەن ھادىسە", + "Shortcut overview" : "تېزلەتمە ئومۇمىي كۆرۈنۈش", + "or" : "ياكى", + "Calendar settings" : "كالېندار تەڭشىكى", + "At event start" : "پائالىيەت باشلانغاندا", + "No reminder" : "ئەسكەرتىش يوق", + "Failed to save default calendar" : "سۈكۈتتىكى كالېندارنى ساقلىيالمىدى", + "CalDAV link copied to clipboard." : "CalDAV ئۇلىنىشى چاپلاش تاختىسىغا كۆچۈرۈلدى.", + "CalDAV link could not be copied to clipboard." : "CalDAV ئۇلانمىسىنى چاپلاش تاختىسىغا كۆچۈرگىلى بولمايدۇ.", + "Enable birthday calendar" : "تۇغۇلغان كۈن كالىندارىنى قوزغىتىڭ", + "Show tasks in calendar" : "كالېنداردىكى ۋەزىپىلەرنى كۆرسەت", + "Enable simplified editor" : "ئاددىيلاشتۇرۇلغان تەھرىرلىگۈچنى قوزغىتىڭ", + "Limit the number of events displayed in the monthly view" : "ئايلىق كۆرۈنۈشتە كۆرسىتىلگەن پائالىيەت سانىنى چەكلەڭ", + "Show weekends" : "ھەپتە ئاخىرىنى كۆرسەت", + "Show week numbers" : "ھەپتە نومۇرىنى كۆرسەت", + "Time increments" : "ۋاقىت كۆپەيدى", + "Default calendar for incoming invitations" : "كەلگەن تەكلىپلەرنىڭ سۈكۈتتىكى كالېندارى", + "Default reminder" : "كۆڭۈلدىكى ئەسكەرتىش", + "Copy primary CalDAV address" : "دەسلەپكى CalDAV ئادرېسىنى كۆچۈرۈڭ", + "Copy iOS/macOS CalDAV address" : "IOS / macOS CalDAV ئادرېسىنى كۆچۈرۈڭ", + "Personal availability settings" : "شەخسىي ئىشلىتىش تەڭشىكى", + "Show keyboard shortcuts" : "كۇنۇپكا تاختىسىنىڭ تېزلەتمىسىنى كۆرسەت", + "Appointment schedule successfully created" : "تەيىنلەش جەدۋىلى مۇۋەپپەقىيەتلىك قۇرۇلدى", + "Appointment schedule successfully updated" : "تەيىنلەش جەدۋىلى مۇۋەپپەقىيەتلىك يېڭىلاندى", + "0 minutes" : "0 مىنۇت", + "To configure appointments, add your email address in personal settings." : "ئۇچرىشىشنى تەڭشەش ئۈچۈن ئېلېكترونلۇق خەت ئادرېسىڭىزنى شەخسىي تەڭشەكلەرگە قوشۇڭ.", + "Public – shown on the profile page" : "ئاممىۋى - ئارخىپ بېتىدە كۆرسىتىلدى", + "Private – only accessible via secret link" : "شەخسىي - پەقەت مەخپىي ئۇلىنىش ئارقىلىقلا زىيارەت قىلغىلى بولىدۇ", + "Create appointment schedule" : "ئۇچرىشىش جەدۋىلىنى تۈزۈڭ", + "Edit appointment schedule" : "تەيىنلەش جەدۋىلىنى تەھرىرلەڭ", + "Update" : "يېڭىلا", + "Appointment name" : "تەيىنلەش ئىسمى", "Location" : "ئورنى", + "Create a Talk room" : "پاراڭلىشىش ئۆيى قۇرۇش", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "ھەر بىر زاكاس قىلىنغان ئۇچرىشىشتا ئۆزگىچە ئۇلىنىش ھاسىل قىلىنىدۇ ۋە جەزملەشتۈرۈش ئېلخېتى ئارقىلىق ئەۋەتىلىدۇ", "Description" : "چۈشەندۈرۈش", + "Visibility" : "كۆرۈنۈشچانلىقى", + "Duration" : "Duration", + "Increments" : "كۆپەيتىش", + "Additional calendars to check for conflicts" : "زىددىيەتلەرنى تەكشۈرۈش ئۈچۈن قوشۇمچە كالېندار", + "Pick time ranges where appointments are allowed" : "ئۇچرىشىشقا رۇخسەت قىلىنغان ۋاقىت دائىرىسىنى تاللاڭ", + "to" : "to", + "Delete slot" : "ئورۇننى ئۆچۈرۈڭ", + "No times set" : "ۋاقىت بەلگىلەنمىدى", "Add" : "قوش", "Monday" : "دۈشەنبە", "Tuesday" : "سەيشەنبە", @@ -23,18 +227,298 @@ "Friday" : "جۈمە", "Saturday" : "شەنبە", "Sunday" : "يەكشەنبە", - "Save" : "ساقلا", - "Update" : "يېڭىلا", + "Weekdays" : "ھەپتە كۈنلىرى", + "Add time before and after the event" : "پائالىيەتنىڭ ئالدى-كەينىدە ۋاقىت قوشۇڭ", + "Before the event" : "پائالىيەتتىن ئىلگىرى", + "After the event" : "پائالىيەتتىن كېيىن", + "Planning restrictions" : "پىلان چەكلىمىسى", + "Minimum time before next available slot" : "كېيىنكى ئىشلەتكىلى بولىدىغان ئورۇننىڭ ئەڭ تۆۋەن ۋاقتى", + "Max slots per day" : "كۈنىگە ئەڭ چوڭ ئورۇن", + "Limit how far in the future appointments can be booked" : "كەلگۈسىدىكى ئۇچرىشىشلارنىڭ قانچىلىك دەرىجىدە زاكاس قىلىنىدىغانلىقىنى چەكلەڭ", + "It seems a rate limit has been reached. Please try again later." : "قارىماققا ئۆسۈم چېكىگە يەتكەندەك قىلىدۇ. كېيىن قايتا سىناڭ.", + "Please confirm your reservation" : "زاكاسلىرىڭىزنى جەزملەشتۈرۈڭ", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "بىز سىزگە تەپسىلاتلار بىلەن ئېلېكترونلۇق خەت ئەۋەتتۇق. ئېلېكترونلۇق خەتتىكى ئۇلىنىش ئارقىلىق ئۇچرىشىشىڭىزنى جەزملەشتۈرۈڭ. بۇ بەتنى ھازىر ياپالايسىز.", + "Your name" : "ئىسمىڭىز", "Your email address" : "تورخەت ئادرېسىڭىز", + "Please share anything that will help prepare for our meeting" : "ئۇچرىشىشىمىزغا تەييارلىق قىلىشقا ياردىمى بولىدىغان نەرسىلەرنى ئورتاقلىشىڭ", + "Could not book the appointment. Please try again later or contact the organizer." : "ئۇچرىشىشنى زاكاز قىلالمىدى. كېيىن قايتا سىناڭ ياكى تەشكىللىگۈچى بىلەن ئالاقىلىشىڭ.", + "Back" : "قايتىش", + "Create a new conversation" : "يېڭى سۆھبەت قۇر", + "Select conversation" : "سۆھبەتنى تاللاڭ", + "on" : "on", + "at" : "at", + "before at" : "before at", + "Notification" : "ئۇقتۇرۇش", "Email" : "تورخەت", + "Audio notification" : "ئاۋازلىق ئۇقتۇرۇش", + "Other notification" : "باشقا ئۇقتۇرۇش", + "Relative to event" : "ۋەقەگە مۇناسىۋەتلىك", + "On date" : "چېسلا", + "Edit time" : "ۋاقىتنى تەھرىرلەش", + "Save time" : "ۋاقىت تېجەڭ", + "Remove reminder" : "ئەسكەرتىشنى ئۆچۈرۈڭ", + "Add reminder" : "ئەسكەرتىش قوشۇڭ", + "seconds" : "سېكۇنت", + "minutes" : "مىنۇت", + "hours" : "سائەت", + "days" : "كۈنلەر", + "weeks" : "ھەپتە", + "Choose a file to add as attachment" : "قوشۇمچە قىلىپ قوشماقچى بولغان ھۆججەتنى تاللاڭ", + "Choose a file to share as a link" : "ئۇلىنىش سۈپىتىدە ھەمبەھىرلىنىدىغان ھۆججەتنى تاللاڭ", + "Attachment {name} already exist!" : "قوشۇمچە {name} مەۋجۇت!", + "Could not upload attachment(s)" : "قوشۇمچە ھۆججەتلەرنى يۈكلىيەلمىدى", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "سىز {host} غا يۆتكىمەكچى بولۇۋاتىسىز. داۋاملاشتۇرامسىز؟ ئۇلىنىش: {link}", + "Proceed" : "داۋاملاشتۇرۇڭ", + "No attachments" : "قوشۇمچە ھۆججەت يوق", + "Add from Files" : "ھۆججەتلەردىن قوشۇڭ", + "Upload from device" : "ئۈسكۈنىدىن يۈكلەش", + "Delete file" : "ھۆججەتنى ئۆچۈرۈڭ", + "Confirmation" : "جەزملەشتۈرۈش", + "Suggested" : "تەكلىپ بەردى", + "Available" : "ئىشلەتكىلى بولىدۇ", + "Invitation accepted" : "تەكلىپ قوبۇل قىلىندى", + "Accepted {organizerName}'s invitation" : "{organizerName} ئىسمى} نىڭ تەكلىپىنى قوبۇل قىلدى", + "Participation marked as tentative" : "قاتنىشىش ۋاقتىنچە بەلگە قىلىندى", + "Invitation is delegated" : "تەكلىپنامە ئەۋەتىلدى", + "Not available" : "ئىشلەتكىلى بولمايدۇ", + "Invitation declined" : "تەكلىپ رەت قىلىندى", + "Declined {organizerName}'s invitation" : "رەت قىلىنغان {organizerName} ئىسمى} نىڭ تەكلىپنامىسى", + "Awaiting response" : "جاۋاب كۈتۈش", + "Checking availability" : "بار-يوقلۇقىنى تەكشۈرۈش", + "Has not responded to {organizerName}'s invitation yet" : "{organizerName} نىڭ تەكلىپىگە تېخى جاۋاب بەرمىدى", + "chairperson" : "رەئىس", + "required participant" : "تەلەپچان قاتناشقۇچى", + "non-participant" : "قاتناشمىغان", + "optional participant" : "ئىختىيارى قاتناشقۇچى", + "{organizer} (organizer)" : "{organizer} (تەشكىللىگۈچى)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "قاتناشقۇچىلار ، بايلىق ۋە ياتاقلار", + "Suggestion accepted" : "تەكلىپ قوبۇل قىلىندى", + "Legend" : "رىۋايەت", + "Out of office" : "ئىشخانىدىن چىقتى", + "Attendees:" : "قاتناشقۇچىلار:", + "Done" : "تامام", + "Search room" : "ئىزدەش ئۆيى", + "Room name" : "ياتاق ئىسمى", + "Check room availability" : "ياتاقنىڭ بار-يوقلۇقىنى تەكشۈرۈڭ", + "Free" : "ھەقسىز", + "Busy (tentative)" : "ئالدىراش (ۋاقىتلىق)", + "Busy" : "ئالدىراش", + "Unknown" : "نامەلۇم", + "Find a time" : "ۋاقىت تېپىڭ", + "The invitation has been accepted successfully." : "تەكلىپ مۇۋەپپەقىيەتلىك قوبۇل قىلىندى.", + "Failed to accept the invitation." : "تەكلىپنى قوبۇل قىلالمىدى.", + "The invitation has been declined successfully." : "تەكلىپ مۇۋەپپەقىيەتلىك رەت قىلىندى.", + "Failed to decline the invitation." : "تەكلىپنى رەت قىلدى.", + "Your participation has been marked as tentative." : "سىزنىڭ قاتنىشىشىڭىز ۋاقتىنچە بەلگە قىلىندى.", + "Failed to set the participation status to tentative." : "قاتنىشىش ھالىتىنى ۋاقتىنچە بەلگىلىيەلمىدى.", + "Accept" : "قوبۇل قىلىڭ", + "Decline" : "رەت قىلىش", + "Tentative" : "Tentative", + "No attendees yet" : "ھازىرغىچە قاتناشقۇچىلار يوق", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} قىلىنغان سان} تەكلىپ قىلىنغان ، {confirmedCount} سان} جەزملەشتۈرۈلگەن", + "Successfully appended link to talk room to location." : "مۇۋەپپەقىيەتلىك ھالدا پاراڭلىشىش ئۆيىگە ئۇلىنىش قوشۇلدى.", + "Successfully appended link to talk room to description." : "مۇۋەپپەقىيەتلىك ھالدا سۆزلىشىش ئۆيىگە ئۇلىنىش قوشۇلدى.", + "Error creating Talk room" : "سۆھبەت ئۆيى قۇرۇشتا خاتالىق", + "Attendees" : "قاتناشقۇچىلار", + "Remove group" : "گۇرۇپپىنى ئۆچۈرۈڭ", + "Remove attendee" : "قاتناشقۇچىلارنى ئېلىۋېتىڭ", + "Request reply" : "جاۋاب تەلەپ قىلىڭ", + "Chairperson" : "رەئىس", + "Required participant" : "تەلەپچان قاتناشقۇچى", + "Optional participant" : "ئىختىيارى قاتناشقۇچى", + "Non-participant" : "قاتناشمىغان", + "No match found" : "ماس كەلمىدى", + "Note that members of circles get invited but are not synced yet." : "چەمبىرەك ئەزالىرىنىڭ تەكلىپ قىلىنغانلىقىغا دىققەت قىلىڭ ، ئەمما تېخى ماسلاشمىدى.", + "(organizer)" : "(تەشكىللىگۈچى)", + "Make {label} the organizer" : "{label} تەشكىللىگۈچى", + "Make {label} the organizer and attend" : "{label} تەشكىللىگۈچى ۋە قاتنىشىڭ", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "تەكلىپنامە ئەۋەتىش ۋە جاۋابلارنى بىر تەرەپ قىلىش ئۈچۈن ، [linkopen] ئېلېكترونلۇق خەت ئادرېسىڭىزنى شەخسىي تەڭشەكلەرگە قوشۇڭ [linkclose].", + "Remove color" : "رەڭنى ئۆچۈرۈڭ", + "Event title" : "پائالىيەت ئىسمى", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "تەكرارلىنىشنىڭ بىر قىسمى بولغان ۋەقەلەرنىڭ پۈتۈن كۈنلۈك تەڭشىكىنى ئۆزگەرتەلمەيدۇ.", + "From" : "From", + "To" : "To", "Repeat" : "قايتىلا", "never" : "ھەرگىز", - "More" : "تېخىمۇ كۆپ", + "on date" : "on date", + "after" : "after", + "End repeat" : "تەكرارلاش", + "Select to end repeat" : "تەكرارلاشنى ئاخىرلاشتۇرۇشنى تاللاڭ", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "بۇ ھادىسە قايتا-قايتا تەكرارلانغاندىن باشقا. ئۇنىڭغا قايتا-قايتا قائىدە قوشالمايسىز.", + "first" : "بىرىنچى", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "تەكرارلىنىش قائىدىسىگە ئۆزگەرتىش پەقەت مۇشۇ ۋە كەلگۈسىدىكى بارلىق ئىشلارغا ماس كېلىدۇ.", + "Repeat every" : "ھەممىنى تەكرارلاڭ", + "By day of the month" : "ئاينىڭ كۈنىگە قەدەر", + "On the" : "ئۈستىدە", + "weekday" : "ھەپتە", + "weekend day" : "ھەپتە ئاخىرى", + "Does not repeat" : "تەكرارلانمايدۇ", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "بۇ پائالىيەتنىڭ قايتا-قايتا ئېنىقلىنىشى Nextcloud تەرىپىدىن تولۇق قوللىمايدۇ. ئەگەر قايتا-قايتا تاللاشلارنى تەھرىرلىسىڭىز ، بەزى تەكرارلىنىشلار يوقاپ كېتىشى مۇمكىن.", + "No rooms or resources yet" : "ھازىرچە ياتاق ۋە بايلىق يوق", + "Resources" : "بايلىق", + "Add resource" : "بايلىق قوشۇڭ", + "Has a projector" : "بىر پروجېكتور بار", + "Has a whiteboard" : "ئاق دوسكىسى بار", + "Wheelchair accessible" : "چاقلىق ئورۇندۇقنى زىيارەت قىلغىلى بولىدۇ", + "Remove resource" : "مەنبەنى ئۆچۈرۈڭ", + "Search for resources or rooms" : "بايلىق ياكى ئۆي ئىزدەڭ", + "available" : "ئىشلەتكىلى بولىدۇ", + "unavailable" : "ئىشلەتكىلى بولمايدۇ", + "Show all rooms" : "بارلىق ئۆيلەرنى كۆرسەت", + "Projector" : "Projector", + "Whiteboard" : "ئاق دوسكا", + "Room type" : "ياتاق تىپى", + "Any" : "ھەر قانداق", + "Minimum seating capacity" : "ئەڭ تۆۋەن ئولتۇرۇش ئىقتىدارى", + "More details" : "تېخىمۇ كۆپ تەپسىلاتلار", + "Update this and all future" : "بۇنى ۋە كەلگۈسىنى يېڭىلاڭ", + "Update this occurrence" : "بۇ ھادىسىنى يېڭىلاڭ", + "Public calendar does not exist" : "ئاممىۋى كالېندار مەۋجۇت ئەمەس", + "Maybe the share was deleted or has expired?" : "بەلكىم ھەمبەھىر ئۆچۈرۈلگەن ياكى ۋاقتى توشقان بولۇشى مۇمكىن؟", + "from {formattedDate}" : "from {formattedDate}", + "to {formattedDate}" : "to {formattedDate}", + "on {formattedDate}" : "on {formattedDate}", + "from {formattedDate} at {formattedTime}" : "{formattedDate} ۋاقىت} دىن {formattedTime} ۋاقىت} دىن", + "to {formattedDate} at {formattedTime}" : "{formattedDate} ۋاقىت} دىكى {formattedTime} ۋاقىت}", + "on {formattedDate} at {formattedTime}" : "{formattedDate} ۋاقىت} دىكى {formattedTime} ۋاقىت}", + "{formattedDate} at {formattedTime}" : "{formattedDate} at {formattedTime}", + "Please enter a valid date" : "ئىناۋەتلىك چېسلانى كىرگۈزۈڭ", + "Please enter a valid date and time" : "ئىناۋەتلىك چېسلا ۋە ۋاقىتنى كىرگۈزۈڭ", + "Select a time zone" : "ۋاقىت رايونىنى تاللاڭ", + "Please select a time zone:" : "ۋاقىت رايونىنى تاللاڭ:", + "Pick a time" : "ۋاقىت تاللاڭ", + "Pick a date" : "چېسلا تاللاڭ", + "Type to search time zone" : "ئىزدەش ۋاقىت رايونىغا كىرگۈزۈڭ", + "Global" : "Global", + "Holidays in {region}" : "{region} دەم ئېلىش}", + "An error occurred, unable to read public calendars." : "ئاممىۋى كالېندارنى ئوقۇيالماي خاتالىق كۆرۈلدى.", + "An error occurred, unable to subscribe to calendar." : "كالېندارغا مۇشتەرى بولالمىغان خاتالىق كۆرۈلدى.", + "Public holiday calendars" : "ئاممىۋى دەم ئېلىش كالېندارى", + "Public calendars" : "ئاممىۋى كالېندار", + "No valid public calendars configured" : "ئىناۋەتلىك ئاممىۋى كالېندار سەپلەنمىدى", + "Speak to the server administrator to resolve this issue." : "بۇ مەسىلىنى ھەل قىلىش ئۈچۈن مۇلازىمېتىر باشقۇرغۇچىغا سۆزلەڭ.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "ئاممىۋى دەم ئېلىش كالېندارىنى Thunderbird تەمىنلەيدۇ. كالېندار سانلىق مەلۇماتلىرى {website} بېكىتى} دىن چۈشۈرۈلىدۇ", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "بۇ ئاممىۋى كالېندارلارنى كەسمە باشقۇرغۇچى تەۋسىيە قىلىدۇ. كالېندار سانلىق مەلۇماتلىرى مۇناسىۋەتلىك تور بەتتىن چۈشۈرۈلىدۇ.", + "By {authors}" : "{authors}", + "Subscribed" : "مۇشتەرى بولدى", + "Subscribe" : "مۇشتەرى بولۇش", + "Could not fetch slots" : "ئورۇن ئالالمىدى", + "Select a date" : "چېسلانى تاللاڭ", + "Select slot" : "ئورۇننى تاللاڭ", + "No slots available" : "ئورۇن يوق", + "The slot for your appointment has been confirmed" : "سىزنىڭ ۋەزىپىگە تەيىنلەنگەنلىكىڭىز جەزملەشتۈرۈلدى", + "Appointment Details:" : "تەيىنلەش تەپسىلاتى:", + "Time:" : "ۋاقىت:", + "Booked for:" : "زاكاز قىلىندى:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "رەھمەت سىزگە. سىزنىڭ {startDate} دىن {endDate} گىچە زاكاس قىلىشىڭىز جەزملەشتۈرۈلدى.", + "Book another appointment:" : "باشقا ئۇچرىشىشنى زاكاز قىلىڭ:", + "See all available slots" : "بارلىق ئورۇنلارنى كۆرۈڭ", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "سىزنىڭ ئۇچرىشىشىڭىزنىڭ {startDate} دىن {endDate} غىچە بولغان ئورنى ئەمدى يوق.", + "Please book a different slot:" : "باشقا بىر كىتابنى زاكاز قىلىڭ:", + "Book an appointment with {name}" : "{name} بىلەن ئۇچرىشىشنى زاكاز قىلىڭ", + "No public appointments found for {name}" : "{name} ئۈچۈن ئاممىۋى ئۇچرىشىش تېپىلمىدى", "Personal" : "شەخسىي", - "Attendees" : "قاتناشقۇچىلار", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "ئاپتوماتىك ۋاقىت رايونىنى تەكشۈرۈش سىزنىڭ ۋاقىت رايونىڭىزنىڭ UTC ئىكەنلىكىنى بەلگىلىدى.\nبۇ بەلكىم توركۆرگۈڭىزنىڭ بىخەتەرلىك تەدبىرلىرىنىڭ نەتىجىسى بولۇشى مۇمكىن.\nۋاقىت رايونىنى كالېندار تەڭشىكىدە قولدا تەڭشەڭ.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "تەڭشەلگەن ۋاقىت رايونىڭىز ({timezoneId}) تېپىلمىدى. UTC غا قايتىش.\nتەڭشەكتىكى ۋاقىت رايونىڭىزنى ئۆزگەرتىپ بۇ مەسىلىنى دوكلات قىلىڭ.", + "Event does not exist" : "ھادىسە مەۋجۇت ئەمەس", + "Duplicate" : "كۆپەيتىلگەن", + "Delete this occurrence" : "بۇ ھادىسىنى ئۆچۈرۈڭ", + "Delete this and all future" : "بۇنى ۋە كەلگۈسىنى ئۆچۈرۈڭ", + "All day" : "پۈتۈن كۈن", + "Managing shared access" : "ئورتاق زىيارەتنى باشقۇرۇش", + "Deny access" : "زىيارەتنى رەت قىلىش", + "Invite" : "تەكلىپ قىلىڭ", + "Untitled event" : "نامسىز ھادىسە", "Close" : "ياپ", - "Next" : "كېيىنكى", + "Subscribe to {name}" : "{name} غا مۇشتەرى بولۇڭ", + "Export {name}" : "چىقىرىش {name}", + "Anniversary" : "يىللىق خاتىرە كۈنى", + "Appointment" : "تەيىنلەش", + "Business" : "سودا", + "Education" : "مائارىپ", + "Holiday" : "دەم ئېلىش", + "Meeting" : "يىغىن", + "Miscellaneous" : "ھەرخىل", + "Non-working hours" : "خىزمەت ۋاقتى يوق", + "Not in office" : "ئىشخانىدا ئەمەس", + "Phone call" : "تېلېفون", + "Sick day" : "كېسەل كۈنى", + "Special occasion" : "ئالاھىدە سورۇن", + "Travel" : "ساياھەت", + "Vacation" : "دەم ئېلىش", + "Midnight on the day the event starts" : "پائالىيەت باشلانغان كۈنى يېرىم كېچىدە", + "on the day of the event at {formattedHourMinute}" : "پائالىيەت كۈنى {formattedHourMinute} HourMinute} دىكى", + "at the event's start" : "پائالىيەت باشلانغاندا", + "at the event's end" : "پائالىيەت ئاخىرلاشقاندا", + "{time} before the event starts" : "پائالىيەت باشلىنىشتىن بۇرۇن {time}", + "{time} before the event ends" : "پائالىيەت ئاخىرلىشىشتىن بۇرۇن {time}", + "{time} after the event starts" : "پائالىيەت باشلانغاندىن كېيىن {time}", + "{time} after the event ends" : "پائالىيەت ئاخىرلاشقاندىن كېيىن {time}", + "on {time}" : "on {time}", + "on {time} ({timezoneId})" : "on {time} ({timezoneId})", + "Week {number} of {year}" : "ھەپتە {سان} يىل}", + "Daily" : "كۈندىلىك", + "Weekly" : "ھەپتىلىك", + "Monthly" : "ئايلىق", + "Yearly" : "يىللىق", + "on the {ordinalNumber} {byDaySet}" : "on {ordinalNumber} {byDaySet}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "{monthNames} دا {ordinalNumber} {byDaySet}", + "until {untilDate}" : "تاكى DateDate}", + "second" : "ئىككىنچى", + "third" : "ئۈچىنچىسى", + "fourth" : "تۆتىنچى", + "fifth" : "بەشىنچى", + "second to last" : "ئىككىنچىدىن ئاخىرقىسى", + "last" : "ئاخىرقى", + "Untitled task" : "نامسىز ۋەزىپە", + "Please ask your administrator to enable the Tasks App." : "باشقۇرغۇچىدىن ۋەزىپە ئەپىنى قوزغىتىشنى تەلەپ قىلىڭ.", + "W" : "W.", + "%n more" : "% n تېخىمۇ كۆپ", + "No events to display" : "كۆرسىتىدىغان ھېچقانداق ھادىسە يوق", + "No events" : "ھېچقانداق ۋەقە يوق", + "Create a new event or change the visible time-range" : "يېڭى ھادىسە قۇرۇڭ ياكى كۆرۈنگەن ۋاقىت دائىرىسىنى ئۆزگەرتىڭ", + "Failed to save event" : "پائالىيەتنى ساقلىيالمىدى", + "It might have been deleted, or there was a typo in a link" : "ئۇ ئۆچۈرۈلگەن بولۇشى مۇمكىن ، ياكى ئۇلىنىشتا خاتالىق بار", + "It might have been deleted, or there was a typo in the link" : "ئۇ ئۆچۈرۈلگەن بولۇشى مۇمكىن ، ياكى ئۇلىنىشتا خاتالىق بار", + "Meeting room" : "يىغىن زالى", + "Lecture hall" : "لېكسىيە زالى", + "Seminar room" : "مۇھاكىمە ئۆيى", "Other" : "باشقا", - "Birthday" : "تۇغۇلغان كۈن" + "When shared show" : "ھەمبەھىرلەنگەندە", + "When shared show full event" : "ھەمبەھىرلەنگەندە تولۇق پائالىيەتنى كۆرسىتىدۇ", + "When shared show only busy" : "ئورتاقلاشقاندا پەقەت ئالدىراش", + "When shared hide this event" : "ئورتاقلاشقاندا بۇ پائالىيەتنى يوشۇرۇڭ", + "The visibility of this event in shared calendars." : "ئورتاق كالېنداردا بۇ پائالىيەتنىڭ كۆرۈنۈشچانلىقى.", + "Add a location" : "ئورۇن قوشۇڭ", + "Status" : "ھالەت", + "Confirmed" : "جەزملەشتۈرۈلدى", + "Canceled" : "ئەمەلدىن قالدۇرۇلدى", + "Confirmation about the overall status of the event." : "پائالىيەتنىڭ ئومۇمىي ئەھۋالى توغرىسىدىكى جەزملەشتۈرۈش.", + "Show as" : "كۆرسەت", + "Take this event into account when calculating free-busy information." : "ھەقسىز ئالدىراش ئۇچۇرلارنى ھېسابلىغاندا بۇ پائالىيەتنى ئويلاڭ.", + "Categories" : "سەھىپىلەر", + "Categories help you to structure and organize your events." : "سەھىپىلەر سىزنىڭ پائالىيەتلىرىڭىزنى تەشكىللىشىڭىز ۋە تەشكىللىشىڭىزگە ياردەم بېرىدۇ.", + "Search or add categories" : "تۈرلەرنى ئىزدەڭ ياكى قوشۇڭ", + "Add this as a new category" : "بۇنى يېڭى سەھىپە قىلىپ قوشۇڭ", + "Custom color" : "ئىختىيارى رەڭ", + "Special color of this event. Overrides the calendar-color." : "بۇ پائالىيەتنىڭ ئالاھىدە رەڭگى. كالېندار-رەڭنى قاپلايدۇ.", + "Error while sharing file" : "ھۆججەتنى ھەمبەھىرلەشتە خاتالىق", + "Error while sharing file with user" : "ئىشلەتكۈچى بىلەن ھۆججەتنى ھەمبەھىرلەشتە خاتالىق", + "Attachment {fileName} already exists!" : "قوشۇمچە ھۆججەت {fileName} مەۋجۇت!", + "An error occurred during getting file information" : "ھۆججەت ئۇچۇرىغا ئېرىشىش جەريانىدا خاتالىق كۆرۈلدى", + "An error occurred, unable to delete the calendar." : "كالېندارنى ئۆچۈرەلمەي خاتالىق كۆرۈلدى.", + "Imported {filename}" : "ئىمپورت قىلىنغان {filename} ئىسمى}", + "This is an event reminder." : "بۇ بىر ۋەقە ئەسكەرتىش.", + "Error while parsing a PROPFIND error" : "PROPFIND خاتالىقىنى تەھلىل قىلغاندا خاتالىق", + "Appointment not found" : "تەيىنلەنمىدى", + "User not found" : "ئىشلەتكۈچى تېپىلمىدى", + "Reminder" : "ئەسكەرتىش", + "+ Add reminder" : "+ ئەسكەرتىش قوشۇڭ", + "Select automatic slot" : "ئاپتوماتىك ئورۇننى تاللاڭ", + "with" : "with", + "Available times:" : "ئىشلەتكىلى بولىدىغان ۋاقىت:", + "Suggestions" : "تەكلىپ", + "Details" : "تەپسىلاتى" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/uk.js b/l10n/uk.js index e83584d4e6dfea68f42c0496a408b32b7b01f2dd..6beb5895eaad4f84c53d91c4f01cb95a7f3b3494 100644 --- a/l10n/uk.js +++ b/l10n/uk.js @@ -1,119 +1,171 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "Надана адреса ел. пошти задовга", "User-Session unexpectedly expired" : "Термін дії сесії користувача несподівано завершився", "Provided email-address is not valid" : "Надано некоректну адресу електронної пошти ", - "%s has published the calendar »%s«" : "%s опублікував календар »%s«", - "Unexpected error sending email. Please contact your administrator." : "Виникла несподівана помилка під час надсилання електронного повідомлення. Будь-ласка повідомте Вашого адміністратора.", + "%s has published the calendar »%s«" : "%s опублікував календар \"%s\"", + "Unexpected error sending email. Please contact your administrator." : "Виникла несподівана помилка під час надсилання електронного повідомлення. Будь ласка повідомте адміністратора.", "Successfully sent email to %1$s" : "Успішно надіслано лист на адресу %1$s", "Hello," : "Вітаємо,", - "We wanted to inform you that %s has published the calendar »%s«." : "We wanted to inform you that %s has published the calendar »%s.", - "Open »%s«" : "Відкрити 1%s", - "Cheers!" : "На все добре!", + "We wanted to inform you that %s has published the calendar »%s«." : "Дозвольте повідомити вас, що%s опублікував календар \"%s\".", + "Open »%s«" : "Відкрити \"%s\"", + "Cheers!" : "Щасти!", "Upcoming events" : "Майбутні події", + "No more events today" : "Подій на сьогодні не заплановано", + "No upcoming events" : "Відсутні майбутні події", + "More events" : "Більше подій", + "%1$s with %2$s" : "%1$s з %2$s", + "Calendar" : "Календар", + "New booking {booking}" : "Нове резервування {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) запросив вас на зустріч \"{config_display_name}\", яка відбудеться {date_time}.", "Appointments" : "Зустрічі", + "Schedule appointment \"%s\"" : "Запланувати зустріч \"%s\"", + "Schedule an appointment" : "Запланувати зустріч", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Підготуватися до %s", + "Follow up for %s" : "Слідкувати за %s", + "Your appointment \"%s\" with %s needs confirmation" : "Вашу зустріч \"%s\" з %s потрібно підтвердити", + "Dear %s, please confirm your booking" : "Шановний(а) %s, будь ласка, підтвердіть ваше резервування", "Confirm" : "Підтвердити", + "Appointment with:" : "Зустріч з:", + "Description:" : "Опис:", + "This confirmation link expires in %s hours." : "Термін дії посилання для підтвердженння спливає за %sгодин.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Якщо ви все ж бажаєте скасувати зустріч, будь ласка, сконтактуйте з організатором зустрічі, для цього надішліть відповідь на цей лист або відвідайте сторінку профілю.", + "Your appointment \"%s\" with %s has been accepted" : "Вашу зустріч \"%s\" з %s було прийнято.", + "Dear %s, your booking has been accepted." : "Шановний(а) %s, ваше резервування було прийнято.", + "Appointment for:" : "Запрошення на зустріч для:", "Date:" : "Дата:", + "You will receive a link with the confirmation email" : "Ви отримаєте посилання з підтвердженням на електронну пошту", "Where:" : "Місце:", - "Description:" : "Опис:", - "Calendar" : "Календар", - "A Calendar app for Nextcloud" : "Звстосунок \"Календар\" для Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Застосунок Календар - це інтерфейс користувача до сервера Nextcloud CalDAV. З легкістю редагуйте та синхронізуйте події між вашими пристроями та Nextcloud онлайн.\n\n* 🚀 **Інтеграція з іншими застосунками Nextcloud!** В даний час - Контакти. Інші - скоро.\n* 🌐 **Підтримка WebCal!** Бажаєте бачити у своєму календарі дати матчів вашої улюбленої команди? Без проблем!\n* 🙋 **Учасники!** Запросіть інших людей до участі у вашіх подіях\n* ⌚️ **Розклад:** Побачте коли ваші учасники доступні для зустрічі\n* ⏰ **Нагадування!** Отримайте сигнал-нагадування про подію у вашому браузері і за допомогою електронної пошти.\n* 🔍 Пошук! Знайдіть події легко.\n* ☑️ Завдання! Перегляньте завдання з терміном виконання безпосередньо в календарі\n* 🙈 **Ми не винаходимо колесо знову!** Базується на чудовій [бібліотеці c-dav](https://github.com/nextcloud/cdav-library), а також бібліотеках [ical.js](https://github.com/mozilla-comm/ical.js) і [fullcalendar](https://github.com/fullcalendar/fullcalendar).", - "Previous day" : "Попередій день", + "Comment:" : "Коментар:", + "You have a new appointment booking \"%s\" from %s" : "%s надіслав вам запрошення на зустріч \"%s\"", + "Dear %s, %s (%s) booked an appointment with you." : "Шановний(-а) %s! %s (%s) запросив вас на зустріч.", + "A Calendar app for Nextcloud" : "Застосунок \"Календар\" для Nextcloud", + "Previous day" : "Вчора", "Previous week" : "Попередній тиждень", + "Previous year" : "Назад", "Previous month" : "Попередній місяць", - "Next day" : "Наступний день", + "Next day" : "Завтра", "Next week" : "Наступний тиждень", + "Next year" : "Наступний рік", "Next month" : "Наступний місяць", - "New event" : "Нова подія", + "Create new event" : "Створити нову подію", + "Event" : "Подія", "Today" : "Сьогодні", "Day" : "День", "Week" : "Тиждень", "Month" : "Місяць", + "Year" : "Рік", "List" : "Список", + "Appointment link was copied to clipboard" : "Посилання на зустріч скопійовано до буферу обміну", + "Appointment link could not be copied to clipboard" : "Неможливо скопіювати посилання до буферу обміну", "Preview" : "Перегляд", - "Copy link" : "Скопіювати посилання", + "Copy link" : "Копіювати посилання", "Edit" : "Редагувати", "Delete" : "Вилучити", + "Appointment schedules" : "Заплановані зустрічі", + "Create new" : "Додати", + "Disable calendar \"{calendar}\"" : "Вимкнути календар \"{calendar}\"", + "Disable untitled calendar" : "Вимкнути календар без назви", + "Enable calendar \"{calendar}\"" : "Увімкнути календар \"{calendar}\"", + "Enable untitled calendar" : "Увімкнути календар без назви", + "An error occurred, unable to change visibility of the calendar." : "Помилка: неможливо змінити подання календаря.", "Untitled calendar" : "Календар без назви", - "Edit name" : "Редагувати назву", - "Saving name …" : "Збереження назви ...", - "Edit color" : "Редагувати колір", - "Saving color …" : "Збереження кольору ...", - "Copy private link" : "Копіювати приватне посилання", - "Export" : "Експорт", - "Unshare from me" : "Від'єднати від мене", - "An error occurred, unable to change visibility of the calendar." : "Помилка: неможливо змінити відображення календаря.", - "An error occurred, unable to delete the calendar." : "Помилка: неможливо вилучити календар.", - "Calendar link copied to clipboard." : "Посилання на календар скопійовано", - "Calendar link could not be copied to clipboard." : "Неможливо копіювати посилання на календар.", - "An error occurred, unable to rename the calendar." : "Сталася помилка, неможливо перейменувати календар.", - "An error occurred, unable to change the calendar's color." : "Сталася помилка, неможливо змінити колір календаря.", + "Shared with you by" : "Поділилися з вами", + "Edit and share calendar" : "Редагувати та поділитися календарем", + "Edit calendar" : "Редагувати календар", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Поширення календаря буде відмінено через {countdown} секунду","Поширення календаря буде відмінено через {countdown} секунд","Поширення календаря буде відмінено через {countdown} секунд","Календар буде від'єднано за {countdown} секунд"], - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Календар буде видалено через {countdown} секунду","Календар буде видалено через {countdown} секунд","Календар буде видалено через {countdown} секунд","Календар буде вилучено через {countdown} секунд"], - "Share link" : "Поширити посилання", - "Publish calendar" : "Опублікувати календар", - "Publishing calendar" : "Публікую календар", - "Copy public link" : "Копіювати публічне посилання", - "Send link to calendar via email" : "Відправити посилання на календар за допомогою електронної пошти", - "Enter one address" : "Зазначте одну адресу", - "Sending email …" : "Надсилаю повідомлення ...", + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Календар буде вилучено через {countdown} секунду","Календар буде вилучено через {countdown} секунди","Календар буде вилучено через {countdown} секунд","Календар буде вилучено через {countdown} секунд"], + "An error occurred, unable to create the calendar." : "Помилка: неможливо створити календар.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Будь ласка, зазначте правильне посилання (має починатися з http://, https://, webcal:// або webcals://)", + "Calendars" : "Календарі", + "Add new" : "Створити", + "New calendar" : "Додати календар", + "Name for new calendar" : "Назва нового календаря", + "Creating calendar …" : "Створення календаря...", + "New calendar with task list" : "Новий календар зі списком завдань", + "New subscription from link (read-only)" : "Підписатися на календар (лише для читання)", + "Creating subscription …" : "Створення підписки...", + "Add public holiday calendar" : "Додати календар публічних свят", + "Add custom public calendar" : "Додати власний публічний календар", + "Calendar link copied to clipboard." : "Посилання на календар скопійовано.", + "Calendar link could not be copied to clipboard." : "Неможливо копіювати посилання на календар.", "Copy subscription link" : "Копіювати посилання на підписку", - "Copying link …" : "Копіюю посилання ...", - "Copied link" : "Копія посилання", + "Copying link …" : "Копіюю посилання...", + "Copied link" : "Скопійоване посилання", "Could not copy link" : "Не вдалося cкопіювати посилання", - "Copy embedding code" : "Копіювати код вбудування", - "Copying code …" : "Копіюю код ...", - "Copied code" : "Код скопійовано", - "Could not copy code" : "Не вдалося скопіювати код", - "Delete share link" : "Вилучити посилання для спільного використання", - "Deleting share link …" : "Вилучення посилання для спільного використання...", - "An error occurred, unable to publish calendar." : "Сталася помилка, неможливо опублікувати календар.", - "An error occurred, unable to send email." : "Сталася помилка, неможливо відправити повідомлення.", + "Export" : "Експорт", + "Untitled item" : "Елемент без назви", + "Unknown calendar" : "Невідомий календар", + "Could not load deleted calendars and objects" : "Не вдалося завантажити календарі та об’єкти, які було раніше вилучено", + "Could not delete calendar or event" : "Не вдалося вилучити календар або подію", + "Could not restore calendar or event" : "Не вдалося відновити календар або подію", + "Do you really want to empty the trash bin?" : "Ви дійсно хочете очистити кошик?", + "Empty trash bin" : "Очистити кошик", + "Trash bin" : "Кошик", + "Loading deleted items." : "Завантажую вилучені елементи.", + "You do not have any deleted items." : "У вас відсутні елементи, які було вилучено.", + "Name" : "Назва", + "Deleted" : "Вилучено", + "Restore" : "Відновити", + "Delete permanently" : "Вилучити назавжди", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Вміст кошику буде очищено через {numDays} день","Вміст кошику буде очищено через {numDays} дні","Вміст кошику буде очищено через {numDays} днів","Вміст кошику буде очищено через {numDays} днів"], + "Could not update calendar order." : "Не вдалося оновити порядок подання календарів.", + "Shared calendars" : "Спільні календарі", + "Deck" : "Колода", + "Hidden" : "Прихований", + "Internal link" : "Внутрішнє посилання", + "A private link that can be used with external clients" : "Приватне посилання, яке можна буде використати із зовнішніми клієнтами.", + "Copy internal link" : "Копіювати посилання", + "An error occurred, unable to publish calendar." : "Помилка: неможливо опублікувати календар.", + "An error occurred, unable to send email." : "Помилка: неможливо надіслати повідомлення.", "Embed code copied to clipboard." : "Код вбудування cкопійовано.", - "Embed code could not be copied to clipboard." : "Неможливо копіювати код вбудування.", + "Embed code could not be copied to clipboard." : "Неможливо скопіювати код вбудування.", "Unpublishing calendar failed" : "Не вдалося скасувати публікацію календаря", - "Share with users or groups" : "Поділитися з користувачем або групою", - "No users or groups" : "Жодного користувача або групи", + "Share link" : "Посилання спільного доступу", + "Copy public link" : "Копіювати публічне посилання", + "Send link to calendar via email" : "Надіслати посилання на календар електронною поштою", + "Enter one address" : "Зазначте одну адресу", + "Sending email …" : "Надсилаю повідомлення...", + "Copy embedding code" : "Копіювати код вбудування", + "Copying code …" : "Копіюю код...", + "Copied code" : "Скопійований код", + "Could not copy code" : "Не вдалося скопіювати код", + "Delete share link" : "Вилучити посилання спільного доступу", + "Deleting share link …" : "Вилучення посилання спільного доступу...", + "{teamDisplayName} (Team)" : "{teamDisplayName} (команда)", + "An error occurred while unsharing the calendar." : "Помилка під час скасування доступу до календаря.", + "An error occurred, unable to change the permission of the share." : "Помилка: неможливо змінити права доступу до спільного ресурсу.", "can edit" : "може редагувати", "Unshare with {displayName}" : "Забрати спільний доступ з {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Сталася помилка, неможливо змінити поширення календаря.", - "An error occurred, unable to change the permission of the share." : "Сталася помилка, неможливо змінити права доступу до поширення.", - "+ New calendar" : "+ Новий календар", - "New calendar" : "Новий календар", - "Creating calendar …" : "Створюю календар ...", - "New calendar with task list" : "Новий календар зі списком завдань", - "New subscription from link (read-only)" : "Нова підписка з посилання (лише для читання)", - "Creating subscription …" : "Створюю підписку ...", - "An error occurred, unable to create the calendar." : "Сталася помилка, неможливо створити календар.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Будь-ласка, введіть корректне посилання (повинно починатися на http://, https://, webcal:// або webcals://)", - "Trash bin" : "Кошик для сміття", - "Loading deleted elements." : "Завантаження видалених елементів", - "You do not have any deleted elements." : "Ви не маєте жодних видалених елементів", - "Name" : "Ім'я", - "Deleted" : "вилучено", - "Restore" : "Відновити", - "Delete permanently" : "Видалити назавжди", - "Empty trash bin" : "Очистити кошик", - "Untitled element" : "Елемент без назви", - "Could not load deleted calendars and objects" : "Не вдалося завантажити видалені календарі та об’єкти", - "Could not restore calendar or event" : "Не вдалося відновити календар або подію", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Елементи у кошику будуть видалені через {numDays} день","Елементи у кошику будуть видалені через {numDays} дні","Елементи у кошику будуть видалені через {numDays} днів","Елементи у кошику будуть видалені через {numDays} днів"], - "Could not update calendar order." : "Не вдалося оновити порядок календаря.", + "Share with users or groups" : "Поділитися з користувачем або групою", + "No users or groups" : "Відсутні користувачі або групи", + "Failed to save calendar name and color" : "Не вдалося зберегти назву календаря та колір", + "Calendar name …" : "Назва календаря...", + "Never show me as busy (set this calendar to transparent)" : "Ніколи не показувати мою зайнятість (зробити календар прозорим)", + "Share calendar" : "Поділитися календарем", + "Unshare from me" : "Вилучити доступ для мене", + "Save" : "Зберегти", "Import calendars" : "Імпортувати календарі", - "Please select a calendar to import into …" : "Будь-ласка, оберіть у який календар виконати імпорт ...", + "Please select a calendar to import into …" : "Будь ласка, оберіть до якого календаря імпортувати дані...", "Filename" : "Ім'я файлу", - "Calendar to import into" : "Імпортувати у цей календар", + "Calendar to import into" : "Імпортувати до цього календаря", "Cancel" : "Скасувати", "_Import calendar_::_Import calendars_" : ["Імпортувати календар","Імпортувати календарі","Імпортувати календарі","Імпортувати календарі"], + "Select the default location for attachments" : "Виберіть типове розташування для долучених файлів", + "Pick" : "Вибрати", + "Invalid location selected" : "Вибрано недійсне місце розташування", + "Attachments folder successfully saved." : "Каталог для долучених файлів успішно збережено", + "Error on saving attachments folder." : "Помилка під час збереження каталогу для долучених файлів", + "Default attachments location" : "Типове розташування для долучених файлів", "{filename} could not be parsed" : "Неможливо обробити {filename}", - "No valid files found, aborting import" : "Відсутні дійсні файли, імпортування скасовано", - "Import partially failed. Imported {accepted} out of {total}." : "Імпорт частково не вдався. Імпортовано {accepted} з {total}", + "No valid files found, aborting import" : "Відсутні дійсні файли, імпорт даних скасовано", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Успішно вставлено %n подію","Успішно вставлено %n події","Успішно вставлено %n подій","Успішно вставлено %n подій"], + "Import partially failed. Imported {accepted} out of {total}." : "Імпорт частково не вдався. Імпортовано {accepted} із {total}", "Automatic" : "Автоматично", "Automatic ({detected})" : "Автоматично ({detected})", "New setting was not saved successfully." : "Нові налаштування не було збережено.", - "Shortcut overview" : "Перегляд скорочень", - "or" : "або", "Navigation" : "Навігація", "Previous period" : "Попередній період", "Next period" : "Наступний період", @@ -121,152 +173,340 @@ OC.L10N.register( "Day view" : "День", "Week view" : "Тиждень", "Month view" : "Місяць", + "Year view" : "Вперед", "List view" : "Перелік", "Actions" : "Дії", - "Create event" : "Додати подію", + "Create event" : "Створити подію", "Show shortcuts" : "Показати скорочення", - "Enable birthday calendar" : "Увімкнути календар днів народження", + "Editor" : "Редактор", + "Close editor" : "Закрити редактор", + "Save edited event" : "Закрити відредаговану подію", + "Delete edited event" : "Вилучити відредаговану подію", + "Duplicate event" : "Створити копію події", + "Shortcut overview" : "Перегляд скорочень", + "or" : "або", + "Calendar settings" : "Налаштування", + "At event start" : "З початком події", + "No reminder" : "Без нагадування", + "Failed to save default calendar" : "Не вдалося зберегти типовий календар", + "CalDAV link copied to clipboard." : "Посилання CalDAV скопійовано.", + "CalDAV link could not be copied to clipboard." : "Неможливо копіювати посилання CalDAV.", + "Enable birthday calendar" : "Увімкнути календар дат народжень", "Show tasks in calendar" : "Показувати завдання у календарі", "Enable simplified editor" : "Увімкнути спрощений редактор", - "Limit visible events per view" : "Обмежити подання подій", + "Limit the number of events displayed in the monthly view" : "Частково показувати події у щомісячному поданні", "Show weekends" : "Показувати вихідні дні", "Show week numbers" : "Показувати номери тижнів", - "Copy primary CalDAV address" : "Копіювати адресу основного CalDAV", - "Copy iOS/macOS CalDAV address" : "Ккопіювати адресу iOS/macOS CalDAV", - "Show keyboard shortcuts" : "Показати гарячі клавіші", - "CalDAV link copied to clipboard." : "Посилання CalDAV скопійовано.", - "CalDAV link could not be copied to clipboard." : "Неможливо копіювати посилання CalDAV.", + "Time increments" : "Крок", + "Default calendar for incoming invitations" : "Типовий календар для вхідних запрошень", + "Default reminder" : "Нагадування", + "Copy primary CalDAV address" : "Копіювати основну адресу CalDAV", + "Copy iOS/macOS CalDAV address" : "Копіювати адресу CalDAV для iOS/macOS ", + "Personal availability settings" : "Налаштування зайнятості", + "Show keyboard shortcuts" : "Показати клавіатурні скорочення", + "Appointment schedule successfully created" : "Графік зустрічей успішно створено", + "Appointment schedule successfully updated" : "Графік зустрічей успішно оновлено", + "_{duration} minute_::_{duration} minutes_" : ["{duration} хвилина","{duration} хвилини","{duration} хвилин","{duration} хвилин"], + "0 minutes" : "0 хвилин", + "_{duration} hour_::_{duration} hours_" : ["{duration} година","{duration} години","{duration} годин","{duration} годин"], + "_{duration} day_::_{duration} days_" : ["{duration} день","{duration} дні","{duration} днів","{duration} днів"], + "_{duration} week_::_{duration} weeks_" : ["{duration} тиждень","{duration} тижні","{duration} тижнів","{duration} тижнів"], + "_{duration} month_::_{duration} months_" : ["{duration} місяць","{duration} місяці","{duration} місяців","{duration} місяців"], + "_{duration} year_::_{duration} years_" : ["{duration} рік","{duration} роки","{duration} років","{duration} років"], + "To configure appointments, add your email address in personal settings." : "Для налаштування зустрічей потрібно додати вашу електронну адресу у особистих налаштуваннях.", + "Public – shown on the profile page" : "Показуватиметься на сторінці профілю", + "Private – only accessible via secret link" : "Доступно тільки через приватне посилання", + "Appointment schedule saved" : "Запрошення призначено", + "Create appointment schedule" : "Створити графік зустрічей", + "Edit appointment schedule" : "Редагувати графік зустрічей", + "Update" : "Оновити", + "Appointment name" : "Назва зустрічі", "Location" : "Місце", + "Create a Talk room" : "Створіть кімнату для розмов", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Унікальне посилання буде згенеровано для кожної заброньованої зустрічі та надіслано на електронну пошту з підтвердженням.", "Description" : "Опис", + "Visibility" : "Видимість", + "Duration" : "Тривалість", + "Increments" : "Крок", + "Additional calendars to check for conflicts" : "Додаткові календарі, які потрібно перевірити на конфлікти", + "Pick time ranges where appointments are allowed" : "Виберіть часові проміжки для запрошення на зустріч", "to" : "до", + "Delete slot" : "Вилучити часовий проміжок", + "No times set" : "Не вибрано час", "Add" : "Додати", - "Monday" : "понеділок", + "Monday" : "Понеділок", "Tuesday" : "Вівторок", "Wednesday" : "Середа", "Thursday" : "Четвер", "Friday" : "П'ятниця", "Saturday" : "Субота", "Sunday" : "Неділя", - "Save" : "Зберегти", - "Update" : "Оновити", + "Weekdays" : "Дні тижня", + "Add time before and after the event" : "Додайте часовий проміжок до та після події", + "Before the event" : "До події", + "After the event" : "Після події", + "Planning restrictions" : "Умови участі", + "Minimum time before next available slot" : "Найменший час перед наступним можливим часовим проміжком", + "Max slots per day" : "Максимальна кількість часових проміжків на день", + "Limit how far in the future appointments can be booked" : "Обмежити, наскільки далеко у майбутньому можна призначити зустріч", + "It seems a rate limit has been reached. Please try again later." : "Схоже, що вичерпано максимальну кількість спроб. Спробуйте пізніше.", + "Please confirm your reservation" : "Будь ласка, підтвердіть резервування", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Ми надіслали вам лист з докладною інформацією щодо зустрічі. Просимо підтвердити вашу участь - для цього перейдіть за наведеним у листі посиланням. Ви можете просто закрити цю сторінку.", + "Your name" : "Ваше ім'я", "Your email address" : "Ваша адреса електронної пошти", - "before at" : "до часу", + "Please share anything that will help prepare for our meeting" : "Будь ласка, поділіться корисними матер'ялами, які допоможуть підготоуватися до нашої зустрічі", + "Could not book the appointment. Please try again later or contact the organizer." : "Не вдалося зарезервувати зустріч. Спробуйте пізніше або сконтактуйте з організатором.", + "Back" : "Назад", + "Book appointment" : "Зарезервувати зустріч", + "Error fetching Talk conversations." : "Помилка під час отримання розмов Talk.", + "Conversation does not have a valid URL." : "Ця розмова Talk не містить дійсної адреси URL.", + "Successfully added Talk conversation link to location." : "Успішно додано посилання на розмову Talk до розташування", + "Successfully added Talk conversation link to description." : "Успішно додано посилання на розмову Talk до опису", + "Failed to apply Talk room." : "Помилка під час застосування кімнати Talk.", + "Error creating Talk conversation" : "Помилка під час створення розмови Talk", + "Select a Talk Room" : "Вибрати кімнату для розмов Talk", + "Add Talk conversation" : "Додати розмову Talk", + "Fetching Talk rooms…" : "Отримання кімнат Talk...", + "No Talk room available" : "Відсутні кімнати Talk", + "Create a new conversation" : "Створити нову розмову", + "Select conversation" : "Вибрати розмову", + "on" : "о", + "at" : "о", + "before at" : "до о", "Notification" : "Сповіщення", - "Email" : "Email", + "Email" : "Ел.пошта", "Audio notification" : "Звукове сповіщення", "Other notification" : "Інше сповіщення", - "Relative to event" : "Відносно події", - "On date" : "У дату", + "Relative to event" : "Щодо події", + "On date" : "Дата", "Edit time" : "Редагувати час", "Save time" : "Зберегти час", "Remove reminder" : "Прибрати нагадування", - "on" : "у", - "at" : "о", - "+ Add reminder" : "+ Додати нагадування", - "_second_::_seconds_" : ["секунда","секунд","секунд","секунди"], - "_minute_::_minutes_" : ["хвилина","хвилин","хвилин","хвилини"], - "_hour_::_hours_" : ["година","годин","годин","години"], - "_day_::_days_" : ["день","днів","днів","дні"], - "_week_::_weeks_" : ["тиждень","тижнів","тижнів","тижні"], + "Add reminder" : "Додати нагадування", + "seconds" : "секунд", + "minutes" : "хвилин", + "hours" : "годин", + "days" : "днів", + "weeks" : "тижнів", + "Choose a file to add as attachment" : "Виберіть файл для вкладення", + "Choose a file to share as a link" : "Виберіть файл, яким ви поділитеся через посилання", + "Attachment {name} already exist!" : "Такий долучений файл {name} вже присутній!", + "Could not upload attachment(s)" : "Не вдалося завантажити вкладення", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Ви намагаєтеся завантажити файл. Перевірте ім'я файлу перед відкриттям. Справді продовжити?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Ви збираєтеся перейти на сайт {host}. Продовжити? Посилання: {link}", + "Proceed" : "Продовжити", + "No attachments" : "Без вкладень", + "Add from Files" : "Додати з файлів", + "Upload from device" : "Завантажити з пристрою", + "Delete file" : "Вилучити файл", + "Confirmation" : "Підтвердження", + "_{count} attachment_::_{count} attachments_" : ["{count} долучений файл","{count} долучені файли","{count} долучених файлів","{count} долучених файлів"], + "Suggested" : "Запропоновано", "Available" : "Доступно", + "Invitation accepted" : "Запрошення прийнято", + "Accepted {organizerName}'s invitation" : "Прийнято запрошення від {organizerName}", + "Participation marked as tentative" : "Участь можлива", + "Invitation is delegated" : "Запрошення делеговано", + "Not available" : "Не доступно", + "Invitation declined" : "Запрошення відхилено", + "Declined {organizerName}'s invitation" : "Відхилене від {organizerName} запрошення ", + "Availability will be checked" : "Доступність буде перевірено", + "Invitation will be sent" : "Запрошення буде надіслано", + "Failed to check availability" : "Не вдалося перевірити доступність", + "Failed to deliver invitation" : "Не вдалося доставити запрошення", + "Awaiting response" : "Очікується відповідь", + "Checking availability" : "Перевірка доступності", + "Has not responded to {organizerName}'s invitation yet" : "Ще не відповів на запрошення від {organizerName}", + "Suggested times" : "Пропонований час", + "chairperson" : "модератор", + "required participant" : "обов'язковий учасник(-ця)", + "non-participant" : "гість", + "optional participant" : "необов'язковий учасник(-ця)", + "{organizer} (organizer)" : "{organizer} (організатор)", + "{attendee} ({role})" : "{attendee} ({role})", "Availability of attendees, resources and rooms" : "Доступність учасників, ресурсів і приміщень", + "Suggestion accepted" : "Пропозицію прийнято", + "Previous date" : "Попередня дата", + "Next date" : "Наступна дата", + "Legend" : "Легенда", + "Out of office" : "Недоступно", + "Attendees:" : "Учасники:", + "Done" : "Готово", + "Search room" : "Шукати кімнату", + "Room name" : "Назва кімнати", + "Check room availability" : "Перевірити доступність кімнати", "Free" : "Вільно", "Busy (tentative)" : "Зайнято (попередньо)", "Busy" : "Зайнято", - "Out of office" : "Поза межами офісу", "Unknown" : "Невідомо", + "Find a time" : "Знайти час", + "The invitation has been accepted successfully." : "Запрошення успішно прийнято.", + "Failed to accept the invitation." : "Не вдалося прийняти запрошення.", + "The invitation has been declined successfully." : "Запрошення відхилено.", + "Failed to decline the invitation." : "Не вадлося відхилити запрошення.", + "Your participation has been marked as tentative." : "Вашу участь позначено як можливу.", + "Failed to set the participation status to tentative." : "Не вдалося встановити статус \"можливо\".", "Accept" : "Прийняти", "Decline" : "Відхилити", - "Tentative" : "Попередній", - "Create Talk room for this event" : "Створити Кімнату переговорів для цієї події", - "Show busy times" : "Показати зайнятий час", + "Tentative" : "Можливо так", "No attendees yet" : "Поки жодного учасника", - "Successfully appended link to talk room to description." : "Успішно додано посилання на Кімнату переговорів до опису події.", - "Error creating Talk room" : "Помилка при створенні Кімнати переговорів", - "Send email" : "Відправити лист", - "Chairperson" : "Голова зборів", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} запрошено, {confirmedCount} підтверджено", + "Please add at least one attendee to use the \"Find a time\" feature." : "Додайте принаймні одного учасника, щоби скористатися функціональністю \"Визначити час\"", + "Successfully appended link to talk room to location." : "Успішно додано посилання на розташування у кімнаті спілкування ", + "Successfully appended link to talk room to description." : "Успішно додано посилання на віртуальну кімнату Talk до опису події.", + "Error creating Talk room" : "Помилка при створенні віртуальної кімнати Talk", + "Attendees" : "Учасники", + "_%n more guest_::_%n more guests_" : ["Ще %n гість","Ще %n гостей","Ще %n гостей","Ще %n гостей"], + "Remove group" : "Вилучити групу", + "Remove attendee" : "Вилучити учасника", + "Request reply" : "Запит на відповідь", + "Chairperson" : "Модератор", "Required participant" : "Обов'язковий учасник", "Optional participant" : "Необов'язковий учасник", - "Non-participant" : "Не-учасник", - "Remove attendee" : "Вилучити учасника", - "Search for emails, users or contacts" : "Пошук листів, користувачів або контактів", - "No match found" : "Жодного не знайдено", + "Non-participant" : "Неучасник", + "_%n member_::_%n members_" : ["%n учасник","%n учасника","%n учасників","%n учасників"], + "Search for emails, users, contacts, contact groups or teams" : "Шукати у ел. листах, користувачах, контактах, групах контактів чи командах", + "No match found" : "Збігів не знайдено", + "Note that members of circles get invited but are not synced yet." : "Зверніть увагу, що учасники кіл отримують запрошення, але поки ще не синхронізовані.", + "Note that members of contact groups get invited but are not synced yet." : "Учасників груп контактів було запрошено, але ще не синхронізовано.", "(organizer)" : "(організатор)", + "Make {label} the organizer" : "Зробити {label} організатором", + "Make {label} the organizer and attend" : "Зробити {label} організатором та взяти участь", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Для надсилання запрошень та отримання відповіді, [linkopen]додайте ел.адресу в особистих налаштуваннях[linkclose].", "Remove color" : "Вилучити колір", "Event title" : "Назва події", - "All day" : "Цілий день", - "from {startDate}" : "з {startDate}", - "from {startDate} at {startTime}" : "до {startDate} о {startTime}", - "to {endDate}" : "до {endDate}", - "to {endDate} at {endTime}" : "до {endDate} о {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Не вдалося змінити цілодобове налаштування для подій, які є повторювальними подіями.", + "From" : "Від", + "To" : "Кому", "Repeat" : "Повторювати", - "End repeat" : "Закінчення повторів", - "Select to end repeat" : "Вибрати до кінця повторів", - "never" : "ніколи", - "on date" : "у дату", - "after" : "після", - "_time_::_times_" : ["раз","разів","разів","рази"], + "Repeat event" : "Повторювати подію", + "_time_::_times_" : ["раз","разів","разів","разів"], + "never" : "завжди", + "on date" : "дата", + "after" : "опісля", + "End repeat" : "Повторювати до", + "Select to end repeat" : "Вибрати, щоби завершити повторення", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Ця подія є винятком з набору повторювальних подій. Ви не можете застосувати до нього правило повторення.", "first" : "перший", - "third" : "третій", - "fourth" : "четвертий", - "fifth" : "п'ятий", - "second to last" : "з другого до останнього", - "last" : "останній", - "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Зміни до повторюваного набору застосуються лише до поточного і наступних випадків.", - "Repeat every" : "Повторювати кожні", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Зміни до правила повторення стосуватимуться лише поточної та подальших подій.", + "Repeat every" : "Повторювати кожний", "By day of the month" : "За днем місяця", "On the" : "У", + "_day_::_days_" : ["день","днів","днів","дні"], + "_week_::_weeks_" : ["тиждень","тижнів","тижнів","тижні"], "_month_::_months_" : ["місяць","місяців","місяців","місяці"], "_year_::_years_" : ["рік","років","років","роки"], + "On specific day" : "Певного дня", "weekday" : "робочі дні", "weekend day" : "вихідні дні", - "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Налаштування повторюванності даної події не повністю підтримуються у Nextcloud. В разі редагування налаштувань повторюваності деякі з повторів можуть зникнути.", - "More" : "Більше", - "Update this occurrence" : "Оновити даний повтор", - "Update this and all future" : "Оновити цей і всі наступні", + "Does not repeat" : "Не повторюється", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Правила повторювання ціє події не повністю підтримуються у Nextcloud. Після зміни налаштувань деякі повторення можуть зникнути.", + "No rooms or resources yet" : "Поки відсутні кімнати та ресурси", + "Resources" : "Ресурси", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} місце","{seatingCapacity} місця","{seatingCapacity} місць","{seatingCapacity} місць"], + "Add resource" : "Додати ресурс", + "Has a projector" : "Має проєктор", + "Has a whiteboard" : "Має білу дошку", + "Wheelchair accessible" : "Доступ для інвалідних візків", + "Remove resource" : "Вилучити ресурс", + "Search for resources or rooms" : "Пошук ресурсів або кімнат", + "available" : "доступне", + "unavailable" : "недоступне", + "Show all rooms" : "Показати всі кімнати", + "Projector" : "Проєктор", + "Whiteboard" : "Біла дошка", + "Room type" : "Вид кімнати", + "Any" : "Будь-яка", + "Minimum seating capacity" : "Мінімальна кількість місць", + "More details" : "Докладно", + "Update this and all future" : "Оновити цю подію та всі наступні", + "Update this occurrence" : "Оновити це повторення", "Public calendar does not exist" : "Публічний календар не існує", - "Maybe the share was deleted or has expired?" : "Можливо спільний доступ було закрито або застаріло?", - "Pick a time" : "Вибрати час", - "Pick a date" : "Вибрати дату", - "from {formattedDate}" : "з {formattedDate}", + "Maybe the share was deleted or has expired?" : "Можливо спільний доступ було скасовано або він більше не дійсний?", + "from {formattedDate}" : "від {formattedDate}", "to {formattedDate}" : "до {formattedDate}", "on {formattedDate}" : "{formattedDate}", - "from {formattedDate} at {formattedTime}" : "з {formattedDate} о {formattedTime}", + "from {formattedDate} at {formattedTime}" : "від {formattedDate} о {formattedTime}", "to {formattedDate} at {formattedTime}" : "до {formattedDate} о {formattedTime}", "on {formattedDate} at {formattedTime}" : "{formattedDate} о {formattedTime}", "{formattedDate} at {formattedTime}" : "{formattedDate} о {formattedTime}", - "Please enter a valid date" : "Будь-ласка вкажіть коректну дату", - "Please enter a valid date and time" : "Будь-ласка вкажіть коректну дату і час", + "Please enter a valid date" : "Будь ласка, зазначте правильну дату", + "Please enter a valid date and time" : "Будь ласка, зазначте правильну дату та час", + "Select a time zone" : "Вибрати часову зону", + "Please select a time zone:" : "Виберіть часову зону:", + "Pick a time" : "Виберіть час", + "Pick a date" : "Виберіть дату", + "Type to search time zone" : "Зазначте часову зону для пошуку", "Global" : "Загальний", + "Holidays in {region}" : "Свята в {region}", + "An error occurred, unable to read public calendars." : "Помилка: не вдалося прочитати публічні календарі.", + "An error occurred, unable to subscribe to calendar." : "Помилка: не вдалося підписатися на календар.", + "Public holiday calendars" : "Публічні календарі свят", + "Public calendars" : "Публічні календарі", + "No valid public calendars configured" : "Не налаштовано жодного дійсного публічного календаря", + "Speak to the server administrator to resolve this issue." : "Зверніться до адміністратора сервера, щоб вирішити цю проблему.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Календарі публічних свят надаються Thunderbird. Календарні дані буде отримано з {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Ці публічні календарі були запропоновані адміністратором сервера. Дані для календаря будуть отримані з відповідного сайту.", + "By {authors}" : "Автор: {authors}", + "Subscribed" : "Підписано", + "Subscribe" : "Підписатися", + "Could not fetch slots" : "Не вдалося отримати часові проміжки", + "Select a date" : "Виберіть дату", + "Select slot" : "Виберіть часовий проміжок", + "No slots available" : "Відсутні доступні часові проміжки", + "The slot for your appointment has been confirmed" : "Час вашої зустрічі підтверджено", + "Appointment Details:" : "Деталі зустрічі:", + "Time:" : "Час:", + "Booked for:" : "Зарезервовано для:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Дякуємо вам. Ваше резервування від {startDate} до {endDate} підтверджено.", + "Book another appointment:" : "Зарезервувати іншу зустріч:", + "See all available slots" : "Дивитися усі доступні дати", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Проміжок часу для вашого запрошення від {startDate} до {endDate} більше не доступний.", + "Please book a different slot:" : "Зарезервуйте інший часовий проміжок:", + "Book an appointment with {name}" : "Зарезервуйте зустріч з {name}", + "No public appointments found for {name}" : "Не знайдено публічних зустрічей для {name}", "Personal" : "Особисте", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Вашу часову зону автоматично встановлено як UTC.\nСкоріш за все це зумовлено безпековими обмеженнями вашого бравзера.\nБудь ласка, налаштуйте вашу часову зону вручну у налаштуваннях календаря.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Не знайдено налаштування вашої часової зони ({timezoneId}). Не вдалося встановити типову часову зону UTC.\nБудь ласка, змініть вашу часову зону у налаштуваннях та надішліть звіт про помилку.", + "Availability of {displayName}" : "Доступність {displayName}", + "Edit event" : "Редагувати подію", + "Event does not exist" : "Подія відсутня", + "Duplicate" : "Копіювати", "Delete this occurrence" : "Вилучити повторення", - "Delete this and all future" : "Вилучити це й наступні повторення", - "Details" : "Деталі", - "Attendees" : "Учасників", - "Resources" : "Ресурси", + "Delete this and all future" : "Вилучити це та всі подальші повторення", + "All day" : "Весь день", + "Modifications wont get propagated to the organizer and other attendees" : "Зміни не буде надіслано організаторові та іншим учасникам", + "Managing shared access" : "Керування спільним доступом", + "Deny access" : "Заборонити доступ", + "Invite" : "Запросити", + "_User requires access to your file_::_Users require access to your file_" : ["Потрібно надати доступ до вашого файлу.","Потрібно надати доступ до вашого файлу.","Потрібно надати доступ до вашого файлу.","Потрібно надати доступ до вашого файлу."], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Для доступу до застосунку потрібний спільний доступ.","Для доступу до застосунків потрібний спільний доступ.","Для доступу до застосунків потрібний спільний доступ.","Для доступу до застосунків потрібний спільний доступ."], + "Untitled event" : "Подія без назви", "Close" : "Закрити", - "Show more details" : "Збільшити деталізацію", + "Modifications will not get propagated to the organizer and other attendees" : "Зміни не буде надіслано організаторові та іншим учасникам", "Subscribe to {name}" : "Підписатися на {name}", + "Export {name}" : "Експортувати {name}", + "Show availability" : "Показати доступність", "Anniversary" : "Річниця", - "Appointment" : "Призначення", + "Appointment" : "Запрошення на зустріч", "Business" : "Робота", - "Education" : "Навчання", + "Education" : "Освіта", "Holiday" : "Вихідний", "Meeting" : "Зустріч", "Miscellaneous" : "Різне", "Non-working hours" : "Неробочий час", "Not in office" : "Поза офісом", "Phone call" : "Телефонний дзвінок", - "Sick day" : "Лікарняний", + "Sick day" : "Хворію", "Special occasion" : "Особлива подія", - "Travel" : "Подорож", + "Travel" : "Подорожую", "Vacation" : "Відпустка", - "Midnight on the day the event starts" : "Початок доби у день старту події", + "Midnight on the day the event starts" : "Опівночі в день початку події", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n день до початку події о {formattedHourMinute}","%n днів до початку події о {formattedHourMinute}","%n днів до початку події о {formattedHourMinute}","%n дні до початку події о {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n тиждень до початку події о {formattedHourMinute}","%n тижнів до початку події о {formattedHourMinute}","%n тижнів до початку події о {formattedHourMinute}","%n тижні до початку події о {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "у день події о {formattedHourMinute}", "at the event's start" : "на початку події", - "at the event's end" : "у кінці події", + "at the event's end" : "наприкінці події", "{time} before the event starts" : "{time} до початку події", "{time} before the event ends" : "{time} до завершення події", "{time} after the event starts" : "{time} після початку події", @@ -274,7 +514,6 @@ OC.L10N.register( "on {time}" : "о {time}", "on {time} ({timezoneId})" : "о {time} ({timezoneId})", "Week {number} of {year}" : "Тиждень {number} з {year} року", - "Does not repeat" : "Не повторюється", "Daily" : "Щоденно", "Weekly" : "Щотижня", "Monthly" : "Щомісяця", @@ -286,124 +525,75 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["у {weekdays}","у {weekdays}","у {weekdays}","у {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["у наступний день {dayOfMonthList}","у наступні дні {dayOfMonthList}","у наступні дні {dayOfMonthList}","у наступні дні {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "у {ordinalNumber} {byDaySet}", - "in {monthNames}" : "у {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "у {monthNames} в {dayOfMonthList} ", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "у {monthNames} у {ordinalNumber} {byDaySet}", "until {untilDate}" : "до {untilDate}", "_%n time_::_%n times_" : ["%n раз","%n разів","%n разів","%n рази"], - "Untitled event" : "Подія без назви", + "second" : "другий", + "third" : "третій", + "fourth" : "четвертий", + "fifth" : "п'ятий", + "second to last" : "з другого до останнього", + "last" : "останній", "Untitled task" : "Завдання без назви", - "Please ask your administrator to enable the Tasks App." : "Зверніться до вашого адміністратора щодо увімкнення застосунку Завдання", - "Next" : "Далі", + "Please ask your administrator to enable the Tasks App." : "Зверніться до вашого адміністратора щодо увімкнення застосунку \"Завдання\".", + "You are not allowed to edit this event as an attendee." : "Як учасника у вас відсутній дозвіл на редагування цієї події.", + "W" : "Тиж. ", + "%n more" : "Ще %n подій", + "No events to display" : "Відсутні події для показу", + "All participants declined" : "Всі користувачі відмовилися", + "Please confirm your participation" : "Підтвердіть вашу участь", + "You declined this event" : "Ви відхилили цю подію", + "Your participation is tentative" : "Ваша участь є під питанням", "_+%n more_::_+%n more_" : ["+%n раз ще","+%n разів ще","+%n разів ще","+%n рази ще"], + "No events" : "Відсутні події", + "Create a new event or change the visible time-range" : "Створити нову подію або змінити часовий проміжок", + "Failed to save event" : "Не вдалося зберегти подію", + "It might have been deleted, or there was a typo in a link" : "Можливо, що його було вилучено або міститься помилка у посиланні", + "It might have been deleted, or there was a typo in the link" : "Можливо, що його було вилучено або міститься помилка у посиланні", + "Meeting room" : "Кімната для зустрічей", + "Lecture hall" : "Лекційна зала", + "Seminar room" : "Кімната для занять", "Other" : "Інші", - "When shared show" : "Показувати при поширенні", - "When shared show full event" : "При поширенні показувати подію повністю", - "When shared show only busy" : "При поширенні показувати тільки зайнятий час", - "When shared hide this event" : "При поширенні приховати цю подію", - "The visibility of this event in shared calendars." : "Видимість цієї події при поширенні календаря.", + "When shared show" : "Показувати, якщо у спільному доступі", + "When shared show full event" : "Все про подію, якщо у спільному доступі", + "When shared show only busy" : "Показувати тільки зайнятість, якщо у спільному доступі", + "When shared hide this event" : "Приховати подію, якщо у спільному доступі", + "The visibility of this event in shared calendars." : "Видимість цієї події у спільних календарях.", "Add a location" : "Додати розташування", - "Add a description" : "Додати опис", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Додайте до опису\n\n- Тема зустрічі\n- Питання до розгляду\n- До чого мають підготуватися учасники", "Status" : "Статус", "Confirmed" : "Підтверджено", "Canceled" : "Скасовано", "Confirmation about the overall status of the event." : "Підтвердження загального статусу події.", "Show as" : "Показати як", - "Take this event into account when calculating free-busy information." : "Брати до уваги цю подію при розрахунку інформації про вильний/зайнятий час.", + "Take this event into account when calculating free-busy information." : "Брати до уваги цю подію при розрахунку вільного/зайнятого часу.", "Categories" : "Категорії", - "Categories help you to structure and organize your events." : "Категорії допомагають структурувати і впорядковувати ваші події.", - "Search or add categories" : "Знайти або додати категорії", + "Categories help you to structure and organize your events." : "Категорії допомагають впорядковувати ваші події.", + "Search or add categories" : "Шукати чи додати категорії", "Add this as a new category" : "Додати як нову категорію", - "Custom color" : "Довільний колір", - "Special color of this event. Overrides the calendar-color." : "Особливий колір для цієї події. Перезаписати колір календаря.", - "Chat room for event" : "Кімната спілкування для події", - "Imported {filename}" : "Імпортований {filename}", - "Meditation" : "Медитація", - "Relaxing" : "Розслаблення", - "Relax" : "Розслабитися", - "Presentation" : "Презентація", - "Talk" : "Розмови", - "Camping" : "Лагер", - "Camp" : "Лагер", - "Movie" : "Фільм", - "Cinema" : "Кінотеатр", - "Graduation" : "Випускний", - "Brainstorm" : "Мозговий штурм", - "Review" : "На перегляд", - "Baseball" : "Бейзбол", - "Meet" : "Зустріти", - "Planning" : "Планується", - "Pointing" : "Призначено", - "Retrospective" : "Ретроспектива", - "Office" : "Офіс", - "Contributor week" : "Тиждень постачальника", - "Mail" : "Пошта", - "Soccer" : "Футбол", - "Football" : "Американський футбол", - "Gaming" : "Ігри", - "Drive" : "Їхати автомобілем", - "Bicycle" : "Їхати велосипедом", - "Cycle" : "Їхати колесами", - "Biking" : "Їхати мотоциклом", - "Podcast" : "Подкаст", - "Basketball" : "Баскетбол", - "Fishing" : "Рибалити", - "Hiking" : "Пішки", - "Hike" : "Похід", - "Art" : "Мистецтво", - "Exhibition" : "Виставка", - "Museum" : "Музей", - "Pilates" : "Пілатес", - "Park" : "Парк", - "Studying" : "Навчання", - "Doctor" : "Лікар", - "Health" : "Здоров'я", - "Dentist" : "Стоматолог", - "Interview" : "Співбесіда", - "Training" : "Тренування", - "Practice" : "Практика", - "Sports" : "Спорт", - "Exercise" : "Вправи", - "Work out" : "Тренажери", - "Working out" : "У тренажерному залі", - "Gym" : "Тренажерний зал", - "Barber" : "Перукар", - "Haircut" : "Зачіска", - "Exam" : "Іспит", - "Working" : "Працюю", - "New Years Eve" : "Новий рік", - "NYE" : "Новий рік", - "Fireworks" : "Феєрверки", - "Running" : "Бігаю", - "Go for a run" : "Пробіжка", - "Marathon" : "Марафон", - "Video-conference" : "Відеоконференція", - "Conference-call" : "Конференц-виклик", - "Video-call" : "Відеовиклик", - "Video-chat" : "Відеочат", - "Video-meeting" : "Відеозустріч", - "Call" : "Дзвінок", - "Calling" : "Телефоную", - "Christmas" : "Різдво", - "Conference" : "Конференція", - "Pizza" : "Піцца", - "Travelling" : "Подорожую", - "Journey" : "Подорож", - "Collaborate" : "Співпраця", - "Pair" : "Пара", - "Lecture" : "Лекція", - "Seminar" : "Семінар", - "Photograph" : "Фотограф", - "Party" : "Вечірка", - "Celebration" : "Святкування", - "Celebrate" : "Святкування", - "Birthday" : "День народження", - "Shopping" : "Шопінг", - "Skate" : "Ковзани", - "Skateboard" : "Скейт", - "Wine tasting" : "Дегустація", - "Golf" : "Гольф", - "Dinner" : "Вечеря", - "Lunch" : "Обід", - "User not found" : "Користувача не знайдено" + "Custom color" : "Власний колір", + "Special color of this event. Overrides the calendar-color." : "Власний колір для цієї події. Перезаписати колір календаря.", + "Error while sharing file" : "Помилка під час надання спільного доступу до файлу", + "Error while sharing file with user" : "Помилка під час надання доступу користувачеві", + "Error creating a folder {folder}" : "Помилка під час надання створення каталогу {folder}", + "Attachment {fileName} already exists!" : "Долучений файл {filename} вже присутній!", + "Attachment {fileName} added!" : "Вкладення {fileName} додано! ", + "An error occurred during uploading file {fileName}" : "Помилка під час завантаження файлу {fileName}", + "An error occurred during getting file information" : "Помилка під час отримання інформації про файл", + "Talk conversation for event" : "Розмова Talk для події", + "An error occurred, unable to delete the calendar." : "Помилка: неможливо вилучити календар.", + "Imported {filename}" : "Імпортовано {filename}", + "This is an event reminder." : "Це нагадування про подію.", + "Error while parsing a PROPFIND error" : "Помилка під час обробки помилки PROPFIND", + "Appointment not found" : "Запрошення на зустріч не знайдено", + "User not found" : "Користувача не знайдено", + "Reminder" : "Нагадування", + "+ Add reminder" : "+ Додати нагадування", + "Select automatic slot" : "Виберіть автоматичний проміжок", + "with" : "із", + "Available times:" : "Доступні проміжки:", + "Suggestions" : "Пропозиції", + "Details" : "Деталі" }, "nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);"); diff --git a/l10n/uk.json b/l10n/uk.json index be6e761e07b0de1b6277ce692896b3b23a0710df..19ac7ce2a8b55628ba7c029e0f7b08016e8f276c 100644 --- a/l10n/uk.json +++ b/l10n/uk.json @@ -1,117 +1,169 @@ { "translations": { + "Provided email-address is too long" : "Надана адреса ел. пошти задовга", "User-Session unexpectedly expired" : "Термін дії сесії користувача несподівано завершився", "Provided email-address is not valid" : "Надано некоректну адресу електронної пошти ", - "%s has published the calendar »%s«" : "%s опублікував календар »%s«", - "Unexpected error sending email. Please contact your administrator." : "Виникла несподівана помилка під час надсилання електронного повідомлення. Будь-ласка повідомте Вашого адміністратора.", + "%s has published the calendar »%s«" : "%s опублікував календар \"%s\"", + "Unexpected error sending email. Please contact your administrator." : "Виникла несподівана помилка під час надсилання електронного повідомлення. Будь ласка повідомте адміністратора.", "Successfully sent email to %1$s" : "Успішно надіслано лист на адресу %1$s", "Hello," : "Вітаємо,", - "We wanted to inform you that %s has published the calendar »%s«." : "We wanted to inform you that %s has published the calendar »%s.", - "Open »%s«" : "Відкрити 1%s", - "Cheers!" : "На все добре!", + "We wanted to inform you that %s has published the calendar »%s«." : "Дозвольте повідомити вас, що%s опублікував календар \"%s\".", + "Open »%s«" : "Відкрити \"%s\"", + "Cheers!" : "Щасти!", "Upcoming events" : "Майбутні події", + "No more events today" : "Подій на сьогодні не заплановано", + "No upcoming events" : "Відсутні майбутні події", + "More events" : "Більше подій", + "%1$s with %2$s" : "%1$s з %2$s", + "Calendar" : "Календар", + "New booking {booking}" : "Нове резервування {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) запросив вас на зустріч \"{config_display_name}\", яка відбудеться {date_time}.", "Appointments" : "Зустрічі", + "Schedule appointment \"%s\"" : "Запланувати зустріч \"%s\"", + "Schedule an appointment" : "Запланувати зустріч", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : "Підготуватися до %s", + "Follow up for %s" : "Слідкувати за %s", + "Your appointment \"%s\" with %s needs confirmation" : "Вашу зустріч \"%s\" з %s потрібно підтвердити", + "Dear %s, please confirm your booking" : "Шановний(а) %s, будь ласка, підтвердіть ваше резервування", "Confirm" : "Підтвердити", + "Appointment with:" : "Зустріч з:", + "Description:" : "Опис:", + "This confirmation link expires in %s hours." : "Термін дії посилання для підтвердженння спливає за %sгодин.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Якщо ви все ж бажаєте скасувати зустріч, будь ласка, сконтактуйте з організатором зустрічі, для цього надішліть відповідь на цей лист або відвідайте сторінку профілю.", + "Your appointment \"%s\" with %s has been accepted" : "Вашу зустріч \"%s\" з %s було прийнято.", + "Dear %s, your booking has been accepted." : "Шановний(а) %s, ваше резервування було прийнято.", + "Appointment for:" : "Запрошення на зустріч для:", "Date:" : "Дата:", + "You will receive a link with the confirmation email" : "Ви отримаєте посилання з підтвердженням на електронну пошту", "Where:" : "Місце:", - "Description:" : "Опис:", - "Calendar" : "Календар", - "A Calendar app for Nextcloud" : "Звстосунок \"Календар\" для Nextcloud", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Застосунок Календар - це інтерфейс користувача до сервера Nextcloud CalDAV. З легкістю редагуйте та синхронізуйте події між вашими пристроями та Nextcloud онлайн.\n\n* 🚀 **Інтеграція з іншими застосунками Nextcloud!** В даний час - Контакти. Інші - скоро.\n* 🌐 **Підтримка WebCal!** Бажаєте бачити у своєму календарі дати матчів вашої улюбленої команди? Без проблем!\n* 🙋 **Учасники!** Запросіть інших людей до участі у вашіх подіях\n* ⌚️ **Розклад:** Побачте коли ваші учасники доступні для зустрічі\n* ⏰ **Нагадування!** Отримайте сигнал-нагадування про подію у вашому браузері і за допомогою електронної пошти.\n* 🔍 Пошук! Знайдіть події легко.\n* ☑️ Завдання! Перегляньте завдання з терміном виконання безпосередньо в календарі\n* 🙈 **Ми не винаходимо колесо знову!** Базується на чудовій [бібліотеці c-dav](https://github.com/nextcloud/cdav-library), а також бібліотеках [ical.js](https://github.com/mozilla-comm/ical.js) і [fullcalendar](https://github.com/fullcalendar/fullcalendar).", - "Previous day" : "Попередій день", + "Comment:" : "Коментар:", + "You have a new appointment booking \"%s\" from %s" : "%s надіслав вам запрошення на зустріч \"%s\"", + "Dear %s, %s (%s) booked an appointment with you." : "Шановний(-а) %s! %s (%s) запросив вас на зустріч.", + "A Calendar app for Nextcloud" : "Застосунок \"Календар\" для Nextcloud", + "Previous day" : "Вчора", "Previous week" : "Попередній тиждень", + "Previous year" : "Назад", "Previous month" : "Попередній місяць", - "Next day" : "Наступний день", + "Next day" : "Завтра", "Next week" : "Наступний тиждень", + "Next year" : "Наступний рік", "Next month" : "Наступний місяць", - "New event" : "Нова подія", + "Create new event" : "Створити нову подію", + "Event" : "Подія", "Today" : "Сьогодні", "Day" : "День", "Week" : "Тиждень", "Month" : "Місяць", + "Year" : "Рік", "List" : "Список", + "Appointment link was copied to clipboard" : "Посилання на зустріч скопійовано до буферу обміну", + "Appointment link could not be copied to clipboard" : "Неможливо скопіювати посилання до буферу обміну", "Preview" : "Перегляд", - "Copy link" : "Скопіювати посилання", + "Copy link" : "Копіювати посилання", "Edit" : "Редагувати", "Delete" : "Вилучити", + "Appointment schedules" : "Заплановані зустрічі", + "Create new" : "Додати", + "Disable calendar \"{calendar}\"" : "Вимкнути календар \"{calendar}\"", + "Disable untitled calendar" : "Вимкнути календар без назви", + "Enable calendar \"{calendar}\"" : "Увімкнути календар \"{calendar}\"", + "Enable untitled calendar" : "Увімкнути календар без назви", + "An error occurred, unable to change visibility of the calendar." : "Помилка: неможливо змінити подання календаря.", "Untitled calendar" : "Календар без назви", - "Edit name" : "Редагувати назву", - "Saving name …" : "Збереження назви ...", - "Edit color" : "Редагувати колір", - "Saving color …" : "Збереження кольору ...", - "Copy private link" : "Копіювати приватне посилання", - "Export" : "Експорт", - "Unshare from me" : "Від'єднати від мене", - "An error occurred, unable to change visibility of the calendar." : "Помилка: неможливо змінити відображення календаря.", - "An error occurred, unable to delete the calendar." : "Помилка: неможливо вилучити календар.", - "Calendar link copied to clipboard." : "Посилання на календар скопійовано", - "Calendar link could not be copied to clipboard." : "Неможливо копіювати посилання на календар.", - "An error occurred, unable to rename the calendar." : "Сталася помилка, неможливо перейменувати календар.", - "An error occurred, unable to change the calendar's color." : "Сталася помилка, неможливо змінити колір календаря.", + "Shared with you by" : "Поділилися з вами", + "Edit and share calendar" : "Редагувати та поділитися календарем", + "Edit calendar" : "Редагувати календар", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Поширення календаря буде відмінено через {countdown} секунду","Поширення календаря буде відмінено через {countdown} секунд","Поширення календаря буде відмінено через {countdown} секунд","Календар буде від'єднано за {countdown} секунд"], - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Календар буде видалено через {countdown} секунду","Календар буде видалено через {countdown} секунд","Календар буде видалено через {countdown} секунд","Календар буде вилучено через {countdown} секунд"], - "Share link" : "Поширити посилання", - "Publish calendar" : "Опублікувати календар", - "Publishing calendar" : "Публікую календар", - "Copy public link" : "Копіювати публічне посилання", - "Send link to calendar via email" : "Відправити посилання на календар за допомогою електронної пошти", - "Enter one address" : "Зазначте одну адресу", - "Sending email …" : "Надсилаю повідомлення ...", + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Календар буде вилучено через {countdown} секунду","Календар буде вилучено через {countdown} секунди","Календар буде вилучено через {countdown} секунд","Календар буде вилучено через {countdown} секунд"], + "An error occurred, unable to create the calendar." : "Помилка: неможливо створити календар.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Будь ласка, зазначте правильне посилання (має починатися з http://, https://, webcal:// або webcals://)", + "Calendars" : "Календарі", + "Add new" : "Створити", + "New calendar" : "Додати календар", + "Name for new calendar" : "Назва нового календаря", + "Creating calendar …" : "Створення календаря...", + "New calendar with task list" : "Новий календар зі списком завдань", + "New subscription from link (read-only)" : "Підписатися на календар (лише для читання)", + "Creating subscription …" : "Створення підписки...", + "Add public holiday calendar" : "Додати календар публічних свят", + "Add custom public calendar" : "Додати власний публічний календар", + "Calendar link copied to clipboard." : "Посилання на календар скопійовано.", + "Calendar link could not be copied to clipboard." : "Неможливо копіювати посилання на календар.", "Copy subscription link" : "Копіювати посилання на підписку", - "Copying link …" : "Копіюю посилання ...", - "Copied link" : "Копія посилання", + "Copying link …" : "Копіюю посилання...", + "Copied link" : "Скопійоване посилання", "Could not copy link" : "Не вдалося cкопіювати посилання", - "Copy embedding code" : "Копіювати код вбудування", - "Copying code …" : "Копіюю код ...", - "Copied code" : "Код скопійовано", - "Could not copy code" : "Не вдалося скопіювати код", - "Delete share link" : "Вилучити посилання для спільного використання", - "Deleting share link …" : "Вилучення посилання для спільного використання...", - "An error occurred, unable to publish calendar." : "Сталася помилка, неможливо опублікувати календар.", - "An error occurred, unable to send email." : "Сталася помилка, неможливо відправити повідомлення.", + "Export" : "Експорт", + "Untitled item" : "Елемент без назви", + "Unknown calendar" : "Невідомий календар", + "Could not load deleted calendars and objects" : "Не вдалося завантажити календарі та об’єкти, які було раніше вилучено", + "Could not delete calendar or event" : "Не вдалося вилучити календар або подію", + "Could not restore calendar or event" : "Не вдалося відновити календар або подію", + "Do you really want to empty the trash bin?" : "Ви дійсно хочете очистити кошик?", + "Empty trash bin" : "Очистити кошик", + "Trash bin" : "Кошик", + "Loading deleted items." : "Завантажую вилучені елементи.", + "You do not have any deleted items." : "У вас відсутні елементи, які було вилучено.", + "Name" : "Назва", + "Deleted" : "Вилучено", + "Restore" : "Відновити", + "Delete permanently" : "Вилучити назавжди", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["Вміст кошику буде очищено через {numDays} день","Вміст кошику буде очищено через {numDays} дні","Вміст кошику буде очищено через {numDays} днів","Вміст кошику буде очищено через {numDays} днів"], + "Could not update calendar order." : "Не вдалося оновити порядок подання календарів.", + "Shared calendars" : "Спільні календарі", + "Deck" : "Колода", + "Hidden" : "Прихований", + "Internal link" : "Внутрішнє посилання", + "A private link that can be used with external clients" : "Приватне посилання, яке можна буде використати із зовнішніми клієнтами.", + "Copy internal link" : "Копіювати посилання", + "An error occurred, unable to publish calendar." : "Помилка: неможливо опублікувати календар.", + "An error occurred, unable to send email." : "Помилка: неможливо надіслати повідомлення.", "Embed code copied to clipboard." : "Код вбудування cкопійовано.", - "Embed code could not be copied to clipboard." : "Неможливо копіювати код вбудування.", + "Embed code could not be copied to clipboard." : "Неможливо скопіювати код вбудування.", "Unpublishing calendar failed" : "Не вдалося скасувати публікацію календаря", - "Share with users or groups" : "Поділитися з користувачем або групою", - "No users or groups" : "Жодного користувача або групи", + "Share link" : "Посилання спільного доступу", + "Copy public link" : "Копіювати публічне посилання", + "Send link to calendar via email" : "Надіслати посилання на календар електронною поштою", + "Enter one address" : "Зазначте одну адресу", + "Sending email …" : "Надсилаю повідомлення...", + "Copy embedding code" : "Копіювати код вбудування", + "Copying code …" : "Копіюю код...", + "Copied code" : "Скопійований код", + "Could not copy code" : "Не вдалося скопіювати код", + "Delete share link" : "Вилучити посилання спільного доступу", + "Deleting share link …" : "Вилучення посилання спільного доступу...", + "{teamDisplayName} (Team)" : "{teamDisplayName} (команда)", + "An error occurred while unsharing the calendar." : "Помилка під час скасування доступу до календаря.", + "An error occurred, unable to change the permission of the share." : "Помилка: неможливо змінити права доступу до спільного ресурсу.", "can edit" : "може редагувати", "Unshare with {displayName}" : "Забрати спільний доступ з {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Сталася помилка, неможливо змінити поширення календаря.", - "An error occurred, unable to change the permission of the share." : "Сталася помилка, неможливо змінити права доступу до поширення.", - "+ New calendar" : "+ Новий календар", - "New calendar" : "Новий календар", - "Creating calendar …" : "Створюю календар ...", - "New calendar with task list" : "Новий календар зі списком завдань", - "New subscription from link (read-only)" : "Нова підписка з посилання (лише для читання)", - "Creating subscription …" : "Створюю підписку ...", - "An error occurred, unable to create the calendar." : "Сталася помилка, неможливо створити календар.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Будь-ласка, введіть корректне посилання (повинно починатися на http://, https://, webcal:// або webcals://)", - "Trash bin" : "Кошик для сміття", - "Loading deleted elements." : "Завантаження видалених елементів", - "You do not have any deleted elements." : "Ви не маєте жодних видалених елементів", - "Name" : "Ім'я", - "Deleted" : "вилучено", - "Restore" : "Відновити", - "Delete permanently" : "Видалити назавжди", - "Empty trash bin" : "Очистити кошик", - "Untitled element" : "Елемент без назви", - "Could not load deleted calendars and objects" : "Не вдалося завантажити видалені календарі та об’єкти", - "Could not restore calendar or event" : "Не вдалося відновити календар або подію", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Елементи у кошику будуть видалені через {numDays} день","Елементи у кошику будуть видалені через {numDays} дні","Елементи у кошику будуть видалені через {numDays} днів","Елементи у кошику будуть видалені через {numDays} днів"], - "Could not update calendar order." : "Не вдалося оновити порядок календаря.", + "Share with users or groups" : "Поділитися з користувачем або групою", + "No users or groups" : "Відсутні користувачі або групи", + "Failed to save calendar name and color" : "Не вдалося зберегти назву календаря та колір", + "Calendar name …" : "Назва календаря...", + "Never show me as busy (set this calendar to transparent)" : "Ніколи не показувати мою зайнятість (зробити календар прозорим)", + "Share calendar" : "Поділитися календарем", + "Unshare from me" : "Вилучити доступ для мене", + "Save" : "Зберегти", "Import calendars" : "Імпортувати календарі", - "Please select a calendar to import into …" : "Будь-ласка, оберіть у який календар виконати імпорт ...", + "Please select a calendar to import into …" : "Будь ласка, оберіть до якого календаря імпортувати дані...", "Filename" : "Ім'я файлу", - "Calendar to import into" : "Імпортувати у цей календар", + "Calendar to import into" : "Імпортувати до цього календаря", "Cancel" : "Скасувати", "_Import calendar_::_Import calendars_" : ["Імпортувати календар","Імпортувати календарі","Імпортувати календарі","Імпортувати календарі"], + "Select the default location for attachments" : "Виберіть типове розташування для долучених файлів", + "Pick" : "Вибрати", + "Invalid location selected" : "Вибрано недійсне місце розташування", + "Attachments folder successfully saved." : "Каталог для долучених файлів успішно збережено", + "Error on saving attachments folder." : "Помилка під час збереження каталогу для долучених файлів", + "Default attachments location" : "Типове розташування для долучених файлів", "{filename} could not be parsed" : "Неможливо обробити {filename}", - "No valid files found, aborting import" : "Відсутні дійсні файли, імпортування скасовано", - "Import partially failed. Imported {accepted} out of {total}." : "Імпорт частково не вдався. Імпортовано {accepted} з {total}", + "No valid files found, aborting import" : "Відсутні дійсні файли, імпорт даних скасовано", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["Успішно вставлено %n подію","Успішно вставлено %n події","Успішно вставлено %n подій","Успішно вставлено %n подій"], + "Import partially failed. Imported {accepted} out of {total}." : "Імпорт частково не вдався. Імпортовано {accepted} із {total}", "Automatic" : "Автоматично", "Automatic ({detected})" : "Автоматично ({detected})", "New setting was not saved successfully." : "Нові налаштування не було збережено.", - "Shortcut overview" : "Перегляд скорочень", - "or" : "або", "Navigation" : "Навігація", "Previous period" : "Попередній період", "Next period" : "Наступний період", @@ -119,152 +171,340 @@ "Day view" : "День", "Week view" : "Тиждень", "Month view" : "Місяць", + "Year view" : "Вперед", "List view" : "Перелік", "Actions" : "Дії", - "Create event" : "Додати подію", + "Create event" : "Створити подію", "Show shortcuts" : "Показати скорочення", - "Enable birthday calendar" : "Увімкнути календар днів народження", + "Editor" : "Редактор", + "Close editor" : "Закрити редактор", + "Save edited event" : "Закрити відредаговану подію", + "Delete edited event" : "Вилучити відредаговану подію", + "Duplicate event" : "Створити копію події", + "Shortcut overview" : "Перегляд скорочень", + "or" : "або", + "Calendar settings" : "Налаштування", + "At event start" : "З початком події", + "No reminder" : "Без нагадування", + "Failed to save default calendar" : "Не вдалося зберегти типовий календар", + "CalDAV link copied to clipboard." : "Посилання CalDAV скопійовано.", + "CalDAV link could not be copied to clipboard." : "Неможливо копіювати посилання CalDAV.", + "Enable birthday calendar" : "Увімкнути календар дат народжень", "Show tasks in calendar" : "Показувати завдання у календарі", "Enable simplified editor" : "Увімкнути спрощений редактор", - "Limit visible events per view" : "Обмежити подання подій", + "Limit the number of events displayed in the monthly view" : "Частково показувати події у щомісячному поданні", "Show weekends" : "Показувати вихідні дні", "Show week numbers" : "Показувати номери тижнів", - "Copy primary CalDAV address" : "Копіювати адресу основного CalDAV", - "Copy iOS/macOS CalDAV address" : "Ккопіювати адресу iOS/macOS CalDAV", - "Show keyboard shortcuts" : "Показати гарячі клавіші", - "CalDAV link copied to clipboard." : "Посилання CalDAV скопійовано.", - "CalDAV link could not be copied to clipboard." : "Неможливо копіювати посилання CalDAV.", + "Time increments" : "Крок", + "Default calendar for incoming invitations" : "Типовий календар для вхідних запрошень", + "Default reminder" : "Нагадування", + "Copy primary CalDAV address" : "Копіювати основну адресу CalDAV", + "Copy iOS/macOS CalDAV address" : "Копіювати адресу CalDAV для iOS/macOS ", + "Personal availability settings" : "Налаштування зайнятості", + "Show keyboard shortcuts" : "Показати клавіатурні скорочення", + "Appointment schedule successfully created" : "Графік зустрічей успішно створено", + "Appointment schedule successfully updated" : "Графік зустрічей успішно оновлено", + "_{duration} minute_::_{duration} minutes_" : ["{duration} хвилина","{duration} хвилини","{duration} хвилин","{duration} хвилин"], + "0 minutes" : "0 хвилин", + "_{duration} hour_::_{duration} hours_" : ["{duration} година","{duration} години","{duration} годин","{duration} годин"], + "_{duration} day_::_{duration} days_" : ["{duration} день","{duration} дні","{duration} днів","{duration} днів"], + "_{duration} week_::_{duration} weeks_" : ["{duration} тиждень","{duration} тижні","{duration} тижнів","{duration} тижнів"], + "_{duration} month_::_{duration} months_" : ["{duration} місяць","{duration} місяці","{duration} місяців","{duration} місяців"], + "_{duration} year_::_{duration} years_" : ["{duration} рік","{duration} роки","{duration} років","{duration} років"], + "To configure appointments, add your email address in personal settings." : "Для налаштування зустрічей потрібно додати вашу електронну адресу у особистих налаштуваннях.", + "Public – shown on the profile page" : "Показуватиметься на сторінці профілю", + "Private – only accessible via secret link" : "Доступно тільки через приватне посилання", + "Appointment schedule saved" : "Запрошення призначено", + "Create appointment schedule" : "Створити графік зустрічей", + "Edit appointment schedule" : "Редагувати графік зустрічей", + "Update" : "Оновити", + "Appointment name" : "Назва зустрічі", "Location" : "Місце", + "Create a Talk room" : "Створіть кімнату для розмов", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Унікальне посилання буде згенеровано для кожної заброньованої зустрічі та надіслано на електронну пошту з підтвердженням.", "Description" : "Опис", + "Visibility" : "Видимість", + "Duration" : "Тривалість", + "Increments" : "Крок", + "Additional calendars to check for conflicts" : "Додаткові календарі, які потрібно перевірити на конфлікти", + "Pick time ranges where appointments are allowed" : "Виберіть часові проміжки для запрошення на зустріч", "to" : "до", + "Delete slot" : "Вилучити часовий проміжок", + "No times set" : "Не вибрано час", "Add" : "Додати", - "Monday" : "понеділок", + "Monday" : "Понеділок", "Tuesday" : "Вівторок", "Wednesday" : "Середа", "Thursday" : "Четвер", "Friday" : "П'ятниця", "Saturday" : "Субота", "Sunday" : "Неділя", - "Save" : "Зберегти", - "Update" : "Оновити", + "Weekdays" : "Дні тижня", + "Add time before and after the event" : "Додайте часовий проміжок до та після події", + "Before the event" : "До події", + "After the event" : "Після події", + "Planning restrictions" : "Умови участі", + "Minimum time before next available slot" : "Найменший час перед наступним можливим часовим проміжком", + "Max slots per day" : "Максимальна кількість часових проміжків на день", + "Limit how far in the future appointments can be booked" : "Обмежити, наскільки далеко у майбутньому можна призначити зустріч", + "It seems a rate limit has been reached. Please try again later." : "Схоже, що вичерпано максимальну кількість спроб. Спробуйте пізніше.", + "Please confirm your reservation" : "Будь ласка, підтвердіть резервування", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Ми надіслали вам лист з докладною інформацією щодо зустрічі. Просимо підтвердити вашу участь - для цього перейдіть за наведеним у листі посиланням. Ви можете просто закрити цю сторінку.", + "Your name" : "Ваше ім'я", "Your email address" : "Ваша адреса електронної пошти", - "before at" : "до часу", + "Please share anything that will help prepare for our meeting" : "Будь ласка, поділіться корисними матер'ялами, які допоможуть підготоуватися до нашої зустрічі", + "Could not book the appointment. Please try again later or contact the organizer." : "Не вдалося зарезервувати зустріч. Спробуйте пізніше або сконтактуйте з організатором.", + "Back" : "Назад", + "Book appointment" : "Зарезервувати зустріч", + "Error fetching Talk conversations." : "Помилка під час отримання розмов Talk.", + "Conversation does not have a valid URL." : "Ця розмова Talk не містить дійсної адреси URL.", + "Successfully added Talk conversation link to location." : "Успішно додано посилання на розмову Talk до розташування", + "Successfully added Talk conversation link to description." : "Успішно додано посилання на розмову Talk до опису", + "Failed to apply Talk room." : "Помилка під час застосування кімнати Talk.", + "Error creating Talk conversation" : "Помилка під час створення розмови Talk", + "Select a Talk Room" : "Вибрати кімнату для розмов Talk", + "Add Talk conversation" : "Додати розмову Talk", + "Fetching Talk rooms…" : "Отримання кімнат Talk...", + "No Talk room available" : "Відсутні кімнати Talk", + "Create a new conversation" : "Створити нову розмову", + "Select conversation" : "Вибрати розмову", + "on" : "о", + "at" : "о", + "before at" : "до о", "Notification" : "Сповіщення", - "Email" : "Email", + "Email" : "Ел.пошта", "Audio notification" : "Звукове сповіщення", "Other notification" : "Інше сповіщення", - "Relative to event" : "Відносно події", - "On date" : "У дату", + "Relative to event" : "Щодо події", + "On date" : "Дата", "Edit time" : "Редагувати час", "Save time" : "Зберегти час", "Remove reminder" : "Прибрати нагадування", - "on" : "у", - "at" : "о", - "+ Add reminder" : "+ Додати нагадування", - "_second_::_seconds_" : ["секунда","секунд","секунд","секунди"], - "_minute_::_minutes_" : ["хвилина","хвилин","хвилин","хвилини"], - "_hour_::_hours_" : ["година","годин","годин","години"], - "_day_::_days_" : ["день","днів","днів","дні"], - "_week_::_weeks_" : ["тиждень","тижнів","тижнів","тижні"], + "Add reminder" : "Додати нагадування", + "seconds" : "секунд", + "minutes" : "хвилин", + "hours" : "годин", + "days" : "днів", + "weeks" : "тижнів", + "Choose a file to add as attachment" : "Виберіть файл для вкладення", + "Choose a file to share as a link" : "Виберіть файл, яким ви поділитеся через посилання", + "Attachment {name} already exist!" : "Такий долучений файл {name} вже присутній!", + "Could not upload attachment(s)" : "Не вдалося завантажити вкладення", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "Ви намагаєтеся завантажити файл. Перевірте ім'я файлу перед відкриттям. Справді продовжити?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "Ви збираєтеся перейти на сайт {host}. Продовжити? Посилання: {link}", + "Proceed" : "Продовжити", + "No attachments" : "Без вкладень", + "Add from Files" : "Додати з файлів", + "Upload from device" : "Завантажити з пристрою", + "Delete file" : "Вилучити файл", + "Confirmation" : "Підтвердження", + "_{count} attachment_::_{count} attachments_" : ["{count} долучений файл","{count} долучені файли","{count} долучених файлів","{count} долучених файлів"], + "Suggested" : "Запропоновано", "Available" : "Доступно", + "Invitation accepted" : "Запрошення прийнято", + "Accepted {organizerName}'s invitation" : "Прийнято запрошення від {organizerName}", + "Participation marked as tentative" : "Участь можлива", + "Invitation is delegated" : "Запрошення делеговано", + "Not available" : "Не доступно", + "Invitation declined" : "Запрошення відхилено", + "Declined {organizerName}'s invitation" : "Відхилене від {organizerName} запрошення ", + "Availability will be checked" : "Доступність буде перевірено", + "Invitation will be sent" : "Запрошення буде надіслано", + "Failed to check availability" : "Не вдалося перевірити доступність", + "Failed to deliver invitation" : "Не вдалося доставити запрошення", + "Awaiting response" : "Очікується відповідь", + "Checking availability" : "Перевірка доступності", + "Has not responded to {organizerName}'s invitation yet" : "Ще не відповів на запрошення від {organizerName}", + "Suggested times" : "Пропонований час", + "chairperson" : "модератор", + "required participant" : "обов'язковий учасник(-ця)", + "non-participant" : "гість", + "optional participant" : "необов'язковий учасник(-ця)", + "{organizer} (organizer)" : "{organizer} (організатор)", + "{attendee} ({role})" : "{attendee} ({role})", "Availability of attendees, resources and rooms" : "Доступність учасників, ресурсів і приміщень", + "Suggestion accepted" : "Пропозицію прийнято", + "Previous date" : "Попередня дата", + "Next date" : "Наступна дата", + "Legend" : "Легенда", + "Out of office" : "Недоступно", + "Attendees:" : "Учасники:", + "Done" : "Готово", + "Search room" : "Шукати кімнату", + "Room name" : "Назва кімнати", + "Check room availability" : "Перевірити доступність кімнати", "Free" : "Вільно", "Busy (tentative)" : "Зайнято (попередньо)", "Busy" : "Зайнято", - "Out of office" : "Поза межами офісу", "Unknown" : "Невідомо", + "Find a time" : "Знайти час", + "The invitation has been accepted successfully." : "Запрошення успішно прийнято.", + "Failed to accept the invitation." : "Не вдалося прийняти запрошення.", + "The invitation has been declined successfully." : "Запрошення відхилено.", + "Failed to decline the invitation." : "Не вадлося відхилити запрошення.", + "Your participation has been marked as tentative." : "Вашу участь позначено як можливу.", + "Failed to set the participation status to tentative." : "Не вдалося встановити статус \"можливо\".", "Accept" : "Прийняти", "Decline" : "Відхилити", - "Tentative" : "Попередній", - "Create Talk room for this event" : "Створити Кімнату переговорів для цієї події", - "Show busy times" : "Показати зайнятий час", + "Tentative" : "Можливо так", "No attendees yet" : "Поки жодного учасника", - "Successfully appended link to talk room to description." : "Успішно додано посилання на Кімнату переговорів до опису події.", - "Error creating Talk room" : "Помилка при створенні Кімнати переговорів", - "Send email" : "Відправити лист", - "Chairperson" : "Голова зборів", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} запрошено, {confirmedCount} підтверджено", + "Please add at least one attendee to use the \"Find a time\" feature." : "Додайте принаймні одного учасника, щоби скористатися функціональністю \"Визначити час\"", + "Successfully appended link to talk room to location." : "Успішно додано посилання на розташування у кімнаті спілкування ", + "Successfully appended link to talk room to description." : "Успішно додано посилання на віртуальну кімнату Talk до опису події.", + "Error creating Talk room" : "Помилка при створенні віртуальної кімнати Talk", + "Attendees" : "Учасники", + "_%n more guest_::_%n more guests_" : ["Ще %n гість","Ще %n гостей","Ще %n гостей","Ще %n гостей"], + "Remove group" : "Вилучити групу", + "Remove attendee" : "Вилучити учасника", + "Request reply" : "Запит на відповідь", + "Chairperson" : "Модератор", "Required participant" : "Обов'язковий учасник", "Optional participant" : "Необов'язковий учасник", - "Non-participant" : "Не-учасник", - "Remove attendee" : "Вилучити учасника", - "Search for emails, users or contacts" : "Пошук листів, користувачів або контактів", - "No match found" : "Жодного не знайдено", + "Non-participant" : "Неучасник", + "_%n member_::_%n members_" : ["%n учасник","%n учасника","%n учасників","%n учасників"], + "Search for emails, users, contacts, contact groups or teams" : "Шукати у ел. листах, користувачах, контактах, групах контактів чи командах", + "No match found" : "Збігів не знайдено", + "Note that members of circles get invited but are not synced yet." : "Зверніть увагу, що учасники кіл отримують запрошення, але поки ще не синхронізовані.", + "Note that members of contact groups get invited but are not synced yet." : "Учасників груп контактів було запрошено, але ще не синхронізовано.", "(organizer)" : "(організатор)", + "Make {label} the organizer" : "Зробити {label} організатором", + "Make {label} the organizer and attend" : "Зробити {label} організатором та взяти участь", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Для надсилання запрошень та отримання відповіді, [linkopen]додайте ел.адресу в особистих налаштуваннях[linkclose].", "Remove color" : "Вилучити колір", "Event title" : "Назва події", - "All day" : "Цілий день", - "from {startDate}" : "з {startDate}", - "from {startDate} at {startTime}" : "до {startDate} о {startTime}", - "to {endDate}" : "до {endDate}", - "to {endDate} at {endTime}" : "до {endDate} о {endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Не вдалося змінити цілодобове налаштування для подій, які є повторювальними подіями.", + "From" : "Від", + "To" : "Кому", "Repeat" : "Повторювати", - "End repeat" : "Закінчення повторів", - "Select to end repeat" : "Вибрати до кінця повторів", - "never" : "ніколи", - "on date" : "у дату", - "after" : "після", - "_time_::_times_" : ["раз","разів","разів","рази"], + "Repeat event" : "Повторювати подію", + "_time_::_times_" : ["раз","разів","разів","разів"], + "never" : "завжди", + "on date" : "дата", + "after" : "опісля", + "End repeat" : "Повторювати до", + "Select to end repeat" : "Вибрати, щоби завершити повторення", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Ця подія є винятком з набору повторювальних подій. Ви не можете застосувати до нього правило повторення.", "first" : "перший", - "third" : "третій", - "fourth" : "четвертий", - "fifth" : "п'ятий", - "second to last" : "з другого до останнього", - "last" : "останній", - "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Зміни до повторюваного набору застосуються лише до поточного і наступних випадків.", - "Repeat every" : "Повторювати кожні", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Зміни до правила повторення стосуватимуться лише поточної та подальших подій.", + "Repeat every" : "Повторювати кожний", "By day of the month" : "За днем місяця", "On the" : "У", + "_day_::_days_" : ["день","днів","днів","дні"], + "_week_::_weeks_" : ["тиждень","тижнів","тижнів","тижні"], "_month_::_months_" : ["місяць","місяців","місяців","місяці"], "_year_::_years_" : ["рік","років","років","роки"], + "On specific day" : "Певного дня", "weekday" : "робочі дні", "weekend day" : "вихідні дні", - "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Налаштування повторюванності даної події не повністю підтримуються у Nextcloud. В разі редагування налаштувань повторюваності деякі з повторів можуть зникнути.", - "More" : "Більше", - "Update this occurrence" : "Оновити даний повтор", - "Update this and all future" : "Оновити цей і всі наступні", + "Does not repeat" : "Не повторюється", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Правила повторювання ціє події не повністю підтримуються у Nextcloud. Після зміни налаштувань деякі повторення можуть зникнути.", + "No rooms or resources yet" : "Поки відсутні кімнати та ресурси", + "Resources" : "Ресурси", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} місце","{seatingCapacity} місця","{seatingCapacity} місць","{seatingCapacity} місць"], + "Add resource" : "Додати ресурс", + "Has a projector" : "Має проєктор", + "Has a whiteboard" : "Має білу дошку", + "Wheelchair accessible" : "Доступ для інвалідних візків", + "Remove resource" : "Вилучити ресурс", + "Search for resources or rooms" : "Пошук ресурсів або кімнат", + "available" : "доступне", + "unavailable" : "недоступне", + "Show all rooms" : "Показати всі кімнати", + "Projector" : "Проєктор", + "Whiteboard" : "Біла дошка", + "Room type" : "Вид кімнати", + "Any" : "Будь-яка", + "Minimum seating capacity" : "Мінімальна кількість місць", + "More details" : "Докладно", + "Update this and all future" : "Оновити цю подію та всі наступні", + "Update this occurrence" : "Оновити це повторення", "Public calendar does not exist" : "Публічний календар не існує", - "Maybe the share was deleted or has expired?" : "Можливо спільний доступ було закрито або застаріло?", - "Pick a time" : "Вибрати час", - "Pick a date" : "Вибрати дату", - "from {formattedDate}" : "з {formattedDate}", + "Maybe the share was deleted or has expired?" : "Можливо спільний доступ було скасовано або він більше не дійсний?", + "from {formattedDate}" : "від {formattedDate}", "to {formattedDate}" : "до {formattedDate}", "on {formattedDate}" : "{formattedDate}", - "from {formattedDate} at {formattedTime}" : "з {formattedDate} о {formattedTime}", + "from {formattedDate} at {formattedTime}" : "від {formattedDate} о {formattedTime}", "to {formattedDate} at {formattedTime}" : "до {formattedDate} о {formattedTime}", "on {formattedDate} at {formattedTime}" : "{formattedDate} о {formattedTime}", "{formattedDate} at {formattedTime}" : "{formattedDate} о {formattedTime}", - "Please enter a valid date" : "Будь-ласка вкажіть коректну дату", - "Please enter a valid date and time" : "Будь-ласка вкажіть коректну дату і час", + "Please enter a valid date" : "Будь ласка, зазначте правильну дату", + "Please enter a valid date and time" : "Будь ласка, зазначте правильну дату та час", + "Select a time zone" : "Вибрати часову зону", + "Please select a time zone:" : "Виберіть часову зону:", + "Pick a time" : "Виберіть час", + "Pick a date" : "Виберіть дату", + "Type to search time zone" : "Зазначте часову зону для пошуку", "Global" : "Загальний", + "Holidays in {region}" : "Свята в {region}", + "An error occurred, unable to read public calendars." : "Помилка: не вдалося прочитати публічні календарі.", + "An error occurred, unable to subscribe to calendar." : "Помилка: не вдалося підписатися на календар.", + "Public holiday calendars" : "Публічні календарі свят", + "Public calendars" : "Публічні календарі", + "No valid public calendars configured" : "Не налаштовано жодного дійсного публічного календаря", + "Speak to the server administrator to resolve this issue." : "Зверніться до адміністратора сервера, щоб вирішити цю проблему.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Календарі публічних свят надаються Thunderbird. Календарні дані буде отримано з {website}", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Ці публічні календарі були запропоновані адміністратором сервера. Дані для календаря будуть отримані з відповідного сайту.", + "By {authors}" : "Автор: {authors}", + "Subscribed" : "Підписано", + "Subscribe" : "Підписатися", + "Could not fetch slots" : "Не вдалося отримати часові проміжки", + "Select a date" : "Виберіть дату", + "Select slot" : "Виберіть часовий проміжок", + "No slots available" : "Відсутні доступні часові проміжки", + "The slot for your appointment has been confirmed" : "Час вашої зустрічі підтверджено", + "Appointment Details:" : "Деталі зустрічі:", + "Time:" : "Час:", + "Booked for:" : "Зарезервовано для:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Дякуємо вам. Ваше резервування від {startDate} до {endDate} підтверджено.", + "Book another appointment:" : "Зарезервувати іншу зустріч:", + "See all available slots" : "Дивитися усі доступні дати", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "Проміжок часу для вашого запрошення від {startDate} до {endDate} більше не доступний.", + "Please book a different slot:" : "Зарезервуйте інший часовий проміжок:", + "Book an appointment with {name}" : "Зарезервуйте зустріч з {name}", + "No public appointments found for {name}" : "Не знайдено публічних зустрічей для {name}", "Personal" : "Особисте", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Вашу часову зону автоматично встановлено як UTC.\nСкоріш за все це зумовлено безпековими обмеженнями вашого бравзера.\nБудь ласка, налаштуйте вашу часову зону вручну у налаштуваннях календаря.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Не знайдено налаштування вашої часової зони ({timezoneId}). Не вдалося встановити типову часову зону UTC.\nБудь ласка, змініть вашу часову зону у налаштуваннях та надішліть звіт про помилку.", + "Availability of {displayName}" : "Доступність {displayName}", + "Edit event" : "Редагувати подію", + "Event does not exist" : "Подія відсутня", + "Duplicate" : "Копіювати", "Delete this occurrence" : "Вилучити повторення", - "Delete this and all future" : "Вилучити це й наступні повторення", - "Details" : "Деталі", - "Attendees" : "Учасників", - "Resources" : "Ресурси", + "Delete this and all future" : "Вилучити це та всі подальші повторення", + "All day" : "Весь день", + "Modifications wont get propagated to the organizer and other attendees" : "Зміни не буде надіслано організаторові та іншим учасникам", + "Managing shared access" : "Керування спільним доступом", + "Deny access" : "Заборонити доступ", + "Invite" : "Запросити", + "_User requires access to your file_::_Users require access to your file_" : ["Потрібно надати доступ до вашого файлу.","Потрібно надати доступ до вашого файлу.","Потрібно надати доступ до вашого файлу.","Потрібно надати доступ до вашого файлу."], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Для доступу до застосунку потрібний спільний доступ.","Для доступу до застосунків потрібний спільний доступ.","Для доступу до застосунків потрібний спільний доступ.","Для доступу до застосунків потрібний спільний доступ."], + "Untitled event" : "Подія без назви", "Close" : "Закрити", - "Show more details" : "Збільшити деталізацію", + "Modifications will not get propagated to the organizer and other attendees" : "Зміни не буде надіслано організаторові та іншим учасникам", "Subscribe to {name}" : "Підписатися на {name}", + "Export {name}" : "Експортувати {name}", + "Show availability" : "Показати доступність", "Anniversary" : "Річниця", - "Appointment" : "Призначення", + "Appointment" : "Запрошення на зустріч", "Business" : "Робота", - "Education" : "Навчання", + "Education" : "Освіта", "Holiday" : "Вихідний", "Meeting" : "Зустріч", "Miscellaneous" : "Різне", "Non-working hours" : "Неробочий час", "Not in office" : "Поза офісом", "Phone call" : "Телефонний дзвінок", - "Sick day" : "Лікарняний", + "Sick day" : "Хворію", "Special occasion" : "Особлива подія", - "Travel" : "Подорож", + "Travel" : "Подорожую", "Vacation" : "Відпустка", - "Midnight on the day the event starts" : "Початок доби у день старту події", + "Midnight on the day the event starts" : "Опівночі в день початку події", "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n день до початку події о {formattedHourMinute}","%n днів до початку події о {formattedHourMinute}","%n днів до початку події о {formattedHourMinute}","%n дні до початку події о {formattedHourMinute}"], "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n тиждень до початку події о {formattedHourMinute}","%n тижнів до початку події о {formattedHourMinute}","%n тижнів до початку події о {formattedHourMinute}","%n тижні до початку події о {formattedHourMinute}"], "on the day of the event at {formattedHourMinute}" : "у день події о {formattedHourMinute}", "at the event's start" : "на початку події", - "at the event's end" : "у кінці події", + "at the event's end" : "наприкінці події", "{time} before the event starts" : "{time} до початку події", "{time} before the event ends" : "{time} до завершення події", "{time} after the event starts" : "{time} після початку події", @@ -272,7 +512,6 @@ "on {time}" : "о {time}", "on {time} ({timezoneId})" : "о {time} ({timezoneId})", "Week {number} of {year}" : "Тиждень {number} з {year} року", - "Does not repeat" : "Не повторюється", "Daily" : "Щоденно", "Weekly" : "Щотижня", "Monthly" : "Щомісяця", @@ -284,124 +523,75 @@ "_on {weekday}_::_on {weekdays}_" : ["у {weekdays}","у {weekdays}","у {weekdays}","у {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["у наступний день {dayOfMonthList}","у наступні дні {dayOfMonthList}","у наступні дні {dayOfMonthList}","у наступні дні {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "у {ordinalNumber} {byDaySet}", - "in {monthNames}" : "у {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "у {monthNames} в {dayOfMonthList} ", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "у {monthNames} у {ordinalNumber} {byDaySet}", "until {untilDate}" : "до {untilDate}", "_%n time_::_%n times_" : ["%n раз","%n разів","%n разів","%n рази"], - "Untitled event" : "Подія без назви", + "second" : "другий", + "third" : "третій", + "fourth" : "четвертий", + "fifth" : "п'ятий", + "second to last" : "з другого до останнього", + "last" : "останній", "Untitled task" : "Завдання без назви", - "Please ask your administrator to enable the Tasks App." : "Зверніться до вашого адміністратора щодо увімкнення застосунку Завдання", - "Next" : "Далі", + "Please ask your administrator to enable the Tasks App." : "Зверніться до вашого адміністратора щодо увімкнення застосунку \"Завдання\".", + "You are not allowed to edit this event as an attendee." : "Як учасника у вас відсутній дозвіл на редагування цієї події.", + "W" : "Тиж. ", + "%n more" : "Ще %n подій", + "No events to display" : "Відсутні події для показу", + "All participants declined" : "Всі користувачі відмовилися", + "Please confirm your participation" : "Підтвердіть вашу участь", + "You declined this event" : "Ви відхилили цю подію", + "Your participation is tentative" : "Ваша участь є під питанням", "_+%n more_::_+%n more_" : ["+%n раз ще","+%n разів ще","+%n разів ще","+%n рази ще"], + "No events" : "Відсутні події", + "Create a new event or change the visible time-range" : "Створити нову подію або змінити часовий проміжок", + "Failed to save event" : "Не вдалося зберегти подію", + "It might have been deleted, or there was a typo in a link" : "Можливо, що його було вилучено або міститься помилка у посиланні", + "It might have been deleted, or there was a typo in the link" : "Можливо, що його було вилучено або міститься помилка у посиланні", + "Meeting room" : "Кімната для зустрічей", + "Lecture hall" : "Лекційна зала", + "Seminar room" : "Кімната для занять", "Other" : "Інші", - "When shared show" : "Показувати при поширенні", - "When shared show full event" : "При поширенні показувати подію повністю", - "When shared show only busy" : "При поширенні показувати тільки зайнятий час", - "When shared hide this event" : "При поширенні приховати цю подію", - "The visibility of this event in shared calendars." : "Видимість цієї події при поширенні календаря.", + "When shared show" : "Показувати, якщо у спільному доступі", + "When shared show full event" : "Все про подію, якщо у спільному доступі", + "When shared show only busy" : "Показувати тільки зайнятість, якщо у спільному доступі", + "When shared hide this event" : "Приховати подію, якщо у спільному доступі", + "The visibility of this event in shared calendars." : "Видимість цієї події у спільних календарях.", "Add a location" : "Додати розташування", - "Add a description" : "Додати опис", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Додайте до опису\n\n- Тема зустрічі\n- Питання до розгляду\n- До чого мають підготуватися учасники", "Status" : "Статус", "Confirmed" : "Підтверджено", "Canceled" : "Скасовано", "Confirmation about the overall status of the event." : "Підтвердження загального статусу події.", "Show as" : "Показати як", - "Take this event into account when calculating free-busy information." : "Брати до уваги цю подію при розрахунку інформації про вильний/зайнятий час.", + "Take this event into account when calculating free-busy information." : "Брати до уваги цю подію при розрахунку вільного/зайнятого часу.", "Categories" : "Категорії", - "Categories help you to structure and organize your events." : "Категорії допомагають структурувати і впорядковувати ваші події.", - "Search or add categories" : "Знайти або додати категорії", + "Categories help you to structure and organize your events." : "Категорії допомагають впорядковувати ваші події.", + "Search or add categories" : "Шукати чи додати категорії", "Add this as a new category" : "Додати як нову категорію", - "Custom color" : "Довільний колір", - "Special color of this event. Overrides the calendar-color." : "Особливий колір для цієї події. Перезаписати колір календаря.", - "Chat room for event" : "Кімната спілкування для події", - "Imported {filename}" : "Імпортований {filename}", - "Meditation" : "Медитація", - "Relaxing" : "Розслаблення", - "Relax" : "Розслабитися", - "Presentation" : "Презентація", - "Talk" : "Розмови", - "Camping" : "Лагер", - "Camp" : "Лагер", - "Movie" : "Фільм", - "Cinema" : "Кінотеатр", - "Graduation" : "Випускний", - "Brainstorm" : "Мозговий штурм", - "Review" : "На перегляд", - "Baseball" : "Бейзбол", - "Meet" : "Зустріти", - "Planning" : "Планується", - "Pointing" : "Призначено", - "Retrospective" : "Ретроспектива", - "Office" : "Офіс", - "Contributor week" : "Тиждень постачальника", - "Mail" : "Пошта", - "Soccer" : "Футбол", - "Football" : "Американський футбол", - "Gaming" : "Ігри", - "Drive" : "Їхати автомобілем", - "Bicycle" : "Їхати велосипедом", - "Cycle" : "Їхати колесами", - "Biking" : "Їхати мотоциклом", - "Podcast" : "Подкаст", - "Basketball" : "Баскетбол", - "Fishing" : "Рибалити", - "Hiking" : "Пішки", - "Hike" : "Похід", - "Art" : "Мистецтво", - "Exhibition" : "Виставка", - "Museum" : "Музей", - "Pilates" : "Пілатес", - "Park" : "Парк", - "Studying" : "Навчання", - "Doctor" : "Лікар", - "Health" : "Здоров'я", - "Dentist" : "Стоматолог", - "Interview" : "Співбесіда", - "Training" : "Тренування", - "Practice" : "Практика", - "Sports" : "Спорт", - "Exercise" : "Вправи", - "Work out" : "Тренажери", - "Working out" : "У тренажерному залі", - "Gym" : "Тренажерний зал", - "Barber" : "Перукар", - "Haircut" : "Зачіска", - "Exam" : "Іспит", - "Working" : "Працюю", - "New Years Eve" : "Новий рік", - "NYE" : "Новий рік", - "Fireworks" : "Феєрверки", - "Running" : "Бігаю", - "Go for a run" : "Пробіжка", - "Marathon" : "Марафон", - "Video-conference" : "Відеоконференція", - "Conference-call" : "Конференц-виклик", - "Video-call" : "Відеовиклик", - "Video-chat" : "Відеочат", - "Video-meeting" : "Відеозустріч", - "Call" : "Дзвінок", - "Calling" : "Телефоную", - "Christmas" : "Різдво", - "Conference" : "Конференція", - "Pizza" : "Піцца", - "Travelling" : "Подорожую", - "Journey" : "Подорож", - "Collaborate" : "Співпраця", - "Pair" : "Пара", - "Lecture" : "Лекція", - "Seminar" : "Семінар", - "Photograph" : "Фотограф", - "Party" : "Вечірка", - "Celebration" : "Святкування", - "Celebrate" : "Святкування", - "Birthday" : "День народження", - "Shopping" : "Шопінг", - "Skate" : "Ковзани", - "Skateboard" : "Скейт", - "Wine tasting" : "Дегустація", - "Golf" : "Гольф", - "Dinner" : "Вечеря", - "Lunch" : "Обід", - "User not found" : "Користувача не знайдено" + "Custom color" : "Власний колір", + "Special color of this event. Overrides the calendar-color." : "Власний колір для цієї події. Перезаписати колір календаря.", + "Error while sharing file" : "Помилка під час надання спільного доступу до файлу", + "Error while sharing file with user" : "Помилка під час надання доступу користувачеві", + "Error creating a folder {folder}" : "Помилка під час надання створення каталогу {folder}", + "Attachment {fileName} already exists!" : "Долучений файл {filename} вже присутній!", + "Attachment {fileName} added!" : "Вкладення {fileName} додано! ", + "An error occurred during uploading file {fileName}" : "Помилка під час завантаження файлу {fileName}", + "An error occurred during getting file information" : "Помилка під час отримання інформації про файл", + "Talk conversation for event" : "Розмова Talk для події", + "An error occurred, unable to delete the calendar." : "Помилка: неможливо вилучити календар.", + "Imported {filename}" : "Імпортовано {filename}", + "This is an event reminder." : "Це нагадування про подію.", + "Error while parsing a PROPFIND error" : "Помилка під час обробки помилки PROPFIND", + "Appointment not found" : "Запрошення на зустріч не знайдено", + "User not found" : "Користувача не знайдено", + "Reminder" : "Нагадування", + "+ Add reminder" : "+ Додати нагадування", + "Select automatic slot" : "Виберіть автоматичний проміжок", + "with" : "із", + "Available times:" : "Доступні проміжки:", + "Suggestions" : "Пропозиції", + "Details" : "Деталі" },"pluralForm" :"nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);" } \ No newline at end of file diff --git a/l10n/ur_PK.js b/l10n/ur_PK.js index a3270e36e85b3cad6e349eec7b57b4b1905196c9..e79ed3d6bac6d0e1eebb3d40cfbb8672107fb1ea 100644 --- a/l10n/ur_PK.js +++ b/l10n/ur_PK.js @@ -8,12 +8,13 @@ OC.L10N.register( "Month" : "ماہ", "Edit" : "تدوین کریں", "Delete" : "حذف کریں", - "Share link" : "اشتراک لنک", - "can edit" : "تبدیل کر سکے ھیں", "New calendar" : "جدید کیلنڈر", "Name" : "اسم", "Deleted" : "حذف شدہ ", "Restore" : "بحال", + "Share link" : "اشتراک لنک", + "can edit" : "تبدیل کر سکے ھیں", + "Save" : "حفظ", "Cancel" : "منسوخ کریں", "Location" : "مقام", "Description" : "تصریح", @@ -25,15 +26,11 @@ OC.L10N.register( "Friday" : "جمعہ", "Saturday" : "ہفتہ", "Sunday" : "اتوار", - "Save" : "حفظ", "Email" : "email", "Repeat" : "دہرایں", "never" : "never", - "More" : "مزید", "Personal" : "شخصی", "Close" : "بند ", - "Next" : "اگلا", - "Other" : "دیگر", - "Birthday" : "سالگرہ" + "Other" : "دیگر" }, "nplurals=2; plural=(n != 1);"); diff --git a/l10n/ur_PK.json b/l10n/ur_PK.json index 49b9b4f1ad290555a879b96278d64c697f3b11f4..1b683ee32c2c16fac7fae3295e02296431f49394 100644 --- a/l10n/ur_PK.json +++ b/l10n/ur_PK.json @@ -6,12 +6,13 @@ "Month" : "ماہ", "Edit" : "تدوین کریں", "Delete" : "حذف کریں", - "Share link" : "اشتراک لنک", - "can edit" : "تبدیل کر سکے ھیں", "New calendar" : "جدید کیلنڈر", "Name" : "اسم", "Deleted" : "حذف شدہ ", "Restore" : "بحال", + "Share link" : "اشتراک لنک", + "can edit" : "تبدیل کر سکے ھیں", + "Save" : "حفظ", "Cancel" : "منسوخ کریں", "Location" : "مقام", "Description" : "تصریح", @@ -23,15 +24,11 @@ "Friday" : "جمعہ", "Saturday" : "ہفتہ", "Sunday" : "اتوار", - "Save" : "حفظ", "Email" : "email", "Repeat" : "دہرایں", "never" : "never", - "More" : "مزید", "Personal" : "شخصی", "Close" : "بند ", - "Next" : "اگلا", - "Other" : "دیگر", - "Birthday" : "سالگرہ" + "Other" : "دیگر" },"pluralForm" :"nplurals=2; plural=(n != 1);" } \ No newline at end of file diff --git a/l10n/uz.js b/l10n/uz.js new file mode 100644 index 0000000000000000000000000000000000000000..db16f7a61342170b2572cebcf8b4884b32bda229 --- /dev/null +++ b/l10n/uz.js @@ -0,0 +1,585 @@ +OC.L10N.register( + "calendar", + { + "Provided email-address is too long" : "Berilgan elektron pochta manzili juda uzun", + "User-Session unexpectedly expired" : "Foydalanuvchi-sessiyaning muddati kutilmaganda tugadi", + "Provided email-address is not valid" : "Ko'rsatilgan elektron pochta manzili noto'g'ri", + "%s has published the calendar »%s«" : "%s kalendarini e’lon qildi »%s«", + "Unexpected error sending email. Please contact your administrator." : "Email yuborishda kutilmagan xatolik yuz berdi. Iltimos, administratoringizga murojaat qiling.", + "Successfully sent email to %1$s" : " %1$sE-pochta manziliga muvaffaqiyatli yuborildi", + "Hello," : "Assalomu aleykum,", + "We wanted to inform you that %s has published the calendar »%s«." : "Bu haqda sizga xabar bermoqchi edik %s kalendarini e’lon qildi »%s«.", + "Open »%s«" : "ochish »%s«", + "Cheers!" : "Salom!", + "Upcoming events" : "Kelgusi voqealar", + "No more events today" : "Bugun boshqa tadbirlar yo'q", + "No upcoming events" : "Kelgusi tadbirlar yo'q", + "More events" : "Boshqa tadbirlar", + "%1$s with %2$s" : "%1$s bilan %2$s", + "Calendar" : "Kalendar", + "New booking {booking}" : "Yangi bronlash {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) uchrashuvga yozildi \"{config_display_name}\" {date_time} da.", + "Appointments" : "Uchrashuvlar", + "Schedule appointment \"%s\"" : "Uchrashuvni rejalashtirish \"%s\"", + "Schedule an appointment" : "Uchrashuvni rejalashtirish", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : " %s uchun tayyorlang", + "Follow up for %s" : " %s uchun kuzatib boring", + "Your appointment \"%s\" with %s needs confirmation" : " \"%s\" bilan %s uchrashuvingiz tasdiqlash kerak", + "Dear %s, please confirm your booking" : "Hurmatli %s, iltimos, bandlovingizni tasdiqlang", + "Confirm" : "Tasdiqlang", + "Appointment with:" : "Uchrashuv:", + "Description:" : "Tavsif:", + "This confirmation link expires in %s hours." : "Bu tasdiqlash havolasi muddati tugaydi %s soatda.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Agar siz uchrashuvni bekor qilmoqchi bo'lsangiz, tashkilotchingizga ushbu xatga javob berish yoki ularning profil sahifasiga tashrif buyurish orqali murojaat qiling.", + "Your appointment \"%s\" with %s has been accepted" : "\"%s\" bilan %s uchrashuvingiz qabul qilingan", + "Dear %s, your booking has been accepted." : "Hurmatli %s, bandlovingiz qabul qilindi.", + "Appointment for:" : "Uchrashuv:", + "Date:" : "Sana:", + "You will receive a link with the confirmation email" : "Siz tasdiqlash elektron pochtasi bilan havola olasiz", + "Where:" : "Qayerda:", + "Comment:" : "Izoh:", + "You have a new appointment booking \"%s\" from %s" : "Sizda yangi uchrashuv bandi bor \"%s\" dan %s", + "Dear %s, %s (%s) booked an appointment with you." : "Hurmatli %s, %s (%s) siz bilan uchrashuvga yozildi.", + "A Calendar app for Nextcloud" : "Nextcloud uchun kalendar ilovasi", + "Previous day" : "Oldingi kun", + "Previous week" : "Oldingi hafta", + "Previous year" : "Oldingi yil", + "Previous month" : "Oldingi oy", + "Next day" : "Keyingi kun", + "Next week" : "Keyingi hafta", + "Next year" : "Keyingi yil", + "Next month" : "Keyingi oy", + "Create new event" : "Yangi tadbir yarating", + "Event" : "Tadbir", + "Today" : "Bugun", + "Day" : "Kun", + "Week" : "Hafta", + "Month" : "Oy", + "Year" : "Yil", + "List" : "Ro`yxat", + "Appointment link was copied to clipboard" : "Uchrashuv havolasi vaqtinchalik xotiraga nusxalandi", + "Appointment link could not be copied to clipboard" : "Uchrashuv havolasini vaqtinchalik xotiraga nusxalab bo‘lmadi", + "Preview" : "Ko‘rib chiqish", + "Copy link" : "Havolani nusxalash", + "Edit" : "Tahrirlash", + "Delete" : "Oʻchirish", + "Appointment schedules" : "Uchrashuvlar taqvimi", + "Create new" : "Yangi yaratish", + "Disable calendar \"{calendar}\"" : "Taqvimni o'chirib qo'yish \"{calendar}\"", + "Disable untitled calendar" : "Nomsiz taqvimni o'chirib qo'ying", + "Enable calendar \"{calendar}\"" : "Kalendarni yoqish \"{calendar}\"", + "Enable untitled calendar" : "Nomsiz kalendarni yoqish", + "An error occurred, unable to change visibility of the calendar." : "Xatolik yuz berdi, taqvim koʻrinishini oʻzgartirib boʻlmadi.", + "Untitled calendar" : "Nomsiz kalendar", + "Shared with you by" : "Siz bilan baham ko'rgan", + "Edit and share calendar" : "Taqvimni tahrirlash va almashish", + "Edit calendar" : "Taqvimni tahrirlash", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Taqvimni ulashish bekor qilinmoqda {countdown} sekund"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["taqvimni o'chirish {countdown} sekund"], + "An error occurred, unable to create the calendar." : "Xatolik yuz berdi, taqvim yaratib bo‘lmadi.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Yaroqli havolani kiriting (http://, https://, webcal:// yoki webcals:// bilan boshlanadi)", + "Calendars" : "Taqvimlar", + "Add new" : "Yangi yaratish", + "New calendar" : "Yangi taqvim", + "Name for new calendar" : "Yangi taqvim uchun nom", + "Creating calendar …" : "Taqvim yaratish...", + "New calendar with task list" : "Vazifalar ro'yxati bilan yangi taqvim", + "New subscription from link (read-only)" : "Havoladan yangi obuna (faqat o'qish uchun)", + "Creating subscription …" : "Obuna yaratilmoqda…", + "Add public holiday calendar" : "Bayramlar taqvimini qo'shing", + "Add custom public calendar" : "Shaxsiy umumiy taqvim qo'shing", + "Calendar link copied to clipboard." : "Taqvim havolasi vaqtinchalik xotiraga nusxalandi.", + "Calendar link could not be copied to clipboard." : "Taqvim havolasini vaqtinchalik xotiraga nusxalab bo‘lmadi.", + "Copy subscription link" : "Obuna havolasidan nusxa oling", + "Copying link …" : "Havola nusxalanmoqda…", + "Copied link" : "Nusxalangan havola", + "Could not copy link" : "Havolani nusxalab bo‘lmadi", + "Export" : "Eksport", + "Untitled item" : "Nomsiz element", + "Unknown calendar" : "Noma'lum taqvim", + "Could not load deleted calendars and objects" : "Oʻchirilgan taqvimlar va obyektlarni yuklab boʻlmadi", + "Could not restore calendar or event" : "Taqvim yoki tadbirni tiklab bo‘lmadi", + "Do you really want to empty the trash bin?" : "Haqiqatan ham o`chirilgan fayllar qutisini bo'shatmoqchimisiz?", + "Empty trash bin" : "O`chirilgan fayllar qutisini bo'shatish", + "Trash bin" : "O`chirilgan fayllar qutisi", + "Loading deleted items." : "Oʻchirilgan elementlar yuklanmoqda.", + "You do not have any deleted items." : "Sizda hech qanday oʻchirilgan element yoʻq.", + "Name" : "Nom", + "Deleted" : "O`chirilgan", + "Restore" : "Qayta tiklangan", + "Delete permanently" : "Butunlay o'chirish", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["O`chirilgan fayllar qutisidagi narsalar {numDays} kundan keyin o'chiriladi."], + "Could not update calendar order." : "Taqvim tartibini yangilab bo‘lmadi.", + "Shared calendars" : "Umumiy taqvimlar", + "Deck" : "Pastki qavat", + "Hidden" : "Yashirin", + "Internal link" : "Ichki havola", + "A private link that can be used with external clients" : "Tashqi mijozlar bilan foydalanish mumkin bo'lgan shaxsiy havola", + "Copy internal link" : "Ichki havoladan nusxa olish", + "An error occurred, unable to publish calendar." : "Xatolik yuz berdi, taqvimni nashr qilib bo‘lmadi.", + "An error occurred, unable to send email." : "Xatolik yuz berdi, xat yuborib bo‘lmadi.", + "Embed code copied to clipboard." : "O‘rnatish kodi vaqtinchalik xotiraga nusxalandi.", + "Embed code could not be copied to clipboard." : "O‘rnatish kodini vaqtinchalik xotiraga nusxalab bo‘lmadi.", + "Unpublishing calendar failed" : "Taqvim nashrdan chiqarilmadi", + "Share link" : "Havolani ulashing", + "Copy public link" : "Umumiy havoladan nusxa oling", + "Send link to calendar via email" : "Taqvimga havolani elektron pochta orqali yuboring", + "Enter one address" : "Bitta manzilni kiriting", + "Sending email …" : "Email yuborilmoqda…", + "Copy embedding code" : "O'rnatish kodini nusxalash", + "Copying code …" : "Kod nusxalanmoqda…", + "Copied code" : "Kod nusxalandi", + "Could not copy code" : "Kodni nusxalab bo‘lmadi", + "Delete share link" : "Ulashish havolasini o'chirish", + "Deleting share link …" : "Ulashish havolasi oʻchirilmoqda …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Komanda)", + "An error occurred while unsharing the calendar." : "Taqvimni ulashishni bekor qilishda xatolik yuz berdi.", + "An error occurred, unable to change the permission of the share." : "Xatolik yuz berdi, ulashish ruxsatini o‘zgartirib bo‘lmadi.", + "can edit" : "tahrirlashi mumkin", + "Unshare with {displayName}" : " {displayName}bilan ulashishni bekor qilish", + "Share with users or groups" : "Foydalanuvchilar yoki guruhlar bilan baham ko'ring", + "No users or groups" : "Foydalanuvchilar yoki guruhlar yo'q", + "Failed to save calendar name and color" : "Taqvim nomi va rangini saqlab bo‘lmadi", + "Calendar name …" : "Taqvim nomi…", + "Never show me as busy (set this calendar to transparent)" : "Meni hech qachon band deb ko‘rsatma (ushbu taqvimni shaffof qilib qo‘ying)", + "Share calendar" : "Taqvimni ulashish", + "Unshare from me" : "Mendan baham ko'rishni bekor qilish", + "Save" : "Saqlash", + "Import calendars" : "Taqvimlarni import qilish", + "Please select a calendar to import into …" : "Import qilish uchun taqvimni tanlang…", + "Filename" : "Fayl nomi", + "Calendar to import into" : "Import qilish uchun taqvim", + "Cancel" : "Bekor qilish", + "_Import calendar_::_Import calendars_" : ["Taqvimlarni import qilish"], + "Select the default location for attachments" : "Qo'shimchalar uchun standart joyni tanlang", + "Pick" : "Tanlov", + "Invalid location selected" : "Yaroqsiz joy tanlangan", + "Attachments folder successfully saved." : "Qo'shimchalar jildi muvaffaqiyatli saqlandi.", + "Error on saving attachments folder." : "Qo'shimchalar jildini saqlashda xatolik yuz berdi.", + "Default attachments location" : "Birlamchi biriktirmalar joylashuvi", + "{filename} could not be parsed" : "{filename} tahlil qilib bo‘lmadi", + "No valid files found, aborting import" : "Hech qanday yaroqli fayl topilmadi, import bekor qilinmoqda", + "_Successfully imported %n event_::_Successfully imported %n events_" : [" %n tadbirlar muvaffaqiyatli import qilindi."], + "Import partially failed. Imported {accepted} out of {total}." : "Import qisman amalga oshmadi. {accepted} holatda amalga oshmagan {total}umumiy importdan.", + "Automatic" : "Automatik", + "Automatic ({detected})" : "Automatik ({detected})", + "New setting was not saved successfully." : "Yangi sozlama muvaffaqiyatli saqlanmadi.", + "Navigation" : "Navigatsiya", + "Previous period" : "Oldingi davr", + "Next period" : "Keyingi davr", + "Views" : "Koʻrishlar", + "Day view" : "Kunlik ko'rinish", + "Week view" : "Hafta ko'rinishi", + "Month view" : "Oy ko'rinishi", + "Year view" : "Yil ko'rinishi", + "List view" : "Ro'yxat ko'rinishi", + "Actions" : "Faolliklar", + "Create event" : "Tadbir yaratish", + "Show shortcuts" : "Yorliqlarni ko'rsatish", + "Editor" : "Tahrirchi", + "Close editor" : "Muharrirni yoping", + "Save edited event" : "Tahrirlangan tadbirni saqlang", + "Delete edited event" : "Tahrirlangan tadbirni oʻchirish", + "Duplicate event" : "Tadbirni nusxalash", + "Shortcut overview" : "Qisqa komandalar haqida umumiy ma'lumot", + "or" : "yoki", + "Calendar settings" : "Taqvim sozlamalari", + "At event start" : "Tadbir boshlanishida", + "No reminder" : "Eslatma yo'q", + "Failed to save default calendar" : "Standart taqvim saqlanmadi", + "CalDAV link copied to clipboard." : "CalDAV havolasi vaqtinchalik xotiraga nusxalandi.", + "CalDAV link could not be copied to clipboard." : "CalDAV havolasini vaqtinchalik xotiraga nusxalab bo‘lmadi.", + "Enable birthday calendar" : "Tug'ilgan kun taqvimini yoqing", + "Show tasks in calendar" : "Taqvimdagi vazifalarni ko'rsatish", + "Enable simplified editor" : "Soddalashtirilgan muharrirni yoqing", + "Limit the number of events displayed in the monthly view" : "Oylik ko'rinishda ko'rsatiladigan voqealar sonini cheklang", + "Show weekends" : "Dam olish kunlarini ko'rsatish", + "Show week numbers" : "Hafta tartib raqamlarini ko'rsatish", + "Time increments" : "Vaqt o'sishi", + "Default calendar for incoming invitations" : "Kiruvchi taklifnomalar uchun standart taqvim", + "Default reminder" : "Standart eslatma", + "Copy primary CalDAV address" : "Asosiy CalDAV manzilidan nusxa oling", + "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV manzilidan nusxa oling", + "Personal availability settings" : "Shaxsiy ochiqlik sozlamalari", + "Show keyboard shortcuts" : "Klaviatura yorliqlarini ko'rsatish", + "Appointment schedule successfully created" : "Uchrashuv jadvali yaratildi", + "Appointment schedule successfully updated" : "Uchrashuv jadvali muvaffaqiyatli yangilandi", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minut"], + "0 minutes" : "0 minut", + "_{duration} hour_::_{duration} hours_" : ["{duration} soat"], + "_{duration} day_::_{duration} days_" : ["{duration} kun"], + "_{duration} week_::_{duration} weeks_" : ["{duration} hafta"], + "_{duration} month_::_{duration} months_" : ["{duration} oy"], + "_{duration} year_::_{duration} years_" : ["{duration} yil"], + "To configure appointments, add your email address in personal settings." : "Uchrashuvlarni sozlash uchun shaxsiy sozlamalarga elektron pochta manzilingizni qo'shing.", + "Public – shown on the profile page" : "Umumiy - profil sahifasida ko'rsatiladi", + "Private – only accessible via secret link" : "Shaxsiy - faqat maxfiy havola orqali kirish mumkin", + "Appointment schedule saved" : "Uchrashuv jadvali saqlandi", + "Create appointment schedule" : "Uchrashuv jadvalini tuzing", + "Edit appointment schedule" : "Uchrashuv jadvalini tahrirlash", + "Update" : "Yangilash", + "Appointment name" : "Uchrashuv nomi", + "Location" : "Joylashuv", + "Create a Talk room" : "Suhbat xonasi yarating", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Har bir band qilingan uchrashuv uchun noyob havola yaratiladi va tasdiqlovchi elektron pochta orqali yuboriladi", + "Description" : "Tavsif", + "Visibility" : "Ko'rinish", + "Duration" : "Davomiyligi", + "Increments" : "O'sishlar", + "Additional calendars to check for conflicts" : "Mojarolarni tekshirish uchun qo'shimcha taqvimlar", + "Pick time ranges where appointments are allowed" : "Uchrashuvlarga ruxsat berilgan vaqt oralig'ini tanlang", + "to" : "ga", + "Delete slot" : "Slotni o'chirish", + "No times set" : "Vaqt belgilanmagan", + "Add" : "Qo`shish", + "Monday" : "Dushanba", + "Tuesday" : "Seshanba", + "Wednesday" : "Chorshanba", + "Thursday" : "Payshanba", + "Friday" : "Juma", + "Saturday" : "Shanba", + "Sunday" : "Yakshanba", + "Weekdays" : "Dam olish kunlari", + "Add time before and after the event" : "Tadbirdan oldin va keyin vaqt qo'shing", + "Before the event" : "Tadbir oldidan", + "After the event" : "Tadbirdan keyin", + "Planning restrictions" : "Rejalashtirish cheklovlari", + "Minimum time before next available slot" : "Keyingi mavjud slotgacha bo'lgan minimal vaqt", + "Max slots per day" : "Kuniga maksimal slotlar", + "Limit how far in the future appointments can be booked" : "Kelajakdagi uchrashuvlarni qancha vaqtgacha bron qilishni cheklang", + "It seems a rate limit has been reached. Please try again later." : "Tarif chegarasiga yetganga o‘xshaydi. Keyinroq qayta urinib ko‘ring.", + "Please confirm your reservation" : "Iltimos, bandlovingizni tasdiqlang", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Sizga batafsil ma'lumotni elektron pochta orqali yubordik. Iltimos, elektron pochtadagi havola orqali uchrashuvingizni tasdiqlang. Bu sahifani hozir yopishingiz mumkin.", + "Your name" : "Sizning ismingiz", + "Your email address" : "Sizning e-pochta manzilingiz", + "Please share anything that will help prepare for our meeting" : "Iltimos, uchrashuvimizga tayyorgarlik ko'rishga yordam beradigan narsalarni baham ko'ring", + "Could not book the appointment. Please try again later or contact the organizer." : "Uchrashuvni yozib boʻlmadi. Keyinroq qayta urinib ko‘ring yoki tashkilotchi bilan bog‘laning.", + "Back" : "Orqaga", + "Book appointment" : "Uchrashuvni tayinlash", + "Error fetching Talk conversations." : "Talk suhbatlarini olishda xatolik yuz berdi.", + "Conversation does not have a valid URL." : "Suhbatda yaroqli URL manzili yo‘q.", + "Successfully added Talk conversation link to location." : "Muloqot suhbati havolasi joylashuvga muvaffaqiyatli qo‘shildi.", + "Successfully added Talk conversation link to description." : "Tavsifga Talk suhbati havolasi muvaffaqiyatli qo‘shildi.", + "Failed to apply Talk room." : "Muloqot xonasini qo‘llab bo‘lmadi.", + "Error creating Talk conversation" : "Talk suhbatini yaratishda xatolik yuz berdi", + "Select a Talk Room" : "Suhbat xonasini tanlang", + "Add Talk conversation" : "Talk suhbatini qo'shing", + "Fetching Talk rooms…" : "Muloqot xonalari olinmoqda…", + "No Talk room available" : "Suhbat xonasi mavjud emas", + "Create a new conversation" : "Yangi suhbat yarating", + "Select conversation" : "Suhbatni tanlang", + "on" : "da", + "at" : "ga", + "before at" : "oldin", + "Notification" : "Bildirishnomalar", + "Email" : "Email", + "Audio notification" : "Audio xabarnoma", + "Other notification" : "Boshqa bildirishnoma", + "Relative to event" : "Tadbirga nisbatan", + "On date" : "Sanada", + "Edit time" : "Vaqtni tahrirlash", + "Save time" : "Vaqtni saqlash", + "Remove reminder" : "Eslatmani olib tashlash", + "Add reminder" : "+ Eslatma qo'shish", + "seconds" : "sekund", + "minutes" : "minut", + "hours" : "soat", + "days" : "kun", + "weeks" : "hafta", + "Choose a file to add as attachment" : "Ilova sifatida qo'shish uchun faylni tanlang", + "Choose a file to share as a link" : "Havola sifatida almashish uchun faylni tanlang", + "Attachment {name} already exist!" : "Qo'shimcha{name} allaqachon mavjud!", + "Could not upload attachment(s)" : "Biriktirma(lar)ni yuklab bo‘lmadi", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : " Siz navigatsiya qilmoqchisiz {host}. Davom etishga ishonchingiz komilmi? Havola: {link}", + "Proceed" : "Davom etish", + "No attachments" : "Qo‘shimchalar yo‘q", + "Add from Files" : "Fayllardan qo'shish", + "Upload from device" : "Qurilmadan yuklash", + "Delete file" : "Faylni o'chirish", + "Confirmation" : "Tasdiqlash", + "_{count} attachment_::_{count} attachments_" : ["{count} qo'shimchalar"], + "Suggested" : "Tavsiya etilgan", + "Available" : "Mavjud", + "Invitation accepted" : "Taklif qabul qilindi", + "Accepted {organizerName}'s invitation" : "Qabul qilingan {organizerName}ning taklifnomasi", + "Participation marked as tentative" : "Ishtirok etish taxminiy deb belgilandi", + "Invitation is delegated" : "Taklif topshiriladi", + "Not available" : "Mavjud emas", + "Invitation declined" : "Taklif rad etildi", + "Declined {organizerName}'s invitation" : "Rad etildi {organizerName}ning taklifnomasi", + "Availability will be checked" : "Mavjudligi tekshiriladi", + "Invitation will be sent" : "Taklifnoma yuboriladi", + "Failed to check availability" : "Mavjudligini tekshirib bo‘lmadi", + "Failed to deliver invitation" : "Taklifnoma yetkazilmadi", + "Awaiting response" : "Javob kutilmoqda", + "Checking availability" : "Mavjudligi tekshirilmoqda", + "Has not responded to {organizerName}'s invitation yet" : " {organizerName}ning taklifiga hali javob bermadi", + "chairperson" : "rais", + "required participant" : "talab qilinadigan ishtirokchi", + "non-participant" : "qatnashmaydigan", + "optional participant" : "ixtiyoriy ishtirokchi", + "{organizer} (organizer)" : "{organizer} (tashkilotchi)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Ishtirokchilar, resurslar va xonalarning mavjudligi", + "Suggestion accepted" : "Taklif qabul qilindi", + "Legend" : "Ta`rif", + "Out of office" : "Ofisda emas", + "Done" : "Bajarildi", + "Search room" : "Xonani qidirish", + "Room name" : "Xona nomi", + "Check room availability" : "Xona bo`shligini tekshiring", + "Free" : "Bepul", + "Busy (tentative)" : "Band (taxminan)", + "Busy" : "Band", + "Unknown" : "Noma'lum", + "Find a time" : "Vaqt toping", + "The invitation has been accepted successfully." : "Taklif muvaffaqiyatli qabul qilindi.", + "Failed to accept the invitation." : "Taklifni qabul qilib bo‘lmadi.", + "The invitation has been declined successfully." : "Taklifnoma muvaffaqiyatli rad etildi.", + "Failed to decline the invitation." : "Taklifni rad etib bo'lmadi.", + "Your participation has been marked as tentative." : "Sizning ishtirokingiz taxminiy deb belgilandi.", + "Failed to set the participation status to tentative." : "Ishtirok etish holatini taxminiy qilib o‘rnatib bo‘lmadi.", + "Accept" : "Qabul qiling", + "Decline" : "Rad etish", + "Tentative" : "Taxminan", + "No attendees yet" : "Hozircha ishtirokchilar yoʻq", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} taklif qilingan, {confirmedCount} tasdiqlagan", + "Successfully appended link to talk room to location." : "Suhbat xonasiga havola muvaffaqiyatli qo‘shildi.", + "Successfully appended link to talk room to description." : "Tavsifga suhbat xonasiga havola muvaffaqiyatli qo‘shildi.", + "Error creating Talk room" : "Muloqot xonasini yaratishda xatolik yuz berdi", + "Attendees" : "Ishtirokchilar", + "_%n more guest_::_%n more guests_" : ["%n ko'proq mehmonlar"], + "Remove group" : "Guruhni olib tashlash", + "Remove attendee" : "Ishtirokchini olib tashlash", + "Request reply" : "Javob so'rash", + "Chairperson" : "Rais", + "Required participant" : "Majburiy ishtirokchi", + "Optional participant" : "Ixtiyoriy ishtirokchi", + "Non-participant" : "Qatnashmaydigan", + "_%n member_::_%n members_" : ["%n a'zolari"], + "Search for emails, users, contacts, contact groups or teams" : "Elektron pochta, foydalanuvchilar, kontaktlar, aloqa guruhlari yoki jamoalarni qidiring", + "No match found" : "Hech qanday moslik topilmadi", + "Note that members of circles get invited but are not synced yet." : "Esda tutingki, davra a’zolari taklif qilinadi, lekin hali sinxronlanmagan.", + "Note that members of contact groups get invited but are not synced yet." : "E'tibor bering, kontakt guruhlari a'zolari taklif qilinadi, lekin hali sinxronlanmagan.", + "(organizer)" : "(tashkilotchi)", + "Make {label} the organizer" : " {label} ni tashkilotchi qilish", + "Make {label} the organizer and attend" : " {label} ni tashkilotchi va qatnashuvchi qilish", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Taklifnomalarni yuborish va javoblarni ko‘rib chiqish uchun [linkopen]shaxsiy sozlamalarga elektron pochta manzilingizni qo‘shing[linkclose].", + "Remove color" : "Rangni olib tashlang", + "Event title" : "Tadbir sarlavhasi", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Takrorlanishlar to‘plamining bir qismi bo‘lgan tadbirlar uchun kun bo‘yi sozlamani o‘zgartirib bo‘lmaydi.", + "From" : "Dan", + "To" : "Gacha", + "Repeat" : "Takrorlash", + "_time_::_times_" : ["vaqt"], + "never" : "hech qachon", + "on date" : "vaqtida", + "after" : "keyin", + "End repeat" : "Takrorlashni tugatish", + "Select to end repeat" : "Takrorlashni tugatish uchun tanlang", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Bu hodisa takrorlanish-to'plamning takrorlanish-istisnosidir. Siz unga takrorlanish qoidasini qo'sha olmaysiz.", + "first" : "dastlabki", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Takrorlanish qoidasiga kiritilgan o'zgartirishlar faqat shu va kelajakdagi barcha hodisalarga nisbatan qo'llaniladi.", + "Repeat every" : "Har doim takrorlang", + "By day of the month" : "Oy kuni bo'yicha", + "On the" : "Ustida", + "_day_::_days_" : ["kun"], + "_week_::_weeks_" : ["hafta"], + "_month_::_months_" : ["oy"], + "_year_::_years_" : ["yil"], + "weekday" : "ish kuni", + "weekend day" : "dam olish kuni", + "Does not repeat" : "Takrorlanmaydi", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Ushbu hodisaning takrorlanish ta'rifi Nextcloud tomonidan to'liq qo'llab-quvvatlanmaydi. Agar siz takrorlash parametrlarini tahrir qilsangiz, ba'zi takrorlanishlar yo'qolishi mumkin.", + "No rooms or resources yet" : "Hozircha xonalar yoki manbalar yo'q", + "Resources" : "Resurslar", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} joylar"], + "Add resource" : "Resurs qo'shing", + "Has a projector" : "Proyektori bor", + "Has a whiteboard" : "Doska bor", + "Wheelchair accessible" : "Imtiyozlilar kirish mumkin", + "Remove resource" : "Resursni olib tashlang", + "Search for resources or rooms" : "Resurslar yoki xonalarni qidiring", + "available" : "mavjud", + "unavailable" : "mavjud emas", + "Show all rooms" : "Barcha xonalarni ko'rsatish", + "Projector" : "Proyektor", + "Whiteboard" : "Oq doska", + "Room type" : "Xona turi", + "Any" : "Har qanday", + "Minimum seating capacity" : "Minimal o'tiradigan joy", + "More details" : "Batafsil ma'lumot", + "Update this and all future" : "Buni va barcha kelajakni yangilang", + "Update this occurrence" : "Ushbu hodisani yangilang", + "Public calendar does not exist" : "Umumiy taqvim mavjud emas", + "Maybe the share was deleted or has expired?" : "Ehtimol, ulashish o'chirilgan yoki muddati tugaganmi?", + "from {formattedDate}" : " {formattedDate}dan", + "to {formattedDate}" : " {formattedDate} gacha", + "on {formattedDate}" : " {formattedDate}da", + "from {formattedDate} at {formattedTime}" : " {formattedDate}dan {formattedTime}gacha", + "to {formattedDate} at {formattedTime}" : " {formattedDate}uchun {formattedTime}da", + "on {formattedDate} at {formattedTime}" : " {formattedDate}dagi {formattedTime}uchun", + "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}uchun", + "Please enter a valid date" : "Yaroqli sana kiriting", + "Please enter a valid date and time" : "Yaroqli sana va vaqtni kiriting", + "Select a time zone" : "Vaqt mintaqasini tanlang", + "Please select a time zone:" : "Vaqt mintaqasini tanlang:", + "Pick a time" : "Vaqtni tanlang", + "Pick a date" : "Sana tanlang", + "Type to search time zone" : "Vaqt mintaqasini qidirish uchun kiriting", + "Global" : "Global", + "Holidays in {region}" : " {region}da dam olish kunlari", + "An error occurred, unable to read public calendars." : "Xatolik yuz berdi, umumiy taqvimni o‘qib bo‘lmadi.", + "An error occurred, unable to subscribe to calendar." : "Xatolik yuz berdi, taqvimga obuna boʻlmadi.", + "Public holiday calendars" : "Davlat bayramlari taqvimi", + "Public calendars" : "Umumiy taqvim", + "No valid public calendars configured" : "Yaroqli umumiy taqvim sozlanmagan", + "Speak to the server administrator to resolve this issue." : "Ushbu muammoni hal qilish uchun server administratoriga murojaat qiling.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Davlat bayramlari kalendarlari Thunderbird tomonidan taqdim etiladi. Taqvim maʼlumotlari {website}dan yuklab olinadi", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Ushbu ommaviy taqvimlar server administratori tomonidan taklif qilinadi. Taqvim ma'lumotlari tegishli veb-saytdan yuklab olinadi.", + "By {authors}" : " {authors}tomonidan", + "Subscribed" : "Obuna boʻlgan", + "Subscribe" : "Obuna boʻlish", + "Could not fetch slots" : "Slotlarni olib bo‘lmadi", + "Select a date" : "Sana tanlash", + "Select slot" : "Slotni tanlash", + "No slots available" : "Slotlar mavjud emas", + "The slot for your appointment has been confirmed" : "Uchrashuvingiz uchun joy tasdiqlandi", + "Appointment Details:" : "Uchrashuv tafsilotlari:", + "Time:" : "Vaqt:", + "Booked for:" : "Quyidagilar uchun band qilingan:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Quyidagilar uchun band qilingan: Rahmat. {startDate} dan {endDate} gacha bandlovingiz tasdiqlandi.", + "Book another appointment:" : "Boshqa uchrashuvni bron qiling:", + "See all available slots" : "Barcha mavjud slotlarni ko'ring", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : " {startDate} dan {endDate} gacha bo‘lgan uchrashuv uchun vaqt endi mavjud emas.", + "Please book a different slot:" : "Iltimos, boshqa joyni band qiling:", + "Book an appointment with {name}" : " {name} bilan uchrashuvni bron qiling", + "No public appointments found for {name}" : " {name}bilan umumiy uchrashuvlar topilmadi", + "Personal" : "Shaxsiy", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Vaqt mintaqasini avtomatik aniqlash sizning vaqt mintaqangiz UTC ekanligini aniqladi.\nBu, ehtimol, veb-brauzeringizning xavfsizlik choralari natijasidir.\nIltimos, taqvim sozlamalarida vaqt mintaqangizni qo‘lda o‘rnating.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Sozlangan vaqt mintaqangiz ({timezoneId}) topilmadi. UTC ga qaytish.\nSozlamalarda vaqt mintaqangizni o‘zgartiring va bu muammo haqida xabar bering.", + "Availability of {displayName}" : " {displayName}uchun mavjud", + "Event does not exist" : "Tadbir mavjud emas", + "Duplicate" : "Nusxa", + "Delete this occurrence" : "Ushbu tadbirni o'chiring", + "Delete this and all future" : "Buni va barcha keyingilarini o'chirib tashlang", + "All day" : "Butun kun", + "Modifications wont get propagated to the organizer and other attendees" : "O'zgartirishlar tashkilotchiga va boshqa ishtirokchilarga targ'ib qilinmaydi", + "Managing shared access" : "Umumiy foydalanishni boshqarish", + "Deny access" : "Kirishni rad etish", + "Invite" : "Taklif qiling", + "_User requires access to your file_::_Users require access to your file_" : ["Foydalanuvchilar faylingizga kirishni talab qiladi"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Umumiy ruxsatni talab qiluvchi biriktirmalar"], + "Untitled event" : "Nomsiz tadbir", + "Close" : "Yopish", + "Modifications will not get propagated to the organizer and other attendees" : "O'zgartirishlar tashkilotchiga va boshqa ishtirokchilarga targ'ib qilinmaydi", + "Subscribe to {name}" : " {name}ga obuna bo'ling", + "Export {name}" : " {name}eksporti", + "Show availability" : "Mavjudligini ko'rsatish", + "Anniversary" : "Yubiley", + "Appointment" : "Uchrashuv", + "Business" : "Biznes", + "Education" : "Ta'lim", + "Holiday" : "Bayram", + "Meeting" : "Uchrashuv", + "Miscellaneous" : "Turli xil", + "Non-working hours" : "Ishlamaydigan soatlar", + "Not in office" : "Ofisda emas", + "Phone call" : "Telefon qo'ng'irog'i", + "Sick day" : "Kasal kun", + "Special occasion" : "Maxsus voqea", + "Travel" : "Sayohat", + "Vacation" : "Dam olish", + "Midnight on the day the event starts" : "Tadbir boshlangan kuni yarim tunda", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n tadbirdan bir necha kun oldin {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n tadbirdan bir necha hafta oldin{formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : " {formattedHourMinute} tadbir kuni da", + "at the event's start" : "tadbir boshida", + "at the event's end" : "tadbir oxirida", + "{time} before the event starts" : "{time} tadbir boshlanishidan oldin", + "{time} before the event ends" : "{time} tadbir tugashidan oldin", + "{time} after the event starts" : "{time} tadbir boshlanganidan keyin", + "{time} after the event ends" : "{time} tadbir tugaganidan keyin", + "on {time}" : " {time}da", + "on {time} ({timezoneId})" : " {time}da ({timezoneId})", + "Week {number} of {year}" : " {number}haftasi {year}yilning", + "Daily" : "Kunlik", + "Weekly" : "Haftalik", + "Monthly" : "Oylik", + "Yearly" : "Yillik", + "_Every %n day_::_Every %n days_" : ["Har %n kun"], + "_Every %n week_::_Every %n weeks_" : ["Har %n hafta"], + "_Every %n month_::_Every %n months_" : ["Har %n oy"], + "_Every %n year_::_Every %n years_" : ["Har %n yil"], + "_on {weekday}_::_on {weekdays}_" : [" {weekdays}da"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : [" {dayOfMonthList}kunda"], + "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber} {byDaySet}da", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : " {monthNames} ichida {ordinalNumber} {byDaySet}da", + "until {untilDate}" : " {untilDate}gacha", + "_%n time_::_%n times_" : ["%n vaqt"], + "second" : "sekund", + "third" : "uchinchi", + "fourth" : "to`rtinchi", + "fifth" : "beshinchi", + "second to last" : "oxiridan ikkinchi", + "last" : "oxirgi", + "Untitled task" : "Nomsiz vazifa", + "Please ask your administrator to enable the Tasks App." : "Iltimos, administratoringizdan Tasks ilovasini yoqishini soʻrang.", + "You are not allowed to edit this event as an attendee." : "Siz ishtirokchi sifatida ushbu tadbirni tahrirlashingiz mumkin emas.", + "W" : "W", + "%n more" : "%n ko`proq", + "No events to display" : "Ko'rsatiladigan tadbir yo'q", + "All participants declined" : "Barcha ishtirokchilar rad etishdi", + "Please confirm your participation" : "Iltimos, ishtirokingizni tasdiqlang", + "You declined this event" : "Siz bu tadbirni rad etdingiz", + "Your participation is tentative" : "Sizning ishtirokingiz taxminiy", + "_+%n more_::_+%n more_" : ["+%n ko`p[roq"], + "No events" : "Hech qanday tadbir yo'q", + "Create a new event or change the visible time-range" : "Yangi hodisa yarating yoki ko'rinadigan vaqt oralig'ini o'zgartiring", + "Failed to save event" : "Tadbirni saqlab bo‘lmadi", + "It might have been deleted, or there was a typo in a link" : "U oʻchirilgan yoki havolada xatolik yuz bergan boʻlishi mumkin", + "It might have been deleted, or there was a typo in the link" : "U o'chirilgan yoki havolada xatolik yuz bergan bo'lishi mumkin", + "Meeting room" : "Uchrashuv xonasi", + "Lecture hall" : "Ma'ruza zali", + "Seminar room" : "Seminar xonasi", + "Other" : "Boshqa", + "When shared show" : "Baham ko'rilganda", + "When shared show full event" : "Ulashganda toʻliq tadbir koʻrsatiladi", + "When shared show only busy" : "Baham ko'rilganda faqat band ko`rsatish", + "When shared hide this event" : "Baham ko'rilganda, bu tadbirni yashirish", + "The visibility of this event in shared calendars." : "Bu tadbirning umumiy taqvimda koʻrinishi.", + "Add a location" : "Joy qo'shing", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Tavsif qo'shing\n\n- Bu uchrashuv nima haqida\n- Kun tartibidagi masalalar\n- Ishtirokchilar tayyorlashi kerak bo'lgan hamma narsa", + "Status" : "Holat", + "Confirmed" : "Tasdiqlangan", + "Canceled" : "Bekor qilingan", + "Confirmation about the overall status of the event." : "Tadbirning umumiy holatini tasdiqlash.", + "Show as" : "Sifatida ko'rsatish", + "Take this event into account when calculating free-busy information." : "Bepul band bo'lgan ma'lumotni hisoblashda ushbu hodisani hisobga oling.", + "Categories" : "Kategoriyalar", + "Categories help you to structure and organize your events." : "Kategoriyalar tadbirlaringizni tuzish va tartibga solishga yordam beradi.", + "Search or add categories" : "Kategoriyalarni qidiring yoki qo'shing", + "Add this as a new category" : "Buni yangi turkum sifatida qo'shing", + "Custom color" : "Maxsus rang", + "Special color of this event. Overrides the calendar-color." : "Ushbu tadbirning o'ziga xos rangi. Kalendar rangini bekor qiladi.", + "Error while sharing file" : "Fayl almashishda xatolik yuz berdi", + "Error while sharing file with user" : "Foydalanuvchi bilan fayl almashishda xatolik yuz berdi", + "Attachment {fileName} already exists!" : "Qo'shimcha {fileName} allaqachon mavjud!", + "An error occurred during getting file information" : "Fayl ma'lumotlarini olishda xatolik yuz berdi", + "Talk conversation for event" : "Tadbir uchun suhbat", + "An error occurred, unable to delete the calendar." : "Xatolik yuz berdi, kalendarni oʻchirib boʻlmadi.", + "Imported {filename}" : "Importlandi {filename}", + "This is an event reminder." : "Bu tadbir eslatmasi.", + "Error while parsing a PROPFIND error" : "PROPFIND xatosini tahlil qilishda xatolik yuz berdi", + "Appointment not found" : "Uchrashuv topilmadi", + "User not found" : "Foydalanuvchi topilmadi", + "Reminder" : "Eslatma", + "+ Add reminder" : "+ Eslatma qo'shish", + "Select automatic slot" : "Avtomatik slotni tanlang", + "with" : "bilan", + "Available times:" : "Bo`sh vaqtlar:", + "Suggestions" : "Takliflar", + "Details" : "Tafsilotlar" +}, +"nplurals=1; plural=0;"); diff --git a/l10n/uz.json b/l10n/uz.json new file mode 100644 index 0000000000000000000000000000000000000000..849dc4ff1f6b50f565342da6ee3f6c2cb6098555 --- /dev/null +++ b/l10n/uz.json @@ -0,0 +1,583 @@ +{ "translations": { + "Provided email-address is too long" : "Berilgan elektron pochta manzili juda uzun", + "User-Session unexpectedly expired" : "Foydalanuvchi-sessiyaning muddati kutilmaganda tugadi", + "Provided email-address is not valid" : "Ko'rsatilgan elektron pochta manzili noto'g'ri", + "%s has published the calendar »%s«" : "%s kalendarini e’lon qildi »%s«", + "Unexpected error sending email. Please contact your administrator." : "Email yuborishda kutilmagan xatolik yuz berdi. Iltimos, administratoringizga murojaat qiling.", + "Successfully sent email to %1$s" : " %1$sE-pochta manziliga muvaffaqiyatli yuborildi", + "Hello," : "Assalomu aleykum,", + "We wanted to inform you that %s has published the calendar »%s«." : "Bu haqda sizga xabar bermoqchi edik %s kalendarini e’lon qildi »%s«.", + "Open »%s«" : "ochish »%s«", + "Cheers!" : "Salom!", + "Upcoming events" : "Kelgusi voqealar", + "No more events today" : "Bugun boshqa tadbirlar yo'q", + "No upcoming events" : "Kelgusi tadbirlar yo'q", + "More events" : "Boshqa tadbirlar", + "%1$s with %2$s" : "%1$s bilan %2$s", + "Calendar" : "Kalendar", + "New booking {booking}" : "Yangi bronlash {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) uchrashuvga yozildi \"{config_display_name}\" {date_time} da.", + "Appointments" : "Uchrashuvlar", + "Schedule appointment \"%s\"" : "Uchrashuvni rejalashtirish \"%s\"", + "Schedule an appointment" : "Uchrashuvni rejalashtirish", + "%1$s - %2$s" : "%1$s - %2$s", + "Prepare for %s" : " %s uchun tayyorlang", + "Follow up for %s" : " %s uchun kuzatib boring", + "Your appointment \"%s\" with %s needs confirmation" : " \"%s\" bilan %s uchrashuvingiz tasdiqlash kerak", + "Dear %s, please confirm your booking" : "Hurmatli %s, iltimos, bandlovingizni tasdiqlang", + "Confirm" : "Tasdiqlang", + "Appointment with:" : "Uchrashuv:", + "Description:" : "Tavsif:", + "This confirmation link expires in %s hours." : "Bu tasdiqlash havolasi muddati tugaydi %s soatda.", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "Agar siz uchrashuvni bekor qilmoqchi bo'lsangiz, tashkilotchingizga ushbu xatga javob berish yoki ularning profil sahifasiga tashrif buyurish orqali murojaat qiling.", + "Your appointment \"%s\" with %s has been accepted" : "\"%s\" bilan %s uchrashuvingiz qabul qilingan", + "Dear %s, your booking has been accepted." : "Hurmatli %s, bandlovingiz qabul qilindi.", + "Appointment for:" : "Uchrashuv:", + "Date:" : "Sana:", + "You will receive a link with the confirmation email" : "Siz tasdiqlash elektron pochtasi bilan havola olasiz", + "Where:" : "Qayerda:", + "Comment:" : "Izoh:", + "You have a new appointment booking \"%s\" from %s" : "Sizda yangi uchrashuv bandi bor \"%s\" dan %s", + "Dear %s, %s (%s) booked an appointment with you." : "Hurmatli %s, %s (%s) siz bilan uchrashuvga yozildi.", + "A Calendar app for Nextcloud" : "Nextcloud uchun kalendar ilovasi", + "Previous day" : "Oldingi kun", + "Previous week" : "Oldingi hafta", + "Previous year" : "Oldingi yil", + "Previous month" : "Oldingi oy", + "Next day" : "Keyingi kun", + "Next week" : "Keyingi hafta", + "Next year" : "Keyingi yil", + "Next month" : "Keyingi oy", + "Create new event" : "Yangi tadbir yarating", + "Event" : "Tadbir", + "Today" : "Bugun", + "Day" : "Kun", + "Week" : "Hafta", + "Month" : "Oy", + "Year" : "Yil", + "List" : "Ro`yxat", + "Appointment link was copied to clipboard" : "Uchrashuv havolasi vaqtinchalik xotiraga nusxalandi", + "Appointment link could not be copied to clipboard" : "Uchrashuv havolasini vaqtinchalik xotiraga nusxalab bo‘lmadi", + "Preview" : "Ko‘rib chiqish", + "Copy link" : "Havolani nusxalash", + "Edit" : "Tahrirlash", + "Delete" : "Oʻchirish", + "Appointment schedules" : "Uchrashuvlar taqvimi", + "Create new" : "Yangi yaratish", + "Disable calendar \"{calendar}\"" : "Taqvimni o'chirib qo'yish \"{calendar}\"", + "Disable untitled calendar" : "Nomsiz taqvimni o'chirib qo'ying", + "Enable calendar \"{calendar}\"" : "Kalendarni yoqish \"{calendar}\"", + "Enable untitled calendar" : "Nomsiz kalendarni yoqish", + "An error occurred, unable to change visibility of the calendar." : "Xatolik yuz berdi, taqvim koʻrinishini oʻzgartirib boʻlmadi.", + "Untitled calendar" : "Nomsiz kalendar", + "Shared with you by" : "Siz bilan baham ko'rgan", + "Edit and share calendar" : "Taqvimni tahrirlash va almashish", + "Edit calendar" : "Taqvimni tahrirlash", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Taqvimni ulashish bekor qilinmoqda {countdown} sekund"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["taqvimni o'chirish {countdown} sekund"], + "An error occurred, unable to create the calendar." : "Xatolik yuz berdi, taqvim yaratib bo‘lmadi.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Yaroqli havolani kiriting (http://, https://, webcal:// yoki webcals:// bilan boshlanadi)", + "Calendars" : "Taqvimlar", + "Add new" : "Yangi yaratish", + "New calendar" : "Yangi taqvim", + "Name for new calendar" : "Yangi taqvim uchun nom", + "Creating calendar …" : "Taqvim yaratish...", + "New calendar with task list" : "Vazifalar ro'yxati bilan yangi taqvim", + "New subscription from link (read-only)" : "Havoladan yangi obuna (faqat o'qish uchun)", + "Creating subscription …" : "Obuna yaratilmoqda…", + "Add public holiday calendar" : "Bayramlar taqvimini qo'shing", + "Add custom public calendar" : "Shaxsiy umumiy taqvim qo'shing", + "Calendar link copied to clipboard." : "Taqvim havolasi vaqtinchalik xotiraga nusxalandi.", + "Calendar link could not be copied to clipboard." : "Taqvim havolasini vaqtinchalik xotiraga nusxalab bo‘lmadi.", + "Copy subscription link" : "Obuna havolasidan nusxa oling", + "Copying link …" : "Havola nusxalanmoqda…", + "Copied link" : "Nusxalangan havola", + "Could not copy link" : "Havolani nusxalab bo‘lmadi", + "Export" : "Eksport", + "Untitled item" : "Nomsiz element", + "Unknown calendar" : "Noma'lum taqvim", + "Could not load deleted calendars and objects" : "Oʻchirilgan taqvimlar va obyektlarni yuklab boʻlmadi", + "Could not restore calendar or event" : "Taqvim yoki tadbirni tiklab bo‘lmadi", + "Do you really want to empty the trash bin?" : "Haqiqatan ham o`chirilgan fayllar qutisini bo'shatmoqchimisiz?", + "Empty trash bin" : "O`chirilgan fayllar qutisini bo'shatish", + "Trash bin" : "O`chirilgan fayllar qutisi", + "Loading deleted items." : "Oʻchirilgan elementlar yuklanmoqda.", + "You do not have any deleted items." : "Sizda hech qanday oʻchirilgan element yoʻq.", + "Name" : "Nom", + "Deleted" : "O`chirilgan", + "Restore" : "Qayta tiklangan", + "Delete permanently" : "Butunlay o'chirish", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["O`chirilgan fayllar qutisidagi narsalar {numDays} kundan keyin o'chiriladi."], + "Could not update calendar order." : "Taqvim tartibini yangilab bo‘lmadi.", + "Shared calendars" : "Umumiy taqvimlar", + "Deck" : "Pastki qavat", + "Hidden" : "Yashirin", + "Internal link" : "Ichki havola", + "A private link that can be used with external clients" : "Tashqi mijozlar bilan foydalanish mumkin bo'lgan shaxsiy havola", + "Copy internal link" : "Ichki havoladan nusxa olish", + "An error occurred, unable to publish calendar." : "Xatolik yuz berdi, taqvimni nashr qilib bo‘lmadi.", + "An error occurred, unable to send email." : "Xatolik yuz berdi, xat yuborib bo‘lmadi.", + "Embed code copied to clipboard." : "O‘rnatish kodi vaqtinchalik xotiraga nusxalandi.", + "Embed code could not be copied to clipboard." : "O‘rnatish kodini vaqtinchalik xotiraga nusxalab bo‘lmadi.", + "Unpublishing calendar failed" : "Taqvim nashrdan chiqarilmadi", + "Share link" : "Havolani ulashing", + "Copy public link" : "Umumiy havoladan nusxa oling", + "Send link to calendar via email" : "Taqvimga havolani elektron pochta orqali yuboring", + "Enter one address" : "Bitta manzilni kiriting", + "Sending email …" : "Email yuborilmoqda…", + "Copy embedding code" : "O'rnatish kodini nusxalash", + "Copying code …" : "Kod nusxalanmoqda…", + "Copied code" : "Kod nusxalandi", + "Could not copy code" : "Kodni nusxalab bo‘lmadi", + "Delete share link" : "Ulashish havolasini o'chirish", + "Deleting share link …" : "Ulashish havolasi oʻchirilmoqda …", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Komanda)", + "An error occurred while unsharing the calendar." : "Taqvimni ulashishni bekor qilishda xatolik yuz berdi.", + "An error occurred, unable to change the permission of the share." : "Xatolik yuz berdi, ulashish ruxsatini o‘zgartirib bo‘lmadi.", + "can edit" : "tahrirlashi mumkin", + "Unshare with {displayName}" : " {displayName}bilan ulashishni bekor qilish", + "Share with users or groups" : "Foydalanuvchilar yoki guruhlar bilan baham ko'ring", + "No users or groups" : "Foydalanuvchilar yoki guruhlar yo'q", + "Failed to save calendar name and color" : "Taqvim nomi va rangini saqlab bo‘lmadi", + "Calendar name …" : "Taqvim nomi…", + "Never show me as busy (set this calendar to transparent)" : "Meni hech qachon band deb ko‘rsatma (ushbu taqvimni shaffof qilib qo‘ying)", + "Share calendar" : "Taqvimni ulashish", + "Unshare from me" : "Mendan baham ko'rishni bekor qilish", + "Save" : "Saqlash", + "Import calendars" : "Taqvimlarni import qilish", + "Please select a calendar to import into …" : "Import qilish uchun taqvimni tanlang…", + "Filename" : "Fayl nomi", + "Calendar to import into" : "Import qilish uchun taqvim", + "Cancel" : "Bekor qilish", + "_Import calendar_::_Import calendars_" : ["Taqvimlarni import qilish"], + "Select the default location for attachments" : "Qo'shimchalar uchun standart joyni tanlang", + "Pick" : "Tanlov", + "Invalid location selected" : "Yaroqsiz joy tanlangan", + "Attachments folder successfully saved." : "Qo'shimchalar jildi muvaffaqiyatli saqlandi.", + "Error on saving attachments folder." : "Qo'shimchalar jildini saqlashda xatolik yuz berdi.", + "Default attachments location" : "Birlamchi biriktirmalar joylashuvi", + "{filename} could not be parsed" : "{filename} tahlil qilib bo‘lmadi", + "No valid files found, aborting import" : "Hech qanday yaroqli fayl topilmadi, import bekor qilinmoqda", + "_Successfully imported %n event_::_Successfully imported %n events_" : [" %n tadbirlar muvaffaqiyatli import qilindi."], + "Import partially failed. Imported {accepted} out of {total}." : "Import qisman amalga oshmadi. {accepted} holatda amalga oshmagan {total}umumiy importdan.", + "Automatic" : "Automatik", + "Automatic ({detected})" : "Automatik ({detected})", + "New setting was not saved successfully." : "Yangi sozlama muvaffaqiyatli saqlanmadi.", + "Navigation" : "Navigatsiya", + "Previous period" : "Oldingi davr", + "Next period" : "Keyingi davr", + "Views" : "Koʻrishlar", + "Day view" : "Kunlik ko'rinish", + "Week view" : "Hafta ko'rinishi", + "Month view" : "Oy ko'rinishi", + "Year view" : "Yil ko'rinishi", + "List view" : "Ro'yxat ko'rinishi", + "Actions" : "Faolliklar", + "Create event" : "Tadbir yaratish", + "Show shortcuts" : "Yorliqlarni ko'rsatish", + "Editor" : "Tahrirchi", + "Close editor" : "Muharrirni yoping", + "Save edited event" : "Tahrirlangan tadbirni saqlang", + "Delete edited event" : "Tahrirlangan tadbirni oʻchirish", + "Duplicate event" : "Tadbirni nusxalash", + "Shortcut overview" : "Qisqa komandalar haqida umumiy ma'lumot", + "or" : "yoki", + "Calendar settings" : "Taqvim sozlamalari", + "At event start" : "Tadbir boshlanishida", + "No reminder" : "Eslatma yo'q", + "Failed to save default calendar" : "Standart taqvim saqlanmadi", + "CalDAV link copied to clipboard." : "CalDAV havolasi vaqtinchalik xotiraga nusxalandi.", + "CalDAV link could not be copied to clipboard." : "CalDAV havolasini vaqtinchalik xotiraga nusxalab bo‘lmadi.", + "Enable birthday calendar" : "Tug'ilgan kun taqvimini yoqing", + "Show tasks in calendar" : "Taqvimdagi vazifalarni ko'rsatish", + "Enable simplified editor" : "Soddalashtirilgan muharrirni yoqing", + "Limit the number of events displayed in the monthly view" : "Oylik ko'rinishda ko'rsatiladigan voqealar sonini cheklang", + "Show weekends" : "Dam olish kunlarini ko'rsatish", + "Show week numbers" : "Hafta tartib raqamlarini ko'rsatish", + "Time increments" : "Vaqt o'sishi", + "Default calendar for incoming invitations" : "Kiruvchi taklifnomalar uchun standart taqvim", + "Default reminder" : "Standart eslatma", + "Copy primary CalDAV address" : "Asosiy CalDAV manzilidan nusxa oling", + "Copy iOS/macOS CalDAV address" : "iOS/macOS CalDAV manzilidan nusxa oling", + "Personal availability settings" : "Shaxsiy ochiqlik sozlamalari", + "Show keyboard shortcuts" : "Klaviatura yorliqlarini ko'rsatish", + "Appointment schedule successfully created" : "Uchrashuv jadvali yaratildi", + "Appointment schedule successfully updated" : "Uchrashuv jadvali muvaffaqiyatli yangilandi", + "_{duration} minute_::_{duration} minutes_" : ["{duration} minut"], + "0 minutes" : "0 minut", + "_{duration} hour_::_{duration} hours_" : ["{duration} soat"], + "_{duration} day_::_{duration} days_" : ["{duration} kun"], + "_{duration} week_::_{duration} weeks_" : ["{duration} hafta"], + "_{duration} month_::_{duration} months_" : ["{duration} oy"], + "_{duration} year_::_{duration} years_" : ["{duration} yil"], + "To configure appointments, add your email address in personal settings." : "Uchrashuvlarni sozlash uchun shaxsiy sozlamalarga elektron pochta manzilingizni qo'shing.", + "Public – shown on the profile page" : "Umumiy - profil sahifasida ko'rsatiladi", + "Private – only accessible via secret link" : "Shaxsiy - faqat maxfiy havola orqali kirish mumkin", + "Appointment schedule saved" : "Uchrashuv jadvali saqlandi", + "Create appointment schedule" : "Uchrashuv jadvalini tuzing", + "Edit appointment schedule" : "Uchrashuv jadvalini tahrirlash", + "Update" : "Yangilash", + "Appointment name" : "Uchrashuv nomi", + "Location" : "Joylashuv", + "Create a Talk room" : "Suhbat xonasi yarating", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "Har bir band qilingan uchrashuv uchun noyob havola yaratiladi va tasdiqlovchi elektron pochta orqali yuboriladi", + "Description" : "Tavsif", + "Visibility" : "Ko'rinish", + "Duration" : "Davomiyligi", + "Increments" : "O'sishlar", + "Additional calendars to check for conflicts" : "Mojarolarni tekshirish uchun qo'shimcha taqvimlar", + "Pick time ranges where appointments are allowed" : "Uchrashuvlarga ruxsat berilgan vaqt oralig'ini tanlang", + "to" : "ga", + "Delete slot" : "Slotni o'chirish", + "No times set" : "Vaqt belgilanmagan", + "Add" : "Qo`shish", + "Monday" : "Dushanba", + "Tuesday" : "Seshanba", + "Wednesday" : "Chorshanba", + "Thursday" : "Payshanba", + "Friday" : "Juma", + "Saturday" : "Shanba", + "Sunday" : "Yakshanba", + "Weekdays" : "Dam olish kunlari", + "Add time before and after the event" : "Tadbirdan oldin va keyin vaqt qo'shing", + "Before the event" : "Tadbir oldidan", + "After the event" : "Tadbirdan keyin", + "Planning restrictions" : "Rejalashtirish cheklovlari", + "Minimum time before next available slot" : "Keyingi mavjud slotgacha bo'lgan minimal vaqt", + "Max slots per day" : "Kuniga maksimal slotlar", + "Limit how far in the future appointments can be booked" : "Kelajakdagi uchrashuvlarni qancha vaqtgacha bron qilishni cheklang", + "It seems a rate limit has been reached. Please try again later." : "Tarif chegarasiga yetganga o‘xshaydi. Keyinroq qayta urinib ko‘ring.", + "Please confirm your reservation" : "Iltimos, bandlovingizni tasdiqlang", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Sizga batafsil ma'lumotni elektron pochta orqali yubordik. Iltimos, elektron pochtadagi havola orqali uchrashuvingizni tasdiqlang. Bu sahifani hozir yopishingiz mumkin.", + "Your name" : "Sizning ismingiz", + "Your email address" : "Sizning e-pochta manzilingiz", + "Please share anything that will help prepare for our meeting" : "Iltimos, uchrashuvimizga tayyorgarlik ko'rishga yordam beradigan narsalarni baham ko'ring", + "Could not book the appointment. Please try again later or contact the organizer." : "Uchrashuvni yozib boʻlmadi. Keyinroq qayta urinib ko‘ring yoki tashkilotchi bilan bog‘laning.", + "Back" : "Orqaga", + "Book appointment" : "Uchrashuvni tayinlash", + "Error fetching Talk conversations." : "Talk suhbatlarini olishda xatolik yuz berdi.", + "Conversation does not have a valid URL." : "Suhbatda yaroqli URL manzili yo‘q.", + "Successfully added Talk conversation link to location." : "Muloqot suhbati havolasi joylashuvga muvaffaqiyatli qo‘shildi.", + "Successfully added Talk conversation link to description." : "Tavsifga Talk suhbati havolasi muvaffaqiyatli qo‘shildi.", + "Failed to apply Talk room." : "Muloqot xonasini qo‘llab bo‘lmadi.", + "Error creating Talk conversation" : "Talk suhbatini yaratishda xatolik yuz berdi", + "Select a Talk Room" : "Suhbat xonasini tanlang", + "Add Talk conversation" : "Talk suhbatini qo'shing", + "Fetching Talk rooms…" : "Muloqot xonalari olinmoqda…", + "No Talk room available" : "Suhbat xonasi mavjud emas", + "Create a new conversation" : "Yangi suhbat yarating", + "Select conversation" : "Suhbatni tanlang", + "on" : "da", + "at" : "ga", + "before at" : "oldin", + "Notification" : "Bildirishnomalar", + "Email" : "Email", + "Audio notification" : "Audio xabarnoma", + "Other notification" : "Boshqa bildirishnoma", + "Relative to event" : "Tadbirga nisbatan", + "On date" : "Sanada", + "Edit time" : "Vaqtni tahrirlash", + "Save time" : "Vaqtni saqlash", + "Remove reminder" : "Eslatmani olib tashlash", + "Add reminder" : "+ Eslatma qo'shish", + "seconds" : "sekund", + "minutes" : "minut", + "hours" : "soat", + "days" : "kun", + "weeks" : "hafta", + "Choose a file to add as attachment" : "Ilova sifatida qo'shish uchun faylni tanlang", + "Choose a file to share as a link" : "Havola sifatida almashish uchun faylni tanlang", + "Attachment {name} already exist!" : "Qo'shimcha{name} allaqachon mavjud!", + "Could not upload attachment(s)" : "Biriktirma(lar)ni yuklab bo‘lmadi", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : " Siz navigatsiya qilmoqchisiz {host}. Davom etishga ishonchingiz komilmi? Havola: {link}", + "Proceed" : "Davom etish", + "No attachments" : "Qo‘shimchalar yo‘q", + "Add from Files" : "Fayllardan qo'shish", + "Upload from device" : "Qurilmadan yuklash", + "Delete file" : "Faylni o'chirish", + "Confirmation" : "Tasdiqlash", + "_{count} attachment_::_{count} attachments_" : ["{count} qo'shimchalar"], + "Suggested" : "Tavsiya etilgan", + "Available" : "Mavjud", + "Invitation accepted" : "Taklif qabul qilindi", + "Accepted {organizerName}'s invitation" : "Qabul qilingan {organizerName}ning taklifnomasi", + "Participation marked as tentative" : "Ishtirok etish taxminiy deb belgilandi", + "Invitation is delegated" : "Taklif topshiriladi", + "Not available" : "Mavjud emas", + "Invitation declined" : "Taklif rad etildi", + "Declined {organizerName}'s invitation" : "Rad etildi {organizerName}ning taklifnomasi", + "Availability will be checked" : "Mavjudligi tekshiriladi", + "Invitation will be sent" : "Taklifnoma yuboriladi", + "Failed to check availability" : "Mavjudligini tekshirib bo‘lmadi", + "Failed to deliver invitation" : "Taklifnoma yetkazilmadi", + "Awaiting response" : "Javob kutilmoqda", + "Checking availability" : "Mavjudligi tekshirilmoqda", + "Has not responded to {organizerName}'s invitation yet" : " {organizerName}ning taklifiga hali javob bermadi", + "chairperson" : "rais", + "required participant" : "talab qilinadigan ishtirokchi", + "non-participant" : "qatnashmaydigan", + "optional participant" : "ixtiyoriy ishtirokchi", + "{organizer} (organizer)" : "{organizer} (tashkilotchi)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "Ishtirokchilar, resurslar va xonalarning mavjudligi", + "Suggestion accepted" : "Taklif qabul qilindi", + "Legend" : "Ta`rif", + "Out of office" : "Ofisda emas", + "Done" : "Bajarildi", + "Search room" : "Xonani qidirish", + "Room name" : "Xona nomi", + "Check room availability" : "Xona bo`shligini tekshiring", + "Free" : "Bepul", + "Busy (tentative)" : "Band (taxminan)", + "Busy" : "Band", + "Unknown" : "Noma'lum", + "Find a time" : "Vaqt toping", + "The invitation has been accepted successfully." : "Taklif muvaffaqiyatli qabul qilindi.", + "Failed to accept the invitation." : "Taklifni qabul qilib bo‘lmadi.", + "The invitation has been declined successfully." : "Taklifnoma muvaffaqiyatli rad etildi.", + "Failed to decline the invitation." : "Taklifni rad etib bo'lmadi.", + "Your participation has been marked as tentative." : "Sizning ishtirokingiz taxminiy deb belgilandi.", + "Failed to set the participation status to tentative." : "Ishtirok etish holatini taxminiy qilib o‘rnatib bo‘lmadi.", + "Accept" : "Qabul qiling", + "Decline" : "Rad etish", + "Tentative" : "Taxminan", + "No attendees yet" : "Hozircha ishtirokchilar yoʻq", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} taklif qilingan, {confirmedCount} tasdiqlagan", + "Successfully appended link to talk room to location." : "Suhbat xonasiga havola muvaffaqiyatli qo‘shildi.", + "Successfully appended link to talk room to description." : "Tavsifga suhbat xonasiga havola muvaffaqiyatli qo‘shildi.", + "Error creating Talk room" : "Muloqot xonasini yaratishda xatolik yuz berdi", + "Attendees" : "Ishtirokchilar", + "_%n more guest_::_%n more guests_" : ["%n ko'proq mehmonlar"], + "Remove group" : "Guruhni olib tashlash", + "Remove attendee" : "Ishtirokchini olib tashlash", + "Request reply" : "Javob so'rash", + "Chairperson" : "Rais", + "Required participant" : "Majburiy ishtirokchi", + "Optional participant" : "Ixtiyoriy ishtirokchi", + "Non-participant" : "Qatnashmaydigan", + "_%n member_::_%n members_" : ["%n a'zolari"], + "Search for emails, users, contacts, contact groups or teams" : "Elektron pochta, foydalanuvchilar, kontaktlar, aloqa guruhlari yoki jamoalarni qidiring", + "No match found" : "Hech qanday moslik topilmadi", + "Note that members of circles get invited but are not synced yet." : "Esda tutingki, davra a’zolari taklif qilinadi, lekin hali sinxronlanmagan.", + "Note that members of contact groups get invited but are not synced yet." : "E'tibor bering, kontakt guruhlari a'zolari taklif qilinadi, lekin hali sinxronlanmagan.", + "(organizer)" : "(tashkilotchi)", + "Make {label} the organizer" : " {label} ni tashkilotchi qilish", + "Make {label} the organizer and attend" : " {label} ni tashkilotchi va qatnashuvchi qilish", + "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Taklifnomalarni yuborish va javoblarni ko‘rib chiqish uchun [linkopen]shaxsiy sozlamalarga elektron pochta manzilingizni qo‘shing[linkclose].", + "Remove color" : "Rangni olib tashlang", + "Event title" : "Tadbir sarlavhasi", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "Takrorlanishlar to‘plamining bir qismi bo‘lgan tadbirlar uchun kun bo‘yi sozlamani o‘zgartirib bo‘lmaydi.", + "From" : "Dan", + "To" : "Gacha", + "Repeat" : "Takrorlash", + "_time_::_times_" : ["vaqt"], + "never" : "hech qachon", + "on date" : "vaqtida", + "after" : "keyin", + "End repeat" : "Takrorlashni tugatish", + "Select to end repeat" : "Takrorlashni tugatish uchun tanlang", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Bu hodisa takrorlanish-to'plamning takrorlanish-istisnosidir. Siz unga takrorlanish qoidasini qo'sha olmaysiz.", + "first" : "dastlabki", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "Takrorlanish qoidasiga kiritilgan o'zgartirishlar faqat shu va kelajakdagi barcha hodisalarga nisbatan qo'llaniladi.", + "Repeat every" : "Har doim takrorlang", + "By day of the month" : "Oy kuni bo'yicha", + "On the" : "Ustida", + "_day_::_days_" : ["kun"], + "_week_::_weeks_" : ["hafta"], + "_month_::_months_" : ["oy"], + "_year_::_years_" : ["yil"], + "weekday" : "ish kuni", + "weekend day" : "dam olish kuni", + "Does not repeat" : "Takrorlanmaydi", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Ushbu hodisaning takrorlanish ta'rifi Nextcloud tomonidan to'liq qo'llab-quvvatlanmaydi. Agar siz takrorlash parametrlarini tahrir qilsangiz, ba'zi takrorlanishlar yo'qolishi mumkin.", + "No rooms or resources yet" : "Hozircha xonalar yoki manbalar yo'q", + "Resources" : "Resurslar", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} joylar"], + "Add resource" : "Resurs qo'shing", + "Has a projector" : "Proyektori bor", + "Has a whiteboard" : "Doska bor", + "Wheelchair accessible" : "Imtiyozlilar kirish mumkin", + "Remove resource" : "Resursni olib tashlang", + "Search for resources or rooms" : "Resurslar yoki xonalarni qidiring", + "available" : "mavjud", + "unavailable" : "mavjud emas", + "Show all rooms" : "Barcha xonalarni ko'rsatish", + "Projector" : "Proyektor", + "Whiteboard" : "Oq doska", + "Room type" : "Xona turi", + "Any" : "Har qanday", + "Minimum seating capacity" : "Minimal o'tiradigan joy", + "More details" : "Batafsil ma'lumot", + "Update this and all future" : "Buni va barcha kelajakni yangilang", + "Update this occurrence" : "Ushbu hodisani yangilang", + "Public calendar does not exist" : "Umumiy taqvim mavjud emas", + "Maybe the share was deleted or has expired?" : "Ehtimol, ulashish o'chirilgan yoki muddati tugaganmi?", + "from {formattedDate}" : " {formattedDate}dan", + "to {formattedDate}" : " {formattedDate} gacha", + "on {formattedDate}" : " {formattedDate}da", + "from {formattedDate} at {formattedTime}" : " {formattedDate}dan {formattedTime}gacha", + "to {formattedDate} at {formattedTime}" : " {formattedDate}uchun {formattedTime}da", + "on {formattedDate} at {formattedTime}" : " {formattedDate}dagi {formattedTime}uchun", + "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}uchun", + "Please enter a valid date" : "Yaroqli sana kiriting", + "Please enter a valid date and time" : "Yaroqli sana va vaqtni kiriting", + "Select a time zone" : "Vaqt mintaqasini tanlang", + "Please select a time zone:" : "Vaqt mintaqasini tanlang:", + "Pick a time" : "Vaqtni tanlang", + "Pick a date" : "Sana tanlang", + "Type to search time zone" : "Vaqt mintaqasini qidirish uchun kiriting", + "Global" : "Global", + "Holidays in {region}" : " {region}da dam olish kunlari", + "An error occurred, unable to read public calendars." : "Xatolik yuz berdi, umumiy taqvimni o‘qib bo‘lmadi.", + "An error occurred, unable to subscribe to calendar." : "Xatolik yuz berdi, taqvimga obuna boʻlmadi.", + "Public holiday calendars" : "Davlat bayramlari taqvimi", + "Public calendars" : "Umumiy taqvim", + "No valid public calendars configured" : "Yaroqli umumiy taqvim sozlanmagan", + "Speak to the server administrator to resolve this issue." : "Ushbu muammoni hal qilish uchun server administratoriga murojaat qiling.", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "Davlat bayramlari kalendarlari Thunderbird tomonidan taqdim etiladi. Taqvim maʼlumotlari {website}dan yuklab olinadi", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "Ushbu ommaviy taqvimlar server administratori tomonidan taklif qilinadi. Taqvim ma'lumotlari tegishli veb-saytdan yuklab olinadi.", + "By {authors}" : " {authors}tomonidan", + "Subscribed" : "Obuna boʻlgan", + "Subscribe" : "Obuna boʻlish", + "Could not fetch slots" : "Slotlarni olib bo‘lmadi", + "Select a date" : "Sana tanlash", + "Select slot" : "Slotni tanlash", + "No slots available" : "Slotlar mavjud emas", + "The slot for your appointment has been confirmed" : "Uchrashuvingiz uchun joy tasdiqlandi", + "Appointment Details:" : "Uchrashuv tafsilotlari:", + "Time:" : "Vaqt:", + "Booked for:" : "Quyidagilar uchun band qilingan:", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "Quyidagilar uchun band qilingan: Rahmat. {startDate} dan {endDate} gacha bandlovingiz tasdiqlandi.", + "Book another appointment:" : "Boshqa uchrashuvni bron qiling:", + "See all available slots" : "Barcha mavjud slotlarni ko'ring", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : " {startDate} dan {endDate} gacha bo‘lgan uchrashuv uchun vaqt endi mavjud emas.", + "Please book a different slot:" : "Iltimos, boshqa joyni band qiling:", + "Book an appointment with {name}" : " {name} bilan uchrashuvni bron qiling", + "No public appointments found for {name}" : " {name}bilan umumiy uchrashuvlar topilmadi", + "Personal" : "Shaxsiy", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Vaqt mintaqasini avtomatik aniqlash sizning vaqt mintaqangiz UTC ekanligini aniqladi.\nBu, ehtimol, veb-brauzeringizning xavfsizlik choralari natijasidir.\nIltimos, taqvim sozlamalarida vaqt mintaqangizni qo‘lda o‘rnating.", + "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Sozlangan vaqt mintaqangiz ({timezoneId}) topilmadi. UTC ga qaytish.\nSozlamalarda vaqt mintaqangizni o‘zgartiring va bu muammo haqida xabar bering.", + "Availability of {displayName}" : " {displayName}uchun mavjud", + "Event does not exist" : "Tadbir mavjud emas", + "Duplicate" : "Nusxa", + "Delete this occurrence" : "Ushbu tadbirni o'chiring", + "Delete this and all future" : "Buni va barcha keyingilarini o'chirib tashlang", + "All day" : "Butun kun", + "Modifications wont get propagated to the organizer and other attendees" : "O'zgartirishlar tashkilotchiga va boshqa ishtirokchilarga targ'ib qilinmaydi", + "Managing shared access" : "Umumiy foydalanishni boshqarish", + "Deny access" : "Kirishni rad etish", + "Invite" : "Taklif qiling", + "_User requires access to your file_::_Users require access to your file_" : ["Foydalanuvchilar faylingizga kirishni talab qiladi"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["Umumiy ruxsatni talab qiluvchi biriktirmalar"], + "Untitled event" : "Nomsiz tadbir", + "Close" : "Yopish", + "Modifications will not get propagated to the organizer and other attendees" : "O'zgartirishlar tashkilotchiga va boshqa ishtirokchilarga targ'ib qilinmaydi", + "Subscribe to {name}" : " {name}ga obuna bo'ling", + "Export {name}" : " {name}eksporti", + "Show availability" : "Mavjudligini ko'rsatish", + "Anniversary" : "Yubiley", + "Appointment" : "Uchrashuv", + "Business" : "Biznes", + "Education" : "Ta'lim", + "Holiday" : "Bayram", + "Meeting" : "Uchrashuv", + "Miscellaneous" : "Turli xil", + "Non-working hours" : "Ishlamaydigan soatlar", + "Not in office" : "Ofisda emas", + "Phone call" : "Telefon qo'ng'irog'i", + "Sick day" : "Kasal kun", + "Special occasion" : "Maxsus voqea", + "Travel" : "Sayohat", + "Vacation" : "Dam olish", + "Midnight on the day the event starts" : "Tadbir boshlangan kuni yarim tunda", + "_%n day before the event at {formattedHourMinute}_::_%n days before the event at {formattedHourMinute}_" : ["%n tadbirdan bir necha kun oldin {formattedHourMinute}"], + "_%n week before the event at {formattedHourMinute}_::_%n weeks before the event at {formattedHourMinute}_" : ["%n tadbirdan bir necha hafta oldin{formattedHourMinute}"], + "on the day of the event at {formattedHourMinute}" : " {formattedHourMinute} tadbir kuni da", + "at the event's start" : "tadbir boshida", + "at the event's end" : "tadbir oxirida", + "{time} before the event starts" : "{time} tadbir boshlanishidan oldin", + "{time} before the event ends" : "{time} tadbir tugashidan oldin", + "{time} after the event starts" : "{time} tadbir boshlanganidan keyin", + "{time} after the event ends" : "{time} tadbir tugaganidan keyin", + "on {time}" : " {time}da", + "on {time} ({timezoneId})" : " {time}da ({timezoneId})", + "Week {number} of {year}" : " {number}haftasi {year}yilning", + "Daily" : "Kunlik", + "Weekly" : "Haftalik", + "Monthly" : "Oylik", + "Yearly" : "Yillik", + "_Every %n day_::_Every %n days_" : ["Har %n kun"], + "_Every %n week_::_Every %n weeks_" : ["Har %n hafta"], + "_Every %n month_::_Every %n months_" : ["Har %n oy"], + "_Every %n year_::_Every %n years_" : ["Har %n yil"], + "_on {weekday}_::_on {weekdays}_" : [" {weekdays}da"], + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : [" {dayOfMonthList}kunda"], + "on the {ordinalNumber} {byDaySet}" : "{ordinalNumber} {byDaySet}da", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : " {monthNames} ichida {ordinalNumber} {byDaySet}da", + "until {untilDate}" : " {untilDate}gacha", + "_%n time_::_%n times_" : ["%n vaqt"], + "second" : "sekund", + "third" : "uchinchi", + "fourth" : "to`rtinchi", + "fifth" : "beshinchi", + "second to last" : "oxiridan ikkinchi", + "last" : "oxirgi", + "Untitled task" : "Nomsiz vazifa", + "Please ask your administrator to enable the Tasks App." : "Iltimos, administratoringizdan Tasks ilovasini yoqishini soʻrang.", + "You are not allowed to edit this event as an attendee." : "Siz ishtirokchi sifatida ushbu tadbirni tahrirlashingiz mumkin emas.", + "W" : "W", + "%n more" : "%n ko`proq", + "No events to display" : "Ko'rsatiladigan tadbir yo'q", + "All participants declined" : "Barcha ishtirokchilar rad etishdi", + "Please confirm your participation" : "Iltimos, ishtirokingizni tasdiqlang", + "You declined this event" : "Siz bu tadbirni rad etdingiz", + "Your participation is tentative" : "Sizning ishtirokingiz taxminiy", + "_+%n more_::_+%n more_" : ["+%n ko`p[roq"], + "No events" : "Hech qanday tadbir yo'q", + "Create a new event or change the visible time-range" : "Yangi hodisa yarating yoki ko'rinadigan vaqt oralig'ini o'zgartiring", + "Failed to save event" : "Tadbirni saqlab bo‘lmadi", + "It might have been deleted, or there was a typo in a link" : "U oʻchirilgan yoki havolada xatolik yuz bergan boʻlishi mumkin", + "It might have been deleted, or there was a typo in the link" : "U o'chirilgan yoki havolada xatolik yuz bergan bo'lishi mumkin", + "Meeting room" : "Uchrashuv xonasi", + "Lecture hall" : "Ma'ruza zali", + "Seminar room" : "Seminar xonasi", + "Other" : "Boshqa", + "When shared show" : "Baham ko'rilganda", + "When shared show full event" : "Ulashganda toʻliq tadbir koʻrsatiladi", + "When shared show only busy" : "Baham ko'rilganda faqat band ko`rsatish", + "When shared hide this event" : "Baham ko'rilganda, bu tadbirni yashirish", + "The visibility of this event in shared calendars." : "Bu tadbirning umumiy taqvimda koʻrinishi.", + "Add a location" : "Joy qo'shing", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "Tavsif qo'shing\n\n- Bu uchrashuv nima haqida\n- Kun tartibidagi masalalar\n- Ishtirokchilar tayyorlashi kerak bo'lgan hamma narsa", + "Status" : "Holat", + "Confirmed" : "Tasdiqlangan", + "Canceled" : "Bekor qilingan", + "Confirmation about the overall status of the event." : "Tadbirning umumiy holatini tasdiqlash.", + "Show as" : "Sifatida ko'rsatish", + "Take this event into account when calculating free-busy information." : "Bepul band bo'lgan ma'lumotni hisoblashda ushbu hodisani hisobga oling.", + "Categories" : "Kategoriyalar", + "Categories help you to structure and organize your events." : "Kategoriyalar tadbirlaringizni tuzish va tartibga solishga yordam beradi.", + "Search or add categories" : "Kategoriyalarni qidiring yoki qo'shing", + "Add this as a new category" : "Buni yangi turkum sifatida qo'shing", + "Custom color" : "Maxsus rang", + "Special color of this event. Overrides the calendar-color." : "Ushbu tadbirning o'ziga xos rangi. Kalendar rangini bekor qiladi.", + "Error while sharing file" : "Fayl almashishda xatolik yuz berdi", + "Error while sharing file with user" : "Foydalanuvchi bilan fayl almashishda xatolik yuz berdi", + "Attachment {fileName} already exists!" : "Qo'shimcha {fileName} allaqachon mavjud!", + "An error occurred during getting file information" : "Fayl ma'lumotlarini olishda xatolik yuz berdi", + "Talk conversation for event" : "Tadbir uchun suhbat", + "An error occurred, unable to delete the calendar." : "Xatolik yuz berdi, kalendarni oʻchirib boʻlmadi.", + "Imported {filename}" : "Importlandi {filename}", + "This is an event reminder." : "Bu tadbir eslatmasi.", + "Error while parsing a PROPFIND error" : "PROPFIND xatosini tahlil qilishda xatolik yuz berdi", + "Appointment not found" : "Uchrashuv topilmadi", + "User not found" : "Foydalanuvchi topilmadi", + "Reminder" : "Eslatma", + "+ Add reminder" : "+ Eslatma qo'shish", + "Select automatic slot" : "Avtomatik slotni tanlang", + "with" : "bilan", + "Available times:" : "Bo`sh vaqtlar:", + "Suggestions" : "Takliflar", + "Details" : "Tafsilotlar" +},"pluralForm" :"nplurals=1; plural=0;" +} \ No newline at end of file diff --git a/l10n/vi.js b/l10n/vi.js index 204624e7629eabfb28ab72f1906d6361821cf480..ee80310bf40aaadeabec90e5e5f2db8ef8b46f70 100644 --- a/l10n/vi.js +++ b/l10n/vi.js @@ -11,110 +11,99 @@ OC.L10N.register( "Open »%s«" : "Mở »%s«", "Cheers!" : "Xin chúc mừng!", "Upcoming events" : "Các sự kiện sắp diễn ra", + "No more events today" : "Không có thêm sự kiện nào hôm nay", + "No upcoming events" : "Không có sự kiện sắp diễn ra ", + "Calendar" : "Lịch", "Appointments" : "Các lịch hẹn ", "Schedule appointment \"%s\"" : "Lên lịch lịch hẹn \"%s\"", "Schedule an appointment" : "Lên lịch một lịch hẹn", "Prepare for %s" : "Chuản bị cho %s", "Follow up for %s" : "Diễn tiến cho %s", - "Your appointment \"%s\" needs confirmation" : "Lịch hẹn \"%s\" của bạn cần được xác nhận", "Dear %s, please confirm your booking" : "%s thân ái, vui lòng xác nhận lịch đặt hẹn của bạn", "Confirm" : "Xác nhận", + "Description:" : "Mô tả:", "This confirmation link expires in %s hours." : "Liên kết xác nhận sẽ hết hạn trong %s giờ.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Nếu bạn muốn huỷ lịch hẹn này, vui lòng liên hệ với người tổ chức", - "Appointment:" : "Lịch hẹn:", "Date:" : "Ngày:", "Where:" : "Địa điểm:", - "Description:" : "Mô tả:", - "Calendar" : "Lịch", "A Calendar app for Nextcloud" : "Một ứng dụng Lịch nhắc nhở cho Hệ thống", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Ứng dụng Lịch là một ứng dụng tương tác cho người dùng cuối dựa trên hệ máy chủ CalDAV của Nextcloud. Dễ dàng đồng bộ các sự kiện và lịch cho hầu hết các thiết bị với Nextcloud của bạn và chỉnh sửa chúng trực tuyến. \n\n* 🚀 ** Tương tác với các ứng dụng Nextcloud khác!** Hiện tại là ứng dụng Danh Bạ - Sẽ có thêm nhiều hơn.\n* 🌐 ** Hỗ trợ Webcal!** Muốn thấy lịch thi đấu của đội bóng yêu thích ngay trên lịch của bạn? Chuyện nhỏ !\n* 🙋**Người tham dự!** Gửi lời mời tham dự sự kiện của bạn cho mọi người\n* ⌚️ **Rãnh/Bận!** Có thể xem trước được người được mời tham dự có rãnh hay để lên hẹn hay không\n* ⏰**Nhắc hẹn!**Nhận báo thức cho các sự kiện ngay trên trình duyệt hoạc thông qua email\n* 🔍Tìm kiếm các sự kiện và lịch hẹn 1 cách dễ dàng\n* 🙈**Chúng tôi không chế ra bánh xe mới!** Được dựa trên [c-dav library] tuyệt vời (https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) và các thư viện [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Ngày trước", "Previous week" : "Tuần trước", "Previous month" : "Tháng trước", "Next day" : "Ngày hôm sau", "Next week" : "Tuần sau", + "Next year" : "Năm tiếp theo", "Next month" : "Tháng sau", - "New event" : "Sự kiện mới", "Today" : "Hôm nay", "Day" : "Ngày", "Week" : "Tuần", "Month" : "Tháng", + "Year" : "Năm", "List" : "Danh sách", + "Appointment link was copied to clipboard" : "Liên kết cuộc hẹn đã được sao chép vào bảng tạm", + "Appointment link could not be copied to clipboard" : "Liên kết cuộc hẹn không thể được sao chép vào bảng tạm", "Preview" : "Xem trước", "Copy link" : "Sao chép liên kết", "Edit" : "Chỉnh sửa", "Delete" : "Xóa", - "Appointment link was copied to clipboard" : "Liên kết cuộc hẹn đã được sao chép vào bảng tạm", - "Appointment link could not be copied to clipboard" : "Liên kết cuộc hẹn không thể được sao chép vào bảng tạm", - "Add new" : "Thêm mới", - "Untitled calendar" : "Lịch không tiêu đề", - "Edit name" : "Sửa đổi tên", - "Saving name …" : "Đang lưu tên  …", - "Edit color" : "Sửa đổi màu", - "Saving color …" : "Đang sửa đổi màu  …", - "Copy private link" : "Sao chép liên kết riêng tư", - "Export" : "Xuất ra", - "Unshare from me" : "Gỡ chia sẻ khỏi tôi", + "Create new" : "Tạo mới", "An error occurred, unable to change visibility of the calendar." : "Một lỗi đã xảy ra, không thể thay đổi tính hiển thị của lịch.", - "An error occurred, unable to delete the calendar." : "Một lỗi đã xảy ra, không thể xóa lịch.", - "Calendar link copied to clipboard." : "Liên kết của lịch đã được sao chép vào bảng tạm.", - "Calendar link could not be copied to clipboard." : "Liên kết của lịch không thể sao chép vào bảng tạm.", - "An error occurred, unable to rename the calendar." : "Một lỗi đã xảy ra, không thể đổi tên của lịch.", - "An error occurred, unable to change the calendar's color." : "Một lỗi đã xảy ra, không thể thay đổi màu sắc của lịch.", + "Untitled calendar" : "Lịch không tiêu đề", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Đang gỡ chia sẻ của lịch trong {countdown} giây"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Đang xóa lịch trong {countdown} giây"], + "An error occurred, unable to create the calendar." : "Một lỗi đã xảy ra, không thẻ tạo lịch.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vui lòng nhập vào một liên kết khả dụng ( bắt đầu với http://, https://, webcal://, hoặc webcals://)", + "Calendars" : "Lịch", + "Add new" : "Thêm mới", + "New calendar" : "Lịch mới", + "Name for new calendar" : "Tên cho lịch mới", + "Creating calendar …" : "Đang tạo lịch  …", + "New calendar with task list" : "Lịch mới với danh sách nhiệm vụ", + "New subscription from link (read-only)" : "Đăng kí theo dõi mới từ liên kết (Chỉ-đọc)", + "Creating subscription …" : "Đang tạo đăng kí theo dõi mới  …", + "Calendar link copied to clipboard." : "Liên kết của lịch đã được sao chép vào bảng tạm.", + "Calendar link could not be copied to clipboard." : "Liên kết của lịch không thể sao chép vào bảng tạm.", + "Copy subscription link" : "Sao chép liên kết theo dõi ", + "Copying link …" : "Sao chép liên kết  ...", + "Copied link" : "Liên kết đã được sao chép", + "Could not copy link" : "Không thể sao chép liên kết", + "Export" : "Xuất ra", + "Unknown calendar" : "Lịch không rõ nguồn", + "Could not load deleted calendars and objects" : "Không thể hiển thị lịch hoặc các đối tượng đã xoá", + "Could not restore calendar or event" : "Không thể khôi phục lịch hoặc sự kiện", + "Do you really want to empty the trash bin?" : "Bạn có chắc là muốn dọn sạch thùng rác hay không?", + "Empty trash bin" : "Dọn thùng rác", + "Trash bin" : "Thùng rác", + "Name" : "Tên", + "Deleted" : "Đã xoá", + "Restore" : "Khôi phục", + "Delete permanently" : "Xoá vĩnh viễn", + "Could not update calendar order." : "Không thể cập nhật thứ tự của lịch", + "Deck" : "Kế hoạch", + "Hidden" : "Ẩn", + "Internal link" : "Liên kết nội bộ", + "An error occurred, unable to publish calendar." : "Có lỗi đã xảy ra, không thể công khai lịch.", + "An error occurred, unable to send email." : "Một lỗi đã xảy ra, không thể gửi email.", + "Embed code copied to clipboard." : "Mã nhúng đã được sao chép vào bảng tạm.", + "Embed code could not be copied to clipboard." : "Mã nhúng không thể được sao chép vào bảng tạm.", + "Unpublishing calendar failed" : "Gỡ công khai cho lịch thất bại", "Share link" : "Liên kết chia sẽ", - "Publish calendar" : "Công khai lịch", - "Publishing calendar" : "Đang công khai lịch", "Copy public link" : "Sao chép liên kết công khai", "Send link to calendar via email" : "Gửi liên kết đến lịch thông qua thư điện tử", "Enter one address" : "Điền vào môt địa chỉ", "Sending email …" : "Đang gửi email ...", - "Copy subscription link" : "Sao chép liên kết theo dõi ", - "Copying link …" : "Sao chép liên kết  ...", - "Copied link" : "Liên kết đã được sao chép", - "Could not copy link" : "Không thể sao chép liên kết", "Copy embedding code" : "Đang sao chép mã nhúng", "Copying code …" : "Đang sao chép mã  ...", "Copied code" : "Đã sao chép dòng lệnh", "Could not copy code" : "Không thể sao chép dòng lệnh", "Delete share link" : "Xóa liên kết chia sẻ", "Deleting share link …" : "Đang xóa liên kết chia sẻ  ...", - "An error occurred, unable to publish calendar." : "Có lỗi đã xảy ra, không thể công khai lịch.", - "An error occurred, unable to send email." : "Một lỗi đã xảy ra, không thể gửi email.", - "Embed code copied to clipboard." : "Mã nhúng đã được sao chép vào bảng tạm.", - "Embed code could not be copied to clipboard." : "Mã nhúng không thể được sao chép vào bảng tạm.", - "Unpublishing calendar failed" : "Gỡ công khai cho lịch thất bại", - "Share with users or groups" : "Chia sẽ với người dùng hoặc nhóm", - "No users or groups" : "Không có người dùng hay nhóm", + "An error occurred, unable to change the permission of the share." : "Một lỗi đã diễn ra, không thể thay đổi quyền hạn chia sẻ", "can edit" : "có thể chỉnh sửa", "Unshare with {displayName}" : "Gỡ chia sẻ với {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Một lỗi đã xảy ra, không thể thay đổi thuộc tính chia sẻ của lịch ", - "An error occurred, unable to change the permission of the share." : "Một lỗi đã diễn ra, không thể thay đổi quyền hạn chia sẻ", - "+ New calendar" : "+ Lịch mới", - "New calendar" : "Lịch mới", - "Name for new calendar" : "Tên cho lịch mới", - "Creating calendar …" : "Đang tạo lịch  …", - "New calendar with task list" : "Lịch mới với danh sách nhiệm vụ", - "New subscription from link (read-only)" : "Đăng kí theo dõi mới từ liên kết (Chỉ-đọc)", - "Creating subscription …" : "Đang tạo đăng kí theo dõi mới  …", - "An error occurred, unable to create the calendar." : "Một lỗi đã xảy ra, không thẻ tạo lịch.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vui lòng nhập vào một liên kết khả dụng ( bắt đầu với http://, https://, webcal://, hoặc webcals://)", - "Trash bin" : "Thùng rác", - "Loading deleted elements." : "Đang hiển thị thông tin đã xoá", - "You do not have any deleted elements." : "Bạn không có thông tin nào đã xoá", - "Name" : "Tên", - "Deleted" : "Đã xoá", - "Restore" : "Khôi phục", - "Delete permanently" : "Xoá vĩnh viễn", - "Empty trash bin" : "Dọn thùng rác", - "Untitled element" : "Thông tin không được đặt tiêu đề", - "Unknown calendar" : "Lịch không rõ nguồn", - "Could not load deleted calendars and objects" : "Không thể hiển thị lịch hoặc các đối tượng đã xoá", - "Could not restore calendar or event" : "Không thể khôi phục lịch hoặc sự kiện", - "Do you really want to empty the trash bin?" : "Bạn có chắc là muốn dọn sạch thùng rác hay không?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Các đối tượng trong thùng rác được xoá sau {numDays} ngày"], - "Could not update calendar order." : "Không thể cập nhật thứ tự của lịch", + "Share with users or groups" : "Chia sẽ với người dùng hoặc nhóm", + "No users or groups" : "Không có người dùng hay nhóm", + "Unshare from me" : "Gỡ chia sẻ khỏi tôi", + "Save" : "Lưu", "Import calendars" : "Nhập lịch", "Please select a calendar to import into …" : "Vui lòng chọn một lịch để nhập vào  …", "Filename" : "Tên tập tin", @@ -123,13 +112,11 @@ OC.L10N.register( "_Import calendar_::_Import calendars_" : ["Nhập lịch"], "{filename} could not be parsed" : "{filename} không thể được phân tách", "No valid files found, aborting import" : "Không có tệp khả dụng được tìm thấy, đang hủy quá trình nhập", - "Import partially failed. Imported {accepted} out of {total}." : "Quá trình nhập thất bại 1 phần. Đã nhập {accepted} trong tổng {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n sự kiện đã được nhập vào thành công"], + "Import partially failed. Imported {accepted} out of {total}." : "Quá trình nhập thất bại 1 phần. Đã nhập {accepted} trong tổng {total}.", "Automatic" : "Tự động", "Automatic ({detected})" : " ({detected}) tự động", "New setting was not saved successfully." : "Thiết lập mới không được lưu thành công", - "Shortcut overview" : "Bản xem trước của lối tắt", - "or" : "hoặc", "Navigation" : "Điều hướng", "Previous period" : "Kỳ trước", "Next period" : "Kỳ tiếp theo", @@ -145,10 +132,14 @@ OC.L10N.register( "Close editor" : "Đóng trình biên tập", "Save edited event" : "Lưu lại sự kiện được chỉnh sửa", "Delete edited event" : "Xoá sự kiện được chỉnh sửa", + "Shortcut overview" : "Bản xem trước của lối tắt", + "or" : "hoặc", + "No reminder" : "Không có nhắc hẹn", + "CalDAV link copied to clipboard." : "Liên kết CalDAV đã được sao chép vào bảng tạm", + "CalDAV link could not be copied to clipboard." : "Liên kết CalDAV không thể được sao chép vào bảng tạm.", "Enable birthday calendar" : "Bật lịch sinh nhật", "Show tasks in calendar" : "Cho thấy nhiệm vụ trong lịch", "Enable simplified editor" : "Bật chỉnh sửa đơn giản", - "Limit visible events per view" : "Hạn chế các sự kiện có thể thấy trên mỗi lượt xem", "Show weekends" : "Cho thấy ngày cuối tuần", "Show week numbers" : "Hiển thị số tuần", "Time increments" : "Mức tăng thời gian", @@ -157,11 +148,6 @@ OC.L10N.register( "Copy iOS/macOS CalDAV address" : "Sao chép địa chỉ CalDAV cho iOS/macOC", "Personal availability settings" : "Thiết lập lịch trống cá nhân", "Show keyboard shortcuts" : "Hiển thị các phím tắt", - "No reminder" : "Không có nhắc hẹn", - "CalDAV link copied to clipboard." : "Liên kết CalDAV đã được sao chép vào bảng tạm", - "CalDAV link could not be copied to clipboard." : "Liên kết CalDAV không thể được sao chép vào bảng tạm.", - "Appointment was created successfully" : "Lịch hẹn đã được tạo thành công", - "Appointment was updated successfully" : "Lịch hẹn đã được cập nhập thành công", "_{duration} minute_::_{duration} minutes_" : ["{duration} phút"], "0 minutes" : "0 phút", "_{duration} hour_::_{duration} hours_" : ["{duration} giờ"], @@ -172,6 +158,7 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "Để cấu hình lịch hẹn, thêm vào địa chỉ email trong thiết lập cá nhân.", "Public – shown on the profile page" : "Công cộng - Được hiển thị công khai trên trang thông tin cá nhân", "Private – only accessible via secret link" : "Riêng tư - Chỉ có thể truy cập thông qua liên kết bí mật", + "Update" : "Cập nhật", "Location" : "Vị trí", "Description" : "Mô tả", "Visibility" : "Hiển thị", @@ -197,18 +184,16 @@ OC.L10N.register( "Minimum time before next available slot" : "Thời gian tối thiểu trước một suất mở", "Max slots per day" : "Số suất tối đa trong ngày", "Limit how far in the future appointments can be booked" : "Giới hạn khoảng thời gian bao xa trong tương lai mà lịch hẹn có thể được đặt", - "Create appointment" : "Tạo lịch hẹn", - "Edit appointment" : "Chỉnh sửa lịch hẹn", - "Save" : "Lưu", - "Update" : "Cập nhật", "Please confirm your reservation" : "Vui lòng xác nhận đặt chỗ của bạn", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Chúng tôi đã gửi bạn một email với đầy đủ chi tiết. Vui lòng xác nhận lịch hẹn của bạn bằng liên kết trong email. Bây giờ bạn đã có thể đóng trang này.", "Your name" : "Tên của bạn", "Your email address" : "Địa chỉ email của bạn", "Please share anything that will help prepare for our meeting" : "Vui lòng chia sẻ bất cứ gì có thể giúp cho việc chuẩn bị cho cuộc hẹn ", "Could not book the appointment. Please try again later or contact the organizer." : "Không thể đặt lịch hẹn. Vui lòng thử lại sau hoặc liên hệ với người tổ chức.", - "Book the appointment" : "Đặt lịch hẹn", - "Reminder" : "Lịch nhắc hẹn", + "Back" : "Trở lại", + "Select conversation" : "Chọn cuộc trò chuyện", + "on" : "trên", + "at" : "vào lúc", "before at" : "trước lúc", "Notification" : "Thông báo", "Email" : "Thư điện tử", @@ -219,103 +204,95 @@ OC.L10N.register( "Edit time" : "Chỉnh sửa thời gian", "Save time" : "Lưu thời gian", "Remove reminder" : "Gỡ bỏ lịch nhắc hẹn", - "on" : "trên", - "at" : "vào lúc", - "+ Add reminder" : "+ Thêm lịch nhắc hẹn", "Add reminder" : "Thêm vào nhắc hẹn", - "_second_::_seconds_" : ["giây"], - "_minute_::_minutes_" : ["phút"], - "_hour_::_hours_" : ["giờ"], - "_day_::_days_" : ["ngày"], - "_week_::_weeks_" : ["tuần"], + "seconds" : "giây", + "minutes" : "phút", + "hours" : "giờ", + "days" : "ngày", + "weeks" : "tuần", + "Choose a file to add as attachment" : "Chọn một tệp để thêm dưới dạng tệp đính kèm", + "Choose a file to share as a link" : "Chọn một tệp để chia sẻ dưới dạng liên kết", + "Proceed" : "Tiến hành", + "Delete file" : "Xóa tệp", "Suggested" : "Được đề xuất", "Available" : "khả dụng", - "Not available" : "Không khả dụng", - "Checking availability" : "Đang kiểm tra lịch trống", "Invitation accepted" : "Lời mời đã được chấp nhận", "Accepted {organizerName}'s invitation" : "Đã chấp nhận lời mời của {organizerName}", + "Not available" : "Không khả dụng", "Invitation declined" : "Lời mời đã bị từ chối", "Declined {organizerName}'s invitation" : "Đã từ chối lời mời của {organizerName}", - "Availability of attendees, resources and rooms" : "Tình trạng tham gia của người dự, nguồn lực và phòng ", + "Checking availability" : "Đang kiểm tra lịch trống", "{organizer} (organizer)" : "{organizer} (người tổ chức)", + "Availability of attendees, resources and rooms" : "Tình trạng tham gia của người dự, nguồn lực và phòng ", + "Out of office" : "Không ở văn phòng", + "Done" : "Hoàn thành", + "Room name" : "Tên phòng", "Free" : "Rãnh", "Busy (tentative)" : "Bận (có khả năng thay đổi)", "Busy" : "Bận", - "Out of office" : "Không ở văn phòng", "Unknown" : "Không xác định", "Accept" : "Đồng ý", + "Decline" : "Từ chối", "Tentative" : "Chưa chắc chắn", - "Create Talk room for this event" : "Tạo một phòng trò chuyện cho sự kiện này", - "Show busy times" : "Cho thấy các thời gian bận", "No attendees yet" : "Chưa có giờ tham gia", "Successfully appended link to talk room to description." : "Liên kết đã được thêm thành công vào mô tả trong phòng trò chuyện ", "Error creating Talk room" : "Có lõi xảy ra khi tạo phòng Trò chuyện", - "Send email" : "Gửi email", + "Attendees" : "Người tham gia", + "Remove group" : "Xóa nhóm", + "Remove attendee" : "Gỡ bỏ người tham gia", "Chairperson" : "Chủ tịch", "Required participant" : "Người tham gia được yêu cầu", "Optional participant" : "Người tham gia không bắt buộc", "Non-participant" : "Người không tham gia", - "Remove attendee" : "Gỡ bỏ người tham gia", - "Search for emails, users or contacts" : "Tìm kiếm cho email, người dùng hoặc liên hệ", "No match found" : "Không có khớp lệnh nào được tìm thấy", "(organizer)" : "(organizer)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Để gửi lời mời và tiếp nhận các phản hồi, [linkopen] thêm địa chỉ email riêng của bạn trong phần cài đặt cá nhân[linkclose].", "Remove color" : "Gỡ màu", "Event title" : "Tiêu đề sự kiện", - "All day" : "Cả ngày", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Không thể điều chỉnh thiết lập cả-ngày cho các sự kiện là một phần của sự kiện-lặp lại.", - "from {startDate}" : "từ {startDate}", - "from {startDate} at {startTime}" : "từ {startDate} vào lúc {startTime}", - "to {endDate}" : "đến {endDate}", - "to {endDate} at {endTime}" : "đến {endDate} vào lúc {endTime}", + "From" : "Từ", + "To" : "Tới", "Repeat" : "Lặp lại", - "End repeat" : "Kết thúc lập lại", - "Select to end repeat" : "Chọn thời gian kết thúc lặp lại", + "_time_::_times_" : ["lần"], "never" : "không thay đổi", "on date" : "vào ngày", "after" : "sau khi", - "_time_::_times_" : ["lần"], + "End repeat" : "Kết thúc lập lại", + "Select to end repeat" : "Chọn thời gian kết thúc lặp lại", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Sự kiện này là loại trừ trong một bộ sự kiện-lặp lại. Bạn không thể thêm bất cứ qui tắc-lặp lại nào vào nó. ", "first" : "đầu tiên", - "third" : "vị trí thứ ba", - "fourth" : "vị trí thứ tư", - "fifth" : "vị trí thứ năm", - "second to last" : "kế cuối", - "last" : "cuối cùng", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "các thay đổi đến luật lệ định kỳ này sẽ chỉ áp dụng cho định kỳ này và các định kỳ tương lai của nó ", "Repeat every" : "Lặp lại mỗi", "By day of the month" : "Vào ngày của tháng", "On the" : "Trên", + "_day_::_days_" : ["ngày"], + "_week_::_weeks_" : ["tuần"], "_month_::_months_" : ["tháng"], "_year_::_years_" : ["năm"], "weekday" : "ngày làm việc", "weekend day" : "ngày cuối tuần", - "No recurrence" : "Không lặp lại", + "Does not repeat" : "Không lặp lại", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Định nghĩa về định kỳ của sự kiện này không hoàn toàn được hỗ trợ bởi vWorkspace. Nếu bạn sửa các lựa chọn định kỳ này, một vài định kỳ có thể sẽ bị mất ", - "Suggestions" : "Các đề suất", "No rooms or resources yet" : "Chưa có phòng hoặc nguồn lực", + "Resources" : "Các nguồn lực", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} chỗ ngồi"], "Add resource" : "Thêm nguồn lực", "Has a projector" : "Có máy chiếu", "Has a whiteboard" : "Có bảng đen ", "Wheelchair accessible" : "Có lối đi cho người khuyết tật", "Remove resource" : "Gỡ bỏ nguồn lực", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} chỗ ngồi"], - "Projector" : "Máy chiếu", - "Whiteboard" : "Bảng viết", "Search for resources or rooms" : "Tìm kiếm cho nguồn lực hoặc phòng trống", "available" : "khả dụng", "unavailable" : "không khả dụng", + "Projector" : "Máy chiếu", + "Whiteboard" : "Bảng viết", "Room type" : "Loại phòng", "Any" : "Bất cứ", "Minimum seating capacity" : "Số ghế ngồi tối thiểu", - "More" : "Thêm", - "Update this occurrence" : "Cập nhập định kỳ này", "Update this and all future" : "Cập nhập định kỳ này và cho toàn bộ tương lai", + "Update this occurrence" : "Cập nhập định kỳ này", "Public calendar does not exist" : "Lịch công khai không tồn tại", "Maybe the share was deleted or has expired?" : "Có lẽ chia sẽ đã bị xóa hoặc hết hạn ? ", - "Please select a time zone:" : "Vui lòng chọn múi thời gian:", - "Pick a time" : "Chọn thời gian", - "Pick a date" : "Chọn ngày", "from {formattedDate}" : "từ {formattedDate}", "to {formattedDate}" : "đến {formattedDate}", "on {formattedDate}" : "vào {formattedDate}", @@ -325,9 +302,13 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} vào lúc {formattedTime}", "Please enter a valid date" : "Vui lòng điền vào 1 ngày khả dụng", "Please enter a valid date and time" : "Vui lòng điền vào 1 ngày và thời gian khả dụng", + "Please select a time zone:" : "Vui lòng chọn múi thời gian:", + "Pick a time" : "Chọn thời gian", + "Pick a date" : "Chọn ngày", "Type to search time zone" : "Nhập để kiếm cho múi thời gian", "Global" : "Chung", - "Select date" : "Chọn ngày", + "Subscribed" : "Đã đăng ký", + "Subscribe" : "Theo dõi", "Select slot" : "Chọn suất", "No slots available" : "Không có suất trống", "The slot for your appointment has been confirmed" : "Suất cho cuộc hẹn của bạn đã được xác nhận", @@ -344,22 +325,16 @@ OC.L10N.register( "Personal" : "Cá nhân", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Chức năng tự động phát hiện múi giờ đã xác định múi giờ của bạn là UTC. \nRất có khả năng đây là kết quả lấy từ các tuỳ chỉnh bảo mật trong trình duyệt của bạn.\nVui lòng chuyển đổi thủ công múi của giờ của bạn trong phần thiết lập của Lịch", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Không tìm thấy múi giờ ({timezoneId}) được cấu hình của bạn. Thiết lập múi giờ sẽ được trở về lại UTC. Vui lòng thay đổi múi giờ của bạn trong phần cài đặt và hãy báo cáo sự cố này. ", - "No more events today" : "Không có thêm sự kiện nào hôm nay", - "No upcoming events" : "Không có sự kiện sắp diễn ra ", - "Create a new event" : "Tạo một sự kiện mới", - "[Today]" : "[Hôm nay]", - "[Tomorrow]" : "[Ngày mai]", - "[Yesterday]" : "[Hôm qua]", - "[Last] dddd" : "[Trước] dddd", + "Edit event" : "Sửa sự kiện", "Event does not exist" : "Sự kiện không tồn tại", "Delete this occurrence" : "Xóa định kỳ này", "Delete this and all future" : "Xóa địnhy kỳ này và tất cả tương lai của nó", - "Details" : "Chi tiết", - "Attendees" : "Người tham gia", - "Resources" : "Các nguồn lực", + "All day" : "Cả ngày", + "Invite" : "Mời", + "Untitled event" : "Sự kiện không tiêu đề", "Close" : "Đóng", - "Show more details" : "Cho thấy thêm chi tiết", "Subscribe to {name}" : "Dõi theo {name}", + "Export {name}" : "Xuất dữ liệu bảng {name}", "Anniversary" : "Ngày kỷ niệm", "Appointment" : "Cuộc hẹn", "Business" : "Doanh nghiệp", @@ -387,7 +362,6 @@ OC.L10N.register( "on {time}" : "vào {time}", "on {time} ({timezoneId})" : "vào {time} ({timezoneId})", "Week {number} of {year}" : "Tuần thứ {number} của năm {year}", - "Does not repeat" : "Không lặp lại", "Daily" : "Hằng ngày", "Weekly" : "Hằng tuần", "Monthly" : "Hằng tháng", @@ -399,18 +373,17 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["vào {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["vào các ngày {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "vào {ordinalNumber} {byDaySet}", - "in {monthNames}" : "trong {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "trong {monthNames} trên {ordinalNumber} {byDaySet}", "until {untilDate}" : "cho đến {untilDate}", "_%n time_::_%n times_" : ["%n lần"], - "Untitled event" : "Sự kiện không tiêu đề", + "second" : "Thứ hai", + "third" : "vị trí thứ ba", + "fourth" : "vị trí thứ tư", + "fifth" : "vị trí thứ năm", + "second to last" : "kế cuối", + "last" : "cuối cùng", "Untitled task" : "Nhiệm vụ không tiêu đề", "Please ask your administrator to enable the Tasks App." : "Vui lòng hỏi quản trị viên của bạn để bật ứng dụng Nhiệm Vụ", - "Prev" : "Trước", - "Next" : "Tiếp theo", - "Prev year" : "Năm trước", - "Next year" : "Năm tiếp theo", - "Year" : "Năm", "W" : "T", "%n more" : "thêm %n", "No events to display" : "không có sự kiện để hiển thị", @@ -429,7 +402,6 @@ OC.L10N.register( "When shared hide this event" : "Khi được chia sẻ thì ẩn sự kiện này đi", "The visibility of this event in shared calendars." : "Khả năng nhìn thấy của sự kiện này trong các lịch được chia sẻ", "Add a location" : "Thêm vào một địa điểm", - "Add a description" : "Thêm vào một mô tả", "Status" : "Trạng thái", "Confirmed" : "Đã xác nhận", "Canceled" : "Đã bị hủy", @@ -442,135 +414,14 @@ OC.L10N.register( "Add this as a new category" : "Thêm mục này như là hạng mục mới", "Custom color" : "Tùy chỉnh màu", "Special color of this event. Overrides the calendar-color." : "Dùng màu đặc biệt cho sự kiện này. Ghi đè lên màu hiện hành", - "Chat room for event" : "Phòng trò chuyện cho sự kiện", + "Error while sharing file" : "Lỗi khi chia sẻ tệp", + "An error occurred, unable to delete the calendar." : "Một lỗi đã xảy ra, không thể xóa lịch.", "Imported {filename}" : " {filename} đã được nhập", - "Meditation" : "Thiền", - "Relaxing" : "Đang thư giản", - "Relax" : "Thư giãn", - "Break" : "Giải lao", - "Commute" : "Di chuyển", - "Commuting" : "Đang di chuyển", - "Shuttle" : "Đưa đón", - "Invoice" : "Hoá đơn", - "Finance" : "Tài chính", - "Bank" : "Ngân hàng", - "Money" : "Tiền bạc", - "Wedding" : "Đám cưới", - "Dog" : "Chó ", - "Concert" : "Lễ hội âm nhạc", - "Festival" : "Lễ hội", - "Theater" : "Rạp hát", - "Theatre" : "Rạp phim", - "Presentation" : "Buổi thuyết trình", - "Talk" : "Nói chuyện", - "Speech" : "Diễn văn", - "Deadline" : "Hạn chót", - "Submission" : "Nộp", - "Reporting" : "Báo cáo", - "Camping" : "Cắm trại", - "Camp" : "Cắm trại", - "Election" : "Bầu cử", - "Voting" : "Bầu chọn", - "Vote" : "Phiếu bầu", - "Barbecue" : "Nướng BBQ", - "Barbeque" : "Nướng BBQ", - "Garden" : "Vườn ", - "Farm" : "Nông trại", - "Movie" : "Phim ảnh", - "Cinema" : "Rạp chiếu phim", - "Graduation" : "Lễ tốt nghiệp", - "Brainstorm" : "Động não", - "Review" : "Đánh giá", - "Audit" : "Kiểm toán", - "Inspection" : "Kiểm tra - đánh giá", - "Proofreading" : "Đọc rà soát", - "Baseball" : "Bóng chày", - "Meet" : "Gặp gỡ", - "Planning" : "Lên kế hoạch", - "Pointing" : "Đánh dấu", - "Retrospective" : "Nhìn nhận lại", - "Office" : "Văn phòng", - "Contributor week" : "Tuần lễ đóng góp", - "Mail" : "Thư điện tử", - "Soccer" : "Đá banh", - "Football" : "Bóng bầu dục", - "Gaming" : "Chơi game", - "Drive" : "Lái xe", - "Driving" : "Lái xe", - "Bicycle" : "Xep đạp", - "Cycle" : "Đi xe đạp", - "Cycling" : "Đạp xe", - "Biking" : "Đạp xe", - "Bike" : "Xe đạp", - "Podcast" : "Podcast", - "Basketball" : "Bóng rổ", - "Fishing" : "Câu cá", - "Hiking" : "Leo núi", - "Hike" : "Leo", - "Art" : "Nghệ thuật", - "Exhibition" : "Triễn lãm", - "Museum" : "Nhà bảo tàng", - "Pilates" : "Thể dục kết hợp cường độ thấp", - "Park" : "Công viên", - "Walk" : "Đi bộ", - "Studying" : "Học bài", - "Doctor" : "Bác sĩ", - "Health" : "Sức khỏe", - "Dentist" : "Nha sĩ", - "Hospital" : "Bệnh viện", - "Interview" : "Phỏng vấn", - "Training" : "Luyện tập", - "Practice" : "Tập luyện", - "Sports" : "Các môn thể thao", - "Exercise" : "Tập thể dục", - "Work out" : "Tập thể dục", - "Working out" : "Tập thể dục", - "Gym" : "Gym", - "Barber" : "Thợ cắt tóc", - "Haircut" : "Cắt tóc", - "Hairdresser" : "Thợ làm tóc", - "Exam" : "Thi", - "Written test" : "Kiểm tra viết", - "Oral test" : "Kiểm tra miệng", - "Working" : "Làm việc", - "New Years Eve" : "Đêm giao thừa", - "NYE" : "Giao thừa", - "Fireworks" : "Pháo hoa", - "Running" : "Chạy bộ", - "Go for a run" : "Đi chạy bộ", - "Marathon" : "Chạy marathon", - "Video-conference" : "Hội nghị video", - "Conference-call" : "Hội nghị qua điện thoại", - "Video-call" : "Cuộc gọi video", - "Video-chat" : "Trò chuyện video", - "Video-meeting" : "Họp qua video", - "Call" : "Cuộc gọi", - "Calling" : "Đang gọi", - "Christmas" : "Giáng sinh", - "Conference" : "Họp", - "Pizza" : "Pizza", - "Travelling" : "Đi du lịch", - "Trip" : "Chuyến đi", - "Journey" : "Cuộc phiêu lưu", - "Collaborate" : "Hợp tác", - "Pair" : "Kết đôi ", - "Lecture" : "Bài giảng", - "Seminar" : "Hội thảo", - "Teaching" : "Dạy học", - "Photograph" : "Bức ảnh", - "Party" : "Tiệc tùng", - "Celebration" : "Lễ kỉ niệm", - "Celebrate" : "Ăn mừng", - "Birthday" : "Sinh nhật", - "Shopping" : "Đi mua sắm", - "Groceries" : "Tạp hoá", - "Skate" : "Đi trượt ván", - "Skateboard" : "Ván trượt", - "Wine tasting" : "Thử rựu", - "Golf" : "Đánh gôn", - "Dinner" : "Dùng bữa tối", - "Lunch" : "Ăn trưa", "Appointment not found" : "Không tìm thấy cuộc hẹn", - "User not found" : "Không tìm thấy người dùng" + "User not found" : "Không tìm thấy người dùng", + "Reminder" : "Lịch nhắc hẹn", + "+ Add reminder" : "+ Thêm lịch nhắc hẹn", + "Suggestions" : "Các đề suất", + "Details" : "Chi tiết" }, "nplurals=1; plural=0;"); diff --git a/l10n/vi.json b/l10n/vi.json index 3f5f7d7718e2bfe78c8e70d045e176316f58e762..b7ad30a7c39886f162066213bec3540782be6e60 100644 --- a/l10n/vi.json +++ b/l10n/vi.json @@ -9,110 +9,99 @@ "Open »%s«" : "Mở »%s«", "Cheers!" : "Xin chúc mừng!", "Upcoming events" : "Các sự kiện sắp diễn ra", + "No more events today" : "Không có thêm sự kiện nào hôm nay", + "No upcoming events" : "Không có sự kiện sắp diễn ra ", + "Calendar" : "Lịch", "Appointments" : "Các lịch hẹn ", "Schedule appointment \"%s\"" : "Lên lịch lịch hẹn \"%s\"", "Schedule an appointment" : "Lên lịch một lịch hẹn", "Prepare for %s" : "Chuản bị cho %s", "Follow up for %s" : "Diễn tiến cho %s", - "Your appointment \"%s\" needs confirmation" : "Lịch hẹn \"%s\" của bạn cần được xác nhận", "Dear %s, please confirm your booking" : "%s thân ái, vui lòng xác nhận lịch đặt hẹn của bạn", "Confirm" : "Xác nhận", + "Description:" : "Mô tả:", "This confirmation link expires in %s hours." : "Liên kết xác nhận sẽ hết hạn trong %s giờ.", - "If you wish to cancel the appointment after all, please contact your organizer." : "Nếu bạn muốn huỷ lịch hẹn này, vui lòng liên hệ với người tổ chức", - "Appointment:" : "Lịch hẹn:", "Date:" : "Ngày:", "Where:" : "Địa điểm:", - "Description:" : "Mô tả:", - "Calendar" : "Lịch", "A Calendar app for Nextcloud" : "Một ứng dụng Lịch nhắc nhở cho Hệ thống", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Ứng dụng Lịch là một ứng dụng tương tác cho người dùng cuối dựa trên hệ máy chủ CalDAV của Nextcloud. Dễ dàng đồng bộ các sự kiện và lịch cho hầu hết các thiết bị với Nextcloud của bạn và chỉnh sửa chúng trực tuyến. \n\n* 🚀 ** Tương tác với các ứng dụng Nextcloud khác!** Hiện tại là ứng dụng Danh Bạ - Sẽ có thêm nhiều hơn.\n* 🌐 ** Hỗ trợ Webcal!** Muốn thấy lịch thi đấu của đội bóng yêu thích ngay trên lịch của bạn? Chuyện nhỏ !\n* 🙋**Người tham dự!** Gửi lời mời tham dự sự kiện của bạn cho mọi người\n* ⌚️ **Rãnh/Bận!** Có thể xem trước được người được mời tham dự có rãnh hay để lên hẹn hay không\n* ⏰**Nhắc hẹn!**Nhận báo thức cho các sự kiện ngay trên trình duyệt hoạc thông qua email\n* 🔍Tìm kiếm các sự kiện và lịch hẹn 1 cách dễ dàng\n* 🙈**Chúng tôi không chế ra bánh xe mới!** Được dựa trên [c-dav library] tuyệt vời (https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) và các thư viện [fullcalendar](https://github.com/fullcalendar/fullcalendar).", "Previous day" : "Ngày trước", "Previous week" : "Tuần trước", "Previous month" : "Tháng trước", "Next day" : "Ngày hôm sau", "Next week" : "Tuần sau", + "Next year" : "Năm tiếp theo", "Next month" : "Tháng sau", - "New event" : "Sự kiện mới", "Today" : "Hôm nay", "Day" : "Ngày", "Week" : "Tuần", "Month" : "Tháng", + "Year" : "Năm", "List" : "Danh sách", + "Appointment link was copied to clipboard" : "Liên kết cuộc hẹn đã được sao chép vào bảng tạm", + "Appointment link could not be copied to clipboard" : "Liên kết cuộc hẹn không thể được sao chép vào bảng tạm", "Preview" : "Xem trước", "Copy link" : "Sao chép liên kết", "Edit" : "Chỉnh sửa", "Delete" : "Xóa", - "Appointment link was copied to clipboard" : "Liên kết cuộc hẹn đã được sao chép vào bảng tạm", - "Appointment link could not be copied to clipboard" : "Liên kết cuộc hẹn không thể được sao chép vào bảng tạm", - "Add new" : "Thêm mới", - "Untitled calendar" : "Lịch không tiêu đề", - "Edit name" : "Sửa đổi tên", - "Saving name …" : "Đang lưu tên  …", - "Edit color" : "Sửa đổi màu", - "Saving color …" : "Đang sửa đổi màu  …", - "Copy private link" : "Sao chép liên kết riêng tư", - "Export" : "Xuất ra", - "Unshare from me" : "Gỡ chia sẻ khỏi tôi", + "Create new" : "Tạo mới", "An error occurred, unable to change visibility of the calendar." : "Một lỗi đã xảy ra, không thể thay đổi tính hiển thị của lịch.", - "An error occurred, unable to delete the calendar." : "Một lỗi đã xảy ra, không thể xóa lịch.", - "Calendar link copied to clipboard." : "Liên kết của lịch đã được sao chép vào bảng tạm.", - "Calendar link could not be copied to clipboard." : "Liên kết của lịch không thể sao chép vào bảng tạm.", - "An error occurred, unable to rename the calendar." : "Một lỗi đã xảy ra, không thể đổi tên của lịch.", - "An error occurred, unable to change the calendar's color." : "Một lỗi đã xảy ra, không thể thay đổi màu sắc của lịch.", + "Untitled calendar" : "Lịch không tiêu đề", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["Đang gỡ chia sẻ của lịch trong {countdown} giây"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["Đang xóa lịch trong {countdown} giây"], + "An error occurred, unable to create the calendar." : "Một lỗi đã xảy ra, không thẻ tạo lịch.", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vui lòng nhập vào một liên kết khả dụng ( bắt đầu với http://, https://, webcal://, hoặc webcals://)", + "Calendars" : "Lịch", + "Add new" : "Thêm mới", + "New calendar" : "Lịch mới", + "Name for new calendar" : "Tên cho lịch mới", + "Creating calendar …" : "Đang tạo lịch  …", + "New calendar with task list" : "Lịch mới với danh sách nhiệm vụ", + "New subscription from link (read-only)" : "Đăng kí theo dõi mới từ liên kết (Chỉ-đọc)", + "Creating subscription …" : "Đang tạo đăng kí theo dõi mới  …", + "Calendar link copied to clipboard." : "Liên kết của lịch đã được sao chép vào bảng tạm.", + "Calendar link could not be copied to clipboard." : "Liên kết của lịch không thể sao chép vào bảng tạm.", + "Copy subscription link" : "Sao chép liên kết theo dõi ", + "Copying link …" : "Sao chép liên kết  ...", + "Copied link" : "Liên kết đã được sao chép", + "Could not copy link" : "Không thể sao chép liên kết", + "Export" : "Xuất ra", + "Unknown calendar" : "Lịch không rõ nguồn", + "Could not load deleted calendars and objects" : "Không thể hiển thị lịch hoặc các đối tượng đã xoá", + "Could not restore calendar or event" : "Không thể khôi phục lịch hoặc sự kiện", + "Do you really want to empty the trash bin?" : "Bạn có chắc là muốn dọn sạch thùng rác hay không?", + "Empty trash bin" : "Dọn thùng rác", + "Trash bin" : "Thùng rác", + "Name" : "Tên", + "Deleted" : "Đã xoá", + "Restore" : "Khôi phục", + "Delete permanently" : "Xoá vĩnh viễn", + "Could not update calendar order." : "Không thể cập nhật thứ tự của lịch", + "Deck" : "Kế hoạch", + "Hidden" : "Ẩn", + "Internal link" : "Liên kết nội bộ", + "An error occurred, unable to publish calendar." : "Có lỗi đã xảy ra, không thể công khai lịch.", + "An error occurred, unable to send email." : "Một lỗi đã xảy ra, không thể gửi email.", + "Embed code copied to clipboard." : "Mã nhúng đã được sao chép vào bảng tạm.", + "Embed code could not be copied to clipboard." : "Mã nhúng không thể được sao chép vào bảng tạm.", + "Unpublishing calendar failed" : "Gỡ công khai cho lịch thất bại", "Share link" : "Liên kết chia sẽ", - "Publish calendar" : "Công khai lịch", - "Publishing calendar" : "Đang công khai lịch", "Copy public link" : "Sao chép liên kết công khai", "Send link to calendar via email" : "Gửi liên kết đến lịch thông qua thư điện tử", "Enter one address" : "Điền vào môt địa chỉ", "Sending email …" : "Đang gửi email ...", - "Copy subscription link" : "Sao chép liên kết theo dõi ", - "Copying link …" : "Sao chép liên kết  ...", - "Copied link" : "Liên kết đã được sao chép", - "Could not copy link" : "Không thể sao chép liên kết", "Copy embedding code" : "Đang sao chép mã nhúng", "Copying code …" : "Đang sao chép mã  ...", "Copied code" : "Đã sao chép dòng lệnh", "Could not copy code" : "Không thể sao chép dòng lệnh", "Delete share link" : "Xóa liên kết chia sẻ", "Deleting share link …" : "Đang xóa liên kết chia sẻ  ...", - "An error occurred, unable to publish calendar." : "Có lỗi đã xảy ra, không thể công khai lịch.", - "An error occurred, unable to send email." : "Một lỗi đã xảy ra, không thể gửi email.", - "Embed code copied to clipboard." : "Mã nhúng đã được sao chép vào bảng tạm.", - "Embed code could not be copied to clipboard." : "Mã nhúng không thể được sao chép vào bảng tạm.", - "Unpublishing calendar failed" : "Gỡ công khai cho lịch thất bại", - "Share with users or groups" : "Chia sẽ với người dùng hoặc nhóm", - "No users or groups" : "Không có người dùng hay nhóm", + "An error occurred, unable to change the permission of the share." : "Một lỗi đã diễn ra, không thể thay đổi quyền hạn chia sẻ", "can edit" : "có thể chỉnh sửa", "Unshare with {displayName}" : "Gỡ chia sẻ với {displayName}", - "An error occurred, unable to change the unshare the calendar." : "Một lỗi đã xảy ra, không thể thay đổi thuộc tính chia sẻ của lịch ", - "An error occurred, unable to change the permission of the share." : "Một lỗi đã diễn ra, không thể thay đổi quyền hạn chia sẻ", - "+ New calendar" : "+ Lịch mới", - "New calendar" : "Lịch mới", - "Name for new calendar" : "Tên cho lịch mới", - "Creating calendar …" : "Đang tạo lịch  …", - "New calendar with task list" : "Lịch mới với danh sách nhiệm vụ", - "New subscription from link (read-only)" : "Đăng kí theo dõi mới từ liên kết (Chỉ-đọc)", - "Creating subscription …" : "Đang tạo đăng kí theo dõi mới  …", - "An error occurred, unable to create the calendar." : "Một lỗi đã xảy ra, không thẻ tạo lịch.", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "Vui lòng nhập vào một liên kết khả dụng ( bắt đầu với http://, https://, webcal://, hoặc webcals://)", - "Trash bin" : "Thùng rác", - "Loading deleted elements." : "Đang hiển thị thông tin đã xoá", - "You do not have any deleted elements." : "Bạn không có thông tin nào đã xoá", - "Name" : "Tên", - "Deleted" : "Đã xoá", - "Restore" : "Khôi phục", - "Delete permanently" : "Xoá vĩnh viễn", - "Empty trash bin" : "Dọn thùng rác", - "Untitled element" : "Thông tin không được đặt tiêu đề", - "Unknown calendar" : "Lịch không rõ nguồn", - "Could not load deleted calendars and objects" : "Không thể hiển thị lịch hoặc các đối tượng đã xoá", - "Could not restore calendar or event" : "Không thể khôi phục lịch hoặc sự kiện", - "Do you really want to empty the trash bin?" : "Bạn có chắc là muốn dọn sạch thùng rác hay không?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["Các đối tượng trong thùng rác được xoá sau {numDays} ngày"], - "Could not update calendar order." : "Không thể cập nhật thứ tự của lịch", + "Share with users or groups" : "Chia sẽ với người dùng hoặc nhóm", + "No users or groups" : "Không có người dùng hay nhóm", + "Unshare from me" : "Gỡ chia sẻ khỏi tôi", + "Save" : "Lưu", "Import calendars" : "Nhập lịch", "Please select a calendar to import into …" : "Vui lòng chọn một lịch để nhập vào  …", "Filename" : "Tên tập tin", @@ -121,13 +110,11 @@ "_Import calendar_::_Import calendars_" : ["Nhập lịch"], "{filename} could not be parsed" : "{filename} không thể được phân tách", "No valid files found, aborting import" : "Không có tệp khả dụng được tìm thấy, đang hủy quá trình nhập", - "Import partially failed. Imported {accepted} out of {total}." : "Quá trình nhập thất bại 1 phần. Đã nhập {accepted} trong tổng {total}.", "_Successfully imported %n event_::_Successfully imported %n events_" : ["%n sự kiện đã được nhập vào thành công"], + "Import partially failed. Imported {accepted} out of {total}." : "Quá trình nhập thất bại 1 phần. Đã nhập {accepted} trong tổng {total}.", "Automatic" : "Tự động", "Automatic ({detected})" : " ({detected}) tự động", "New setting was not saved successfully." : "Thiết lập mới không được lưu thành công", - "Shortcut overview" : "Bản xem trước của lối tắt", - "or" : "hoặc", "Navigation" : "Điều hướng", "Previous period" : "Kỳ trước", "Next period" : "Kỳ tiếp theo", @@ -143,10 +130,14 @@ "Close editor" : "Đóng trình biên tập", "Save edited event" : "Lưu lại sự kiện được chỉnh sửa", "Delete edited event" : "Xoá sự kiện được chỉnh sửa", + "Shortcut overview" : "Bản xem trước của lối tắt", + "or" : "hoặc", + "No reminder" : "Không có nhắc hẹn", + "CalDAV link copied to clipboard." : "Liên kết CalDAV đã được sao chép vào bảng tạm", + "CalDAV link could not be copied to clipboard." : "Liên kết CalDAV không thể được sao chép vào bảng tạm.", "Enable birthday calendar" : "Bật lịch sinh nhật", "Show tasks in calendar" : "Cho thấy nhiệm vụ trong lịch", "Enable simplified editor" : "Bật chỉnh sửa đơn giản", - "Limit visible events per view" : "Hạn chế các sự kiện có thể thấy trên mỗi lượt xem", "Show weekends" : "Cho thấy ngày cuối tuần", "Show week numbers" : "Hiển thị số tuần", "Time increments" : "Mức tăng thời gian", @@ -155,11 +146,6 @@ "Copy iOS/macOS CalDAV address" : "Sao chép địa chỉ CalDAV cho iOS/macOC", "Personal availability settings" : "Thiết lập lịch trống cá nhân", "Show keyboard shortcuts" : "Hiển thị các phím tắt", - "No reminder" : "Không có nhắc hẹn", - "CalDAV link copied to clipboard." : "Liên kết CalDAV đã được sao chép vào bảng tạm", - "CalDAV link could not be copied to clipboard." : "Liên kết CalDAV không thể được sao chép vào bảng tạm.", - "Appointment was created successfully" : "Lịch hẹn đã được tạo thành công", - "Appointment was updated successfully" : "Lịch hẹn đã được cập nhập thành công", "_{duration} minute_::_{duration} minutes_" : ["{duration} phút"], "0 minutes" : "0 phút", "_{duration} hour_::_{duration} hours_" : ["{duration} giờ"], @@ -170,6 +156,7 @@ "To configure appointments, add your email address in personal settings." : "Để cấu hình lịch hẹn, thêm vào địa chỉ email trong thiết lập cá nhân.", "Public – shown on the profile page" : "Công cộng - Được hiển thị công khai trên trang thông tin cá nhân", "Private – only accessible via secret link" : "Riêng tư - Chỉ có thể truy cập thông qua liên kết bí mật", + "Update" : "Cập nhật", "Location" : "Vị trí", "Description" : "Mô tả", "Visibility" : "Hiển thị", @@ -195,18 +182,16 @@ "Minimum time before next available slot" : "Thời gian tối thiểu trước một suất mở", "Max slots per day" : "Số suất tối đa trong ngày", "Limit how far in the future appointments can be booked" : "Giới hạn khoảng thời gian bao xa trong tương lai mà lịch hẹn có thể được đặt", - "Create appointment" : "Tạo lịch hẹn", - "Edit appointment" : "Chỉnh sửa lịch hẹn", - "Save" : "Lưu", - "Update" : "Cập nhật", "Please confirm your reservation" : "Vui lòng xác nhận đặt chỗ của bạn", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "Chúng tôi đã gửi bạn một email với đầy đủ chi tiết. Vui lòng xác nhận lịch hẹn của bạn bằng liên kết trong email. Bây giờ bạn đã có thể đóng trang này.", "Your name" : "Tên của bạn", "Your email address" : "Địa chỉ email của bạn", "Please share anything that will help prepare for our meeting" : "Vui lòng chia sẻ bất cứ gì có thể giúp cho việc chuẩn bị cho cuộc hẹn ", "Could not book the appointment. Please try again later or contact the organizer." : "Không thể đặt lịch hẹn. Vui lòng thử lại sau hoặc liên hệ với người tổ chức.", - "Book the appointment" : "Đặt lịch hẹn", - "Reminder" : "Lịch nhắc hẹn", + "Back" : "Trở lại", + "Select conversation" : "Chọn cuộc trò chuyện", + "on" : "trên", + "at" : "vào lúc", "before at" : "trước lúc", "Notification" : "Thông báo", "Email" : "Thư điện tử", @@ -217,103 +202,95 @@ "Edit time" : "Chỉnh sửa thời gian", "Save time" : "Lưu thời gian", "Remove reminder" : "Gỡ bỏ lịch nhắc hẹn", - "on" : "trên", - "at" : "vào lúc", - "+ Add reminder" : "+ Thêm lịch nhắc hẹn", "Add reminder" : "Thêm vào nhắc hẹn", - "_second_::_seconds_" : ["giây"], - "_minute_::_minutes_" : ["phút"], - "_hour_::_hours_" : ["giờ"], - "_day_::_days_" : ["ngày"], - "_week_::_weeks_" : ["tuần"], + "seconds" : "giây", + "minutes" : "phút", + "hours" : "giờ", + "days" : "ngày", + "weeks" : "tuần", + "Choose a file to add as attachment" : "Chọn một tệp để thêm dưới dạng tệp đính kèm", + "Choose a file to share as a link" : "Chọn một tệp để chia sẻ dưới dạng liên kết", + "Proceed" : "Tiến hành", + "Delete file" : "Xóa tệp", "Suggested" : "Được đề xuất", "Available" : "khả dụng", - "Not available" : "Không khả dụng", - "Checking availability" : "Đang kiểm tra lịch trống", "Invitation accepted" : "Lời mời đã được chấp nhận", "Accepted {organizerName}'s invitation" : "Đã chấp nhận lời mời của {organizerName}", + "Not available" : "Không khả dụng", "Invitation declined" : "Lời mời đã bị từ chối", "Declined {organizerName}'s invitation" : "Đã từ chối lời mời của {organizerName}", - "Availability of attendees, resources and rooms" : "Tình trạng tham gia của người dự, nguồn lực và phòng ", + "Checking availability" : "Đang kiểm tra lịch trống", "{organizer} (organizer)" : "{organizer} (người tổ chức)", + "Availability of attendees, resources and rooms" : "Tình trạng tham gia của người dự, nguồn lực và phòng ", + "Out of office" : "Không ở văn phòng", + "Done" : "Hoàn thành", + "Room name" : "Tên phòng", "Free" : "Rãnh", "Busy (tentative)" : "Bận (có khả năng thay đổi)", "Busy" : "Bận", - "Out of office" : "Không ở văn phòng", "Unknown" : "Không xác định", "Accept" : "Đồng ý", + "Decline" : "Từ chối", "Tentative" : "Chưa chắc chắn", - "Create Talk room for this event" : "Tạo một phòng trò chuyện cho sự kiện này", - "Show busy times" : "Cho thấy các thời gian bận", "No attendees yet" : "Chưa có giờ tham gia", "Successfully appended link to talk room to description." : "Liên kết đã được thêm thành công vào mô tả trong phòng trò chuyện ", "Error creating Talk room" : "Có lõi xảy ra khi tạo phòng Trò chuyện", - "Send email" : "Gửi email", + "Attendees" : "Người tham gia", + "Remove group" : "Xóa nhóm", + "Remove attendee" : "Gỡ bỏ người tham gia", "Chairperson" : "Chủ tịch", "Required participant" : "Người tham gia được yêu cầu", "Optional participant" : "Người tham gia không bắt buộc", "Non-participant" : "Người không tham gia", - "Remove attendee" : "Gỡ bỏ người tham gia", - "Search for emails, users or contacts" : "Tìm kiếm cho email, người dùng hoặc liên hệ", "No match found" : "Không có khớp lệnh nào được tìm thấy", "(organizer)" : "(organizer)", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "Để gửi lời mời và tiếp nhận các phản hồi, [linkopen] thêm địa chỉ email riêng của bạn trong phần cài đặt cá nhân[linkclose].", "Remove color" : "Gỡ màu", "Event title" : "Tiêu đề sự kiện", - "All day" : "Cả ngày", "Cannot modify all-day setting for events that are part of a recurrence-set." : "Không thể điều chỉnh thiết lập cả-ngày cho các sự kiện là một phần của sự kiện-lặp lại.", - "from {startDate}" : "từ {startDate}", - "from {startDate} at {startTime}" : "từ {startDate} vào lúc {startTime}", - "to {endDate}" : "đến {endDate}", - "to {endDate} at {endTime}" : "đến {endDate} vào lúc {endTime}", + "From" : "Từ", + "To" : "Tới", "Repeat" : "Lặp lại", - "End repeat" : "Kết thúc lập lại", - "Select to end repeat" : "Chọn thời gian kết thúc lặp lại", + "_time_::_times_" : ["lần"], "never" : "không thay đổi", "on date" : "vào ngày", "after" : "sau khi", - "_time_::_times_" : ["lần"], + "End repeat" : "Kết thúc lập lại", + "Select to end repeat" : "Chọn thời gian kết thúc lặp lại", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "Sự kiện này là loại trừ trong một bộ sự kiện-lặp lại. Bạn không thể thêm bất cứ qui tắc-lặp lại nào vào nó. ", "first" : "đầu tiên", - "third" : "vị trí thứ ba", - "fourth" : "vị trí thứ tư", - "fifth" : "vị trí thứ năm", - "second to last" : "kế cuối", - "last" : "cuối cùng", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "các thay đổi đến luật lệ định kỳ này sẽ chỉ áp dụng cho định kỳ này và các định kỳ tương lai của nó ", "Repeat every" : "Lặp lại mỗi", "By day of the month" : "Vào ngày của tháng", "On the" : "Trên", + "_day_::_days_" : ["ngày"], + "_week_::_weeks_" : ["tuần"], "_month_::_months_" : ["tháng"], "_year_::_years_" : ["năm"], "weekday" : "ngày làm việc", "weekend day" : "ngày cuối tuần", - "No recurrence" : "Không lặp lại", + "Does not repeat" : "Không lặp lại", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Định nghĩa về định kỳ của sự kiện này không hoàn toàn được hỗ trợ bởi vWorkspace. Nếu bạn sửa các lựa chọn định kỳ này, một vài định kỳ có thể sẽ bị mất ", - "Suggestions" : "Các đề suất", "No rooms or resources yet" : "Chưa có phòng hoặc nguồn lực", + "Resources" : "Các nguồn lực", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} chỗ ngồi"], "Add resource" : "Thêm nguồn lực", "Has a projector" : "Có máy chiếu", "Has a whiteboard" : "Có bảng đen ", "Wheelchair accessible" : "Có lối đi cho người khuyết tật", "Remove resource" : "Gỡ bỏ nguồn lực", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} chỗ ngồi"], - "Projector" : "Máy chiếu", - "Whiteboard" : "Bảng viết", "Search for resources or rooms" : "Tìm kiếm cho nguồn lực hoặc phòng trống", "available" : "khả dụng", "unavailable" : "không khả dụng", + "Projector" : "Máy chiếu", + "Whiteboard" : "Bảng viết", "Room type" : "Loại phòng", "Any" : "Bất cứ", "Minimum seating capacity" : "Số ghế ngồi tối thiểu", - "More" : "Thêm", - "Update this occurrence" : "Cập nhập định kỳ này", "Update this and all future" : "Cập nhập định kỳ này và cho toàn bộ tương lai", + "Update this occurrence" : "Cập nhập định kỳ này", "Public calendar does not exist" : "Lịch công khai không tồn tại", "Maybe the share was deleted or has expired?" : "Có lẽ chia sẽ đã bị xóa hoặc hết hạn ? ", - "Please select a time zone:" : "Vui lòng chọn múi thời gian:", - "Pick a time" : "Chọn thời gian", - "Pick a date" : "Chọn ngày", "from {formattedDate}" : "từ {formattedDate}", "to {formattedDate}" : "đến {formattedDate}", "on {formattedDate}" : "vào {formattedDate}", @@ -323,9 +300,13 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} vào lúc {formattedTime}", "Please enter a valid date" : "Vui lòng điền vào 1 ngày khả dụng", "Please enter a valid date and time" : "Vui lòng điền vào 1 ngày và thời gian khả dụng", + "Please select a time zone:" : "Vui lòng chọn múi thời gian:", + "Pick a time" : "Chọn thời gian", + "Pick a date" : "Chọn ngày", "Type to search time zone" : "Nhập để kiếm cho múi thời gian", "Global" : "Chung", - "Select date" : "Chọn ngày", + "Subscribed" : "Đã đăng ký", + "Subscribe" : "Theo dõi", "Select slot" : "Chọn suất", "No slots available" : "Không có suất trống", "The slot for your appointment has been confirmed" : "Suất cho cuộc hẹn của bạn đã được xác nhận", @@ -342,22 +323,16 @@ "Personal" : "Cá nhân", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "Chức năng tự động phát hiện múi giờ đã xác định múi giờ của bạn là UTC. \nRất có khả năng đây là kết quả lấy từ các tuỳ chỉnh bảo mật trong trình duyệt của bạn.\nVui lòng chuyển đổi thủ công múi của giờ của bạn trong phần thiết lập của Lịch", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "Không tìm thấy múi giờ ({timezoneId}) được cấu hình của bạn. Thiết lập múi giờ sẽ được trở về lại UTC. Vui lòng thay đổi múi giờ của bạn trong phần cài đặt và hãy báo cáo sự cố này. ", - "No more events today" : "Không có thêm sự kiện nào hôm nay", - "No upcoming events" : "Không có sự kiện sắp diễn ra ", - "Create a new event" : "Tạo một sự kiện mới", - "[Today]" : "[Hôm nay]", - "[Tomorrow]" : "[Ngày mai]", - "[Yesterday]" : "[Hôm qua]", - "[Last] dddd" : "[Trước] dddd", + "Edit event" : "Sửa sự kiện", "Event does not exist" : "Sự kiện không tồn tại", "Delete this occurrence" : "Xóa định kỳ này", "Delete this and all future" : "Xóa địnhy kỳ này và tất cả tương lai của nó", - "Details" : "Chi tiết", - "Attendees" : "Người tham gia", - "Resources" : "Các nguồn lực", + "All day" : "Cả ngày", + "Invite" : "Mời", + "Untitled event" : "Sự kiện không tiêu đề", "Close" : "Đóng", - "Show more details" : "Cho thấy thêm chi tiết", "Subscribe to {name}" : "Dõi theo {name}", + "Export {name}" : "Xuất dữ liệu bảng {name}", "Anniversary" : "Ngày kỷ niệm", "Appointment" : "Cuộc hẹn", "Business" : "Doanh nghiệp", @@ -385,7 +360,6 @@ "on {time}" : "vào {time}", "on {time} ({timezoneId})" : "vào {time} ({timezoneId})", "Week {number} of {year}" : "Tuần thứ {number} của năm {year}", - "Does not repeat" : "Không lặp lại", "Daily" : "Hằng ngày", "Weekly" : "Hằng tuần", "Monthly" : "Hằng tháng", @@ -397,18 +371,17 @@ "_on {weekday}_::_on {weekdays}_" : ["vào {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["vào các ngày {dayOfMonthList}"], "on the {ordinalNumber} {byDaySet}" : "vào {ordinalNumber} {byDaySet}", - "in {monthNames}" : "trong {monthNames}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "trong {monthNames} trên {ordinalNumber} {byDaySet}", "until {untilDate}" : "cho đến {untilDate}", "_%n time_::_%n times_" : ["%n lần"], - "Untitled event" : "Sự kiện không tiêu đề", + "second" : "Thứ hai", + "third" : "vị trí thứ ba", + "fourth" : "vị trí thứ tư", + "fifth" : "vị trí thứ năm", + "second to last" : "kế cuối", + "last" : "cuối cùng", "Untitled task" : "Nhiệm vụ không tiêu đề", "Please ask your administrator to enable the Tasks App." : "Vui lòng hỏi quản trị viên của bạn để bật ứng dụng Nhiệm Vụ", - "Prev" : "Trước", - "Next" : "Tiếp theo", - "Prev year" : "Năm trước", - "Next year" : "Năm tiếp theo", - "Year" : "Năm", "W" : "T", "%n more" : "thêm %n", "No events to display" : "không có sự kiện để hiển thị", @@ -427,7 +400,6 @@ "When shared hide this event" : "Khi được chia sẻ thì ẩn sự kiện này đi", "The visibility of this event in shared calendars." : "Khả năng nhìn thấy của sự kiện này trong các lịch được chia sẻ", "Add a location" : "Thêm vào một địa điểm", - "Add a description" : "Thêm vào một mô tả", "Status" : "Trạng thái", "Confirmed" : "Đã xác nhận", "Canceled" : "Đã bị hủy", @@ -440,135 +412,14 @@ "Add this as a new category" : "Thêm mục này như là hạng mục mới", "Custom color" : "Tùy chỉnh màu", "Special color of this event. Overrides the calendar-color." : "Dùng màu đặc biệt cho sự kiện này. Ghi đè lên màu hiện hành", - "Chat room for event" : "Phòng trò chuyện cho sự kiện", + "Error while sharing file" : "Lỗi khi chia sẻ tệp", + "An error occurred, unable to delete the calendar." : "Một lỗi đã xảy ra, không thể xóa lịch.", "Imported {filename}" : " {filename} đã được nhập", - "Meditation" : "Thiền", - "Relaxing" : "Đang thư giản", - "Relax" : "Thư giãn", - "Break" : "Giải lao", - "Commute" : "Di chuyển", - "Commuting" : "Đang di chuyển", - "Shuttle" : "Đưa đón", - "Invoice" : "Hoá đơn", - "Finance" : "Tài chính", - "Bank" : "Ngân hàng", - "Money" : "Tiền bạc", - "Wedding" : "Đám cưới", - "Dog" : "Chó ", - "Concert" : "Lễ hội âm nhạc", - "Festival" : "Lễ hội", - "Theater" : "Rạp hát", - "Theatre" : "Rạp phim", - "Presentation" : "Buổi thuyết trình", - "Talk" : "Nói chuyện", - "Speech" : "Diễn văn", - "Deadline" : "Hạn chót", - "Submission" : "Nộp", - "Reporting" : "Báo cáo", - "Camping" : "Cắm trại", - "Camp" : "Cắm trại", - "Election" : "Bầu cử", - "Voting" : "Bầu chọn", - "Vote" : "Phiếu bầu", - "Barbecue" : "Nướng BBQ", - "Barbeque" : "Nướng BBQ", - "Garden" : "Vườn ", - "Farm" : "Nông trại", - "Movie" : "Phim ảnh", - "Cinema" : "Rạp chiếu phim", - "Graduation" : "Lễ tốt nghiệp", - "Brainstorm" : "Động não", - "Review" : "Đánh giá", - "Audit" : "Kiểm toán", - "Inspection" : "Kiểm tra - đánh giá", - "Proofreading" : "Đọc rà soát", - "Baseball" : "Bóng chày", - "Meet" : "Gặp gỡ", - "Planning" : "Lên kế hoạch", - "Pointing" : "Đánh dấu", - "Retrospective" : "Nhìn nhận lại", - "Office" : "Văn phòng", - "Contributor week" : "Tuần lễ đóng góp", - "Mail" : "Thư điện tử", - "Soccer" : "Đá banh", - "Football" : "Bóng bầu dục", - "Gaming" : "Chơi game", - "Drive" : "Lái xe", - "Driving" : "Lái xe", - "Bicycle" : "Xep đạp", - "Cycle" : "Đi xe đạp", - "Cycling" : "Đạp xe", - "Biking" : "Đạp xe", - "Bike" : "Xe đạp", - "Podcast" : "Podcast", - "Basketball" : "Bóng rổ", - "Fishing" : "Câu cá", - "Hiking" : "Leo núi", - "Hike" : "Leo", - "Art" : "Nghệ thuật", - "Exhibition" : "Triễn lãm", - "Museum" : "Nhà bảo tàng", - "Pilates" : "Thể dục kết hợp cường độ thấp", - "Park" : "Công viên", - "Walk" : "Đi bộ", - "Studying" : "Học bài", - "Doctor" : "Bác sĩ", - "Health" : "Sức khỏe", - "Dentist" : "Nha sĩ", - "Hospital" : "Bệnh viện", - "Interview" : "Phỏng vấn", - "Training" : "Luyện tập", - "Practice" : "Tập luyện", - "Sports" : "Các môn thể thao", - "Exercise" : "Tập thể dục", - "Work out" : "Tập thể dục", - "Working out" : "Tập thể dục", - "Gym" : "Gym", - "Barber" : "Thợ cắt tóc", - "Haircut" : "Cắt tóc", - "Hairdresser" : "Thợ làm tóc", - "Exam" : "Thi", - "Written test" : "Kiểm tra viết", - "Oral test" : "Kiểm tra miệng", - "Working" : "Làm việc", - "New Years Eve" : "Đêm giao thừa", - "NYE" : "Giao thừa", - "Fireworks" : "Pháo hoa", - "Running" : "Chạy bộ", - "Go for a run" : "Đi chạy bộ", - "Marathon" : "Chạy marathon", - "Video-conference" : "Hội nghị video", - "Conference-call" : "Hội nghị qua điện thoại", - "Video-call" : "Cuộc gọi video", - "Video-chat" : "Trò chuyện video", - "Video-meeting" : "Họp qua video", - "Call" : "Cuộc gọi", - "Calling" : "Đang gọi", - "Christmas" : "Giáng sinh", - "Conference" : "Họp", - "Pizza" : "Pizza", - "Travelling" : "Đi du lịch", - "Trip" : "Chuyến đi", - "Journey" : "Cuộc phiêu lưu", - "Collaborate" : "Hợp tác", - "Pair" : "Kết đôi ", - "Lecture" : "Bài giảng", - "Seminar" : "Hội thảo", - "Teaching" : "Dạy học", - "Photograph" : "Bức ảnh", - "Party" : "Tiệc tùng", - "Celebration" : "Lễ kỉ niệm", - "Celebrate" : "Ăn mừng", - "Birthday" : "Sinh nhật", - "Shopping" : "Đi mua sắm", - "Groceries" : "Tạp hoá", - "Skate" : "Đi trượt ván", - "Skateboard" : "Ván trượt", - "Wine tasting" : "Thử rựu", - "Golf" : "Đánh gôn", - "Dinner" : "Dùng bữa tối", - "Lunch" : "Ăn trưa", "Appointment not found" : "Không tìm thấy cuộc hẹn", - "User not found" : "Không tìm thấy người dùng" + "User not found" : "Không tìm thấy người dùng", + "Reminder" : "Lịch nhắc hẹn", + "+ Add reminder" : "+ Thêm lịch nhắc hẹn", + "Suggestions" : "Các đề suất", + "Details" : "Chi tiết" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/zh_CN.js b/l10n/zh_CN.js index 42d7d5bd002dc16b8cdd3dfaca6867aa59ced608..f90b4d38e1cdf33a8d67776a9c70d4fb3959480e 100644 --- a/l10n/zh_CN.js +++ b/l10n/zh_CN.js @@ -1,133 +1,172 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "所提供的电子邮件地址太长", "User-Session unexpectedly expired" : "用户会话意外过期", "Provided email-address is not valid" : "提供的电子邮件地址无效", "%s has published the calendar »%s«" : "%s 已经发布了日历 »%s«", - "Unexpected error sending email. Please contact your administrator." : "发送电子邮件时出现意外错误。请联系您的管理员。", + "Unexpected error sending email. Please contact your administrator." : "发送电子邮件时出现意外错误,请联系您的管理员。", "Successfully sent email to %1$s" : "成功将电子邮件发送到 %1$s", "Hello," : "你好,", "We wanted to inform you that %s has published the calendar »%s«." : "我们想通知您,%s 已发布日历 »%s«。", "Open »%s«" : "打开 »%s«", "Cheers!" : "干杯!", "Upcoming events" : "即将到来的事件", + "No more events today" : "今天没有更多事件", + "No upcoming events" : "没有即将到来的事件", + "More events" : "更多事件", + "%1$s with %2$s" : "与%2$s预定的对话%1$s", + "Calendar" : "日历", + "New booking {booking}" : "新预约{booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email})在{date_time}预约了“{config_display_name}”。", "Appointments" : "预约", - "Schedule appointment \"%s\"" : "安排预约\"%s\"", + "Schedule appointment \"%s\"" : "安排预约“%s”", "Schedule an appointment" : "安排预约", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "准备 %s", "Follow up for %s" : "跟进 %s", - "Your appointment \"%s\" needs confirmation" : "你的预约 \"%s\" 需要确认", + "Your appointment \"%s\" with %s needs confirmation" : "您与 %s 的预约“%s”需要确认", "Dear %s, please confirm your booking" : "亲爱的 %s,请确认你的登记", "Confirm" : "确认", - "This confirmation link expires in %s hours." : "确认链接将在 %s 小时内过期", - "If you wish to cancel the appointment after all, please contact your organizer." : "如果您还是想取消预约,请与组织者联系", - "Appointment:" : "预约:", + "Appointment with:" : "预约:", + "Description:" : "描述:", + "This confirmation link expires in %s hours." : "此确认链接将在 %s 小时内过期。", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "如果您想取消预约,请通过回复这封邮件或访问他们的个人资料页面与您的组织者联系。", + "Your appointment \"%s\" with %s has been accepted" : "您与 %s 的预约“%s”已被接受", + "Dear %s, your booking has been accepted." : "亲爱的%s,您的预约已被接受。", + "Appointment for:" : "预约:", "Date:" : "日期:", + "You will receive a link with the confirmation email" : "您将在确认电子邮件中收到链接", "Where:" : "地点:", - "Description:" : "描述:", - "Calendar" : "日历", + "Comment:" : "留言:", + "You have a new appointment booking \"%s\" from %s" : "您有一个来自%s的新预约“%s”", + "Dear %s, %s (%s) booked an appointment with you." : "亲爱的%s,%s (%s)与您预约了。", "A Calendar app for Nextcloud" : "适用于 Nextcloud 的日历应用", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "日历应用是 Nextcloud 的 CalDAV 服务器的一个用户界面。通过适用此应用,您可以轻松地将各种设备上的事件与您的 Nextcloud 同步,并在线编辑它们。\n\n* 🚀 **与其他 Nextcloud 应用的集成!** 目前是通讯录 -- 更多的应用将会支持\n* 🌐 **支持 WebCal!** 想在日历上看到自己最喜欢的球队的比赛日?没问题!\n* 🙋 **与会者!** 邀请人们参加您的事件\n* ⌚️ **空闲/繁忙!** 查看您的与会者何时可以见面\n* ⏰ **提醒!** 通过浏览器和电子邮件获取事件通知报\n* 🔍 搜索!轻松找到你的活动\n* ☑️ 任务!直接在日历中查看即将到期的任务\n* 🙈 **我们没有重新发明轮子!** 基于出色的 [c-dav 库](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) 和 [fullcalendar](https://github.com/fullcalendar/fullcalendar) 库开发。", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Nextcloud 的日历应用。轻松将各种设备上的事件同步到 Nextcloud,并在线编辑。\n\n* 🚀 **与其他 Nextcloud 应用集成!** 例如 Contacts、Talk、Tasks、Deck 和 Circles\n* 🌐 **WebCal 支持!** 想在您的日历中查看您最喜欢的球队的比赛日吗?没问题!\n* 🙋 **参加者!** 邀请他人参加您的活动\n* ⌚ **空闲/忙碌!** 查看您的参加者何时有空参加会议\n* ⏰ **提醒!** 在浏览器中或通过电子邮件接收活动提醒\n* 🔍 **搜索!** 轻松查找您的活动\n* ☑️ **任务!** 直接在日历中查看带有截止日期的任务或 Deck 卡片\n* 🔈 **Talk 会议室!** 只需点击一下即可在预订会议时创建一个关联的 Talk 会议室\n* 📆 **预约** 向人们发送链接,以便他们[使用此应用](https://apps.nextcloud.com/apps/appointments)与您预约\n* 📎 **附件!** 添加、上传和查看活动附件\n* 🙈 **我们不会重复造轮子!** 基于强大的 [c-dav 库](https://github.com/nextcloud/cdav-library)、[ical.js](https://github.com/mozilla-comm/ical.js) 和 [fullcalendar](https://github.com/fullcalendar/fullcalendar) 库。", "Previous day" : "前一天", "Previous week" : "上周", + "Previous year" : "前一年", "Previous month" : "上个月", "Next day" : "后一天", "Next week" : "下周", + "Next year" : "下一年", "Next month" : "下个月", - "New event" : "新事件", + "Create new event" : "创建新事件", + "Event" : "事件", "Today" : "今天", "Day" : "日", "Week" : "星期", "Month" : "月", + "Year" : "年", "List" : "列表", + "Appointment link was copied to clipboard" : "预约链接已复制到剪贴板", + "Appointment link could not be copied to clipboard" : "无法将预约链接复制到剪贴板", "Preview" : "预览", "Copy link" : "复制链接", "Edit" : "编辑", "Delete" : "删除", - "Appointment link was copied to clipboard" : "预约链接已复制到剪贴板", - "Appointment link could not be copied to clipboard" : "无法将预约链接复制到剪贴板", - "Add new" : "新增", - "Untitled calendar" : "未命名的日历", - "Edit name" : "编辑名称", - "Saving name …" : "正在保存名称 …", - "Edit color" : "编辑颜色", - "Saving color …" : "正在保存颜色 …", - "Copy private link" : "复制私有链接", - "Export" : "导出", - "Unshare from me" : "我取消的共享", + "Appointment schedules" : "预约时间表", + "Create new" : "新建", + "Disable calendar \"{calendar}\"" : "禁用日历“{calendar}”", + "Disable untitled calendar" : "禁用未命名日历", + "Enable calendar \"{calendar}\"" : "启用日历“{calendar}”", + "Enable untitled calendar" : "启用未命名日历", "An error occurred, unable to change visibility of the calendar." : "发生错误,无法修改日历的可见性。", - "An error occurred, unable to delete the calendar." : "发生错误,无法删除日历。", - "Calendar link copied to clipboard." : "日历链接已复制到剪切板。", + "Untitled calendar" : "未命名的日历", + "Shared with you by" : "与您共享,由", + "Edit and share calendar" : "编辑并分享日历", + "Edit calendar" : "编辑日历", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["将在{countdown}秒后取消共享日历"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["将在{countdown}秒后删除日历"], + "An error occurred, unable to create the calendar." : "发生了错误,无法创建日历。", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "请输入合法的链接(以http://、https://、webcal://、或者webcals://开头)", + "Calendars" : "日历", + "Add new" : "新增", + "New calendar" : "新日历", + "Name for new calendar" : "新日历名称", + "Creating calendar …" : "正在创建日历 ...", + "New calendar with task list" : "带任务列表的新日历", + "New subscription from link (read-only)" : "来自链接的新订阅(只读)", + "Creating subscription …" : "正在创建订阅 ...", + "Add public holiday calendar" : "添加公众节假期日历", + "Add custom public calendar" : "添加自定义公开日历", + "Calendar link copied to clipboard." : "日历链接已复制到剪贴板。", "Calendar link could not be copied to clipboard." : "日历链接无法复制到剪贴板。", - "An error occurred, unable to rename the calendar." : "发生错误,无法重命名日历。", - "An error occurred, unable to change the calendar's color." : "发生错误,无法修改日历颜色。", - "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["在{countdown}秒内取消共享日历"], - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["在{countdown}秒内删除日历"], + "Copy subscription link" : "复制订阅链接", + "Copying link …" : "正在复制链接 ...", + "Copied link" : "已复制链接", + "Could not copy link" : "无法复制链接", + "Export" : "导出", + "Untitled item" : "未命名项", + "Unknown calendar" : "未知日历", + "Could not load deleted calendars and objects" : "无法加载已删除的日历和对象", + "Could not delete calendar or event" : "无法删除日历或事件", + "Could not restore calendar or event" : "无法还原日历或事件", + "Do you really want to empty the trash bin?" : "您真的想要清空回收站吗?", + "Empty trash bin" : "清空回收站", + "Trash bin" : "回收站", + "Loading deleted items." : "正在加载已删除的项目。", + "You do not have any deleted items." : "您没有任何已删除的项目。", + "Name" : "名称", + "Deleted" : "已删除", + "Restore" : "还原", + "Delete permanently" : "永久删除", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["回收站中的项目会在 {numDays} 天后删除"], + "Could not update calendar order." : "无法更改日历顺序。", + "Shared calendars" : "共享日历", + "Deck" : "看板", + "Hidden" : "隐藏的", + "Internal link" : "内部链接", + "A private link that can be used with external clients" : "可以与外部客户端一起使用的私人链接", + "Copy internal link" : "复制内部链接", + "An error occurred, unable to publish calendar." : "发生了错误,无法发布日历。", + "An error occurred, unable to send email." : "发生了错误,无法发送电子邮件。", + "Embed code copied to clipboard." : "嵌入代码已复制到剪贴板。", + "Embed code could not be copied to clipboard." : "嵌入代码无法复制到剪贴板。", + "Unpublishing calendar failed" : "取消发布日历失败", "Share link" : "共享链接", - "Publish calendar" : "发布日历", - "Publishing calendar" : "正在发布日历", "Copy public link" : "复制公开链接", "Send link to calendar via email" : "通过电子邮件发送链接到日历", "Enter one address" : "输入一个地址", - "Sending email …" : "正在发送电子邮件 …", - "Copy subscription link" : "复制订阅链接", - "Copying link …" : "正在复制链接 …", - "Copied link" : "已复制链接", - "Could not copy link" : "无法复制链接", + "Sending email …" : "正在发送电子邮件 ...", "Copy embedding code" : "复制嵌入代码", - "Copying code …" : "正在复制代码 …", + "Copying code …" : "正在复制代码 ...", "Copied code" : "已复制代码", "Could not copy code" : "无法复制代码", "Delete share link" : "删除共享链接", - "Deleting share link …" : "正在删除共享链接 …", - "An error occurred, unable to publish calendar." : "发生了错误,无法发布日历。", - "An error occurred, unable to send email." : "发生错误,无法发送电子邮件。", - "Embed code copied to clipboard." : "嵌入代码已复制到剪贴板。", - "Embed code could not be copied to clipboard." : "嵌入代码无法复制到剪贴板。", - "Unpublishing calendar failed" : "取消发布日历失败", + "Deleting share link …" : "正在删除共享链接 ...", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "取消共享日历时发生错误。", + "An error occurred, unable to change the permission of the share." : "发生了错误,无法更改共享权限。", + "can edit" : "可编辑", + "Unshare with {displayName}" : "取消与 {displayName} 的共享", "Share with users or groups" : "与用户或分组共享", "No users or groups" : "无用户或分组", - "can edit" : "可编辑", - "Unshare with {displayName}" : "取消与{displayName}的共享", - "An error occurred, unable to change the unshare the calendar." : "发生了错误,无法取消日历共享。", - "An error occurred, unable to change the permission of the share." : "发生了错误,无法更改共享权限。", - "+ New calendar" : "+ 新日历", - "New calendar" : "新建日历", - "Creating calendar …" : "正在创建日历 …", - "New calendar with task list" : "带任务列表的新日历", - "New subscription from link (read-only)" : "来自链接的新订阅(只读)", - "Creating subscription …" : "正在创建订阅 …", - "An error occurred, unable to create the calendar." : "发生了错误,无法创建日历。", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "请输入合法的链接(以http://、https://、webcal://、或者webcals://开头)", - "Trash bin" : "垃圾箱", - "Loading deleted elements." : "正加载已删除的元素", - "You do not have any deleted elements." : "你没有任何已删除的元素", - "Name" : "名称", - "Deleted" : "已删除", - "Restore" : "还原", - "Delete permanently" : "永久删除", - "Empty trash bin" : "清空回收站", - "Untitled element" : "无标题元素", - "Unknown calendar" : "未知日历", - "Could not load deleted calendars and objects" : "无法加载已删除的日历和物体", - "Could not restore calendar or event" : "无法还原日历或事件", - "Do you really want to empty the trash bin?" : "你真想清空回收站吗?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["垃圾箱内元素将在 {numDays} 天后被删除"], - "Could not update calendar order." : "无法更新日历顺序", + "Failed to save calendar name and color" : "保存日历名称和颜色失败", + "Calendar name …" : "日历名称 ...", + "Never show me as busy (set this calendar to transparent)" : "从不显示我为忙碌状态(将此日历设置为透明)", + "Share calendar" : "共享日历", + "Unshare from me" : "我取消的共享", + "Save" : "保存", "Import calendars" : "导入日历", - "Please select a calendar to import into …" : "请选择一个要导入的日历 …", + "Please select a calendar to import into …" : "请选择一个要导入的日历 ……", "Filename" : "文件名", "Calendar to import into" : "要导入的日历", "Cancel" : "取消", "_Import calendar_::_Import calendars_" : ["导入日历"], - "{filename} could not be parsed" : "{filename} 无法进行解析", + "Select the default location for attachments" : "选择附件的默认位置", + "Pick" : "选择", + "Invalid location selected" : "所选位置无效", + "Attachments folder successfully saved." : "附件文件夹已成功保存。", + "Error on saving attachments folder." : "保存附件文件夹时发生错误。", + "Default attachments location" : "默认附件位置", + "{filename} could not be parsed" : "无法解析{filename}", "No valid files found, aborting import" : "未找到有效文件,中止导入", - "Import partially failed. Imported {accepted} out of {total}." : "导入部分失败。已导入{total}个中的{accepted}个。", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["成功导入%n个事件"], + "Import partially failed. Imported {accepted} out of {total}." : "部分导入失败,已导入 {total} 个中的 {accepted} 个。", "Automatic" : "自动", "Automatic ({detected})" : "自动({detected})", "New setting was not saved successfully." : "新的设置没有成功保存。", - "Shortcut overview" : "快捷方式总览", - "or" : "或", "Navigation" : "导航", "Previous period" : "上一时段", "Next period" : "下一时段", @@ -135,33 +174,57 @@ OC.L10N.register( "Day view" : "日视图", "Week view" : "周视图", "Month view" : "月视图", + "Year view" : "年视图", "List view" : "列表视图", "Actions" : "操作", "Create event" : "创建事件", "Show shortcuts" : "显示快捷方式", + "Editor" : "编辑器", + "Close editor" : "关闭编辑器", + "Save edited event" : "保存已编辑的事件", + "Delete edited event" : "删除已编辑的事件", + "Duplicate event" : "重复的事件", + "Shortcut overview" : "快捷方式总览", + "or" : "或", + "Calendar settings" : "日历设置", + "At event start" : "活动开始时", + "No reminder" : "无提醒", + "Failed to save default calendar" : "无法保存默认日历", + "CalDAV link copied to clipboard." : "CalDAV 链接已复制到剪贴板。", + "CalDAV link could not be copied to clipboard." : "CalDAV 链接无法复制到剪贴板。", "Enable birthday calendar" : "启用生日日历", "Show tasks in calendar" : "在日历中显示任务", - "Enable simplified editor" : "启用简化的编辑器", - "Limit visible events per view" : "限制每个视图的可见事件", + "Enable simplified editor" : "启用简单编辑器", + "Limit the number of events displayed in the monthly view" : "限制月视图中显示的事件数量", "Show weekends" : "显示周末", "Show week numbers" : "显示星期数", "Time increments" : "时间增量", + "Default calendar for incoming invitations" : "传入邀请的默认日历", "Default reminder" : "默认提醒", - "Copy primary CalDAV address" : "复制主要的CalDAV地址", - "Copy iOS/macOS CalDAV address" : "复制iOS/macOS CalDAV地址", - "Personal availability settings" : "个人可用性设置", + "Copy primary CalDAV address" : "复制主要的 CalDAV 地址", + "Copy iOS/macOS CalDAV address" : "复制 iOS/macOS CalDAV 地址", + "Personal availability settings" : "个人工作时间设置", "Show keyboard shortcuts" : "显示键盘快捷方式", - "No reminder" : "无提醒", - "CalDAV link copied to clipboard." : "CalDAV链接已复制到剪贴板。", - "CalDAV link could not be copied to clipboard." : "CalDAV链接无法复制到剪贴板。", - "Appointment was created successfully" : "成功创建预约", - "Appointment was updated successfully" : "成功更新预约", - "_{duration} minute_::_{duration} minutes_" : ["{duration} 分钟"], + "Appointment schedule successfully created" : "预约时间表已成功创建", + "Appointment schedule successfully updated" : "预约时间表已成功更新", + "_{duration} minute_::_{duration} minutes_" : ["{duration}分钟"], "0 minutes" : "0 分钟", + "_{duration} hour_::_{duration} hours_" : ["{duration} 小时"], + "_{duration} day_::_{duration} days_" : ["{duration} 天"], + "_{duration} week_::_{duration} weeks_" : ["{duration} 周"], + "_{duration} month_::_{duration} months_" : ["{duration} 月"], + "_{duration} year_::_{duration} years_" : ["{duration} 年"], "To configure appointments, add your email address in personal settings." : "要配置预约,请在个人设置中添加您的电子邮件地址。", "Public – shown on the profile page" : "公开 - 显示在个人资料页上", "Private – only accessible via secret link" : "私密 - 只能通过秘密链接访问", + "Appointment schedule saved" : "预约时间表已保存", + "Create appointment schedule" : "创建预约时间表", + "Edit appointment schedule" : "编辑预约时间表", + "Update" : "更新", + "Appointment name" : "预约名称", "Location" : "地点", + "Create a Talk room" : "创建聊天室", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "将为每个预订的预约生成一个唯一的链接,并通过确认电子邮件发送", "Description" : "描述", "Visibility" : "可见性", "Duration" : "持续时间", @@ -169,185 +232,267 @@ OC.L10N.register( "Additional calendars to check for conflicts" : "其他要检查冲突的日历", "Pick time ranges where appointments are allowed" : "选择允许预约的时间范围", "to" : "到", - "Delete slot" : "删除档期", + "Delete slot" : "删除时段", "No times set" : "未设置时间", "Add" : "添加", - "Monday" : "星期一", + "Monday" : "周一", "Tuesday" : "周二", "Wednesday" : "周三", "Thursday" : "周四", "Friday" : "周五", "Saturday" : "周六", "Sunday" : "周日", + "Weekdays" : "工作日", "Add time before and after the event" : "添加事件前后时间", "Before the event" : "事件前", "After the event" : "事件后", "Planning restrictions" : "规划限制", - "Minimum time before next available slot" : "最小化下一可用档期前的时间", - "Max slots per day" : "每日最多档期数", - "Create appointment" : "创建预约", - "Edit appointment" : "编辑预约", - "Save" : "保存", - "Update" : "更新", - "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "我们给你发了一封详细的邮件。请使用邮件中的链接确认您的预约。您现在可以关闭此页面。", + "Minimum time before next available slot" : "下一可用时段前的最短时间", + "Max slots per day" : "每日最多时段数", + "Limit how far in the future appointments can be booked" : "限制可以预定未来多久的预约", + "It seems a rate limit has been reached. Please try again later." : "似乎已达到速度限制。请稍后重试。", + "Please confirm your reservation" : "请确认您的预约", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "我们给您发了一封详细的邮件,请使用邮件中的链接确认您的预约。您现在可以关闭此页面。", "Your name" : "名字", "Your email address" : "你的邮箱地址", "Please share anything that will help prepare for our meeting" : "请分享任何能帮助我们准备会议的东西", - "Could not book the appointment. Please try again later or contact the organizer." : "无法登记预约。请稍后再试或联系组织者。", - "Book the appointment" : "登记预约", - "Reminder" : "提醒", + "Could not book the appointment. Please try again later or contact the organizer." : "无法登记预约,请稍后再试或联系组织者。", + "Back" : "返回", + "Book appointment" : "登记预约", + "Error fetching Talk conversations." : "获取 Talk 对话时出错。", + "Conversation does not have a valid URL." : "对话没有有效的 URL。", + "Successfully added Talk conversation link to location." : "已成功将 Talk 对话链接添加到位置。", + "Successfully added Talk conversation link to description." : "已成功将 Talk 对话链接添加到描述。", + "Failed to apply Talk room." : "无法应用 Talk 聊天室。", + "Error creating Talk conversation" : "创建 Talk 对话时出错", + "Select a Talk Room" : "选择 Talk 聊天室", + "Add Talk conversation" : "添加 Talk 对话", + "Fetching Talk rooms…" : "正在获取 Talk 聊天室…", + "No Talk room available" : "没有可用的 Talk 聊天室", + "Create a new conversation" : "创建新对话", + "Select conversation" : "选择对话", + "on" : "于", + "at" : "在", "before at" : "在此之前:", "Notification" : "通知", "Email" : "电子邮件", "Audio notification" : "语音通知", "Other notification" : "其他通知", - "Relative to event" : "相关事件", - "On date" : "到期", + "Relative to event" : "相对于事件", + "On date" : "在特定日期", "Edit time" : "编辑时间", "Save time" : "保存时间", "Remove reminder" : "移除提醒", - "on" : "于", - "at" : "在", - "+ Add reminder" : "+ 添加提醒", "Add reminder" : "添加提醒", - "_second_::_seconds_" : ["秒"], - "_minute_::_minutes_" : ["分钟"], - "_hour_::_hours_" : ["小时"], - "_day_::_days_" : ["天"], - "_week_::_weeks_" : ["周"], + "seconds" : "秒", + "minutes" : "分钟", + "hours" : "小时", + "days" : "天", + "weeks" : "周", + "Choose a file to add as attachment" : "选择文件添加为附件", + "Choose a file to share as a link" : "选择要共享的文件作为链接", + "Attachment {name} already exist!" : "附件{name}已存在!", + "Could not upload attachment(s)" : "无法上传附件", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "您即将下载一个文件。请在打开文件之前检查文件名。是否确定要继续?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "您将要导航到 {host}。是否确定要继续?链接:{link}", + "Proceed" : "前进", + "No attachments" : "无附件", + "Add from Files" : "添加文件", + "Upload from device" : "从设备上传", + "Delete file" : "删除文件", + "Confirmation" : "确认", + "_{count} attachment_::_{count} attachments_" : ["{count} 附件"], + "Suggested" : "建议", "Available" : "可用", + "Invitation accepted" : "已接受邀请", + "Accepted {organizerName}'s invitation" : "已接受 {organizerName} 的邀请", + "Participation marked as tentative" : "参与被标记为暂定", + "Invitation is delegated" : "邀请已委派", "Not available" : "不可用", - "Invitation sent" : "已发送邀请", - "Availability of attendees, resources and rooms" : "与会者,资源和会议室的可用性", + "Invitation declined" : "邀请被拒绝", + "Declined {organizerName}'s invitation" : "已拒绝 {organizerName} 的邀请", + "Availability will be checked" : "将检查可用性", + "Invitation will be sent" : "将发送邀请", + "Failed to check availability" : "无法检查可用性", + "Failed to deliver invitation" : "发送邀请失败", + "Awaiting response" : "正在等在回应", + "Checking availability" : "正在检查工作时间", + "Has not responded to {organizerName}'s invitation yet" : "尚未回应 {organizerName} 的邀请", + "Suggested times" : "建议时间", + "chairperson" : "主席", + "required participant" : "参与人员", + "non-participant" : "非参加人员", + "optional participant" : "可不出席的参加人员", "{organizer} (organizer)" : "{organizer} (organizer) ", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "参加者、资源和会议室的可用性", + "Suggestion accepted" : "建议已接受", + "Previous date" : "上个日期", + "Next date" : "下个日期", + "Legend" : "图例", + "Out of office" : "不在办公室", + "Attendees:" : "参加者:", + "Done" : "完成", + "Search room" : "搜索聊天室", + "Room name" : "聊天室名称", + "Check room availability" : "检查聊天室是否可用", "Free" : "空闲", - "Busy (tentative)" : "繁忙(暂定)", + "Busy (tentative)" : "忙碌(暂定)", "Busy" : "忙碌", - "Out of office" : "不在办公室", "Unknown" : "未知", + "Find a time" : "查找时间", + "The invitation has been accepted successfully." : "已成功接受邀请。", + "Failed to accept the invitation." : "接受邀请失败。", + "The invitation has been declined successfully." : "已成功拒绝邀请。", + "Failed to decline the invitation." : "拒绝邀请失败。", + "Your participation has been marked as tentative." : "您的参与被标记为暂定。", + "Failed to set the participation status to tentative." : "未能将参与状态设置为暂定。", "Accept" : "接受", "Decline" : "拒绝", "Tentative" : "暂定", - "Create Talk room for this event" : "为此事件创建聊天室", - "Show busy times" : "显示繁忙时间", - "No attendees yet" : "暂无与会者", + "No attendees yet" : "暂无参加者", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} 已邀请, {confirmedCount} 已确认", + "Please add at least one attendee to use the \"Find a time\" feature." : "请至少添加一位参加者以使用“查找时间”功能。", + "Successfully appended link to talk room to location." : "已成功将线上谈话室的链接附加了位置。", "Successfully appended link to talk room to description." : "成功将链接添加到聊天室的描述。", "Error creating Talk room" : "建立聊天室时发生错误", - "Send email" : "发送电子邮件", + "Attendees" : "参加者", + "_%n more guest_::_%n more guests_" : ["还有 %n 位访客"], + "Remove group" : "删除分组", + "Remove attendee" : "移除参加者", + "Request reply" : "请求回复", "Chairperson" : "主席", "Required participant" : "必要的参与者", "Optional participant" : "可选的参与者", "Non-participant" : "非参与者", - "Remove attendee" : "移除与会者", - "Search for emails, users or contacts" : "搜索电子邮件、用户或联系人", + "_%n member_::_%n members_" : ["%n 位成员"], + "Search for emails, users, contacts, contact groups or teams" : "搜索电子邮件、用户、联系人、联系人群组或团队", "No match found" : "未找到匹配项", + "Note that members of circles get invited but are not synced yet." : "请注意,圈内成员已收到邀请但尚未同步。", + "Note that members of contact groups get invited but are not synced yet." : "请注意,联系人群组的成员已邀请,但尚未同步。", "(organizer)" : "(组织者)", + "Make {label} the organizer" : "将 {label} 设为组织者", + "Make {label} the organizer and attend" : "将 {label} 设为组织者并参加", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "为发送邀请和处理回应,[linkopen] 将您的电子邮件地址添加到个人设置中 [linkclose] 。", "Remove color" : "移除颜色", "Event title" : "事件标题", - "All day" : "全天", - "Cannot modify all-day setting for events that are part of a recurrence-set." : "无法修改属于递归集的事件的全天设置。 ", - "from {startDate}" : "始于{startDate}", - "from {startDate} at {startTime}" : "始于{startDate}的{startTime}", - "to {endDate}" : "到{endDate}", - "to {endDate} at {endTime}" : "到{endDate}的{endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "无法修改属于重复活动事件的全天设置。 ", + "From" : "来自", + "To" : "给", "Repeat" : "重复", - "End repeat" : "结束重复", - "Select to end repeat" : "选择以中止重复", + "Repeat event" : "重复事件", + "_time_::_times_" : ["次数"], "never" : "从不", - "on date" : "到期", + "on date" : "在特定日期", "after" : "之后", - "_time_::_times_" : ["次数"], - "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "此事件是递归集的递归异常。不能给它添加递归规则。 ", - "first" : "一日", - "third" : "三日", - "fourth" : "四日", - "fifth" : "五日", - "second to last" : "倒数第二", - "last" : "最后的", - "Changes to the recurrence-rule will only apply to this and all future occurrences." : "对循环规则的更改将只应用于本次和所有未来事件。", + "End repeat" : "结束重复", + "Select to end repeat" : "选择以中止重复", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "此事件是重复事件的例外项,无法为其添加重复规则。", + "first" : "第一个", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "对重复规则的更改将只应用于本次和所有未来事件。", "Repeat every" : "重复每", - "By day of the month" : "以每月的天数", + "By day of the month" : "每月特定日", "On the" : "在", + "_day_::_days_" : ["天"], + "_week_::_weeks_" : ["周"], "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], + "On specific day" : "在特定日子", "weekday" : "工作日", "weekend day" : "周末", - "No recurrence" : "无重复", - "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "此事件的循环定义不能被Nextcloud完全支持。如果您编辑循环选项,某些循环可能会丢失。", - "Suggestions" : "建议", + "Does not repeat" : "不重复", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud 不能完全支持此事件的重复定义。如果您编辑重复选项,某些重复可能会丢失。", "No rooms or resources yet" : "尚无房间或资源", + "Resources" : "资源", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} 个座位"], "Add resource" : "添加资源", - "Has a projector" : "有计划者", + "Has a projector" : "有投影仪", "Has a whiteboard" : "有白板", - "Wheelchair accessible" : "残疾人专用", + "Wheelchair accessible" : "无障碍设施", "Remove resource" : "删除资源", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} 座位"], - "Projector" : "投影仪", - "Whiteboard" : "白板", "Search for resources or rooms" : "搜索资源或房间", "available" : "可用", "unavailable" : "不可用", + "Show all rooms" : "显示所有房间", + "Projector" : "投影仪", + "Whiteboard" : "白板", "Room type" : "房间类型", "Any" : "任意", - "Minimum seating capacity" : "最低的座位容量", - "More" : "更多", - "Update this occurrence" : "更新此重复事件", + "Minimum seating capacity" : "最少座位数", + "More details" : "更多细节", "Update this and all future" : "更新此项及以后的项目", + "Update this occurrence" : "更新此重复事件", "Public calendar does not exist" : "公开日历不存在", - "Maybe the share was deleted or has expired?" : "也许共享已删除或过期?", - "Please select a time zone:" : "请选择一个时区:", - "Pick a time" : "选择一个时间", - "Pick a date" : "选择一个日期", + "Maybe the share was deleted or has expired?" : "共享可能已删除或过期?", "from {formattedDate}" : "从 {formattedDate}", "to {formattedDate}" : "到 {formattedDate}", - "on {formattedDate}" : "在 {formattedDate}", - "from {formattedDate} at {formattedTime}" : "从 {formattedDate} 的 {formattedTime}", - "to {formattedDate} at {formattedTime}" : "到 {formattedDate} 的 {formattedTime}", - "on {formattedDate} at {formattedTime}" : "在 {formattedDate} 的 {formattedTime}", - "{formattedDate} at {formattedTime}" : "{formattedDate} 的 {formattedTime}", + "on {formattedDate}" : "于 {formattedDate}", + "from {formattedDate} at {formattedTime}" : "从 {formattedDate} {formattedTime}", + "to {formattedDate} at {formattedTime}" : "到 {formattedDate} {formattedTime}", + "on {formattedDate} at {formattedTime}" : "于 {formattedDate} {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "请输入一个有效的日期", "Please enter a valid date and time" : "请输入有效的日期和时间", + "Select a time zone" : "选择一个时区", + "Please select a time zone:" : "请选择一个时区:", + "Pick a time" : "选择一个时间", + "Pick a date" : "选择一个日期", "Type to search time zone" : "输入以搜索时区 ", "Global" : "全球", - "Select date" : "选择日期", - "Select slot" : "选择档期", - "No slots available" : "无档期可用", - "The slot for your appointment has been confirmed" : "已确认了你的预约档期", + "Holidays in {region}" : "{region}的节假日", + "An error occurred, unable to read public calendars." : "发生错误,无法读取公开日历。", + "An error occurred, unable to subscribe to calendar." : "发生错误,无法订阅日历。", + "Public holiday calendars" : "公众节假日日历", + "Public calendars" : "公开日历", + "No valid public calendars configured" : "没有设置有效的日历", + "Speak to the server administrator to resolve this issue." : "请联系服务器管理人员以解决该问题。", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "公众节假日日历由Thunderbird提供。将从{website}下载日历数据。", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "公开日历由服务器管理员推荐使用。日历数据将从对应的网站进行下载。", + "By {authors}" : "作者为{authors}", + "Subscribed" : "已订阅", + "Subscribe" : "订阅", + "Could not fetch slots" : "无法获取空闲时段", + "Select a date" : "选择一个日期", + "Select slot" : "选择时段", + "No slots available" : "无可用时段", + "The slot for your appointment has been confirmed" : "您的预约时段已确认", "Appointment Details:" : "预约详情:", "Time:" : "时间:", "Booked for:" : "已登记:", - "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "谢谢,已确认了你从 {startDate} 到 {endDate} 的预约", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "谢谢,已确认了你从 {startDate} 到 {endDate} 的预约。", "Book another appointment:" : "登记另一个预约:", - "See all available slots" : "查看所有可用档期", - "The slot for your appointment from {startDate} to {endDate} is not available any more." : "从 {startDate} 到 {endDate} 的预约档期已满", - "Please book a different slot:" : "请登记不同档期:", - "Book an appointment with {name}" : "登记和 {name} 的约见", + "See all available slots" : "查看所有可用时段", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "您从 {startDate} 到 {endDate} 没有可用的预约时段。", + "Please book a different slot:" : "请选择不同的时段:", + "Book an appointment with {name}" : "登记与 {name} 的预约", "No public appointments found for {name}" : "未找到 {name} 的公开预约", "Personal" : "个人", - "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "自动时区检测确定您的时区为世界标准时间(UTC)。\n可能性最大的原因是 web 浏览器的安全措施的结果。\n请在日历设置中手动设置时区。", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "自动时区检测确定您的时区为世界标准时间(UTC)。\n这很可能是由于您 Web 浏览器的安全措施的结果。\n请在日历设置中手动设置时区。", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "找不到您配置的时区 ({timezoneId})。将退回到世界标准时间(UTC)。\n请在设置中更改您的时区并报告此问题。", - "No more events today" : "今天没有更多事件", - "No upcoming events" : "没有即将到来的事件", - "Create a new event" : "创建一个新的事件", - "[Today]" : "[今天]", - "[Tomorrow]" : "[明天]", - "[Yesterday]" : "[昨天]", - "[Last] dddd" : "[上一个] 工作日", + "Availability of {displayName}" : "{displayName} 的可用性", + "Edit event" : "编辑事件", "Event does not exist" : "事件不存在", + "Duplicate" : "重复", "Delete this occurrence" : "删除此重复事件", "Delete this and all future" : "删除此项及以后的项目", - "Details" : "详情", - "Attendees" : "与会者", - "Resources" : "资源", + "All day" : "全天", + "Modifications wont get propagated to the organizer and other attendees" : "修改不会传播给组织者和其他参加者", + "Managing shared access" : "管理已分享的访问权限", + "Deny access" : "拒绝访问", + "Invite" : "邀请", + "_User requires access to your file_::_Users require access to your file_" : ["用户要求访问您的文件"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["需要分享访问权限的附件"], + "Untitled event" : "未命名事件", "Close" : "关闭", - "Show more details" : "显示更多详情", - "Subscribe to {name}" : "订阅{name}", + "Modifications will not get propagated to the organizer and other attendees" : "修改不会传播给组织者和其他参加者", + "Subscribe to {name}" : "订阅 {name}", + "Export {name}" : "导出 {name}", + "Show availability" : "显示可用性", "Anniversary" : "周年", "Appointment" : "预约", - "Business" : "公司", + "Business" : "商业", "Education" : "教育", - "Holiday" : "假日", + "Holiday" : "节假日", "Meeting" : "会议", "Miscellaneous" : "杂项", "Non-working hours" : "非工作时间", @@ -369,37 +514,42 @@ OC.L10N.register( "{time} after the event ends" : "事件结束后 {time}", "on {time}" : "在 {time}", "on {time} ({timezoneId})" : "在 {time} ({timezoneId})", - "Week {number} of {year}" : "{year}年的第{number}周", - "Does not repeat" : "不重复", + "Week {number} of {year}" : "{year} 年的第 {number} 周", "Daily" : "每天", "Weekly" : "每周", "Monthly" : "每月", "Yearly" : "每年", "_Every %n day_::_Every %n days_" : ["每 %n 天"], "_Every %n week_::_Every %n weeks_" : ["每 %n 周"], - "_Every %n month_::_Every %n months_" : ["每 %n 个月"], + "_Every %n month_::_Every %n months_" : ["每 %n 月"], "_Every %n year_::_Every %n years_" : ["每 %n 年"], "_on {weekday}_::_on {weekdays}_" : ["在 {weekdays}"], - "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["在每月的第 {dayOfMonthList} 天"], - "on the {ordinalNumber} {byDaySet}" : "在{ordinalNumber} {byDaySet}", - "in {monthNames}" : "在{monthNames}", - "in {monthNames} on the {ordinalNumber} {byDaySet}" : "在{monthNames}的这些天 {ordinalNumber} {byDaySet}", + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["在 {dayOfMonthList} 日"], + "on the {ordinalNumber} {byDaySet}" : "在 {ordinalNumber} {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "在 {monthNames} 的 {dayOfMonthList}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "在 {monthNames} 的 {ordinalNumber} {byDaySet}", "until {untilDate}" : "直到 {untilDate}", "_%n time_::_%n times_" : ["%n次"], - "Untitled event" : "未命名事件", + "second" : "第二", + "third" : "第三", + "fourth" : "第四", + "fifth" : "第五", + "second to last" : "倒数第二", + "last" : "最后", "Untitled task" : "无标题任务", - "Please ask your administrator to enable the Tasks App." : "请让您的管理员启用这个应用。", - "Prev" : "上一页", - "Next" : "下一页", - "Prev year" : "上一年", - "Next year" : "下一年", - "Year" : "年份", + "Please ask your administrator to enable the Tasks App." : "请让您的管理员启用此应用。", + "You are not allowed to edit this event as an attendee." : "不允许您以参加者身份编辑此事件。", "W" : "周", "%n more" : "%n更多", "No events to display" : "没有事件可显示", + "All participants declined" : "所有参与者均拒绝", + "Please confirm your participation" : "请确认您的参与", + "You declined this event" : "您拒绝了此事件", + "Your participation is tentative" : "您的参与是暂定的", "_+%n more_::_+%n more_" : ["再 +%n 项"], "No events" : "无事件", "Create a new event or change the visible time-range" : "创建一个新事件或更改可见的时间范围", + "Failed to save event" : "无法保存事件", "It might have been deleted, or there was a typo in a link" : "它可能已被删除,或者链接有误", "It might have been deleted, or there was a typo in the link" : "它可能已被删除,或者链接有误", "Meeting room" : "会议室", @@ -412,148 +562,39 @@ OC.L10N.register( "When shared hide this event" : "共享时隐藏此事项", "The visibility of this event in shared calendars." : "在共享日历中此事项的可见性。", "Add a location" : "添加地点", - "Add a description" : "添加描述", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "添加描述\n\n- 这次会议是关于什么的\n- 议程项目\n- 参与者需要准备的内容", "Status" : "状态", "Confirmed" : "已确认", "Canceled" : "已取消", - "Confirmation about the overall status of the event." : "对事项总体状态的确认。", + "Confirmation about the overall status of the event." : "对事件总体状态的确认。", "Show as" : "显示为", - "Take this event into account when calculating free-busy information." : "在计算闲忙信息时将此事项考虑在内。", + "Take this event into account when calculating free-busy information." : "在计算闲忙信息时将此事件考虑在内。", "Categories" : "分类", - "Categories help you to structure and organize your events." : "分类帮助您归类和组织您的事项。", + "Categories help you to structure and organize your events." : "分类帮助您归类和组织您的事件。", "Search or add categories" : "搜索或添加分类", "Add this as a new category" : "添加此项作为新的分类", "Custom color" : "自定义颜色", "Special color of this event. Overrides the calendar-color." : "此事件的特殊颜色。 覆盖日历颜色。", - "Chat room for event" : "事件聊天室", + "Error while sharing file" : "共享文件时出错", + "Error while sharing file with user" : "与用户分享档案时发生错误", + "Error creating a folder {folder}" : "创建文件夹 {folder} 时出错", + "Attachment {fileName} already exists!" : "附件{fileName}已存在!", + "Attachment {fileName} added!" : "附件 {fileName} 已添加!", + "An error occurred during uploading file {fileName}" : "上传文件 {fileName} 时出错", + "An error occurred during getting file information" : "获取文件信息时发生错误", + "Talk conversation for event" : "活动的 Talk 对话", + "An error occurred, unable to delete the calendar." : "发生错误,无法删除日历。", "Imported {filename}" : "已导入 {filename}", - "Meditation" : "冥想", - "Relaxing" : "正在放松", - "Relax" : "放松", - "Break" : "休息", - "Commute" : "通勤", - "Commuting" : "通勤", - "Shuttle" : "摆渡车", - "Invoice" : "发票", - "Finance" : "财务", - "Bank" : "银行", - "Money" : "金钱", - "Wedding" : "婚礼", - "Dog" : "狗", - "Concert" : "音乐会", - "Festival" : "节日", - "Theater" : "剧院", - "Theatre" : "剧场", - "Presentation" : "报告", - "Talk" : "交谈", - "Speech" : "演说", - "Deadline" : "截止期", - "Submission" : "提交", - "Reporting" : "报告", - "Camping" : "正在露营", - "Camp" : "露营", - "Election" : "选举", - "Voting" : "投票", - "Vote" : "投票", - "Barbecue" : "烧烤", - "Barbeque" : "烧烤", - "Garden" : "园艺", - "Farm" : "农场", - "Movie" : "影片", - "Cinema" : "电影", - "Graduation" : "毕业", - "Brainstorm" : "头脑风暴", - "Review" : "预览", - "Audit" : "审计", - "Inspection" : "检查", - "Proofreading" : "校对", - "Baseball" : "棒球", - "Meet" : "见面", - "Planning" : "规划", - "Pointing" : "指点", - "Retrospective" : "怀旧", - "Office" : "办公", - "Contributor week" : "贡献者周", - "Mail" : "邮件", - "Soccer" : "足球", - "Football" : "橄榄球", - "Gaming" : "游戏", - "Drive" : "驾驶", - "Driving" : "驾驶", - "Bicycle" : "自行车", - "Cycle" : "自行车", - "Cycling" : "骑车", - "Biking" : "骑自行车", - "Bike" : "自行车", - "Podcast" : "播客", - "Basketball" : "篮球", - "Fishing" : "钓鱼", - "Hiking" : "徒步中", - "Hike" : "徒步", - "Art" : "艺术", - "Exhibition" : "展览", - "Museum" : "博物馆", - "Pilates" : "普拉提", - "Park" : "公园", - "Walk" : "走路", - "Studying" : "学习中", - "Doctor" : "医生", - "Health" : "健康", - "Dentist" : "牙医", - "Hospital" : "医院", - "Interview" : "面试", - "Training" : "训练", - "Practice" : "实践", - "Sports" : "体育", - "Exercise" : "练习", - "Work out" : "锻炼", - "Working out" : "锻炼中", - "Gym" : "健身房", - "Barber" : "理发师", - "Haircut" : "剪发", - "Hairdresser" : "美发师", - "Exam" : "考试", - "Written test" : "笔试", - "Oral test" : "口试", - "Working" : "工作中", - "New Years Eve" : "除夕", - "NYE" : "除夕", - "Fireworks" : "烟花", - "Running" : "跑步", - "Go for a run" : "去跑步", - "Marathon" : "马拉松", - "Video-conference" : "视频会议", - "Conference-call" : "电话会议", - "Video-call" : "视频通话", - "Video-chat" : "视频聊天", - "Video-meeting" : "视频会议", - "Call" : "打电话", - "Calling" : "呼叫中", - "Christmas" : "圣诞节", - "Conference" : "会议", - "Pizza" : "披萨", - "Travelling" : "旅行中", - "Trip" : "旅行", - "Journey" : "旅行", - "Collaborate" : "协作", - "Pair" : "配对", - "Lecture" : "讲座", - "Seminar" : "研讨会", - "Teaching" : "教学", - "Photograph" : "照片", - "Party" : "派对", - "Celebration" : "庆祝活动", - "Celebrate" : "庆祝", - "Birthday" : "生日", - "Shopping" : "购物", - "Groceries" : "杂货", - "Skate" : "溜冰", - "Skateboard" : "滑板", - "Wine tasting" : "品酒", - "Golf" : "高尔夫", - "Dinner" : "晚餐", - "Lunch" : "午餐", + "This is an event reminder." : "这是一个事件提醒。", + "Error while parsing a PROPFIND error" : "解析 PROPFIND 错误时出错", "Appointment not found" : "未找到预约", - "User not found" : "未找到用户" + "User not found" : "未找到用户", + "Reminder" : "提醒", + "+ Add reminder" : "+ 添加提醒", + "Select automatic slot" : "选择自动化槽位", + "with" : "与", + "Available times:" : "可用时间:", + "Suggestions" : "建议", + "Details" : "详情" }, "nplurals=1; plural=0;"); diff --git a/l10n/zh_CN.json b/l10n/zh_CN.json index c0e40df3eb4ca3b1a199ebc3d7701bfba37fc9a0..f92644a1f25ab8420ae52f2a30e7edc931786c60 100644 --- a/l10n/zh_CN.json +++ b/l10n/zh_CN.json @@ -1,131 +1,170 @@ { "translations": { + "Provided email-address is too long" : "所提供的电子邮件地址太长", "User-Session unexpectedly expired" : "用户会话意外过期", "Provided email-address is not valid" : "提供的电子邮件地址无效", "%s has published the calendar »%s«" : "%s 已经发布了日历 »%s«", - "Unexpected error sending email. Please contact your administrator." : "发送电子邮件时出现意外错误。请联系您的管理员。", + "Unexpected error sending email. Please contact your administrator." : "发送电子邮件时出现意外错误,请联系您的管理员。", "Successfully sent email to %1$s" : "成功将电子邮件发送到 %1$s", "Hello," : "你好,", "We wanted to inform you that %s has published the calendar »%s«." : "我们想通知您,%s 已发布日历 »%s«。", "Open »%s«" : "打开 »%s«", "Cheers!" : "干杯!", "Upcoming events" : "即将到来的事件", + "No more events today" : "今天没有更多事件", + "No upcoming events" : "没有即将到来的事件", + "More events" : "更多事件", + "%1$s with %2$s" : "与%2$s预定的对话%1$s", + "Calendar" : "日历", + "New booking {booking}" : "新预约{booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email})在{date_time}预约了“{config_display_name}”。", "Appointments" : "预约", - "Schedule appointment \"%s\"" : "安排预约\"%s\"", + "Schedule appointment \"%s\"" : "安排预约“%s”", "Schedule an appointment" : "安排预约", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "准备 %s", "Follow up for %s" : "跟进 %s", - "Your appointment \"%s\" needs confirmation" : "你的预约 \"%s\" 需要确认", + "Your appointment \"%s\" with %s needs confirmation" : "您与 %s 的预约“%s”需要确认", "Dear %s, please confirm your booking" : "亲爱的 %s,请确认你的登记", "Confirm" : "确认", - "This confirmation link expires in %s hours." : "确认链接将在 %s 小时内过期", - "If you wish to cancel the appointment after all, please contact your organizer." : "如果您还是想取消预约,请与组织者联系", - "Appointment:" : "预约:", + "Appointment with:" : "预约:", + "Description:" : "描述:", + "This confirmation link expires in %s hours." : "此确认链接将在 %s 小时内过期。", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "如果您想取消预约,请通过回复这封邮件或访问他们的个人资料页面与您的组织者联系。", + "Your appointment \"%s\" with %s has been accepted" : "您与 %s 的预约“%s”已被接受", + "Dear %s, your booking has been accepted." : "亲爱的%s,您的预约已被接受。", + "Appointment for:" : "预约:", "Date:" : "日期:", + "You will receive a link with the confirmation email" : "您将在确认电子邮件中收到链接", "Where:" : "地点:", - "Description:" : "描述:", - "Calendar" : "日历", + "Comment:" : "留言:", + "You have a new appointment booking \"%s\" from %s" : "您有一个来自%s的新预约“%s”", + "Dear %s, %s (%s) booked an appointment with you." : "亲爱的%s,%s (%s)与您预约了。", "A Calendar app for Nextcloud" : "适用于 Nextcloud 的日历应用", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "日历应用是 Nextcloud 的 CalDAV 服务器的一个用户界面。通过适用此应用,您可以轻松地将各种设备上的事件与您的 Nextcloud 同步,并在线编辑它们。\n\n* 🚀 **与其他 Nextcloud 应用的集成!** 目前是通讯录 -- 更多的应用将会支持\n* 🌐 **支持 WebCal!** 想在日历上看到自己最喜欢的球队的比赛日?没问题!\n* 🙋 **与会者!** 邀请人们参加您的事件\n* ⌚️ **空闲/繁忙!** 查看您的与会者何时可以见面\n* ⏰ **提醒!** 通过浏览器和电子邮件获取事件通知报\n* 🔍 搜索!轻松找到你的活动\n* ☑️ 任务!直接在日历中查看即将到期的任务\n* 🙈 **我们没有重新发明轮子!** 基于出色的 [c-dav 库](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) 和 [fullcalendar](https://github.com/fullcalendar/fullcalendar) 库开发。", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "Nextcloud 的日历应用。轻松将各种设备上的事件同步到 Nextcloud,并在线编辑。\n\n* 🚀 **与其他 Nextcloud 应用集成!** 例如 Contacts、Talk、Tasks、Deck 和 Circles\n* 🌐 **WebCal 支持!** 想在您的日历中查看您最喜欢的球队的比赛日吗?没问题!\n* 🙋 **参加者!** 邀请他人参加您的活动\n* ⌚ **空闲/忙碌!** 查看您的参加者何时有空参加会议\n* ⏰ **提醒!** 在浏览器中或通过电子邮件接收活动提醒\n* 🔍 **搜索!** 轻松查找您的活动\n* ☑️ **任务!** 直接在日历中查看带有截止日期的任务或 Deck 卡片\n* 🔈 **Talk 会议室!** 只需点击一下即可在预订会议时创建一个关联的 Talk 会议室\n* 📆 **预约** 向人们发送链接,以便他们[使用此应用](https://apps.nextcloud.com/apps/appointments)与您预约\n* 📎 **附件!** 添加、上传和查看活动附件\n* 🙈 **我们不会重复造轮子!** 基于强大的 [c-dav 库](https://github.com/nextcloud/cdav-library)、[ical.js](https://github.com/mozilla-comm/ical.js) 和 [fullcalendar](https://github.com/fullcalendar/fullcalendar) 库。", "Previous day" : "前一天", "Previous week" : "上周", + "Previous year" : "前一年", "Previous month" : "上个月", "Next day" : "后一天", "Next week" : "下周", + "Next year" : "下一年", "Next month" : "下个月", - "New event" : "新事件", + "Create new event" : "创建新事件", + "Event" : "事件", "Today" : "今天", "Day" : "日", "Week" : "星期", "Month" : "月", + "Year" : "年", "List" : "列表", + "Appointment link was copied to clipboard" : "预约链接已复制到剪贴板", + "Appointment link could not be copied to clipboard" : "无法将预约链接复制到剪贴板", "Preview" : "预览", "Copy link" : "复制链接", "Edit" : "编辑", "Delete" : "删除", - "Appointment link was copied to clipboard" : "预约链接已复制到剪贴板", - "Appointment link could not be copied to clipboard" : "无法将预约链接复制到剪贴板", - "Add new" : "新增", - "Untitled calendar" : "未命名的日历", - "Edit name" : "编辑名称", - "Saving name …" : "正在保存名称 …", - "Edit color" : "编辑颜色", - "Saving color …" : "正在保存颜色 …", - "Copy private link" : "复制私有链接", - "Export" : "导出", - "Unshare from me" : "我取消的共享", + "Appointment schedules" : "预约时间表", + "Create new" : "新建", + "Disable calendar \"{calendar}\"" : "禁用日历“{calendar}”", + "Disable untitled calendar" : "禁用未命名日历", + "Enable calendar \"{calendar}\"" : "启用日历“{calendar}”", + "Enable untitled calendar" : "启用未命名日历", "An error occurred, unable to change visibility of the calendar." : "发生错误,无法修改日历的可见性。", - "An error occurred, unable to delete the calendar." : "发生错误,无法删除日历。", - "Calendar link copied to clipboard." : "日历链接已复制到剪切板。", + "Untitled calendar" : "未命名的日历", + "Shared with you by" : "与您共享,由", + "Edit and share calendar" : "编辑并分享日历", + "Edit calendar" : "编辑日历", + "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["将在{countdown}秒后取消共享日历"], + "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["将在{countdown}秒后删除日历"], + "An error occurred, unable to create the calendar." : "发生了错误,无法创建日历。", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "请输入合法的链接(以http://、https://、webcal://、或者webcals://开头)", + "Calendars" : "日历", + "Add new" : "新增", + "New calendar" : "新日历", + "Name for new calendar" : "新日历名称", + "Creating calendar …" : "正在创建日历 ...", + "New calendar with task list" : "带任务列表的新日历", + "New subscription from link (read-only)" : "来自链接的新订阅(只读)", + "Creating subscription …" : "正在创建订阅 ...", + "Add public holiday calendar" : "添加公众节假期日历", + "Add custom public calendar" : "添加自定义公开日历", + "Calendar link copied to clipboard." : "日历链接已复制到剪贴板。", "Calendar link could not be copied to clipboard." : "日历链接无法复制到剪贴板。", - "An error occurred, unable to rename the calendar." : "发生错误,无法重命名日历。", - "An error occurred, unable to change the calendar's color." : "发生错误,无法修改日历颜色。", - "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["在{countdown}秒内取消共享日历"], - "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["在{countdown}秒内删除日历"], + "Copy subscription link" : "复制订阅链接", + "Copying link …" : "正在复制链接 ...", + "Copied link" : "已复制链接", + "Could not copy link" : "无法复制链接", + "Export" : "导出", + "Untitled item" : "未命名项", + "Unknown calendar" : "未知日历", + "Could not load deleted calendars and objects" : "无法加载已删除的日历和对象", + "Could not delete calendar or event" : "无法删除日历或事件", + "Could not restore calendar or event" : "无法还原日历或事件", + "Do you really want to empty the trash bin?" : "您真的想要清空回收站吗?", + "Empty trash bin" : "清空回收站", + "Trash bin" : "回收站", + "Loading deleted items." : "正在加载已删除的项目。", + "You do not have any deleted items." : "您没有任何已删除的项目。", + "Name" : "名称", + "Deleted" : "已删除", + "Restore" : "还原", + "Delete permanently" : "永久删除", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["回收站中的项目会在 {numDays} 天后删除"], + "Could not update calendar order." : "无法更改日历顺序。", + "Shared calendars" : "共享日历", + "Deck" : "看板", + "Hidden" : "隐藏的", + "Internal link" : "内部链接", + "A private link that can be used with external clients" : "可以与外部客户端一起使用的私人链接", + "Copy internal link" : "复制内部链接", + "An error occurred, unable to publish calendar." : "发生了错误,无法发布日历。", + "An error occurred, unable to send email." : "发生了错误,无法发送电子邮件。", + "Embed code copied to clipboard." : "嵌入代码已复制到剪贴板。", + "Embed code could not be copied to clipboard." : "嵌入代码无法复制到剪贴板。", + "Unpublishing calendar failed" : "取消发布日历失败", "Share link" : "共享链接", - "Publish calendar" : "发布日历", - "Publishing calendar" : "正在发布日历", "Copy public link" : "复制公开链接", "Send link to calendar via email" : "通过电子邮件发送链接到日历", "Enter one address" : "输入一个地址", - "Sending email …" : "正在发送电子邮件 …", - "Copy subscription link" : "复制订阅链接", - "Copying link …" : "正在复制链接 …", - "Copied link" : "已复制链接", - "Could not copy link" : "无法复制链接", + "Sending email …" : "正在发送电子邮件 ...", "Copy embedding code" : "复制嵌入代码", - "Copying code …" : "正在复制代码 …", + "Copying code …" : "正在复制代码 ...", "Copied code" : "已复制代码", "Could not copy code" : "无法复制代码", "Delete share link" : "删除共享链接", - "Deleting share link …" : "正在删除共享链接 …", - "An error occurred, unable to publish calendar." : "发生了错误,无法发布日历。", - "An error occurred, unable to send email." : "发生错误,无法发送电子邮件。", - "Embed code copied to clipboard." : "嵌入代码已复制到剪贴板。", - "Embed code could not be copied to clipboard." : "嵌入代码无法复制到剪贴板。", - "Unpublishing calendar failed" : "取消发布日历失败", + "Deleting share link …" : "正在删除共享链接 ...", + "{teamDisplayName} (Team)" : "{teamDisplayName} (Team)", + "An error occurred while unsharing the calendar." : "取消共享日历时发生错误。", + "An error occurred, unable to change the permission of the share." : "发生了错误,无法更改共享权限。", + "can edit" : "可编辑", + "Unshare with {displayName}" : "取消与 {displayName} 的共享", "Share with users or groups" : "与用户或分组共享", "No users or groups" : "无用户或分组", - "can edit" : "可编辑", - "Unshare with {displayName}" : "取消与{displayName}的共享", - "An error occurred, unable to change the unshare the calendar." : "发生了错误,无法取消日历共享。", - "An error occurred, unable to change the permission of the share." : "发生了错误,无法更改共享权限。", - "+ New calendar" : "+ 新日历", - "New calendar" : "新建日历", - "Creating calendar …" : "正在创建日历 …", - "New calendar with task list" : "带任务列表的新日历", - "New subscription from link (read-only)" : "来自链接的新订阅(只读)", - "Creating subscription …" : "正在创建订阅 …", - "An error occurred, unable to create the calendar." : "发生了错误,无法创建日历。", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "请输入合法的链接(以http://、https://、webcal://、或者webcals://开头)", - "Trash bin" : "垃圾箱", - "Loading deleted elements." : "正加载已删除的元素", - "You do not have any deleted elements." : "你没有任何已删除的元素", - "Name" : "名称", - "Deleted" : "已删除", - "Restore" : "还原", - "Delete permanently" : "永久删除", - "Empty trash bin" : "清空回收站", - "Untitled element" : "无标题元素", - "Unknown calendar" : "未知日历", - "Could not load deleted calendars and objects" : "无法加载已删除的日历和物体", - "Could not restore calendar or event" : "无法还原日历或事件", - "Do you really want to empty the trash bin?" : "你真想清空回收站吗?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["垃圾箱内元素将在 {numDays} 天后被删除"], - "Could not update calendar order." : "无法更新日历顺序", + "Failed to save calendar name and color" : "保存日历名称和颜色失败", + "Calendar name …" : "日历名称 ...", + "Never show me as busy (set this calendar to transparent)" : "从不显示我为忙碌状态(将此日历设置为透明)", + "Share calendar" : "共享日历", + "Unshare from me" : "我取消的共享", + "Save" : "保存", "Import calendars" : "导入日历", - "Please select a calendar to import into …" : "请选择一个要导入的日历 …", + "Please select a calendar to import into …" : "请选择一个要导入的日历 ……", "Filename" : "文件名", "Calendar to import into" : "要导入的日历", "Cancel" : "取消", "_Import calendar_::_Import calendars_" : ["导入日历"], - "{filename} could not be parsed" : "{filename} 无法进行解析", + "Select the default location for attachments" : "选择附件的默认位置", + "Pick" : "选择", + "Invalid location selected" : "所选位置无效", + "Attachments folder successfully saved." : "附件文件夹已成功保存。", + "Error on saving attachments folder." : "保存附件文件夹时发生错误。", + "Default attachments location" : "默认附件位置", + "{filename} could not be parsed" : "无法解析{filename}", "No valid files found, aborting import" : "未找到有效文件,中止导入", - "Import partially failed. Imported {accepted} out of {total}." : "导入部分失败。已导入{total}个中的{accepted}个。", + "_Successfully imported %n event_::_Successfully imported %n events_" : ["成功导入%n个事件"], + "Import partially failed. Imported {accepted} out of {total}." : "部分导入失败,已导入 {total} 个中的 {accepted} 个。", "Automatic" : "自动", "Automatic ({detected})" : "自动({detected})", "New setting was not saved successfully." : "新的设置没有成功保存。", - "Shortcut overview" : "快捷方式总览", - "or" : "或", "Navigation" : "导航", "Previous period" : "上一时段", "Next period" : "下一时段", @@ -133,33 +172,57 @@ "Day view" : "日视图", "Week view" : "周视图", "Month view" : "月视图", + "Year view" : "年视图", "List view" : "列表视图", "Actions" : "操作", "Create event" : "创建事件", "Show shortcuts" : "显示快捷方式", + "Editor" : "编辑器", + "Close editor" : "关闭编辑器", + "Save edited event" : "保存已编辑的事件", + "Delete edited event" : "删除已编辑的事件", + "Duplicate event" : "重复的事件", + "Shortcut overview" : "快捷方式总览", + "or" : "或", + "Calendar settings" : "日历设置", + "At event start" : "活动开始时", + "No reminder" : "无提醒", + "Failed to save default calendar" : "无法保存默认日历", + "CalDAV link copied to clipboard." : "CalDAV 链接已复制到剪贴板。", + "CalDAV link could not be copied to clipboard." : "CalDAV 链接无法复制到剪贴板。", "Enable birthday calendar" : "启用生日日历", "Show tasks in calendar" : "在日历中显示任务", - "Enable simplified editor" : "启用简化的编辑器", - "Limit visible events per view" : "限制每个视图的可见事件", + "Enable simplified editor" : "启用简单编辑器", + "Limit the number of events displayed in the monthly view" : "限制月视图中显示的事件数量", "Show weekends" : "显示周末", "Show week numbers" : "显示星期数", "Time increments" : "时间增量", + "Default calendar for incoming invitations" : "传入邀请的默认日历", "Default reminder" : "默认提醒", - "Copy primary CalDAV address" : "复制主要的CalDAV地址", - "Copy iOS/macOS CalDAV address" : "复制iOS/macOS CalDAV地址", - "Personal availability settings" : "个人可用性设置", + "Copy primary CalDAV address" : "复制主要的 CalDAV 地址", + "Copy iOS/macOS CalDAV address" : "复制 iOS/macOS CalDAV 地址", + "Personal availability settings" : "个人工作时间设置", "Show keyboard shortcuts" : "显示键盘快捷方式", - "No reminder" : "无提醒", - "CalDAV link copied to clipboard." : "CalDAV链接已复制到剪贴板。", - "CalDAV link could not be copied to clipboard." : "CalDAV链接无法复制到剪贴板。", - "Appointment was created successfully" : "成功创建预约", - "Appointment was updated successfully" : "成功更新预约", - "_{duration} minute_::_{duration} minutes_" : ["{duration} 分钟"], + "Appointment schedule successfully created" : "预约时间表已成功创建", + "Appointment schedule successfully updated" : "预约时间表已成功更新", + "_{duration} minute_::_{duration} minutes_" : ["{duration}分钟"], "0 minutes" : "0 分钟", + "_{duration} hour_::_{duration} hours_" : ["{duration} 小时"], + "_{duration} day_::_{duration} days_" : ["{duration} 天"], + "_{duration} week_::_{duration} weeks_" : ["{duration} 周"], + "_{duration} month_::_{duration} months_" : ["{duration} 月"], + "_{duration} year_::_{duration} years_" : ["{duration} 年"], "To configure appointments, add your email address in personal settings." : "要配置预约,请在个人设置中添加您的电子邮件地址。", "Public – shown on the profile page" : "公开 - 显示在个人资料页上", "Private – only accessible via secret link" : "私密 - 只能通过秘密链接访问", + "Appointment schedule saved" : "预约时间表已保存", + "Create appointment schedule" : "创建预约时间表", + "Edit appointment schedule" : "编辑预约时间表", + "Update" : "更新", + "Appointment name" : "预约名称", "Location" : "地点", + "Create a Talk room" : "创建聊天室", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "将为每个预订的预约生成一个唯一的链接,并通过确认电子邮件发送", "Description" : "描述", "Visibility" : "可见性", "Duration" : "持续时间", @@ -167,185 +230,267 @@ "Additional calendars to check for conflicts" : "其他要检查冲突的日历", "Pick time ranges where appointments are allowed" : "选择允许预约的时间范围", "to" : "到", - "Delete slot" : "删除档期", + "Delete slot" : "删除时段", "No times set" : "未设置时间", "Add" : "添加", - "Monday" : "星期一", + "Monday" : "周一", "Tuesday" : "周二", "Wednesday" : "周三", "Thursday" : "周四", "Friday" : "周五", "Saturday" : "周六", "Sunday" : "周日", + "Weekdays" : "工作日", "Add time before and after the event" : "添加事件前后时间", "Before the event" : "事件前", "After the event" : "事件后", "Planning restrictions" : "规划限制", - "Minimum time before next available slot" : "最小化下一可用档期前的时间", - "Max slots per day" : "每日最多档期数", - "Create appointment" : "创建预约", - "Edit appointment" : "编辑预约", - "Save" : "保存", - "Update" : "更新", - "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "我们给你发了一封详细的邮件。请使用邮件中的链接确认您的预约。您现在可以关闭此页面。", + "Minimum time before next available slot" : "下一可用时段前的最短时间", + "Max slots per day" : "每日最多时段数", + "Limit how far in the future appointments can be booked" : "限制可以预定未来多久的预约", + "It seems a rate limit has been reached. Please try again later." : "似乎已达到速度限制。请稍后重试。", + "Please confirm your reservation" : "请确认您的预约", + "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "我们给您发了一封详细的邮件,请使用邮件中的链接确认您的预约。您现在可以关闭此页面。", "Your name" : "名字", "Your email address" : "你的邮箱地址", "Please share anything that will help prepare for our meeting" : "请分享任何能帮助我们准备会议的东西", - "Could not book the appointment. Please try again later or contact the organizer." : "无法登记预约。请稍后再试或联系组织者。", - "Book the appointment" : "登记预约", - "Reminder" : "提醒", + "Could not book the appointment. Please try again later or contact the organizer." : "无法登记预约,请稍后再试或联系组织者。", + "Back" : "返回", + "Book appointment" : "登记预约", + "Error fetching Talk conversations." : "获取 Talk 对话时出错。", + "Conversation does not have a valid URL." : "对话没有有效的 URL。", + "Successfully added Talk conversation link to location." : "已成功将 Talk 对话链接添加到位置。", + "Successfully added Talk conversation link to description." : "已成功将 Talk 对话链接添加到描述。", + "Failed to apply Talk room." : "无法应用 Talk 聊天室。", + "Error creating Talk conversation" : "创建 Talk 对话时出错", + "Select a Talk Room" : "选择 Talk 聊天室", + "Add Talk conversation" : "添加 Talk 对话", + "Fetching Talk rooms…" : "正在获取 Talk 聊天室…", + "No Talk room available" : "没有可用的 Talk 聊天室", + "Create a new conversation" : "创建新对话", + "Select conversation" : "选择对话", + "on" : "于", + "at" : "在", "before at" : "在此之前:", "Notification" : "通知", "Email" : "电子邮件", "Audio notification" : "语音通知", "Other notification" : "其他通知", - "Relative to event" : "相关事件", - "On date" : "到期", + "Relative to event" : "相对于事件", + "On date" : "在特定日期", "Edit time" : "编辑时间", "Save time" : "保存时间", "Remove reminder" : "移除提醒", - "on" : "于", - "at" : "在", - "+ Add reminder" : "+ 添加提醒", "Add reminder" : "添加提醒", - "_second_::_seconds_" : ["秒"], - "_minute_::_minutes_" : ["分钟"], - "_hour_::_hours_" : ["小时"], - "_day_::_days_" : ["天"], - "_week_::_weeks_" : ["周"], + "seconds" : "秒", + "minutes" : "分钟", + "hours" : "小时", + "days" : "天", + "weeks" : "周", + "Choose a file to add as attachment" : "选择文件添加为附件", + "Choose a file to share as a link" : "选择要共享的文件作为链接", + "Attachment {name} already exist!" : "附件{name}已存在!", + "Could not upload attachment(s)" : "无法上传附件", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "您即将下载一个文件。请在打开文件之前检查文件名。是否确定要继续?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "您将要导航到 {host}。是否确定要继续?链接:{link}", + "Proceed" : "前进", + "No attachments" : "无附件", + "Add from Files" : "添加文件", + "Upload from device" : "从设备上传", + "Delete file" : "删除文件", + "Confirmation" : "确认", + "_{count} attachment_::_{count} attachments_" : ["{count} 附件"], + "Suggested" : "建议", "Available" : "可用", + "Invitation accepted" : "已接受邀请", + "Accepted {organizerName}'s invitation" : "已接受 {organizerName} 的邀请", + "Participation marked as tentative" : "参与被标记为暂定", + "Invitation is delegated" : "邀请已委派", "Not available" : "不可用", - "Invitation sent" : "已发送邀请", - "Availability of attendees, resources and rooms" : "与会者,资源和会议室的可用性", + "Invitation declined" : "邀请被拒绝", + "Declined {organizerName}'s invitation" : "已拒绝 {organizerName} 的邀请", + "Availability will be checked" : "将检查可用性", + "Invitation will be sent" : "将发送邀请", + "Failed to check availability" : "无法检查可用性", + "Failed to deliver invitation" : "发送邀请失败", + "Awaiting response" : "正在等在回应", + "Checking availability" : "正在检查工作时间", + "Has not responded to {organizerName}'s invitation yet" : "尚未回应 {organizerName} 的邀请", + "Suggested times" : "建议时间", + "chairperson" : "主席", + "required participant" : "参与人员", + "non-participant" : "非参加人员", + "optional participant" : "可不出席的参加人员", "{organizer} (organizer)" : "{organizer} (organizer) ", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "参加者、资源和会议室的可用性", + "Suggestion accepted" : "建议已接受", + "Previous date" : "上个日期", + "Next date" : "下个日期", + "Legend" : "图例", + "Out of office" : "不在办公室", + "Attendees:" : "参加者:", + "Done" : "完成", + "Search room" : "搜索聊天室", + "Room name" : "聊天室名称", + "Check room availability" : "检查聊天室是否可用", "Free" : "空闲", - "Busy (tentative)" : "繁忙(暂定)", + "Busy (tentative)" : "忙碌(暂定)", "Busy" : "忙碌", - "Out of office" : "不在办公室", "Unknown" : "未知", + "Find a time" : "查找时间", + "The invitation has been accepted successfully." : "已成功接受邀请。", + "Failed to accept the invitation." : "接受邀请失败。", + "The invitation has been declined successfully." : "已成功拒绝邀请。", + "Failed to decline the invitation." : "拒绝邀请失败。", + "Your participation has been marked as tentative." : "您的参与被标记为暂定。", + "Failed to set the participation status to tentative." : "未能将参与状态设置为暂定。", "Accept" : "接受", "Decline" : "拒绝", "Tentative" : "暂定", - "Create Talk room for this event" : "为此事件创建聊天室", - "Show busy times" : "显示繁忙时间", - "No attendees yet" : "暂无与会者", + "No attendees yet" : "暂无参加者", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} 已邀请, {confirmedCount} 已确认", + "Please add at least one attendee to use the \"Find a time\" feature." : "请至少添加一位参加者以使用“查找时间”功能。", + "Successfully appended link to talk room to location." : "已成功将线上谈话室的链接附加了位置。", "Successfully appended link to talk room to description." : "成功将链接添加到聊天室的描述。", "Error creating Talk room" : "建立聊天室时发生错误", - "Send email" : "发送电子邮件", + "Attendees" : "参加者", + "_%n more guest_::_%n more guests_" : ["还有 %n 位访客"], + "Remove group" : "删除分组", + "Remove attendee" : "移除参加者", + "Request reply" : "请求回复", "Chairperson" : "主席", "Required participant" : "必要的参与者", "Optional participant" : "可选的参与者", "Non-participant" : "非参与者", - "Remove attendee" : "移除与会者", - "Search for emails, users or contacts" : "搜索电子邮件、用户或联系人", + "_%n member_::_%n members_" : ["%n 位成员"], + "Search for emails, users, contacts, contact groups or teams" : "搜索电子邮件、用户、联系人、联系人群组或团队", "No match found" : "未找到匹配项", + "Note that members of circles get invited but are not synced yet." : "请注意,圈内成员已收到邀请但尚未同步。", + "Note that members of contact groups get invited but are not synced yet." : "请注意,联系人群组的成员已邀请,但尚未同步。", "(organizer)" : "(组织者)", + "Make {label} the organizer" : "将 {label} 设为组织者", + "Make {label} the organizer and attend" : "将 {label} 设为组织者并参加", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "为发送邀请和处理回应,[linkopen] 将您的电子邮件地址添加到个人设置中 [linkclose] 。", "Remove color" : "移除颜色", "Event title" : "事件标题", - "All day" : "全天", - "Cannot modify all-day setting for events that are part of a recurrence-set." : "无法修改属于递归集的事件的全天设置。 ", - "from {startDate}" : "始于{startDate}", - "from {startDate} at {startTime}" : "始于{startDate}的{startTime}", - "to {endDate}" : "到{endDate}", - "to {endDate} at {endTime}" : "到{endDate}的{endTime}", + "Cannot modify all-day setting for events that are part of a recurrence-set." : "无法修改属于重复活动事件的全天设置。 ", + "From" : "来自", + "To" : "给", "Repeat" : "重复", - "End repeat" : "结束重复", - "Select to end repeat" : "选择以中止重复", + "Repeat event" : "重复事件", + "_time_::_times_" : ["次数"], "never" : "从不", - "on date" : "到期", + "on date" : "在特定日期", "after" : "之后", - "_time_::_times_" : ["次数"], - "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "此事件是递归集的递归异常。不能给它添加递归规则。 ", - "first" : "一日", - "third" : "三日", - "fourth" : "四日", - "fifth" : "五日", - "second to last" : "倒数第二", - "last" : "最后的", - "Changes to the recurrence-rule will only apply to this and all future occurrences." : "对循环规则的更改将只应用于本次和所有未来事件。", + "End repeat" : "结束重复", + "Select to end repeat" : "选择以中止重复", + "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "此事件是重复事件的例外项,无法为其添加重复规则。", + "first" : "第一个", + "Changes to the recurrence-rule will only apply to this and all future occurrences." : "对重复规则的更改将只应用于本次和所有未来事件。", "Repeat every" : "重复每", - "By day of the month" : "以每月的天数", + "By day of the month" : "每月特定日", "On the" : "在", + "_day_::_days_" : ["天"], + "_week_::_weeks_" : ["周"], "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], + "On specific day" : "在特定日子", "weekday" : "工作日", "weekend day" : "周末", - "No recurrence" : "无重复", - "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "此事件的循环定义不能被Nextcloud完全支持。如果您编辑循环选项,某些循环可能会丢失。", - "Suggestions" : "建议", + "Does not repeat" : "不重复", + "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud 不能完全支持此事件的重复定义。如果您编辑重复选项,某些重复可能会丢失。", "No rooms or resources yet" : "尚无房间或资源", + "Resources" : "资源", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} 个座位"], "Add resource" : "添加资源", - "Has a projector" : "有计划者", + "Has a projector" : "有投影仪", "Has a whiteboard" : "有白板", - "Wheelchair accessible" : "残疾人专用", + "Wheelchair accessible" : "无障碍设施", "Remove resource" : "删除资源", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} 座位"], - "Projector" : "投影仪", - "Whiteboard" : "白板", "Search for resources or rooms" : "搜索资源或房间", "available" : "可用", "unavailable" : "不可用", + "Show all rooms" : "显示所有房间", + "Projector" : "投影仪", + "Whiteboard" : "白板", "Room type" : "房间类型", "Any" : "任意", - "Minimum seating capacity" : "最低的座位容量", - "More" : "更多", - "Update this occurrence" : "更新此重复事件", + "Minimum seating capacity" : "最少座位数", + "More details" : "更多细节", "Update this and all future" : "更新此项及以后的项目", + "Update this occurrence" : "更新此重复事件", "Public calendar does not exist" : "公开日历不存在", - "Maybe the share was deleted or has expired?" : "也许共享已删除或过期?", - "Please select a time zone:" : "请选择一个时区:", - "Pick a time" : "选择一个时间", - "Pick a date" : "选择一个日期", + "Maybe the share was deleted or has expired?" : "共享可能已删除或过期?", "from {formattedDate}" : "从 {formattedDate}", "to {formattedDate}" : "到 {formattedDate}", - "on {formattedDate}" : "在 {formattedDate}", - "from {formattedDate} at {formattedTime}" : "从 {formattedDate} 的 {formattedTime}", - "to {formattedDate} at {formattedTime}" : "到 {formattedDate} 的 {formattedTime}", - "on {formattedDate} at {formattedTime}" : "在 {formattedDate} 的 {formattedTime}", - "{formattedDate} at {formattedTime}" : "{formattedDate} 的 {formattedTime}", + "on {formattedDate}" : "于 {formattedDate}", + "from {formattedDate} at {formattedTime}" : "从 {formattedDate} {formattedTime}", + "to {formattedDate} at {formattedTime}" : "到 {formattedDate} {formattedTime}", + "on {formattedDate} at {formattedTime}" : "于 {formattedDate} {formattedTime}", + "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "请输入一个有效的日期", "Please enter a valid date and time" : "请输入有效的日期和时间", + "Select a time zone" : "选择一个时区", + "Please select a time zone:" : "请选择一个时区:", + "Pick a time" : "选择一个时间", + "Pick a date" : "选择一个日期", "Type to search time zone" : "输入以搜索时区 ", "Global" : "全球", - "Select date" : "选择日期", - "Select slot" : "选择档期", - "No slots available" : "无档期可用", - "The slot for your appointment has been confirmed" : "已确认了你的预约档期", + "Holidays in {region}" : "{region}的节假日", + "An error occurred, unable to read public calendars." : "发生错误,无法读取公开日历。", + "An error occurred, unable to subscribe to calendar." : "发生错误,无法订阅日历。", + "Public holiday calendars" : "公众节假日日历", + "Public calendars" : "公开日历", + "No valid public calendars configured" : "没有设置有效的日历", + "Speak to the server administrator to resolve this issue." : "请联系服务器管理人员以解决该问题。", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "公众节假日日历由Thunderbird提供。将从{website}下载日历数据。", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "公开日历由服务器管理员推荐使用。日历数据将从对应的网站进行下载。", + "By {authors}" : "作者为{authors}", + "Subscribed" : "已订阅", + "Subscribe" : "订阅", + "Could not fetch slots" : "无法获取空闲时段", + "Select a date" : "选择一个日期", + "Select slot" : "选择时段", + "No slots available" : "无可用时段", + "The slot for your appointment has been confirmed" : "您的预约时段已确认", "Appointment Details:" : "预约详情:", "Time:" : "时间:", "Booked for:" : "已登记:", - "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "谢谢,已确认了你从 {startDate} 到 {endDate} 的预约", + "Thank you. Your booking from {startDate} to {endDate} has been confirmed." : "谢谢,已确认了你从 {startDate} 到 {endDate} 的预约。", "Book another appointment:" : "登记另一个预约:", - "See all available slots" : "查看所有可用档期", - "The slot for your appointment from {startDate} to {endDate} is not available any more." : "从 {startDate} 到 {endDate} 的预约档期已满", - "Please book a different slot:" : "请登记不同档期:", - "Book an appointment with {name}" : "登记和 {name} 的约见", + "See all available slots" : "查看所有可用时段", + "The slot for your appointment from {startDate} to {endDate} is not available any more." : "您从 {startDate} 到 {endDate} 没有可用的预约时段。", + "Please book a different slot:" : "请选择不同的时段:", + "Book an appointment with {name}" : "登记与 {name} 的预约", "No public appointments found for {name}" : "未找到 {name} 的公开预约", "Personal" : "个人", - "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "自动时区检测确定您的时区为世界标准时间(UTC)。\n可能性最大的原因是 web 浏览器的安全措施的结果。\n请在日历设置中手动设置时区。", + "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "自动时区检测确定您的时区为世界标准时间(UTC)。\n这很可能是由于您 Web 浏览器的安全措施的结果。\n请在日历设置中手动设置时区。", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "找不到您配置的时区 ({timezoneId})。将退回到世界标准时间(UTC)。\n请在设置中更改您的时区并报告此问题。", - "No more events today" : "今天没有更多事件", - "No upcoming events" : "没有即将到来的事件", - "Create a new event" : "创建一个新的事件", - "[Today]" : "[今天]", - "[Tomorrow]" : "[明天]", - "[Yesterday]" : "[昨天]", - "[Last] dddd" : "[上一个] 工作日", + "Availability of {displayName}" : "{displayName} 的可用性", + "Edit event" : "编辑事件", "Event does not exist" : "事件不存在", + "Duplicate" : "重复", "Delete this occurrence" : "删除此重复事件", "Delete this and all future" : "删除此项及以后的项目", - "Details" : "详情", - "Attendees" : "与会者", - "Resources" : "资源", + "All day" : "全天", + "Modifications wont get propagated to the organizer and other attendees" : "修改不会传播给组织者和其他参加者", + "Managing shared access" : "管理已分享的访问权限", + "Deny access" : "拒绝访问", + "Invite" : "邀请", + "_User requires access to your file_::_Users require access to your file_" : ["用户要求访问您的文件"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["需要分享访问权限的附件"], + "Untitled event" : "未命名事件", "Close" : "关闭", - "Show more details" : "显示更多详情", - "Subscribe to {name}" : "订阅{name}", + "Modifications will not get propagated to the organizer and other attendees" : "修改不会传播给组织者和其他参加者", + "Subscribe to {name}" : "订阅 {name}", + "Export {name}" : "导出 {name}", + "Show availability" : "显示可用性", "Anniversary" : "周年", "Appointment" : "预约", - "Business" : "公司", + "Business" : "商业", "Education" : "教育", - "Holiday" : "假日", + "Holiday" : "节假日", "Meeting" : "会议", "Miscellaneous" : "杂项", "Non-working hours" : "非工作时间", @@ -367,37 +512,42 @@ "{time} after the event ends" : "事件结束后 {time}", "on {time}" : "在 {time}", "on {time} ({timezoneId})" : "在 {time} ({timezoneId})", - "Week {number} of {year}" : "{year}年的第{number}周", - "Does not repeat" : "不重复", + "Week {number} of {year}" : "{year} 年的第 {number} 周", "Daily" : "每天", "Weekly" : "每周", "Monthly" : "每月", "Yearly" : "每年", "_Every %n day_::_Every %n days_" : ["每 %n 天"], "_Every %n week_::_Every %n weeks_" : ["每 %n 周"], - "_Every %n month_::_Every %n months_" : ["每 %n 个月"], + "_Every %n month_::_Every %n months_" : ["每 %n 月"], "_Every %n year_::_Every %n years_" : ["每 %n 年"], "_on {weekday}_::_on {weekdays}_" : ["在 {weekdays}"], - "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["在每月的第 {dayOfMonthList} 天"], - "on the {ordinalNumber} {byDaySet}" : "在{ordinalNumber} {byDaySet}", - "in {monthNames}" : "在{monthNames}", - "in {monthNames} on the {ordinalNumber} {byDaySet}" : "在{monthNames}的这些天 {ordinalNumber} {byDaySet}", + "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["在 {dayOfMonthList} 日"], + "on the {ordinalNumber} {byDaySet}" : "在 {ordinalNumber} {byDaySet}", + "in {monthNames} on the {dayOfMonthList}" : "在 {monthNames} 的 {dayOfMonthList}", + "in {monthNames} on the {ordinalNumber} {byDaySet}" : "在 {monthNames} 的 {ordinalNumber} {byDaySet}", "until {untilDate}" : "直到 {untilDate}", "_%n time_::_%n times_" : ["%n次"], - "Untitled event" : "未命名事件", + "second" : "第二", + "third" : "第三", + "fourth" : "第四", + "fifth" : "第五", + "second to last" : "倒数第二", + "last" : "最后", "Untitled task" : "无标题任务", - "Please ask your administrator to enable the Tasks App." : "请让您的管理员启用这个应用。", - "Prev" : "上一页", - "Next" : "下一页", - "Prev year" : "上一年", - "Next year" : "下一年", - "Year" : "年份", + "Please ask your administrator to enable the Tasks App." : "请让您的管理员启用此应用。", + "You are not allowed to edit this event as an attendee." : "不允许您以参加者身份编辑此事件。", "W" : "周", "%n more" : "%n更多", "No events to display" : "没有事件可显示", + "All participants declined" : "所有参与者均拒绝", + "Please confirm your participation" : "请确认您的参与", + "You declined this event" : "您拒绝了此事件", + "Your participation is tentative" : "您的参与是暂定的", "_+%n more_::_+%n more_" : ["再 +%n 项"], "No events" : "无事件", "Create a new event or change the visible time-range" : "创建一个新事件或更改可见的时间范围", + "Failed to save event" : "无法保存事件", "It might have been deleted, or there was a typo in a link" : "它可能已被删除,或者链接有误", "It might have been deleted, or there was a typo in the link" : "它可能已被删除,或者链接有误", "Meeting room" : "会议室", @@ -410,148 +560,39 @@ "When shared hide this event" : "共享时隐藏此事项", "The visibility of this event in shared calendars." : "在共享日历中此事项的可见性。", "Add a location" : "添加地点", - "Add a description" : "添加描述", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "添加描述\n\n- 这次会议是关于什么的\n- 议程项目\n- 参与者需要准备的内容", "Status" : "状态", "Confirmed" : "已确认", "Canceled" : "已取消", - "Confirmation about the overall status of the event." : "对事项总体状态的确认。", + "Confirmation about the overall status of the event." : "对事件总体状态的确认。", "Show as" : "显示为", - "Take this event into account when calculating free-busy information." : "在计算闲忙信息时将此事项考虑在内。", + "Take this event into account when calculating free-busy information." : "在计算闲忙信息时将此事件考虑在内。", "Categories" : "分类", - "Categories help you to structure and organize your events." : "分类帮助您归类和组织您的事项。", + "Categories help you to structure and organize your events." : "分类帮助您归类和组织您的事件。", "Search or add categories" : "搜索或添加分类", "Add this as a new category" : "添加此项作为新的分类", "Custom color" : "自定义颜色", "Special color of this event. Overrides the calendar-color." : "此事件的特殊颜色。 覆盖日历颜色。", - "Chat room for event" : "事件聊天室", + "Error while sharing file" : "共享文件时出错", + "Error while sharing file with user" : "与用户分享档案时发生错误", + "Error creating a folder {folder}" : "创建文件夹 {folder} 时出错", + "Attachment {fileName} already exists!" : "附件{fileName}已存在!", + "Attachment {fileName} added!" : "附件 {fileName} 已添加!", + "An error occurred during uploading file {fileName}" : "上传文件 {fileName} 时出错", + "An error occurred during getting file information" : "获取文件信息时发生错误", + "Talk conversation for event" : "活动的 Talk 对话", + "An error occurred, unable to delete the calendar." : "发生错误,无法删除日历。", "Imported {filename}" : "已导入 {filename}", - "Meditation" : "冥想", - "Relaxing" : "正在放松", - "Relax" : "放松", - "Break" : "休息", - "Commute" : "通勤", - "Commuting" : "通勤", - "Shuttle" : "摆渡车", - "Invoice" : "发票", - "Finance" : "财务", - "Bank" : "银行", - "Money" : "金钱", - "Wedding" : "婚礼", - "Dog" : "狗", - "Concert" : "音乐会", - "Festival" : "节日", - "Theater" : "剧院", - "Theatre" : "剧场", - "Presentation" : "报告", - "Talk" : "交谈", - "Speech" : "演说", - "Deadline" : "截止期", - "Submission" : "提交", - "Reporting" : "报告", - "Camping" : "正在露营", - "Camp" : "露营", - "Election" : "选举", - "Voting" : "投票", - "Vote" : "投票", - "Barbecue" : "烧烤", - "Barbeque" : "烧烤", - "Garden" : "园艺", - "Farm" : "农场", - "Movie" : "影片", - "Cinema" : "电影", - "Graduation" : "毕业", - "Brainstorm" : "头脑风暴", - "Review" : "预览", - "Audit" : "审计", - "Inspection" : "检查", - "Proofreading" : "校对", - "Baseball" : "棒球", - "Meet" : "见面", - "Planning" : "规划", - "Pointing" : "指点", - "Retrospective" : "怀旧", - "Office" : "办公", - "Contributor week" : "贡献者周", - "Mail" : "邮件", - "Soccer" : "足球", - "Football" : "橄榄球", - "Gaming" : "游戏", - "Drive" : "驾驶", - "Driving" : "驾驶", - "Bicycle" : "自行车", - "Cycle" : "自行车", - "Cycling" : "骑车", - "Biking" : "骑自行车", - "Bike" : "自行车", - "Podcast" : "播客", - "Basketball" : "篮球", - "Fishing" : "钓鱼", - "Hiking" : "徒步中", - "Hike" : "徒步", - "Art" : "艺术", - "Exhibition" : "展览", - "Museum" : "博物馆", - "Pilates" : "普拉提", - "Park" : "公园", - "Walk" : "走路", - "Studying" : "学习中", - "Doctor" : "医生", - "Health" : "健康", - "Dentist" : "牙医", - "Hospital" : "医院", - "Interview" : "面试", - "Training" : "训练", - "Practice" : "实践", - "Sports" : "体育", - "Exercise" : "练习", - "Work out" : "锻炼", - "Working out" : "锻炼中", - "Gym" : "健身房", - "Barber" : "理发师", - "Haircut" : "剪发", - "Hairdresser" : "美发师", - "Exam" : "考试", - "Written test" : "笔试", - "Oral test" : "口试", - "Working" : "工作中", - "New Years Eve" : "除夕", - "NYE" : "除夕", - "Fireworks" : "烟花", - "Running" : "跑步", - "Go for a run" : "去跑步", - "Marathon" : "马拉松", - "Video-conference" : "视频会议", - "Conference-call" : "电话会议", - "Video-call" : "视频通话", - "Video-chat" : "视频聊天", - "Video-meeting" : "视频会议", - "Call" : "打电话", - "Calling" : "呼叫中", - "Christmas" : "圣诞节", - "Conference" : "会议", - "Pizza" : "披萨", - "Travelling" : "旅行中", - "Trip" : "旅行", - "Journey" : "旅行", - "Collaborate" : "协作", - "Pair" : "配对", - "Lecture" : "讲座", - "Seminar" : "研讨会", - "Teaching" : "教学", - "Photograph" : "照片", - "Party" : "派对", - "Celebration" : "庆祝活动", - "Celebrate" : "庆祝", - "Birthday" : "生日", - "Shopping" : "购物", - "Groceries" : "杂货", - "Skate" : "溜冰", - "Skateboard" : "滑板", - "Wine tasting" : "品酒", - "Golf" : "高尔夫", - "Dinner" : "晚餐", - "Lunch" : "午餐", + "This is an event reminder." : "这是一个事件提醒。", + "Error while parsing a PROPFIND error" : "解析 PROPFIND 错误时出错", "Appointment not found" : "未找到预约", - "User not found" : "未找到用户" + "User not found" : "未找到用户", + "Reminder" : "提醒", + "+ Add reminder" : "+ 添加提醒", + "Select automatic slot" : "选择自动化槽位", + "with" : "与", + "Available times:" : "可用时间:", + "Suggestions" : "建议", + "Details" : "详情" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/zh_HK.js b/l10n/zh_HK.js index 00e29e1a0980a13e975bfc84fae202b4a0ded19f..c03e759d6b92ac5a4c8862cf756a0715aa5a147a 100644 --- a/l10n/zh_HK.js +++ b/l10n/zh_HK.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "提供的電郵地址太長", "User-Session unexpectedly expired" : "用戶時段意外地結束", "Provided email-address is not valid" : "提供的電郵地址無效", "%s has published the calendar »%s«" : "%s 發佈了日曆 »%s«", @@ -11,129 +12,161 @@ OC.L10N.register( "Open »%s«" : "開啟 »%s«", "Cheers!" : "太棒了!", "Upcoming events" : "接下來的活動", + "No more events today" : "今日沒有其他活動", + "No upcoming events" : "沒有接下來的活動", + "More events" : "更多活動", + "%1$s with %2$s" : "與 %2$s 預定的對話 %1$s", + "Calendar" : "日曆", + "New booking {booking}" : "新預約 {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) 於 {date_time} 預約了“{config_display_name}”。", "Appointments" : "預約", "Schedule appointment \"%s\"" : "安排預約 \"%s\"", "Schedule an appointment" : "安排約會", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "準備 %s", "Follow up for %s" : "跟進 %s", - "Your appointment \"%s\" needs confirmation" : "你的預約 \"%s\" 需要確認", + "Your appointment \"%s\" with %s needs confirmation" : "您與 %s 的預約 “%s” 需要確認", "Dear %s, please confirm your booking" : "%s,請確認您的預約", "Confirm" : "確認", + "Appointment with:" : "預約:", + "Description:" : "描述:", "This confirmation link expires in %s hours." : "此確認鏈接將在 %s 小時後過期。", - "If you wish to cancel the appointment after all, please contact your organizer." : "如果您想取消預約,請與組織者聯絡。", - "Appointment:" : "預約:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "如果您想取消預約,請通過以下方式聯絡籌辦者:回覆此電郵或訪問他們的個人資料頁面。", + "Your appointment \"%s\" with %s has been accepted" : "您與 %s 的預約 “%s” 已被接受", + "Dear %s, your booking has been accepted." : "親愛的 %s,您的預約已被接受。", + "Appointment for:" : "預約:", "Date:" : "日期:", + "You will receive a link with the confirmation email" : "您將在確認電郵中收到一個連結", "Where:" : "地點:", - "Description:" : "描述:", - "Calendar" : "日曆", + "Comment:" : "留言︰", + "You have a new appointment booking \"%s\" from %s" : "您有一個來自 %s 的新預約 “%s”", + "Dear %s, %s (%s) booked an appointment with you." : "親愛的 %s,%s (%s) 與您預約了。", "A Calendar app for Nextcloud" : "Nextcloud 的日曆應用程式", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "日曆應用程式是 Nextcloud 的 CalDAV 伺服器的用戶界面。透過您的 Nextcloud 輕鬆同步來自各裝置的活動,並在線上編輯它們。\n\n* 🚀 **與其他 Nextcloud 應用程式的整合!** 目前為通訊錄,但還會有更多的。\n* 🌐 **支援 WebCal!** 想在您的日曆中檢視您最愛球隊的比賽日期?沒問題!\n* 🙋 **參與者!** 邀請夥伴來參加您的活動\n* ⌚️ **有空/忙碌!** 看看您的參與者們什麼時候可以見面\n* ⏰ **提醒!** 在您的瀏覽器中以及透過電子郵件取得警示\n* 🔍 搜尋!輕鬆找到您的活動\n* ☑️ 任務!直接在日曆中檢視任務的到期日\n* 🙈 **我們並未重新發明輪子!** 以超棒的 [c-dav 函式庫](https://github.com/nextcloud/cdav-library)、[ical.js](https://github.com/mozilla-comm/ical.js)與 [fullcalendar](https://github.com/fullcalendar/fullcalendar)函式庫為基礎。", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "適用於 Nextcloud 的日曆應用程式。輕鬆從各種裝置與 Nextcloud 同步處理事件,並可線上編輯。\n\n* 🚀 **與其他 Nextcloud 應用程式整合!** 例如通訊錄、Talk、工作項目、Deck 與小圈圈\n* 🌐 **支援 WebCal!** 想要在您的日曆中看到您最喜愛的球隊的比賽日嗎?沒問題!\n* 🙋 **參與者!** 邀請夥伴參與您的活動\n* ⌚ **有空/忙碌!** 檢視您的與會者何時可以見面\n* ⏰ **提醒!** 透過您的瀏覽器與電子郵件取得活動提醒\n* 🔍 **搜尋!** 輕鬆找到您的活動\n* ☑️ **工作項目!** 直接在日曆中檢視有到期日的工作項目或 Deck 卡片\n* 🔈 **Talk 聊天室!** 預約會議時,只要按一下就能建立相關的 Talk 聊天室\n* 📆 **預約** 傳送連結給他人,讓他們可以[使用此應用程式](https://apps.nextcloud.com/apps/appointments)與您預約\n* 📎 **附件!** 新增、上傳與檢視活動附件\n* 🙈 **我們沒有重新發明輪子!** 以超棒的 [c-dav](https://github.com/nextcloud/cdav-library)、[ical.js](https://github.com/mozilla-comm/ical.js) 與 [fullcalendar](https://github.com/fullcalendar/fullcalendar) 函式庫為基礎開發。", "Previous day" : "前一日", "Previous week" : "上星期", + "Previous year" : "上一年", "Previous month" : "上個月", "Next day" : "隔日", "Next week" : "下星期", + "Next year" : "下一年", "Next month" : "下個月", - "New event" : "新活動", + "Create new event" : "創建新活動", + "Event" : "活動", "Today" : "今日", "Day" : "日", "Week" : "星期", "Month" : "月", + "Year" : "年", "List" : "清單", + "Appointment link was copied to clipboard" : "約會連結已複製到剪貼板", + "Appointment link could not be copied to clipboard" : "約會連結無法複製到剪貼板", "Preview" : "預覽", "Copy link" : "複製連結", "Edit" : "編輯", "Delete" : "刪除", - "Appointment link was copied to clipboard" : "約會連結已複製到剪貼板", - "Appointment link could not be copied to clipboard" : "約會連結無法複製到剪貼板", - "Add new" : "新增", - "Untitled calendar" : "未命名日曆", - "Edit name" : "編輯名稱", - "Saving name …" : "儲存名稱 …", - "Edit color" : "編輯顏色", - "Saving color …" : "儲存顏色…", - "Copy private link" : "複製私人連結", - "Export" : "導出", - "Unshare from me" : "由我取消的分享", + "Appointment schedules" : "預約時間表", + "Create new" : "建立新的", "Disable calendar \"{calendar}\"" : "停用日曆 \"{calendar}\"", "Disable untitled calendar" : "停用未命名日曆", "Enable calendar \"{calendar}\"" : "啟用日曆 \"{calendar}\"", "Enable untitled calendar" : "啟用未命名日曆", "An error occurred, unable to change visibility of the calendar." : "發生錯誤,無法改變日曆的能見度", - "An error occurred, unable to delete the calendar." : "發生錯誤,無法刪除日曆", - "Calendar link copied to clipboard." : "複製日曆連結到剪貼板", - "Calendar link could not be copied to clipboard." : "日曆連結無法複製到剪貼板", - "An error occurred, unable to rename the calendar." : "發生錯誤,無法重新命名日曆", - "An error occurred, unable to change the calendar's color." : "發生錯誤,無法變更日曆的顏色", + "Untitled calendar" : "未命名日曆", + "Shared with you by" : "分享給您藉由", + "Edit and share calendar" : "編輯及分享日曆", + "Edit calendar" : "編輯日曆", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["將在 {countdown} 秒後取消日曆分享"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["將在 {countdown} 秒後刪除日曆"], + "An error occurred, unable to create the calendar." : "發生錯誤,無法建立日曆", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "請輸入有效的連結(以 http://,https://,webcal://,或 webcals:// 開頭)", + "Calendars" : "日曆", + "Add new" : "新增", + "New calendar" : "新日曆", + "Name for new calendar" : "新日曆名字", + "Creating calendar …" : "正在建立日曆…", + "New calendar with task list" : "新日曆及任務清單", + "New subscription from link (read-only)" : "自連結建立新訂閱(唯讀)", + "Creating subscription …" : "正在建立新訂閱…", + "Add public holiday calendar" : "添加公眾假期日曆", + "Add custom public calendar" : "新增自訂公共日曆", + "Calendar link copied to clipboard." : "複製日曆連結到剪貼板", + "Calendar link could not be copied to clipboard." : "日曆連結無法複製到剪貼板", + "Copy subscription link" : "複製訂閱的連結", + "Copying link …" : "正在複製連結…", + "Copied link" : "連結已複製", + "Could not copy link" : "無法複製連結", + "Export" : "導出", + "Untitled item" : "無題項目", + "Unknown calendar" : "日曆不詳", + "Could not load deleted calendars and objects" : "無法加載已刪除日曆或物體", + "Could not delete calendar or event" : "無法刪除日曆或活動", + "Could not restore calendar or event" : "無法復原日曆或活動", + "Do you really want to empty the trash bin?" : "您真的想要清空回收桶嗎?", + "Empty trash bin" : "清空回收桶", + "Trash bin" : "回收桶", + "Loading deleted items." : "正加載已删除的項目。", + "You do not have any deleted items." : "你没有已删除的項目。", + "Name" : "姓名", + "Deleted" : "已刪除", + "Restore" : "復原", + "Delete permanently" : "永久刪除", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["回收桶中的項目會在 {numDays} 天後被刪除"], + "Could not update calendar order." : "無法變更日曆順序", + "Shared calendars" : "分享日曆", + "Deck" : "Deck", + "Hidden" : "隱藏", + "Internal link" : "內部連結", + "A private link that can be used with external clients" : "可與外部客戶端一起使用的私人連結", + "Copy internal link" : "複製內部連結", + "An error occurred, unable to publish calendar." : "發生錯誤,無法發佈日曆", + "An error occurred, unable to send email." : "發生錯誤,無法寄送電子郵件", + "Embed code copied to clipboard." : "內嵌程式碼已複製到剪貼板", + "Embed code could not be copied to clipboard." : "無法複製內嵌程式碼到剪貼板", + "Unpublishing calendar failed" : "取消發佈日曆失敗", "Share link" : "分享連結", - "Publish calendar" : "發佈日曆", - "Publishing calendar" : "正在發佈日曆", "Copy public link" : "複製公開連結", "Send link to calendar via email" : "透過電子郵件傳送日曆連結", "Enter one address" : "輸入一個地址", "Sending email …" : "正在傳送電子郵件…", - "Copy subscription link" : "複製訂閱的連結", - "Copying link …" : "正在複製連結…", - "Copied link" : "連結已複製", - "Could not copy link" : "無法複製連結", "Copy embedding code" : "複製內嵌程式碼", "Copying code …" : "正在複製程式碼…", "Copied code" : "已複製程式碼", "Could not copy code" : "無法複製程式碼", "Delete share link" : "刪除分享連結", "Deleting share link …" : "正在刪除共享連結…", - "An error occurred, unable to publish calendar." : "發生錯誤,無法發佈日曆", - "An error occurred, unable to send email." : "發生錯誤,無法寄送電子郵件", - "Embed code copied to clipboard." : "內嵌程式碼已複製到剪貼板", - "Embed code could not be copied to clipboard." : "無法複製內嵌程式碼到剪貼板", - "Unpublishing calendar failed" : "取消發佈日曆失敗", - "Share with users or groups" : "與用戶或群組分享", - "No users or groups" : "沒有用戶或群組", + "{teamDisplayName} (Team)" : "{teamDisplayName}(團隊)", + "An error occurred while unsharing the calendar." : "取消分享日曆時發生錯誤。", + "An error occurred, unable to change the permission of the share." : "發生錯誤,無法變更分享權限", "can edit" : "可編輯", "Unshare with {displayName}" : "取消與 {displayName} 的分享", - "An error occurred, unable to change the unshare the calendar." : "發生錯誤,無法變更日曆", - "An error occurred, unable to change the permission of the share." : "發生錯誤,無法變更分享權限", - "+ New calendar" : "+ 新日曆", - "New calendar" : "新日曆", - "Name for new calendar" : "新日曆名字", - "Creating calendar …" : "正在建立日曆…", - "New calendar with task list" : "新日曆及任務清單", - "New subscription from link (read-only)" : "自連結建立新訂閱(唯讀)", - "Creating subscription …" : "正在建立新訂閱…", - "An error occurred, unable to create the calendar." : "發生錯誤,無法建立日曆", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "請輸入有效的連結(以 http://,https://,webcal://,或 webcals:// 開頭)", - "Trash bin" : "回收桶", - "Loading deleted elements." : "正加載已删除的元素。", - "You do not have any deleted elements." : "你没有已删除的元素。", - "Name" : "姓名", - "Deleted" : "已刪除", - "Restore" : "復原", - "Delete permanently" : "永久刪除", - "Empty trash bin" : "清空回收桶", - "Untitled element" : "無標題元素", - "Unknown calendar" : "日曆不詳", - "Could not load deleted calendars and objects" : "無法加載已刪除日曆或物體", - "Could not restore calendar or event" : "無法復原日曆或活動", - "Do you really want to empty the trash bin?" : "您真的想要清空回收桶嗎?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["回收桶中的項目會在 {numDays} 天後被刪除"], - "Could not update calendar order." : "無法變更日曆順序", + "Share with users or groups" : "與用戶或群組分享", + "No users or groups" : "沒有用戶或群組", + "Failed to save calendar name and color" : "儲存日曆名稱或色彩失敗", + "Calendar name …" : "日曆名稱 ...", + "Never show me as busy (set this calendar to transparent)" : "永遠不顯示我為忙碌狀態(將此日曆設置為透明)", + "Share calendar" : "分享日曆", + "Unshare from me" : "由我取消的分享", + "Save" : "儲存", "Import calendars" : "匯入日曆", "Please select a calendar to import into …" : "請選擇將匯入的日曆", "Filename" : "檔案名稱", "Calendar to import into" : "將匯入的日曆", "Cancel" : "取消", "_Import calendar_::_Import calendars_" : ["匯入日曆"], + "Select the default location for attachments" : "選擇附件的默認位置", + "Pick" : "挑選", + "Invalid location selected" : "所選的位置無效", + "Attachments folder successfully saved." : "附件資料夾已成功保存。", + "Error on saving attachments folder." : "儲存附件資料夾時發生錯誤。", + "Default attachments location" : "默認附件位置", "{filename} could not be parsed" : "無法解析 {filename}", "No valid files found, aborting import" : "沒有找到有效的檔案,中斷匯入", - "Import partially failed. Imported {accepted} out of {total}." : "匯入部分失敗,僅成功匯入 {total} 中的 {accepted} 項", "_Successfully imported %n event_::_Successfully imported %n events_" : ["成功匯入 %n 個活動"], + "Import partially failed. Imported {accepted} out of {total}." : "匯入部分失敗,僅成功匯入 {total} 中的 {accepted} 項", "Automatic" : "自動", "Automatic ({detected})" : "自動({detected})", "New setting was not saved successfully." : "新設定未成功儲存", - "Shortcut overview" : "捷徑簡介", - "or" : "或者", "Navigation" : "導覽列", "Previous period" : "前一期間", "Next period" : "下一期間", @@ -141,6 +174,7 @@ OC.L10N.register( "Day view" : "日視圖", "Week view" : "週視圖", "Month view" : "月視圖", + "Year view" : "年度檢視", "List view" : "清單檢視", "Actions" : "操作", "Create event" : "建立活動", @@ -150,24 +184,29 @@ OC.L10N.register( "Save edited event" : "儲存已編輯的活動", "Delete edited event" : "刪除已編輯的活動", "Duplicate event" : "重複活動", + "Shortcut overview" : "捷徑簡介", + "or" : "或者", + "Calendar settings" : "日曆設定", + "At event start" : "在活動開始時", + "No reminder" : "無提醒", + "Failed to save default calendar" : "無法保存默認日曆", + "CalDAV link copied to clipboard." : "已複製 CalDAV 連結至剪貼板", + "CalDAV link could not be copied to clipboard." : "無法複製 CalDAV 連結至剪貼板", "Enable birthday calendar" : "啟用生日日曆", "Show tasks in calendar" : "在日曆上顯示待辦事項", "Enable simplified editor" : "啟用簡化的編輯器", - "Limit visible events per view" : "限制每個顯示可見的活動數", + "Limit the number of events displayed in the monthly view" : "限制日曆月視圖中顯示的活動次數", "Show weekends" : "顯示週末", "Show week numbers" : "顯示週數", "Time increments" : "時間增量", + "Default calendar for incoming invitations" : "傳入邀請的默認日曆", "Default reminder" : "默認提醒", "Copy primary CalDAV address" : "複製主要的 CalDAV 位址", "Copy iOS/macOS CalDAV address" : "複製 iOS/macOS 的 CalDAV 位址", - "Personal availability settings" : "個人空檔設置", + "Personal availability settings" : "個人空閒時間設置", "Show keyboard shortcuts" : "顯示鍵盤快捷鍵", - "Calendar settings" : "日曆設定", - "No reminder" : "無提醒", - "CalDAV link copied to clipboard." : "已複製 CalDAV 連結至剪貼板", - "CalDAV link could not be copied to clipboard." : "無法複製 CalDAV 連結至剪貼板", - "Appointment was created successfully" : "成功創建了預約", - "Appointment was updated successfully" : "成功更新了預約", + "Appointment schedule successfully created" : "已成功建立預約時間表", + "Appointment schedule successfully updated" : "已成功更新預約時間表", "_{duration} minute_::_{duration} minutes_" : ["{duration} 分鐘"], "0 minutes" : "0 分鐘", "_{duration} hour_::_{duration} hours_" : ["{duration} 小時"], @@ -178,7 +217,14 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "要配置預約,請在個人設置中添加您的電郵地址。", "Public – shown on the profile page" : "公開 - 顯示在個人資料頁面上", "Private – only accessible via secret link" : "私人 - 只能通過秘密連結進入", + "Appointment schedule saved" : "已儲存預約時間表", + "Create appointment schedule" : "建立預約時間表", + "Edit appointment schedule" : "編輯預約時間表", + "Update" : "更新", + "Appointment name" : "預約名稱", "Location" : "地點", + "Create a Talk room" : "創建聊天室", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "將為每個預訂的預約生成一個獨一無二的連結,並將通過確認電郵發送", "Description" : "描述", "Visibility" : "可見性", "Duration" : "歷時", @@ -196,6 +242,7 @@ OC.L10N.register( "Friday" : "星期五", "Saturday" : "星期六", "Sunday" : "星期日", + "Weekdays" : "平日", "Add time before and after the event" : "添加活動前後的時間", "Before the event" : "活動前", "After the event" : "活動後", @@ -203,18 +250,29 @@ OC.L10N.register( "Minimum time before next available slot" : "下一個可用時段之前的最短時間", "Max slots per day" : "每天最多的時段數", "Limit how far in the future appointments can be booked" : "限制可以提前多長時間預約", - "Create appointment" : "創建預約", - "Edit appointment" : "編輯預約", - "Save" : "儲存", - "Update" : "更新", + "It seems a rate limit has been reached. Please try again later." : "似乎已達速率限制。請稍後再試。", "Please confirm your reservation" : "請確認您的預約", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "我們向您發送了一封包含詳細信息的電子郵件。 請使用電子郵件中的連結確認您的預約。 您現在可以關閉此頁面。", "Your name" : "您的名字", "Your email address" : "您的電郵地址", "Please share anything that will help prepare for our meeting" : "請分享任何有助於為我們的會議做準備的信息", "Could not book the appointment. Please try again later or contact the organizer." : "無法預約。 請稍後再試或聯絡組織者。", - "Book the appointment" : "預約", - "Reminder" : "提醒", + "Back" : "上星期", + "Book appointment" : "預約", + "Error fetching Talk conversations." : "擷取 Talk 對話時發生錯誤", + "Conversation does not have a valid URL." : "對話沒有有效的 URL。", + "Successfully added Talk conversation link to location." : "成功在位置中新增 Talk 聊天室連結。", + "Successfully added Talk conversation link to description." : "成功在描述中新增 Talk 聊天室連結。", + "Failed to apply Talk room." : "使用 Talk 聊天室失敗。", + "Error creating Talk conversation" : "創建 Talk 對話時發生錯誤", + "Select a Talk Room" : "選取 Talk 聊天室", + "Add Talk conversation" : "添加 Talk 對話", + "Fetching Talk rooms…" : "正在擷取 Talk 聊天室 …", + "No Talk room available" : "無可用的 Talk 聊天室", + "Create a new conversation" : "創建新對話", + "Select conversation" : "選擇對話", + "on" : "在", + "at" : "在", "before at" : "之前於", "Notification" : "通告", "Email" : "電子郵件", @@ -225,114 +283,147 @@ OC.L10N.register( "Edit time" : "編輯時間", "Save time" : "儲存時間", "Remove reminder" : "刪除提醒", - "on" : "在", - "at" : "在", - "+ Add reminder" : "+ 加入提醒", "Add reminder" : "添加提醒", - "_second_::_seconds_" : ["秒"], - "_minute_::_minutes_" : ["分鐘"], - "_hour_::_hours_" : ["時"], - "_day_::_days_" : ["天"], - "_week_::_weeks_" : ["星期"], + "seconds" : "秒", + "minutes" : "分鐘", + "hours" : "小時", + "days" : "日", + "weeks" : "星期", + "Choose a file to add as attachment" : "選擇要作為附件的檔案", + "Choose a file to share as a link" : "選擇要作為連結分享的檔案", + "Attachment {name} already exist!" : "附件 {name} 已存在!", + "Could not upload attachment(s)" : "無法上傳附件", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "你即將下載一個檔案。請在打開之前檢查檔案名稱。你確定要繼續嗎?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "您即將前往 {host}。您確定要繼續嗎?連結:{link}", + "Proceed" : "進行", + "No attachments" : "無附件", + "Add from Files" : "從檔案添加", + "Upload from device" : "從裝置上傳", + "Delete file" : "刪除檔案", + "Confirmation" : "確認", + "_{count} attachment_::_{count} attachments_" : ["{count} 個附件"], "Suggested" : "建議", "Available" : "可用", - "Not available" : "不可用", - "Checking availability" : "檢查可得性", "Invitation accepted" : "已接受邀請", "Accepted {organizerName}'s invitation" : "已接受 {organizerName} 的邀請", + "Participation marked as tentative" : "參與標記為暫定", + "Invitation is delegated" : "邀請已委派", + "Not available" : "不可用", "Invitation declined" : "邀請被婉拒", "Declined {organizerName}'s invitation" : "已婉拒 {organizerName} 的邀請", - "Invitation is delegated" : "邀請已委派", - "Participation marked as tentative" : "參與標記為暫定", - "Invitation sent" : "邀請已傳送", + "Availability will be checked" : "將檢查可用性", + "Invitation will be sent" : "將會傳送邀請", + "Failed to check availability" : "檢查可用性失敗", + "Failed to deliver invitation" : "遞送邀請失敗", + "Awaiting response" : "等待回應", + "Checking availability" : "檢查空閒時間", "Has not responded to {organizerName}'s invitation yet" : "尚未回覆 {organizerName} 的邀請", - "Availability of attendees, resources and rooms" : "參與者、資源和會議室的可得性", + "Suggested times" : "建議的時間", + "chairperson" : "主席", + "required participant" : "需出席的參與者", + "non-participant" : "非參與者", + "optional participant" : "可不出席的參與者", "{organizer} (organizer)" : "{organizer}(主辦人)", + "{attendee} ({role})" : "{attendee}({role})", + "Availability of attendees, resources and rooms" : "參與者、資源和會議室的空閒時間", + "Suggestion accepted" : "已接受建議", + "Previous date" : "前一個日期", + "Next date" : "下一個日期", + "Legend" : "圖例", + "Out of office" : "不在辦公室", + "Attendees:" : "參加者:", + "Done" : "完成", + "Search room" : "搜尋房間", + "Room name" : "聊天室名稱", + "Check room availability" : "檢查房間可得性", "Free" : "有空", "Busy (tentative)" : "忙碌(暫定)", "Busy" : "忙碌", - "Out of office" : "不在辦公室", "Unknown" : "不詳", - "Accept" : "接受", - "Decline" : "婉拒", - "Tentative" : "暫定", + "Find a time" : "找一個時間", "The invitation has been accepted successfully." : "已成功接受邀請。", "Failed to accept the invitation." : "無法接受邀請。", "The invitation has been declined successfully." : "已成功婉拒邀請。", "Failed to decline the invitation." : "無法婉拒邀請。", "Your participation has been marked as tentative." : "您的參與已標記為暫定。", "Failed to set the participation status to tentative." : "未能將參與狀態設置為暫定。", - "Create Talk room for this event" : "建立此活動的線上會議室", - "Show busy times" : "顯示忙碌時段", + "Accept" : "接受", + "Decline" : "婉拒", + "Tentative" : "暫定", "No attendees yet" : "還沒有任何參與者", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} 個已邀請,{confirmedCount} 個已確認", + "Please add at least one attendee to use the \"Find a time\" feature." : "請至少添加一位與會者以使用「尋找時間」功能。", + "Successfully appended link to talk room to location." : "成功將線上會議室的連結加至位置。", "Successfully appended link to talk room to description." : "成功將線上會議室的連結加至活動細節", "Error creating Talk room" : "建立線上會議室發生錯誤", - "Send email" : "傳送電郵", + "Attendees" : "參與者", + "_%n more guest_::_%n more guests_" : ["還有 %n 位來賓"], + "Remove group" : "移除群組", + "Remove attendee" : "移除參與者", + "Request reply" : "請求回覆", "Chairperson" : "主席", "Required participant" : "需出席的參與者", "Optional participant" : "可不出席的參與者", "Non-participant" : "非參與者", - "Remove attendee" : "移除參與者", - "Search for emails, users or contacts" : "搜尋電郵地址、用戶或聯絡人", + "_%n member_::_%n members_" : ["%n 個成員"], + "Search for emails, users, contacts, contact groups or teams" : "搜尋電子郵件、用戶、聯絡人、聯絡人群組或團隊", "No match found" : "找不到符合的項目", + "Note that members of circles get invited but are not synced yet." : "請注意,社交圈子成員已收到邀請,但尚未同步。", + "Note that members of contact groups get invited but are not synced yet." : "請注意,聯絡人群組已收到邀請,但尚未同步。", "(organizer)" : "(主辦人)", + "Make {label} the organizer" : "讓 {label} 成為籌辦者", + "Make {label} the organizer and attend" : "讓 {label} 成為籌辦者並參與", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "若要送出邀請函並處理回覆,[linkopen] 請到個人設定頁加入您的電郵地址 [linkclose]", "Remove color" : "移除顏色", "Event title" : "活動標題", - "All day" : "全日", "Cannot modify all-day setting for events that are part of a recurrence-set." : "無法變更定期重複活動的全日設定", - "from {startDate}" : "從 {startDate}", - "from {startDate} at {startTime}" : "從 {startDate} {startTime}", - "to {endDate}" : "至 {endDate} 止", - "to {endDate} at {endTime}" : "至 {endDate} {endTime} 止", + "From" : "從", + "To" : "至", "Repeat" : "重複", - "End repeat" : "停止重複", - "Select to end repeat" : "選擇以結束重複", + "Repeat event" : "重複活動", + "_time_::_times_" : ["次"], "never" : "永不", "on date" : "在特定日期", "after" : "之後", - "_time_::_times_" : ["次"], + "End repeat" : "停止重複", + "Select to end repeat" : "選擇以結束重複", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "此活動是一系列重複活動的特例,您無法針對它設定重複規則", "first" : "第一", - "third" : "第三", - "fourth" : "第四", - "fifth" : "第五", - "second to last" : "尾二", - "last" : "最尾", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "變更的重複規則只會套用至這項活動和重複的未來活動", "Repeat every" : "重複循環", "By day of the month" : "每月中特定日", "On the" : "在", + "_day_::_days_" : ["天"], + "_week_::_weeks_" : ["星期"], "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], + "On specific day" : "在指定的日子", "weekday" : "平日", "weekend day" : "週末", - "No recurrence" : "沒有重複", + "Does not repeat" : "不要重複", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud 不完全支援此活動的重複。如果您編輯了重複選項,某些重複可能會遺失。", - "Suggestions" : "建議", "No rooms or resources yet" : "尚無可用會議室或資源", + "Resources" : "資源", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} 個座位"], "Add resource" : "添加資源", "Has a projector" : "有投影機", "Has a whiteboard" : "有白板", "Wheelchair accessible" : "無障礙通道", "Remove resource" : "删除資源", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} 個座位"], - "Projector" : "投影機", - "Whiteboard" : "白板", "Search for resources or rooms" : "搜尋資源或會議室", "available" : "可用", "unavailable" : "不可用", + "Show all rooms" : "顯示所有房間", + "Projector" : "投影機", + "Whiteboard" : "白板", "Room type" : "房間類型", "Any" : "任何", "Minimum seating capacity" : "最小座位數量", - "More" : "更多", - "Update this occurrence" : "更新此重複", + "More details" : "更多細節", "Update this and all future" : "更新此次和以後的活動", + "Update this occurrence" : "更新此重複", "Public calendar does not exist" : "公開日曆不存在", "Maybe the share was deleted or has expired?" : "分享是否已刪除或過期?", - "Please select a time zone:" : "請選擇時區:", - "Pick a time" : "挑選時間", - "Pick a date" : "挑選日期", "from {formattedDate}" : "從 {formattedDate}", "to {formattedDate}" : "至 {formattedDate}", "on {formattedDate}" : "於 {formattedDate}", @@ -342,9 +433,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "請輸入有效的日期", "Please enter a valid date and time" : "請輸入有效的日期和時間", + "Select a time zone" : "選擇時區", + "Please select a time zone:" : "請選擇時區:", + "Pick a time" : "挑選時間", + "Pick a date" : "挑選日期", "Type to search time zone" : "輸入以搜尋時區", "Global" : "全球", - "Select date" : "選擇日期", + "Holidays in {region}" : "{region} 的假期", + "An error occurred, unable to read public calendars." : "發生錯誤,無法讀取公共日曆。", + "An error occurred, unable to subscribe to calendar." : "發生錯誤,無法訂閱日曆。", + "Public holiday calendars" : "公眾假期日曆", + "Public calendars" : "公共日曆", + "No valid public calendars configured" : "未設定有效的公共日曆", + "Speak to the server administrator to resolve this issue." : "請與伺服器管理員聯絡以解決此問題。", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "公眾假期日曆由 Thunderbird 提供。將從 {website} 下載日曆數據", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "這些公開日曆是伺服器管理員建議的。日曆資料將從對應的網站下載。", + "By {authors}" : "作者 {authors}", + "Subscribed" : "已訂閱", + "Subscribe" : "訂閱", + "Could not fetch slots" : "無法擷取時段", + "Select a date" : "選擇日期", "Select slot" : "選擇時段", "No slots available" : "沒有可用的時段", "The slot for your appointment has been confirmed" : "您預約的時間已確認", @@ -361,24 +469,25 @@ OC.L10N.register( "Personal" : "個人", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "自動時區檢測確定您的時區為 UTC。\n這很可能是您的網絡瀏覽器的安全措施的結果。\n請在日曆設置中手動設置您的時區。", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "找不到您選擇的時區 {timezoneId} ,先以 UTC 替代。\n請至設定改變您的時區並舉報此問題。", - "No more events today" : "今日沒有其他活動", - "No upcoming events" : "沒有接下來的活動", - "Create a new event" : "建立新活動", - "[Today]" : "[今日]", - "[Tomorrow]" : "[明日]", - "[Yesterday]" : "[昨日]", - "[Last] dddd" : "[上] dddd", + "Availability of {displayName}" : "{displayName} 的可得性", + "Edit event" : "編輯活動", "Event does not exist" : "活動不存在", "Duplicate" : "重複", "Delete this occurrence" : "刪除此次活動", "Delete this and all future" : "刪除此次和以後的活動", - "Details" : "詳細資料", - "Attendees" : "參與者", - "Resources" : "資源", + "All day" : "全日", + "Modifications wont get propagated to the organizer and other attendees" : "修改將不會傳播給籌辦者和其他與會者", + "Managing shared access" : "管理已分享的存取權限", + "Deny access" : "拒絕存取", + "Invite" : "邀請", + "_User requires access to your file_::_Users require access to your file_" : ["用戶要求存取您的檔案"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["需要分享存取權限的附件"], + "Untitled event" : "未命名活動", "Close" : " 關閉", - "Show more details" : "顯示更多細節", + "Modifications will not get propagated to the organizer and other attendees" : "修改將不會傳播給籌辦者和其他與會者", "Subscribe to {name}" : "訂閱 {name}", "Export {name}" : "導出 {name}", + "Show availability" : "顯示可得性", "Anniversary" : "週年", "Appointment" : "約會", "Business" : "商業", @@ -406,7 +515,6 @@ OC.L10N.register( "on {time}" : "於 {time}", "on {time} ({timezoneId})" : "於 {time}({timezoneId})", "Week {number} of {year}" : "{year} 的第 {number} 星期", - "Does not repeat" : "不要重複", "Daily" : "每日", "Weekly" : "每星期", "Monthly" : "每月", @@ -418,24 +526,30 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["於 {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["在 {dayOfMonthList} 天"], "on the {ordinalNumber} {byDaySet}" : "在 {ordinalNumber} {byDaySet} 上", - "in {monthNames}" : "於 {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "在 {monthNames} 的 {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "在 {ordinalNumber} {byDaySet} 於 {monthNames}", "until {untilDate}" : "到 {untilDate}", "_%n time_::_%n times_" : ["%n 次"], - "Untitled event" : "未命名活動", + "second" : "秒", + "third" : "第三", + "fourth" : "第四", + "fifth" : "第五", + "second to last" : "尾二", + "last" : "最尾", "Untitled task" : "未命名任務", "Please ask your administrator to enable the Tasks App." : "請要求您的管理員啟用任務應用程式。", - "Prev" : "上一個", - "Next" : "下一個", - "Prev year" : "上一年", - "Next year" : "下一年", - "Year" : "年", + "You are not allowed to edit this event as an attendee." : "作為與會者,您無權編輯此活動。", "W" : "星期", "%n more" : "其餘 %n 項", "No events to display" : "無可顯示的活動", + "All participants declined" : "所有參與者均被婉拒", + "Please confirm your participation" : "請確認您的參與", + "You declined this event" : "您婉拒了此活動", + "Your participation is tentative" : "您的參與是暫時性的", "_+%n more_::_+%n more_" : ["* 和其他 %n 個"], "No events" : "無活動", "Create a new event or change the visible time-range" : "建立新活動或變更可見的時間範圍", + "Failed to save event" : "無法保存活動", "It might have been deleted, or there was a typo in a link" : "其可能已經被刪除,或是連結中有錯字", "It might have been deleted, or there was a typo in the link" : "其可能已經被刪除,或是連結中有錯字", "Meeting room" : "會議室", @@ -448,7 +562,7 @@ OC.L10N.register( "When shared hide this event" : "分享的時候隱藏這個活動", "The visibility of this event in shared calendars." : "此活動在分享的日曆可見程度。", "Add a location" : "加入地點", - "Add a description" : "加入描述", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "添加描述\n\n- 此會議的主題是什麼\n- 議程項目\n- 參與者需要準備的事項", "Status" : "狀態", "Confirmed" : "已確認", "Canceled" : "已取消", @@ -461,135 +575,26 @@ OC.L10N.register( "Add this as a new category" : "將此加入為新分類", "Custom color" : "自訂顏色", "Special color of this event. Overrides the calendar-color." : "此活動的特殊顏色。覆寫日曆顏色。", - "Chat room for event" : "活動的聊天室", + "Error while sharing file" : "分享檔案時發生錯誤", + "Error while sharing file with user" : "與用戶分享檔案時發生錯誤", + "Error creating a folder {folder}" : "建立資料夾 {folder} 時發生錯誤", + "Attachment {fileName} already exists!" : "附件 {fileName} 已存在!", + "Attachment {fileName} added!" : "附件 {fileName} 已添加!", + "An error occurred during uploading file {fileName}" : "上傳檔案 {fileName} 時發生錯誤", + "An error occurred during getting file information" : "取得檔案資訊時發生錯誤", + "Talk conversation for event" : "活動 Talk 對話", + "An error occurred, unable to delete the calendar." : "發生錯誤,無法刪除日曆", "Imported {filename}" : "匯入的 {filename}", - "Meditation" : "冥想", - "Relaxing" : "放鬆", - "Relax" : "放鬆", - "Break" : "休息", - "Commute" : "通勤", - "Commuting" : "通勤中", - "Shuttle" : "穿梭巴士", - "Invoice" : "發票", - "Finance" : "財政", - "Bank" : "銀行", - "Money" : "金錢", - "Wedding" : "婚禮", - "Dog" : "狗", - "Concert" : "音樂會", - "Festival" : "節日", - "Theater" : "戲劇", - "Theatre" : "戲劇", - "Presentation" : "簡報", - "Talk" : "講座", - "Speech" : "演講", - "Deadline" : "最後期限", - "Submission" : "遞交", - "Reporting" : "報告", - "Camping" : "露營", - "Camp" : "露營", - "Election" : "選舉", - "Voting" : "投票", - "Vote" : "投票", - "Barbecue" : "BBQ", - "Barbeque" : "BBQ", - "Garden" : "園藝", - "Farm" : "農務 ", - "Movie" : "電影", - "Cinema" : "戲院", - "Graduation" : "畢業", - "Brainstorm" : "腦力震盪", - "Review" : "審閱", - "Audit" : "審計", - "Inspection" : "檢查", - "Proofreading" : "校對", - "Baseball" : "棒球", - "Meet" : "會面", - "Planning" : "規劃", - "Pointing" : "指向", - "Retrospective" : "回顧", - "Office" : "辦公室", - "Contributor week" : "貢獻週", - "Mail" : "郵件", - "Soccer" : "足球", - "Football" : "美式足球", - "Gaming" : "打機", - "Drive" : "駕駛", - "Driving" : "駕駛", - "Bicycle" : "單車", - "Cycle" : "單車", - "Cycling" : "踩單車 ", - "Biking" : "電單車", - "Bike" : "單車", - "Podcast" : "Podcast", - "Basketball" : "籃球", - "Fishing" : "釣魚", - "Hiking" : "遠足", - "Hike" : "遠足", - "Art" : "藝術", - "Exhibition" : "展覽", - "Museum" : "博物館", - "Pilates" : "Pilates", - "Park" : "公園", - "Walk" : "步行", - "Studying" : "讀書", - "Doctor" : "醫生", - "Health" : "健康", - "Dentist" : "牙醫", - "Hospital" : "醫院", - "Interview" : "面試", - "Training" : "訓練", - "Practice" : "練習", - "Sports" : "體育", - "Exercise" : "運動", - "Work out" : "鍛鍊", - "Working out" : "鍛鍊", - "Gym" : "健身室", - "Barber" : "理髮師", - "Haircut" : "理髮", - "Hairdresser" : "髮型師", - "Exam" : "考試", - "Written test" : "筆試", - "Oral test" : "口試", - "Working" : "工作", - "New Years Eve" : "除夕", - "NYE" : "除夕", - "Fireworks" : "煙花", - "Running" : "跑步", - "Go for a run" : "去跑步", - "Marathon" : "馬拉松", - "Video-conference" : "視像會議", - "Conference-call" : "電話會議", - "Video-call" : "視像通話", - "Video-chat" : "視像聊天", - "Video-meeting" : "視像會議", - "Call" : "通話", - "Calling" : "通話", - "Christmas" : "聖誕節", - "Conference" : "會議", - "Pizza" : "披薩", - "Travelling" : "旅行", - "Trip" : "旅行", - "Journey" : "旅程", - "Collaborate" : "協作", - "Pair" : "配對", - "Lecture" : "演講", - "Seminar" : "專題討論", - "Teaching" : "教學", - "Photograph" : "攝影", - "Party" : "派對", - "Celebration" : "慶祝", - "Celebrate" : "慶祝活動", - "Birthday" : "生日", - "Shopping" : "購物", - "Groceries" : "雜貨", - "Skate" : "溜冰", - "Skateboard" : "滑板", - "Wine tasting" : "品酒", - "Golf" : "高爾夫球", - "Dinner" : "晚餐", - "Lunch" : "午餐", + "This is an event reminder." : "這是一個活動提醒。", + "Error while parsing a PROPFIND error" : "解析 PROPFIND 錯誤時發生錯誤", "Appointment not found" : "找不到預約", - "User not found" : "找不到用戶" + "User not found" : "找不到用戶", + "Reminder" : "提醒", + "+ Add reminder" : "+ 加入提醒", + "Select automatic slot" : "選取自動時段", + "with" : "與", + "Available times:" : "可用時間:", + "Suggestions" : "建議", + "Details" : "詳細資料" }, "nplurals=1; plural=0;"); diff --git a/l10n/zh_HK.json b/l10n/zh_HK.json index 4e8b2215c9c534e0fcc59fb0854bf05218b65418..64840a209bf408fa0fc7f590c323892f02137ad7 100644 --- a/l10n/zh_HK.json +++ b/l10n/zh_HK.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "提供的電郵地址太長", "User-Session unexpectedly expired" : "用戶時段意外地結束", "Provided email-address is not valid" : "提供的電郵地址無效", "%s has published the calendar »%s«" : "%s 發佈了日曆 »%s«", @@ -9,129 +10,161 @@ "Open »%s«" : "開啟 »%s«", "Cheers!" : "太棒了!", "Upcoming events" : "接下來的活動", + "No more events today" : "今日沒有其他活動", + "No upcoming events" : "沒有接下來的活動", + "More events" : "更多活動", + "%1$s with %2$s" : "與 %2$s 預定的對話 %1$s", + "Calendar" : "日曆", + "New booking {booking}" : "新預約 {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) 於 {date_time} 預約了“{config_display_name}”。", "Appointments" : "預約", "Schedule appointment \"%s\"" : "安排預約 \"%s\"", "Schedule an appointment" : "安排約會", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "準備 %s", "Follow up for %s" : "跟進 %s", - "Your appointment \"%s\" needs confirmation" : "你的預約 \"%s\" 需要確認", + "Your appointment \"%s\" with %s needs confirmation" : "您與 %s 的預約 “%s” 需要確認", "Dear %s, please confirm your booking" : "%s,請確認您的預約", "Confirm" : "確認", + "Appointment with:" : "預約:", + "Description:" : "描述:", "This confirmation link expires in %s hours." : "此確認鏈接將在 %s 小時後過期。", - "If you wish to cancel the appointment after all, please contact your organizer." : "如果您想取消預約,請與組織者聯絡。", - "Appointment:" : "預約:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "如果您想取消預約,請通過以下方式聯絡籌辦者:回覆此電郵或訪問他們的個人資料頁面。", + "Your appointment \"%s\" with %s has been accepted" : "您與 %s 的預約 “%s” 已被接受", + "Dear %s, your booking has been accepted." : "親愛的 %s,您的預約已被接受。", + "Appointment for:" : "預約:", "Date:" : "日期:", + "You will receive a link with the confirmation email" : "您將在確認電郵中收到一個連結", "Where:" : "地點:", - "Description:" : "描述:", - "Calendar" : "日曆", + "Comment:" : "留言︰", + "You have a new appointment booking \"%s\" from %s" : "您有一個來自 %s 的新預約 “%s”", + "Dear %s, %s (%s) booked an appointment with you." : "親愛的 %s,%s (%s) 與您預約了。", "A Calendar app for Nextcloud" : "Nextcloud 的日曆應用程式", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "日曆應用程式是 Nextcloud 的 CalDAV 伺服器的用戶界面。透過您的 Nextcloud 輕鬆同步來自各裝置的活動,並在線上編輯它們。\n\n* 🚀 **與其他 Nextcloud 應用程式的整合!** 目前為通訊錄,但還會有更多的。\n* 🌐 **支援 WebCal!** 想在您的日曆中檢視您最愛球隊的比賽日期?沒問題!\n* 🙋 **參與者!** 邀請夥伴來參加您的活動\n* ⌚️ **有空/忙碌!** 看看您的參與者們什麼時候可以見面\n* ⏰ **提醒!** 在您的瀏覽器中以及透過電子郵件取得警示\n* 🔍 搜尋!輕鬆找到您的活動\n* ☑️ 任務!直接在日曆中檢視任務的到期日\n* 🙈 **我們並未重新發明輪子!** 以超棒的 [c-dav 函式庫](https://github.com/nextcloud/cdav-library)、[ical.js](https://github.com/mozilla-comm/ical.js)與 [fullcalendar](https://github.com/fullcalendar/fullcalendar)函式庫為基礎。", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "適用於 Nextcloud 的日曆應用程式。輕鬆從各種裝置與 Nextcloud 同步處理事件,並可線上編輯。\n\n* 🚀 **與其他 Nextcloud 應用程式整合!** 例如通訊錄、Talk、工作項目、Deck 與小圈圈\n* 🌐 **支援 WebCal!** 想要在您的日曆中看到您最喜愛的球隊的比賽日嗎?沒問題!\n* 🙋 **參與者!** 邀請夥伴參與您的活動\n* ⌚ **有空/忙碌!** 檢視您的與會者何時可以見面\n* ⏰ **提醒!** 透過您的瀏覽器與電子郵件取得活動提醒\n* 🔍 **搜尋!** 輕鬆找到您的活動\n* ☑️ **工作項目!** 直接在日曆中檢視有到期日的工作項目或 Deck 卡片\n* 🔈 **Talk 聊天室!** 預約會議時,只要按一下就能建立相關的 Talk 聊天室\n* 📆 **預約** 傳送連結給他人,讓他們可以[使用此應用程式](https://apps.nextcloud.com/apps/appointments)與您預約\n* 📎 **附件!** 新增、上傳與檢視活動附件\n* 🙈 **我們沒有重新發明輪子!** 以超棒的 [c-dav](https://github.com/nextcloud/cdav-library)、[ical.js](https://github.com/mozilla-comm/ical.js) 與 [fullcalendar](https://github.com/fullcalendar/fullcalendar) 函式庫為基礎開發。", "Previous day" : "前一日", "Previous week" : "上星期", + "Previous year" : "上一年", "Previous month" : "上個月", "Next day" : "隔日", "Next week" : "下星期", + "Next year" : "下一年", "Next month" : "下個月", - "New event" : "新活動", + "Create new event" : "創建新活動", + "Event" : "活動", "Today" : "今日", "Day" : "日", "Week" : "星期", "Month" : "月", + "Year" : "年", "List" : "清單", + "Appointment link was copied to clipboard" : "約會連結已複製到剪貼板", + "Appointment link could not be copied to clipboard" : "約會連結無法複製到剪貼板", "Preview" : "預覽", "Copy link" : "複製連結", "Edit" : "編輯", "Delete" : "刪除", - "Appointment link was copied to clipboard" : "約會連結已複製到剪貼板", - "Appointment link could not be copied to clipboard" : "約會連結無法複製到剪貼板", - "Add new" : "新增", - "Untitled calendar" : "未命名日曆", - "Edit name" : "編輯名稱", - "Saving name …" : "儲存名稱 …", - "Edit color" : "編輯顏色", - "Saving color …" : "儲存顏色…", - "Copy private link" : "複製私人連結", - "Export" : "導出", - "Unshare from me" : "由我取消的分享", + "Appointment schedules" : "預約時間表", + "Create new" : "建立新的", "Disable calendar \"{calendar}\"" : "停用日曆 \"{calendar}\"", "Disable untitled calendar" : "停用未命名日曆", "Enable calendar \"{calendar}\"" : "啟用日曆 \"{calendar}\"", "Enable untitled calendar" : "啟用未命名日曆", "An error occurred, unable to change visibility of the calendar." : "發生錯誤,無法改變日曆的能見度", - "An error occurred, unable to delete the calendar." : "發生錯誤,無法刪除日曆", - "Calendar link copied to clipboard." : "複製日曆連結到剪貼板", - "Calendar link could not be copied to clipboard." : "日曆連結無法複製到剪貼板", - "An error occurred, unable to rename the calendar." : "發生錯誤,無法重新命名日曆", - "An error occurred, unable to change the calendar's color." : "發生錯誤,無法變更日曆的顏色", + "Untitled calendar" : "未命名日曆", + "Shared with you by" : "分享給您藉由", + "Edit and share calendar" : "編輯及分享日曆", + "Edit calendar" : "編輯日曆", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["將在 {countdown} 秒後取消日曆分享"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["將在 {countdown} 秒後刪除日曆"], + "An error occurred, unable to create the calendar." : "發生錯誤,無法建立日曆", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "請輸入有效的連結(以 http://,https://,webcal://,或 webcals:// 開頭)", + "Calendars" : "日曆", + "Add new" : "新增", + "New calendar" : "新日曆", + "Name for new calendar" : "新日曆名字", + "Creating calendar …" : "正在建立日曆…", + "New calendar with task list" : "新日曆及任務清單", + "New subscription from link (read-only)" : "自連結建立新訂閱(唯讀)", + "Creating subscription …" : "正在建立新訂閱…", + "Add public holiday calendar" : "添加公眾假期日曆", + "Add custom public calendar" : "新增自訂公共日曆", + "Calendar link copied to clipboard." : "複製日曆連結到剪貼板", + "Calendar link could not be copied to clipboard." : "日曆連結無法複製到剪貼板", + "Copy subscription link" : "複製訂閱的連結", + "Copying link …" : "正在複製連結…", + "Copied link" : "連結已複製", + "Could not copy link" : "無法複製連結", + "Export" : "導出", + "Untitled item" : "無題項目", + "Unknown calendar" : "日曆不詳", + "Could not load deleted calendars and objects" : "無法加載已刪除日曆或物體", + "Could not delete calendar or event" : "無法刪除日曆或活動", + "Could not restore calendar or event" : "無法復原日曆或活動", + "Do you really want to empty the trash bin?" : "您真的想要清空回收桶嗎?", + "Empty trash bin" : "清空回收桶", + "Trash bin" : "回收桶", + "Loading deleted items." : "正加載已删除的項目。", + "You do not have any deleted items." : "你没有已删除的項目。", + "Name" : "姓名", + "Deleted" : "已刪除", + "Restore" : "復原", + "Delete permanently" : "永久刪除", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["回收桶中的項目會在 {numDays} 天後被刪除"], + "Could not update calendar order." : "無法變更日曆順序", + "Shared calendars" : "分享日曆", + "Deck" : "Deck", + "Hidden" : "隱藏", + "Internal link" : "內部連結", + "A private link that can be used with external clients" : "可與外部客戶端一起使用的私人連結", + "Copy internal link" : "複製內部連結", + "An error occurred, unable to publish calendar." : "發生錯誤,無法發佈日曆", + "An error occurred, unable to send email." : "發生錯誤,無法寄送電子郵件", + "Embed code copied to clipboard." : "內嵌程式碼已複製到剪貼板", + "Embed code could not be copied to clipboard." : "無法複製內嵌程式碼到剪貼板", + "Unpublishing calendar failed" : "取消發佈日曆失敗", "Share link" : "分享連結", - "Publish calendar" : "發佈日曆", - "Publishing calendar" : "正在發佈日曆", "Copy public link" : "複製公開連結", "Send link to calendar via email" : "透過電子郵件傳送日曆連結", "Enter one address" : "輸入一個地址", "Sending email …" : "正在傳送電子郵件…", - "Copy subscription link" : "複製訂閱的連結", - "Copying link …" : "正在複製連結…", - "Copied link" : "連結已複製", - "Could not copy link" : "無法複製連結", "Copy embedding code" : "複製內嵌程式碼", "Copying code …" : "正在複製程式碼…", "Copied code" : "已複製程式碼", "Could not copy code" : "無法複製程式碼", "Delete share link" : "刪除分享連結", "Deleting share link …" : "正在刪除共享連結…", - "An error occurred, unable to publish calendar." : "發生錯誤,無法發佈日曆", - "An error occurred, unable to send email." : "發生錯誤,無法寄送電子郵件", - "Embed code copied to clipboard." : "內嵌程式碼已複製到剪貼板", - "Embed code could not be copied to clipboard." : "無法複製內嵌程式碼到剪貼板", - "Unpublishing calendar failed" : "取消發佈日曆失敗", - "Share with users or groups" : "與用戶或群組分享", - "No users or groups" : "沒有用戶或群組", + "{teamDisplayName} (Team)" : "{teamDisplayName}(團隊)", + "An error occurred while unsharing the calendar." : "取消分享日曆時發生錯誤。", + "An error occurred, unable to change the permission of the share." : "發生錯誤,無法變更分享權限", "can edit" : "可編輯", "Unshare with {displayName}" : "取消與 {displayName} 的分享", - "An error occurred, unable to change the unshare the calendar." : "發生錯誤,無法變更日曆", - "An error occurred, unable to change the permission of the share." : "發生錯誤,無法變更分享權限", - "+ New calendar" : "+ 新日曆", - "New calendar" : "新日曆", - "Name for new calendar" : "新日曆名字", - "Creating calendar …" : "正在建立日曆…", - "New calendar with task list" : "新日曆及任務清單", - "New subscription from link (read-only)" : "自連結建立新訂閱(唯讀)", - "Creating subscription …" : "正在建立新訂閱…", - "An error occurred, unable to create the calendar." : "發生錯誤,無法建立日曆", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "請輸入有效的連結(以 http://,https://,webcal://,或 webcals:// 開頭)", - "Trash bin" : "回收桶", - "Loading deleted elements." : "正加載已删除的元素。", - "You do not have any deleted elements." : "你没有已删除的元素。", - "Name" : "姓名", - "Deleted" : "已刪除", - "Restore" : "復原", - "Delete permanently" : "永久刪除", - "Empty trash bin" : "清空回收桶", - "Untitled element" : "無標題元素", - "Unknown calendar" : "日曆不詳", - "Could not load deleted calendars and objects" : "無法加載已刪除日曆或物體", - "Could not restore calendar or event" : "無法復原日曆或活動", - "Do you really want to empty the trash bin?" : "您真的想要清空回收桶嗎?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["回收桶中的項目會在 {numDays} 天後被刪除"], - "Could not update calendar order." : "無法變更日曆順序", + "Share with users or groups" : "與用戶或群組分享", + "No users or groups" : "沒有用戶或群組", + "Failed to save calendar name and color" : "儲存日曆名稱或色彩失敗", + "Calendar name …" : "日曆名稱 ...", + "Never show me as busy (set this calendar to transparent)" : "永遠不顯示我為忙碌狀態(將此日曆設置為透明)", + "Share calendar" : "分享日曆", + "Unshare from me" : "由我取消的分享", + "Save" : "儲存", "Import calendars" : "匯入日曆", "Please select a calendar to import into …" : "請選擇將匯入的日曆", "Filename" : "檔案名稱", "Calendar to import into" : "將匯入的日曆", "Cancel" : "取消", "_Import calendar_::_Import calendars_" : ["匯入日曆"], + "Select the default location for attachments" : "選擇附件的默認位置", + "Pick" : "挑選", + "Invalid location selected" : "所選的位置無效", + "Attachments folder successfully saved." : "附件資料夾已成功保存。", + "Error on saving attachments folder." : "儲存附件資料夾時發生錯誤。", + "Default attachments location" : "默認附件位置", "{filename} could not be parsed" : "無法解析 {filename}", "No valid files found, aborting import" : "沒有找到有效的檔案,中斷匯入", - "Import partially failed. Imported {accepted} out of {total}." : "匯入部分失敗,僅成功匯入 {total} 中的 {accepted} 項", "_Successfully imported %n event_::_Successfully imported %n events_" : ["成功匯入 %n 個活動"], + "Import partially failed. Imported {accepted} out of {total}." : "匯入部分失敗,僅成功匯入 {total} 中的 {accepted} 項", "Automatic" : "自動", "Automatic ({detected})" : "自動({detected})", "New setting was not saved successfully." : "新設定未成功儲存", - "Shortcut overview" : "捷徑簡介", - "or" : "或者", "Navigation" : "導覽列", "Previous period" : "前一期間", "Next period" : "下一期間", @@ -139,6 +172,7 @@ "Day view" : "日視圖", "Week view" : "週視圖", "Month view" : "月視圖", + "Year view" : "年度檢視", "List view" : "清單檢視", "Actions" : "操作", "Create event" : "建立活動", @@ -148,24 +182,29 @@ "Save edited event" : "儲存已編輯的活動", "Delete edited event" : "刪除已編輯的活動", "Duplicate event" : "重複活動", + "Shortcut overview" : "捷徑簡介", + "or" : "或者", + "Calendar settings" : "日曆設定", + "At event start" : "在活動開始時", + "No reminder" : "無提醒", + "Failed to save default calendar" : "無法保存默認日曆", + "CalDAV link copied to clipboard." : "已複製 CalDAV 連結至剪貼板", + "CalDAV link could not be copied to clipboard." : "無法複製 CalDAV 連結至剪貼板", "Enable birthday calendar" : "啟用生日日曆", "Show tasks in calendar" : "在日曆上顯示待辦事項", "Enable simplified editor" : "啟用簡化的編輯器", - "Limit visible events per view" : "限制每個顯示可見的活動數", + "Limit the number of events displayed in the monthly view" : "限制日曆月視圖中顯示的活動次數", "Show weekends" : "顯示週末", "Show week numbers" : "顯示週數", "Time increments" : "時間增量", + "Default calendar for incoming invitations" : "傳入邀請的默認日曆", "Default reminder" : "默認提醒", "Copy primary CalDAV address" : "複製主要的 CalDAV 位址", "Copy iOS/macOS CalDAV address" : "複製 iOS/macOS 的 CalDAV 位址", - "Personal availability settings" : "個人空檔設置", + "Personal availability settings" : "個人空閒時間設置", "Show keyboard shortcuts" : "顯示鍵盤快捷鍵", - "Calendar settings" : "日曆設定", - "No reminder" : "無提醒", - "CalDAV link copied to clipboard." : "已複製 CalDAV 連結至剪貼板", - "CalDAV link could not be copied to clipboard." : "無法複製 CalDAV 連結至剪貼板", - "Appointment was created successfully" : "成功創建了預約", - "Appointment was updated successfully" : "成功更新了預約", + "Appointment schedule successfully created" : "已成功建立預約時間表", + "Appointment schedule successfully updated" : "已成功更新預約時間表", "_{duration} minute_::_{duration} minutes_" : ["{duration} 分鐘"], "0 minutes" : "0 分鐘", "_{duration} hour_::_{duration} hours_" : ["{duration} 小時"], @@ -176,7 +215,14 @@ "To configure appointments, add your email address in personal settings." : "要配置預約,請在個人設置中添加您的電郵地址。", "Public – shown on the profile page" : "公開 - 顯示在個人資料頁面上", "Private – only accessible via secret link" : "私人 - 只能通過秘密連結進入", + "Appointment schedule saved" : "已儲存預約時間表", + "Create appointment schedule" : "建立預約時間表", + "Edit appointment schedule" : "編輯預約時間表", + "Update" : "更新", + "Appointment name" : "預約名稱", "Location" : "地點", + "Create a Talk room" : "創建聊天室", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "將為每個預訂的預約生成一個獨一無二的連結,並將通過確認電郵發送", "Description" : "描述", "Visibility" : "可見性", "Duration" : "歷時", @@ -194,6 +240,7 @@ "Friday" : "星期五", "Saturday" : "星期六", "Sunday" : "星期日", + "Weekdays" : "平日", "Add time before and after the event" : "添加活動前後的時間", "Before the event" : "活動前", "After the event" : "活動後", @@ -201,18 +248,29 @@ "Minimum time before next available slot" : "下一個可用時段之前的最短時間", "Max slots per day" : "每天最多的時段數", "Limit how far in the future appointments can be booked" : "限制可以提前多長時間預約", - "Create appointment" : "創建預約", - "Edit appointment" : "編輯預約", - "Save" : "儲存", - "Update" : "更新", + "It seems a rate limit has been reached. Please try again later." : "似乎已達速率限制。請稍後再試。", "Please confirm your reservation" : "請確認您的預約", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "我們向您發送了一封包含詳細信息的電子郵件。 請使用電子郵件中的連結確認您的預約。 您現在可以關閉此頁面。", "Your name" : "您的名字", "Your email address" : "您的電郵地址", "Please share anything that will help prepare for our meeting" : "請分享任何有助於為我們的會議做準備的信息", "Could not book the appointment. Please try again later or contact the organizer." : "無法預約。 請稍後再試或聯絡組織者。", - "Book the appointment" : "預約", - "Reminder" : "提醒", + "Back" : "上星期", + "Book appointment" : "預約", + "Error fetching Talk conversations." : "擷取 Talk 對話時發生錯誤", + "Conversation does not have a valid URL." : "對話沒有有效的 URL。", + "Successfully added Talk conversation link to location." : "成功在位置中新增 Talk 聊天室連結。", + "Successfully added Talk conversation link to description." : "成功在描述中新增 Talk 聊天室連結。", + "Failed to apply Talk room." : "使用 Talk 聊天室失敗。", + "Error creating Talk conversation" : "創建 Talk 對話時發生錯誤", + "Select a Talk Room" : "選取 Talk 聊天室", + "Add Talk conversation" : "添加 Talk 對話", + "Fetching Talk rooms…" : "正在擷取 Talk 聊天室 …", + "No Talk room available" : "無可用的 Talk 聊天室", + "Create a new conversation" : "創建新對話", + "Select conversation" : "選擇對話", + "on" : "在", + "at" : "在", "before at" : "之前於", "Notification" : "通告", "Email" : "電子郵件", @@ -223,114 +281,147 @@ "Edit time" : "編輯時間", "Save time" : "儲存時間", "Remove reminder" : "刪除提醒", - "on" : "在", - "at" : "在", - "+ Add reminder" : "+ 加入提醒", "Add reminder" : "添加提醒", - "_second_::_seconds_" : ["秒"], - "_minute_::_minutes_" : ["分鐘"], - "_hour_::_hours_" : ["時"], - "_day_::_days_" : ["天"], - "_week_::_weeks_" : ["星期"], + "seconds" : "秒", + "minutes" : "分鐘", + "hours" : "小時", + "days" : "日", + "weeks" : "星期", + "Choose a file to add as attachment" : "選擇要作為附件的檔案", + "Choose a file to share as a link" : "選擇要作為連結分享的檔案", + "Attachment {name} already exist!" : "附件 {name} 已存在!", + "Could not upload attachment(s)" : "無法上傳附件", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "你即將下載一個檔案。請在打開之前檢查檔案名稱。你確定要繼續嗎?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "您即將前往 {host}。您確定要繼續嗎?連結:{link}", + "Proceed" : "進行", + "No attachments" : "無附件", + "Add from Files" : "從檔案添加", + "Upload from device" : "從裝置上傳", + "Delete file" : "刪除檔案", + "Confirmation" : "確認", + "_{count} attachment_::_{count} attachments_" : ["{count} 個附件"], "Suggested" : "建議", "Available" : "可用", - "Not available" : "不可用", - "Checking availability" : "檢查可得性", "Invitation accepted" : "已接受邀請", "Accepted {organizerName}'s invitation" : "已接受 {organizerName} 的邀請", + "Participation marked as tentative" : "參與標記為暫定", + "Invitation is delegated" : "邀請已委派", + "Not available" : "不可用", "Invitation declined" : "邀請被婉拒", "Declined {organizerName}'s invitation" : "已婉拒 {organizerName} 的邀請", - "Invitation is delegated" : "邀請已委派", - "Participation marked as tentative" : "參與標記為暫定", - "Invitation sent" : "邀請已傳送", + "Availability will be checked" : "將檢查可用性", + "Invitation will be sent" : "將會傳送邀請", + "Failed to check availability" : "檢查可用性失敗", + "Failed to deliver invitation" : "遞送邀請失敗", + "Awaiting response" : "等待回應", + "Checking availability" : "檢查空閒時間", "Has not responded to {organizerName}'s invitation yet" : "尚未回覆 {organizerName} 的邀請", - "Availability of attendees, resources and rooms" : "參與者、資源和會議室的可得性", + "Suggested times" : "建議的時間", + "chairperson" : "主席", + "required participant" : "需出席的參與者", + "non-participant" : "非參與者", + "optional participant" : "可不出席的參與者", "{organizer} (organizer)" : "{organizer}(主辦人)", + "{attendee} ({role})" : "{attendee}({role})", + "Availability of attendees, resources and rooms" : "參與者、資源和會議室的空閒時間", + "Suggestion accepted" : "已接受建議", + "Previous date" : "前一個日期", + "Next date" : "下一個日期", + "Legend" : "圖例", + "Out of office" : "不在辦公室", + "Attendees:" : "參加者:", + "Done" : "完成", + "Search room" : "搜尋房間", + "Room name" : "聊天室名稱", + "Check room availability" : "檢查房間可得性", "Free" : "有空", "Busy (tentative)" : "忙碌(暫定)", "Busy" : "忙碌", - "Out of office" : "不在辦公室", "Unknown" : "不詳", - "Accept" : "接受", - "Decline" : "婉拒", - "Tentative" : "暫定", + "Find a time" : "找一個時間", "The invitation has been accepted successfully." : "已成功接受邀請。", "Failed to accept the invitation." : "無法接受邀請。", "The invitation has been declined successfully." : "已成功婉拒邀請。", "Failed to decline the invitation." : "無法婉拒邀請。", "Your participation has been marked as tentative." : "您的參與已標記為暫定。", "Failed to set the participation status to tentative." : "未能將參與狀態設置為暫定。", - "Create Talk room for this event" : "建立此活動的線上會議室", - "Show busy times" : "顯示忙碌時段", + "Accept" : "接受", + "Decline" : "婉拒", + "Tentative" : "暫定", "No attendees yet" : "還沒有任何參與者", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} 個已邀請,{confirmedCount} 個已確認", + "Please add at least one attendee to use the \"Find a time\" feature." : "請至少添加一位與會者以使用「尋找時間」功能。", + "Successfully appended link to talk room to location." : "成功將線上會議室的連結加至位置。", "Successfully appended link to talk room to description." : "成功將線上會議室的連結加至活動細節", "Error creating Talk room" : "建立線上會議室發生錯誤", - "Send email" : "傳送電郵", + "Attendees" : "參與者", + "_%n more guest_::_%n more guests_" : ["還有 %n 位來賓"], + "Remove group" : "移除群組", + "Remove attendee" : "移除參與者", + "Request reply" : "請求回覆", "Chairperson" : "主席", "Required participant" : "需出席的參與者", "Optional participant" : "可不出席的參與者", "Non-participant" : "非參與者", - "Remove attendee" : "移除參與者", - "Search for emails, users or contacts" : "搜尋電郵地址、用戶或聯絡人", + "_%n member_::_%n members_" : ["%n 個成員"], + "Search for emails, users, contacts, contact groups or teams" : "搜尋電子郵件、用戶、聯絡人、聯絡人群組或團隊", "No match found" : "找不到符合的項目", + "Note that members of circles get invited but are not synced yet." : "請注意,社交圈子成員已收到邀請,但尚未同步。", + "Note that members of contact groups get invited but are not synced yet." : "請注意,聯絡人群組已收到邀請,但尚未同步。", "(organizer)" : "(主辦人)", + "Make {label} the organizer" : "讓 {label} 成為籌辦者", + "Make {label} the organizer and attend" : "讓 {label} 成為籌辦者並參與", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "若要送出邀請函並處理回覆,[linkopen] 請到個人設定頁加入您的電郵地址 [linkclose]", "Remove color" : "移除顏色", "Event title" : "活動標題", - "All day" : "全日", "Cannot modify all-day setting for events that are part of a recurrence-set." : "無法變更定期重複活動的全日設定", - "from {startDate}" : "從 {startDate}", - "from {startDate} at {startTime}" : "從 {startDate} {startTime}", - "to {endDate}" : "至 {endDate} 止", - "to {endDate} at {endTime}" : "至 {endDate} {endTime} 止", + "From" : "從", + "To" : "至", "Repeat" : "重複", - "End repeat" : "停止重複", - "Select to end repeat" : "選擇以結束重複", + "Repeat event" : "重複活動", + "_time_::_times_" : ["次"], "never" : "永不", "on date" : "在特定日期", "after" : "之後", - "_time_::_times_" : ["次"], + "End repeat" : "停止重複", + "Select to end repeat" : "選擇以結束重複", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "此活動是一系列重複活動的特例,您無法針對它設定重複規則", "first" : "第一", - "third" : "第三", - "fourth" : "第四", - "fifth" : "第五", - "second to last" : "尾二", - "last" : "最尾", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "變更的重複規則只會套用至這項活動和重複的未來活動", "Repeat every" : "重複循環", "By day of the month" : "每月中特定日", "On the" : "在", + "_day_::_days_" : ["天"], + "_week_::_weeks_" : ["星期"], "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], + "On specific day" : "在指定的日子", "weekday" : "平日", "weekend day" : "週末", - "No recurrence" : "沒有重複", + "Does not repeat" : "不要重複", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud 不完全支援此活動的重複。如果您編輯了重複選項,某些重複可能會遺失。", - "Suggestions" : "建議", "No rooms or resources yet" : "尚無可用會議室或資源", + "Resources" : "資源", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} 個座位"], "Add resource" : "添加資源", "Has a projector" : "有投影機", "Has a whiteboard" : "有白板", "Wheelchair accessible" : "無障礙通道", "Remove resource" : "删除資源", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} 個座位"], - "Projector" : "投影機", - "Whiteboard" : "白板", "Search for resources or rooms" : "搜尋資源或會議室", "available" : "可用", "unavailable" : "不可用", + "Show all rooms" : "顯示所有房間", + "Projector" : "投影機", + "Whiteboard" : "白板", "Room type" : "房間類型", "Any" : "任何", "Minimum seating capacity" : "最小座位數量", - "More" : "更多", - "Update this occurrence" : "更新此重複", + "More details" : "更多細節", "Update this and all future" : "更新此次和以後的活動", + "Update this occurrence" : "更新此重複", "Public calendar does not exist" : "公開日曆不存在", "Maybe the share was deleted or has expired?" : "分享是否已刪除或過期?", - "Please select a time zone:" : "請選擇時區:", - "Pick a time" : "挑選時間", - "Pick a date" : "挑選日期", "from {formattedDate}" : "從 {formattedDate}", "to {formattedDate}" : "至 {formattedDate}", "on {formattedDate}" : "於 {formattedDate}", @@ -340,9 +431,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "請輸入有效的日期", "Please enter a valid date and time" : "請輸入有效的日期和時間", + "Select a time zone" : "選擇時區", + "Please select a time zone:" : "請選擇時區:", + "Pick a time" : "挑選時間", + "Pick a date" : "挑選日期", "Type to search time zone" : "輸入以搜尋時區", "Global" : "全球", - "Select date" : "選擇日期", + "Holidays in {region}" : "{region} 的假期", + "An error occurred, unable to read public calendars." : "發生錯誤,無法讀取公共日曆。", + "An error occurred, unable to subscribe to calendar." : "發生錯誤,無法訂閱日曆。", + "Public holiday calendars" : "公眾假期日曆", + "Public calendars" : "公共日曆", + "No valid public calendars configured" : "未設定有效的公共日曆", + "Speak to the server administrator to resolve this issue." : "請與伺服器管理員聯絡以解決此問題。", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "公眾假期日曆由 Thunderbird 提供。將從 {website} 下載日曆數據", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "這些公開日曆是伺服器管理員建議的。日曆資料將從對應的網站下載。", + "By {authors}" : "作者 {authors}", + "Subscribed" : "已訂閱", + "Subscribe" : "訂閱", + "Could not fetch slots" : "無法擷取時段", + "Select a date" : "選擇日期", "Select slot" : "選擇時段", "No slots available" : "沒有可用的時段", "The slot for your appointment has been confirmed" : "您預約的時間已確認", @@ -359,24 +467,25 @@ "Personal" : "個人", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "自動時區檢測確定您的時區為 UTC。\n這很可能是您的網絡瀏覽器的安全措施的結果。\n請在日曆設置中手動設置您的時區。", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "找不到您選擇的時區 {timezoneId} ,先以 UTC 替代。\n請至設定改變您的時區並舉報此問題。", - "No more events today" : "今日沒有其他活動", - "No upcoming events" : "沒有接下來的活動", - "Create a new event" : "建立新活動", - "[Today]" : "[今日]", - "[Tomorrow]" : "[明日]", - "[Yesterday]" : "[昨日]", - "[Last] dddd" : "[上] dddd", + "Availability of {displayName}" : "{displayName} 的可得性", + "Edit event" : "編輯活動", "Event does not exist" : "活動不存在", "Duplicate" : "重複", "Delete this occurrence" : "刪除此次活動", "Delete this and all future" : "刪除此次和以後的活動", - "Details" : "詳細資料", - "Attendees" : "參與者", - "Resources" : "資源", + "All day" : "全日", + "Modifications wont get propagated to the organizer and other attendees" : "修改將不會傳播給籌辦者和其他與會者", + "Managing shared access" : "管理已分享的存取權限", + "Deny access" : "拒絕存取", + "Invite" : "邀請", + "_User requires access to your file_::_Users require access to your file_" : ["用戶要求存取您的檔案"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["需要分享存取權限的附件"], + "Untitled event" : "未命名活動", "Close" : " 關閉", - "Show more details" : "顯示更多細節", + "Modifications will not get propagated to the organizer and other attendees" : "修改將不會傳播給籌辦者和其他與會者", "Subscribe to {name}" : "訂閱 {name}", "Export {name}" : "導出 {name}", + "Show availability" : "顯示可得性", "Anniversary" : "週年", "Appointment" : "約會", "Business" : "商業", @@ -404,7 +513,6 @@ "on {time}" : "於 {time}", "on {time} ({timezoneId})" : "於 {time}({timezoneId})", "Week {number} of {year}" : "{year} 的第 {number} 星期", - "Does not repeat" : "不要重複", "Daily" : "每日", "Weekly" : "每星期", "Monthly" : "每月", @@ -416,24 +524,30 @@ "_on {weekday}_::_on {weekdays}_" : ["於 {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["在 {dayOfMonthList} 天"], "on the {ordinalNumber} {byDaySet}" : "在 {ordinalNumber} {byDaySet} 上", - "in {monthNames}" : "於 {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "在 {monthNames} 的 {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "在 {ordinalNumber} {byDaySet} 於 {monthNames}", "until {untilDate}" : "到 {untilDate}", "_%n time_::_%n times_" : ["%n 次"], - "Untitled event" : "未命名活動", + "second" : "秒", + "third" : "第三", + "fourth" : "第四", + "fifth" : "第五", + "second to last" : "尾二", + "last" : "最尾", "Untitled task" : "未命名任務", "Please ask your administrator to enable the Tasks App." : "請要求您的管理員啟用任務應用程式。", - "Prev" : "上一個", - "Next" : "下一個", - "Prev year" : "上一年", - "Next year" : "下一年", - "Year" : "年", + "You are not allowed to edit this event as an attendee." : "作為與會者,您無權編輯此活動。", "W" : "星期", "%n more" : "其餘 %n 項", "No events to display" : "無可顯示的活動", + "All participants declined" : "所有參與者均被婉拒", + "Please confirm your participation" : "請確認您的參與", + "You declined this event" : "您婉拒了此活動", + "Your participation is tentative" : "您的參與是暫時性的", "_+%n more_::_+%n more_" : ["* 和其他 %n 個"], "No events" : "無活動", "Create a new event or change the visible time-range" : "建立新活動或變更可見的時間範圍", + "Failed to save event" : "無法保存活動", "It might have been deleted, or there was a typo in a link" : "其可能已經被刪除,或是連結中有錯字", "It might have been deleted, or there was a typo in the link" : "其可能已經被刪除,或是連結中有錯字", "Meeting room" : "會議室", @@ -446,7 +560,7 @@ "When shared hide this event" : "分享的時候隱藏這個活動", "The visibility of this event in shared calendars." : "此活動在分享的日曆可見程度。", "Add a location" : "加入地點", - "Add a description" : "加入描述", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "添加描述\n\n- 此會議的主題是什麼\n- 議程項目\n- 參與者需要準備的事項", "Status" : "狀態", "Confirmed" : "已確認", "Canceled" : "已取消", @@ -459,135 +573,26 @@ "Add this as a new category" : "將此加入為新分類", "Custom color" : "自訂顏色", "Special color of this event. Overrides the calendar-color." : "此活動的特殊顏色。覆寫日曆顏色。", - "Chat room for event" : "活動的聊天室", + "Error while sharing file" : "分享檔案時發生錯誤", + "Error while sharing file with user" : "與用戶分享檔案時發生錯誤", + "Error creating a folder {folder}" : "建立資料夾 {folder} 時發生錯誤", + "Attachment {fileName} already exists!" : "附件 {fileName} 已存在!", + "Attachment {fileName} added!" : "附件 {fileName} 已添加!", + "An error occurred during uploading file {fileName}" : "上傳檔案 {fileName} 時發生錯誤", + "An error occurred during getting file information" : "取得檔案資訊時發生錯誤", + "Talk conversation for event" : "活動 Talk 對話", + "An error occurred, unable to delete the calendar." : "發生錯誤,無法刪除日曆", "Imported {filename}" : "匯入的 {filename}", - "Meditation" : "冥想", - "Relaxing" : "放鬆", - "Relax" : "放鬆", - "Break" : "休息", - "Commute" : "通勤", - "Commuting" : "通勤中", - "Shuttle" : "穿梭巴士", - "Invoice" : "發票", - "Finance" : "財政", - "Bank" : "銀行", - "Money" : "金錢", - "Wedding" : "婚禮", - "Dog" : "狗", - "Concert" : "音樂會", - "Festival" : "節日", - "Theater" : "戲劇", - "Theatre" : "戲劇", - "Presentation" : "簡報", - "Talk" : "講座", - "Speech" : "演講", - "Deadline" : "最後期限", - "Submission" : "遞交", - "Reporting" : "報告", - "Camping" : "露營", - "Camp" : "露營", - "Election" : "選舉", - "Voting" : "投票", - "Vote" : "投票", - "Barbecue" : "BBQ", - "Barbeque" : "BBQ", - "Garden" : "園藝", - "Farm" : "農務 ", - "Movie" : "電影", - "Cinema" : "戲院", - "Graduation" : "畢業", - "Brainstorm" : "腦力震盪", - "Review" : "審閱", - "Audit" : "審計", - "Inspection" : "檢查", - "Proofreading" : "校對", - "Baseball" : "棒球", - "Meet" : "會面", - "Planning" : "規劃", - "Pointing" : "指向", - "Retrospective" : "回顧", - "Office" : "辦公室", - "Contributor week" : "貢獻週", - "Mail" : "郵件", - "Soccer" : "足球", - "Football" : "美式足球", - "Gaming" : "打機", - "Drive" : "駕駛", - "Driving" : "駕駛", - "Bicycle" : "單車", - "Cycle" : "單車", - "Cycling" : "踩單車 ", - "Biking" : "電單車", - "Bike" : "單車", - "Podcast" : "Podcast", - "Basketball" : "籃球", - "Fishing" : "釣魚", - "Hiking" : "遠足", - "Hike" : "遠足", - "Art" : "藝術", - "Exhibition" : "展覽", - "Museum" : "博物館", - "Pilates" : "Pilates", - "Park" : "公園", - "Walk" : "步行", - "Studying" : "讀書", - "Doctor" : "醫生", - "Health" : "健康", - "Dentist" : "牙醫", - "Hospital" : "醫院", - "Interview" : "面試", - "Training" : "訓練", - "Practice" : "練習", - "Sports" : "體育", - "Exercise" : "運動", - "Work out" : "鍛鍊", - "Working out" : "鍛鍊", - "Gym" : "健身室", - "Barber" : "理髮師", - "Haircut" : "理髮", - "Hairdresser" : "髮型師", - "Exam" : "考試", - "Written test" : "筆試", - "Oral test" : "口試", - "Working" : "工作", - "New Years Eve" : "除夕", - "NYE" : "除夕", - "Fireworks" : "煙花", - "Running" : "跑步", - "Go for a run" : "去跑步", - "Marathon" : "馬拉松", - "Video-conference" : "視像會議", - "Conference-call" : "電話會議", - "Video-call" : "視像通話", - "Video-chat" : "視像聊天", - "Video-meeting" : "視像會議", - "Call" : "通話", - "Calling" : "通話", - "Christmas" : "聖誕節", - "Conference" : "會議", - "Pizza" : "披薩", - "Travelling" : "旅行", - "Trip" : "旅行", - "Journey" : "旅程", - "Collaborate" : "協作", - "Pair" : "配對", - "Lecture" : "演講", - "Seminar" : "專題討論", - "Teaching" : "教學", - "Photograph" : "攝影", - "Party" : "派對", - "Celebration" : "慶祝", - "Celebrate" : "慶祝活動", - "Birthday" : "生日", - "Shopping" : "購物", - "Groceries" : "雜貨", - "Skate" : "溜冰", - "Skateboard" : "滑板", - "Wine tasting" : "品酒", - "Golf" : "高爾夫球", - "Dinner" : "晚餐", - "Lunch" : "午餐", + "This is an event reminder." : "這是一個活動提醒。", + "Error while parsing a PROPFIND error" : "解析 PROPFIND 錯誤時發生錯誤", "Appointment not found" : "找不到預約", - "User not found" : "找不到用戶" + "User not found" : "找不到用戶", + "Reminder" : "提醒", + "+ Add reminder" : "+ 加入提醒", + "Select automatic slot" : "選取自動時段", + "with" : "與", + "Available times:" : "可用時間:", + "Suggestions" : "建議", + "Details" : "詳細資料" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/l10n/zh_TW.js b/l10n/zh_TW.js index 72245e97aaf1da1229d652d32f929ba72511636e..13a1a2840ee27bed6dd93a78a78a5d2682078452 100644 --- a/l10n/zh_TW.js +++ b/l10n/zh_TW.js @@ -1,6 +1,7 @@ OC.L10N.register( "calendar", { + "Provided email-address is too long" : "已提供的電子郵件地址太長", "User-Session unexpectedly expired" : "使用者連線階段過期", "Provided email-address is not valid" : "提供的電子郵件地址無效", "%s has published the calendar »%s«" : "%s 發佈了日曆 »%s«", @@ -11,129 +12,161 @@ OC.L10N.register( "Open »%s«" : "開啟 »%s«", "Cheers!" : "太棒了!", "Upcoming events" : "接下來的活動", + "No more events today" : "今天沒有其他活動", + "No upcoming events" : "沒有接下來的活動", + "More events" : "更多活動", + "%1$s with %2$s" : "由 %2$s 預訂的 %1$s", + "Calendar" : "日曆", + "New booking {booking}" : "新預約 {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) 在 {date_time} 預約了「{config_display_name}」。", "Appointments" : "預約", "Schedule appointment \"%s\"" : "安排預約「%s」", "Schedule an appointment" : "安排預約", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "準備 %s", "Follow up for %s" : "跟進 %s", - "Your appointment \"%s\" needs confirmation" : "您的預約「%s」需要確認", + "Your appointment \"%s\" with %s needs confirmation" : "您的預約「%s」包含 %s 需要確認", "Dear %s, please confirm your booking" : "親愛的 %s,請確認您的預約", "Confirm" : "確認", + "Appointment with:" : "預約:", + "Description:" : "描述:", "This confirmation link expires in %s hours." : "此確認連結將於 %s 小時後過期。", - "If you wish to cancel the appointment after all, please contact your organizer." : "如果您想要取消預約,請與您的舉辦者聯絡。", - "Appointment:" : "預約:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "若您想要取消預約,請回覆此電子郵件或造訪他們的個人資料頁面與您的舉辦者聯絡。", + "Your appointment \"%s\" with %s has been accepted" : "您的預約「%s」包含 %s 已被接受", + "Dear %s, your booking has been accepted." : "親愛的 %s,您的預約已被接受。", + "Appointment for:" : "預約:", "Date:" : "日期:", + "You will receive a link with the confirmation email" : "您將會收到包含連結的確認電子郵件", "Where:" : "地點:", - "Description:" : "描述:", - "Calendar" : "日曆", + "Comment:" : "留言:", + "You have a new appointment booking \"%s\" from %s" : "您有一個新預約「%s」,來自 %s", + "Dear %s, %s (%s) booked an appointment with you." : "親愛的 %s,%s (%s) 與您預約了。", "A Calendar app for Nextcloud" : "Nextcloud 的日曆應用程式", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "日曆應用程式是 Nextcloud 的 CalDAV 伺服器的使用者介面。透過您的 Nextcloud 輕鬆同步來自各裝置的活動,並在線上編輯它們。\n\n* 🚀 **與其他 Nextcloud 應用程式的整合!** 目前為通訊錄,但還會有更多的。\n* 🌐 **支援 WebCal!** 想在您的日曆中檢視您最愛球隊的比賽日期?沒問題!\n* 🙋 **參與者!** 邀請夥伴來參加您的活動\n* ⌚️ **有空/忙碌!** 看看您的參與者們什麼時候可以見面\n* ⏰ **提醒!** 在您的瀏覽器中以及透過電子郵件取得警示\n* 🔍 搜尋!輕鬆找到您的活動\n* ☑️ 工作項目!直接在日曆中檢視工作項目的到期日\n* 🙈 **我們並未重新發明輪子!** 以超棒的 [c-dav 函式庫](https://github.com/nextcloud/cdav-library)、[ical.js](https://github.com/mozilla-comm/ical.js) 與 [fullcalendar](https://github.com/fullcalendar/fullcalendar) 函式庫為基礎。", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "適用於 Nextcloud 的日曆應用程式。輕鬆從各種裝置與 Nextcloud 同步處理事件,並可線上編輯。\n\n* 🚀 **與其他 Nextcloud 應用程式整合!** 例如通訊錄、Talk、工作項目、Deck 與小圈圈\n* 🌐 **支援 WebCal!** 想要在您的日曆中看到您最喜愛的球隊的比賽日嗎?沒問題!\n* 🙋 **參與者!** 邀請夥伴參與您的活動\n* ⌚ **有空/忙碌!** 檢視您的與會者何時可以見面\n* ⏰ **提醒!** 透過您的瀏覽器與電子郵件取得活動提醒\n* 🔍 **搜尋!** 輕鬆找到您的活動\n* ☑️ **工作項目!** 直接在日曆中檢視有到期日的工作項目或 Deck 卡片\n* 🔈 **Talk 聊天室!** 預約會議時,只要按一下就能建立相關的 Talk 聊天室\n* 📆 **預約** 傳送連結給他人,讓他們可以[使用此應用程式](https://apps.nextcloud.com/apps/appointments)與您預約\n* 📎 **附件!** 新增、上傳與檢視活動附件\n* 🙈 **我們沒有重新發明輪子!** 以超棒的 [c-dav](https://github.com/nextcloud/cdav-library)、[ical.js](https://github.com/mozilla-comm/ical.js) 與 [fullcalendar](https://github.com/fullcalendar/fullcalendar) 函式庫為基礎開發。", "Previous day" : "前一日", "Previous week" : "前週", - "Previous month" : "前月", + "Previous year" : "前一年", + "Previous month" : "上個月", "Next day" : "隔天", "Next week" : "下週", + "Next year" : "明年", "Next month" : "下個月", - "New event" : "新活動", + "Create new event" : "建立新事件", + "Event" : "事件", "Today" : "今天", "Day" : "日", "Week" : "週", "Month" : "月", + "Year" : "年", "List" : "清單", + "Appointment link was copied to clipboard" : "預約連結已複製到剪貼簿", + "Appointment link could not be copied to clipboard" : "預約連結無法複製到剪貼簿", "Preview" : "預覽", "Copy link" : "複製連結", "Edit" : "編輯", "Delete" : "刪除", - "Appointment link was copied to clipboard" : "預約連結已複製到剪貼簿", - "Appointment link could not be copied to clipboard" : "預約連結無法複製到剪貼簿", - "Add new" : "新增", - "Untitled calendar" : "未命名日曆", - "Edit name" : "編輯名稱", - "Saving name …" : "儲存名稱…", - "Edit color" : "編輯顏色", - "Saving color …" : "儲存顏色…", - "Copy private link" : "複製私人連結", - "Export" : "匯出", - "Unshare from me" : "取消與我分享", + "Appointment schedules" : "預約時間表", + "Create new" : "建立新的", "Disable calendar \"{calendar}\"" : "停用行事曆 \"{calendar}\"", "Disable untitled calendar" : "停用未命名的行事曆", "Enable calendar \"{calendar}\"" : "啟用行事曆 \"{calendar}\"", "Enable untitled calendar" : "啟用未命名的行事曆", "An error occurred, unable to change visibility of the calendar." : "發生錯誤,無法改變日曆的能見度", - "An error occurred, unable to delete the calendar." : "發生錯誤,無法刪除日曆", - "Calendar link copied to clipboard." : "複製日曆連結到剪貼簿", - "Calendar link could not be copied to clipboard." : "日曆連結無法複製到剪貼簿", - "An error occurred, unable to rename the calendar." : "發生錯誤,無法重新命名日曆", - "An error occurred, unable to change the calendar's color." : "發生錯誤,無法變更日曆的顏色", + "Untitled calendar" : "未命名日曆", + "Shared with you by" : "分享給您藉由", + "Edit and share calendar" : "編輯並分享行事曆", + "Edit calendar" : "編輯行事曆", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["將在 {countdown} 秒後取消分享日曆"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["將在 {countdown} 秒後刪除日曆"], + "An error occurred, unable to create the calendar." : "發生錯誤,無法建立日曆", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "請輸入有效的連結(以 http:// , https:// , webcal:// , 或 webcals:// 開頭)", + "Calendars" : "日曆", + "Add new" : "新增", + "New calendar" : "新日曆", + "Name for new calendar" : "新行事曆名稱", + "Creating calendar …" : "正在建立日曆…", + "New calendar with task list" : "新日曆及待辦清單", + "New subscription from link (read-only)" : "自連結建立新訂閱(唯讀)", + "Creating subscription …" : "正在建立新訂閱…", + "Add public holiday calendar" : "新增公眾節日行事曆", + "Add custom public calendar" : "新增自訂公開日曆", + "Calendar link copied to clipboard." : "複製日曆連結到剪貼簿", + "Calendar link could not be copied to clipboard." : "日曆連結無法複製到剪貼簿", + "Copy subscription link" : "複製訂閱的連結", + "Copying link …" : "正在複製連結…", + "Copied link" : "連結已複製", + "Could not copy link" : "無法複製連結", + "Export" : "匯出", + "Untitled item" : "未命名的項目", + "Unknown calendar" : "未知行事曆", + "Could not load deleted calendars and objects" : "無法載入已刪除的日曆與物件", + "Could not delete calendar or event" : "無法刪除日曆或活動", + "Could not restore calendar or event" : "無法復原日曆或活動", + "Do you really want to empty the trash bin?" : "您真的想要清空回收桶嗎?", + "Empty trash bin" : "清空回收桶", + "Trash bin" : "回收桶", + "Loading deleted items." : "載入已刪除的項目。", + "You do not have any deleted items." : "您沒有任何已刪除的項目。", + "Name" : "名稱", + "Deleted" : "已刪除", + "Restore" : "還原", + "Delete permanently" : "永久刪除", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["回收桶中的項目會在{numDays}天後刪除"], + "Could not update calendar order." : "無法變更日曆順序", + "Shared calendars" : "分享的行事曆", + "Deck" : "Deck", + "Hidden" : "隱藏", + "Internal link" : "內部連結", + "A private link that can be used with external clients" : "可與外部客戶端一起使用的私人連結", + "Copy internal link" : "複製內部連結", + "An error occurred, unable to publish calendar." : "發生錯誤,無法發佈日曆", + "An error occurred, unable to send email." : "發生錯誤,無法寄送電子郵件", + "Embed code copied to clipboard." : "內嵌程式碼已複製到剪貼簿", + "Embed code could not be copied to clipboard." : "無法複製內嵌程式碼到剪貼簿", + "Unpublishing calendar failed" : "取消發佈日曆失敗", "Share link" : "分享連結", - "Publish calendar" : "發布日曆", - "Publishing calendar" : "正在發布日曆", "Copy public link" : "複製公開連結", "Send link to calendar via email" : "透過電子郵件傳送日曆連結", "Enter one address" : "輸入一個位址", "Sending email …" : "正在傳送電子郵件…", - "Copy subscription link" : "複製訂閱的連結", - "Copying link …" : "正在複製連結…", - "Copied link" : "連結已複製", - "Could not copy link" : "無法複製連結", "Copy embedding code" : "複製內嵌程式碼", "Copying code …" : "正在複製程式碼…", "Copied code" : "已複製程式碼", "Could not copy code" : "無法複製程式碼", "Delete share link" : "刪除分享連結", "Deleting share link …" : "正在刪除共享連結…", - "An error occurred, unable to publish calendar." : "發生錯誤,無法發佈日曆", - "An error occurred, unable to send email." : "發生錯誤,無法寄送電子郵件", - "Embed code copied to clipboard." : "內嵌程式碼已複製到剪貼簿", - "Embed code could not be copied to clipboard." : "無法複製內嵌程式碼到剪貼簿", - "Unpublishing calendar failed" : "取消發佈日曆失敗", - "Share with users or groups" : "與使用者或群組分享", - "No users or groups" : "沒有使用者或群組", + "{teamDisplayName} (Team)" : "{teamDisplayName}(團隊)", + "An error occurred while unsharing the calendar." : "取消分享行事曆時發生錯誤。", + "An error occurred, unable to change the permission of the share." : "發生錯誤,無法變更分享權限", "can edit" : "可編輯", "Unshare with {displayName}" : "取消與 {displayName} 的分享", - "An error occurred, unable to change the unshare the calendar." : "發生錯誤,無法變更日曆", - "An error occurred, unable to change the permission of the share." : "發生錯誤,無法變更分享權限", - "+ New calendar" : "+ 新日曆", - "New calendar" : "新日曆", - "Name for new calendar" : "新行事曆名稱", - "Creating calendar …" : "正在建立日曆…", - "New calendar with task list" : "新日曆及待辦清單", - "New subscription from link (read-only)" : "自連結建立新訂閱(唯讀)", - "Creating subscription …" : "正在建立新訂閱…", - "An error occurred, unable to create the calendar." : "發生錯誤,無法建立日曆", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "請輸入有效的連結(以 http:// , https:// , webcal:// , 或 webcals:// 開頭)", - "Trash bin" : "回收桶", - "Loading deleted elements." : "正在載入已刪除的元素。", - "You do not have any deleted elements." : "您沒有任何已刪除的元素。", - "Name" : "名稱", - "Deleted" : "已刪除", - "Restore" : "還原", - "Delete permanently" : "永久刪除", - "Empty trash bin" : "清空回收桶", - "Untitled element" : "無標題元素", - "Unknown calendar" : "未知行事曆", - "Could not load deleted calendars and objects" : "無法載入已刪除的日曆與物件", - "Could not restore calendar or event" : "無法復原日曆或活動", - "Do you really want to empty the trash bin?" : "您真的想要清空回收桶嗎?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["回收桶中的元素將於{numDays}天候刪除"], - "Could not update calendar order." : "無法變更日曆順序", + "Share with users or groups" : "與使用者或群組分享", + "No users or groups" : "沒有使用者或群組", + "Failed to save calendar name and color" : "儲存行事曆名稱或色彩失敗", + "Calendar name …" : "行事曆名稱……", + "Never show me as busy (set this calendar to transparent)" : "永不顯示我為忙碌狀態(設定此行事曆為透明)", + "Share calendar" : "分享行事曆", + "Unshare from me" : "取消與我分享", + "Save" : "儲存", "Import calendars" : "匯入日曆", "Please select a calendar to import into …" : "請選擇將匯入的日曆", "Filename" : "檔案名稱", "Calendar to import into" : "將匯入的日曆", "Cancel" : "取消", "_Import calendar_::_Import calendars_" : ["匯入日曆"], + "Select the default location for attachments" : "選取附件的預設位置", + "Pick" : "挑選", + "Invalid location selected" : "選取無效的位置", + "Attachments folder successfully saved." : "附件資料夾已成功儲存。", + "Error on saving attachments folder." : "儲存附件資料夾時發生錯誤。", + "Default attachments location" : "預設附件位置", "{filename} could not be parsed" : "無法解析 {filename}", "No valid files found, aborting import" : "沒有找到有效的檔案,中斷匯入", - "Import partially failed. Imported {accepted} out of {total}." : "匯入部分失敗,僅成功匯入 {total} 中的 {accepted} 項", "_Successfully imported %n event_::_Successfully imported %n events_" : ["成功匯入 %n 個活動"], + "Import partially failed. Imported {accepted} out of {total}." : "匯入部分失敗,僅成功匯入 {total} 中的 {accepted} 項", "Automatic" : "自動", "Automatic ({detected})" : "自動({detected})", "New setting was not saved successfully." : "新設定未成功儲存", - "Shortcut overview" : "捷徑簡介", - "or" : "或者", "Navigation" : "導覽列", "Previous period" : "前一期間", "Next period" : "下一期間", @@ -141,6 +174,7 @@ OC.L10N.register( "Day view" : "每日", "Week view" : "每週", "Month view" : "每月", + "Year view" : "年檢視", "List view" : "清單檢視", "Actions" : "動作", "Create event" : "建立活動", @@ -150,24 +184,29 @@ OC.L10N.register( "Save edited event" : "儲存已編輯的事件", "Delete edited event" : "刪除已編輯的事件", "Duplicate event" : "重複事件", + "Shortcut overview" : "捷徑簡介", + "or" : "或者", + "Calendar settings" : "行事曆設定", + "At event start" : "活動開始時", + "No reminder" : "無提醒", + "Failed to save default calendar" : "儲存預設日曆失敗", + "CalDAV link copied to clipboard." : "已複製 CalDAV 連結至剪貼簿", + "CalDAV link could not be copied to clipboard." : "無法複製 CalDAV 連結至剪貼簿", "Enable birthday calendar" : "啟用生日日曆", "Show tasks in calendar" : "在日曆上顯示待辦事項", "Enable simplified editor" : "啟用簡化的編輯器", - "Limit visible events per view" : "限制每個顯示可見的活動數", + "Limit the number of events displayed in the monthly view" : "限制行事曆月檢視模式中顯示的事件數量", "Show weekends" : "顯示週末", "Show week numbers" : "顯示週數", "Time increments" : "隨時間遞增", + "Default calendar for incoming invitations" : "收到的邀請的預設行事曆", "Default reminder" : "預設提醒", "Copy primary CalDAV address" : "複製主要的 CalDAV 位址", "Copy iOS/macOS CalDAV address" : "複製 iOS/macOS 的 CalDAV 位址", "Personal availability settings" : "個人可用設定", "Show keyboard shortcuts" : "顯示快速鍵", - "Calendar settings" : "行事曆設定", - "No reminder" : "無提醒", - "CalDAV link copied to clipboard." : "已複製 CalDAV 連結至剪貼簿", - "CalDAV link could not be copied to clipboard." : "無法複製 CalDAV 連結至剪貼簿", - "Appointment was created successfully" : "成功建立預約", - "Appointment was updated successfully" : "成功更新預約", + "Appointment schedule successfully created" : "已成功建立預約時間表", + "Appointment schedule successfully updated" : "已成功更新預約時間表", "_{duration} minute_::_{duration} minutes_" : ["{duration} 分鐘"], "0 minutes" : "0分鐘", "_{duration} hour_::_{duration} hours_" : ["{duration} 小時"], @@ -178,7 +217,14 @@ OC.L10N.register( "To configure appointments, add your email address in personal settings." : "要設定預約,請在您的個人設定中新增電子郵件。", "Public – shown on the profile page" : "公開 – 在個人資料頁面上展示", "Private – only accessible via secret link" : "私人 – 僅能透過祕密連結存取", + "Appointment schedule saved" : "已儲存預約時間表", + "Create appointment schedule" : "建立預約時間表", + "Edit appointment schedule" : "編輯預約時間表", + "Update" : "更新", + "Appointment name" : "約會名稱", "Location" : "地點", + "Create a Talk room" : "建立 Talk 聊天室", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "將為每個預定的約會產生一個獨一無二的連結,並透過確認電子郵件寄送", "Description" : "描述", "Visibility" : "能見度", "Duration" : "持續時間", @@ -196,6 +242,7 @@ OC.L10N.register( "Friday" : "週五", "Saturday" : "週六", "Sunday" : "週日", + "Weekdays" : "週間", "Add time before and after the event" : "新增活動前後的時間", "Before the event" : "活動前", "After the event" : "活動後", @@ -203,18 +250,29 @@ OC.L10N.register( "Minimum time before next available slot" : "下一個可用時段前的最短時間", "Max slots per day" : "每日最大時段數", "Limit how far in the future appointments can be booked" : "限制可以預訂未來多久的預約", - "Create appointment" : "建立預約", - "Edit appointment" : "編輯預約", - "Save" : "儲存", - "Update" : "更新", + "It seems a rate limit has been reached. Please try again later." : "似乎已達速率限制。請稍後再試。", "Please confirm your reservation" : "請確認您的預約", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "我們向您寄送了一封包含詳細資訊的電子郵件。請使用電子郵件中的連結確認您的預約。您現在可以關閉此頁面了。", "Your name" : "您的名字", "Your email address" : "您的電子郵件地址", "Please share anything that will help prepare for our meeting" : "請分享任何有助於為我們的會議做準備的資訊", "Could not book the appointment. Please try again later or contact the organizer." : "無法預約。請稍後再試或聯絡舉辦者。", - "Book the appointment" : "預約", - "Reminder" : "提醒", + "Back" : "返回", + "Book appointment" : "預約", + "Error fetching Talk conversations." : "擷取 Talk 對話時發生錯誤", + "Conversation does not have a valid URL." : "對話沒有有效的 URL。", + "Successfully added Talk conversation link to location." : "成功在位置中新增 Talk 對話連結。", + "Successfully added Talk conversation link to description." : "成功在描述中新增 Talk 對話連結。", + "Failed to apply Talk room." : "套用 Talk 聊天室失敗。", + "Error creating Talk conversation" : "建立 Talk 對話時發生錯誤", + "Select a Talk Room" : "選取 Talk 聊天室", + "Add Talk conversation" : "新增 Talk 對話", + "Fetching Talk rooms…" : "正在擷取 Talk 聊天室……", + "No Talk room available" : "無可用的 Talk 聊天室", + "Create a new conversation" : "建立新對話", + "Select conversation" : "選擇對話", + "on" : "在", + "at" : "在", "before at" : "之前於", "Notification" : "通知", "Email" : "Email", @@ -225,114 +283,147 @@ OC.L10N.register( "Edit time" : "編輯時間", "Save time" : "儲存時間", "Remove reminder" : "刪除提醒", - "on" : "在", - "at" : "在", - "+ Add reminder" : "+ 加入提醒", "Add reminder" : "新增提醒", - "_second_::_seconds_" : ["秒"], - "_minute_::_minutes_" : ["分鐘"], - "_hour_::_hours_" : ["時"], - "_day_::_days_" : ["天"], - "_week_::_weeks_" : ["週"], + "seconds" : "秒", + "minutes" : "分鐘", + "hours" : "小時", + "days" : "日", + "weeks" : "週", + "Choose a file to add as attachment" : "選擇要作為附件的檔案", + "Choose a file to share as a link" : "選擇要作為連結分享的檔案", + "Attachment {name} already exist!" : "附件 {name} 已存在!", + "Could not upload attachment(s)" : "無法上傳附件", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "您將要下載檔案。請在開啟前檢查檔案名稱。您確定要繼續嗎?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "您即將前往 {host}。您確定要繼續嗎?連結:{link}", + "Proceed" : "繼續", + "No attachments" : "無附件", + "Add from Files" : "新增自檔案", + "Upload from device" : "從裝置上傳", + "Delete file" : "刪除檔案", + "Confirmation" : "確認", + "_{count} attachment_::_{count} attachments_" : ["{count} 個附件"], "Suggested" : "建議", "Available" : "可用", - "Not available" : "無法使用", - "Checking availability" : "正在檢查可用性。", "Invitation accepted" : "已接受邀請", "Accepted {organizerName}'s invitation" : "已接受 {organizerName} 的邀請", + "Participation marked as tentative" : "將參與標記為暫定", + "Invitation is delegated" : "邀請已配送", + "Not available" : "無法使用", "Invitation declined" : "邀請被拒絕", "Declined {organizerName}'s invitation" : "已拒絕 {organizerName} 的邀請", - "Invitation is delegated" : "邀請已配送", - "Participation marked as tentative" : "將參與標記為暫定", - "Invitation sent" : "邀請已傳送", + "Availability will be checked" : "將檢查可用性", + "Invitation will be sent" : "將會傳送邀請", + "Failed to check availability" : "檢查可用性失敗", + "Failed to deliver invitation" : "遞送邀請失敗", + "Awaiting response" : "等待回應", + "Checking availability" : "正在檢查可用性。", "Has not responded to {organizerName}'s invitation yet" : "尚未回覆 {organizerName} 的邀請", - "Availability of attendees, resources and rooms" : "參與者、資源和空間的可用性", + "Suggested times" : "建議的時間", + "chairperson" : "主席", + "required participant" : "必須出席的參與者", + "non-participant" : "非參與者", + "optional participant" : "可不出席的參與者", "{organizer} (organizer)" : "{organizer} (organizer)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "參與者、資源和空間的可用性", + "Suggestion accepted" : "已接受建議", + "Previous date" : "前一個日期", + "Next date" : "下一個日期", + "Legend" : "圖例", + "Out of office" : "不在辦公室", + "Attendees:" : "參與者:", + "Done" : "完成", + "Search room" : "搜尋房間", + "Room name" : "空間名稱", + "Check room availability" : "檢查房間是否可供使用", "Free" : "有空", "Busy (tentative)" : "忙碌(暫定)", "Busy" : "忙碌", - "Out of office" : "不在辦公室", "Unknown" : "不明", - "Accept" : "接受", - "Decline" : "回絕", - "Tentative" : "暫定", + "Find a time" : "找個時間", "The invitation has been accepted successfully." : "已成功接受邀請。", "Failed to accept the invitation." : "接受邀請失敗。", "The invitation has been declined successfully." : "已成功回絕邀請。", "Failed to decline the invitation." : "回絕邀請失敗。", "Your participation has been marked as tentative." : "您的參與已被標記為暫定。", "Failed to set the participation status to tentative." : "未能將參與狀態設定為暫定。", - "Create Talk room for this event" : "建立此活動的線上會議室", - "Show busy times" : "顯示忙碌時段", + "Accept" : "接受", + "Decline" : "回絕", + "Tentative" : "暫定", "No attendees yet" : "還沒有任何參與者", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} 個已邀請,{confirmedCount} 個已確認", + "Please add at least one attendee to use the \"Find a time\" feature." : "請新增至少一位參與者,以使用「尋找時間」功能。", + "Successfully appended link to talk room to location." : "成功將線上會議室的連結加至位置", "Successfully appended link to talk room to description." : "成功將線上會議室的連結加至活動細節", "Error creating Talk room" : "建立線上會議室發生錯誤", - "Send email" : "傳送電子郵件", + "Attendees" : "參與者", + "_%n more guest_::_%n more guests_" : ["還有 %n 位來賓"], + "Remove group" : "移除群組", + "Remove attendee" : "移除參與者", + "Request reply" : "請求回覆", "Chairperson" : "主席", "Required participant" : "需出席的參與者", "Optional participant" : "可不出席的參與者", "Non-participant" : "非參與者", - "Remove attendee" : "移除參與者", - "Search for emails, users or contacts" : "搜尋電子郵件、使用者與聯絡人", + "_%n member_::_%n members_" : ["%n 個成員"], + "Search for emails, users, contacts, contact groups or teams" : "搜尋電子郵件、使用者、聯絡人群組或團隊", "No match found" : "找不到符合的項目", + "Note that members of circles get invited but are not synced yet." : "請注意,小圈圈成員已收到邀請,但尚未同步。", + "Note that members of contact groups get invited but are not synced yet." : "請注意,聯絡人群組的成員已收到邀請,但尚未同步。", "(organizer)" : "(主辦人)", + "Make {label} the organizer" : "讓 {label} 成為組織者", + "Make {label} the organizer and attend" : "讓 {label} 成為組織者並參與", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "若要送出邀請函並處理回覆,[linkopen]請至個人設定頁加入您的電郵地址[linkclose]", "Remove color" : "移除顏色", "Event title" : "活動標題", - "All day" : "全天", "Cannot modify all-day setting for events that are part of a recurrence-set." : "無法變更定期重複活動的全日設定。", - "from {startDate}" : "從 {startDate}", - "from {startDate} at {startTime}" : "從 {startDate} {startTime}", - "to {endDate}" : "至 {endDate} 止", - "to {endDate} at {endTime}" : "至 {endDate} {endTime} 止", + "From" : "從", + "To" : "至", "Repeat" : "重複", - "End repeat" : "停止重複", - "Select to end repeat" : "選擇以結束重複", + "Repeat event" : "重複事件", + "_time_::_times_" : ["次"], "never" : "永不", "on date" : "在特定日期", "after" : "之後", - "_time_::_times_" : ["次"], + "End repeat" : "停止重複", + "Select to end repeat" : "選擇以結束重複", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "此活動是一系列重複活動的特例,您無法針對它設定重複規則。", "first" : "第一", - "third" : "第三", - "fourth" : "第四", - "fifth" : "第五", - "second to last" : "倒數第二", - "last" : "倒數第一", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "變更的重複規則只會套用至這項活動和重複的未來活動", "Repeat every" : "重複循環", "By day of the month" : "每月中特定日", "On the" : "在", + "_day_::_days_" : ["天"], + "_week_::_weeks_" : ["週"], "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], + "On specific day" : "在指定的日子", "weekday" : "週間", "weekend day" : "週末", - "No recurrence" : "無重複", + "Does not repeat" : "不要重複", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud 不完全支援此活動的重複。如果您編輯了重複選項,某些重複可能會遺失。", - "Suggestions" : "建議", "No rooms or resources yet" : "還沒有聊天室或資源", + "Resources" : "資源", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} 個座位"], "Add resource" : "新增資源", "Has a projector" : "有投影機", "Has a whiteboard" : "有白板", "Wheelchair accessible" : "無障礙通道", "Remove resource" : "移除資源", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} 個座位"], - "Projector" : "投影機", - "Whiteboard" : "白板", "Search for resources or rooms" : "搜尋資源或聊天室", "available" : "可用", "unavailable" : "不可用", + "Show all rooms" : "顯示所有房間", + "Projector" : "投影機", + "Whiteboard" : "白板", "Room type" : "房間類型", "Any" : "任何", "Minimum seating capacity" : "最小座位數", - "More" : "更多", - "Update this occurrence" : "更新此重複", + "More details" : "更多詳細資訊", "Update this and all future" : "更新這次和所有未來的重複", + "Update this occurrence" : "更新此重複", "Public calendar does not exist" : "公開日曆不存在", "Maybe the share was deleted or has expired?" : "分享是否已刪除或過期?", - "Please select a time zone:" : "請選取時區:", - "Pick a time" : "挑選時間", - "Pick a date" : "挑選日期", "from {formattedDate}" : "從 {formattedDate}", "to {formattedDate}" : "至 {formattedDate}", "on {formattedDate}" : "於 {formattedDate}", @@ -342,9 +433,26 @@ OC.L10N.register( "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "請輸入有效的日期", "Please enter a valid date and time" : "請輸入有效的日期和時間", + "Select a time zone" : "選取時區", + "Please select a time zone:" : "請選取時區:", + "Pick a time" : "挑選時間", + "Pick a date" : "挑選日期", "Type to search time zone" : "輸入以搜尋時區", "Global" : "全球", - "Select date" : "選取日期", + "Holidays in {region}" : "{region} 的節日", + "An error occurred, unable to read public calendars." : "發生錯誤,無法讀取公開日曆。", + "An error occurred, unable to subscribe to calendar." : "發生錯誤,無法訂閱日曆。", + "Public holiday calendars" : "公眾節日行事曆", + "Public calendars" : "公開日曆", + "No valid public calendars configured" : "未設定有效的公開日曆", + "Speak to the server administrator to resolve this issue." : "請與伺服器管理員聯絡以解決此問題。", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "公眾節日行事曆由 Thunderbird 提供。將會從 {website} 下載行事曆資料", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "這些公開日曆是伺服器管理員建議的。日曆資料將從對應的網站下載。", + "By {authors}" : "作者為 {authors}", + "Subscribed" : "已訂閱", + "Subscribe" : "訂閱", + "Could not fetch slots" : "無法擷取時段", + "Select a date" : "選取日期", "Select slot" : "選取時段", "No slots available" : "無可用時段", "The slot for your appointment has been confirmed" : "您預約的時段已確認", @@ -361,24 +469,25 @@ OC.L10N.register( "Personal" : "私人", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "自動時區偵測認為您的時間是 UTC。\n這很可能視您的網路瀏覽器安全措施的結果。\n請在行事曆設定中手動設定您的時間。", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "找不到您設定的時間 ({timezoneId})。正在汰退至 UTC。\n請在設定中變更您的時區並回報此問題。", - "No more events today" : "今天沒有其他活動", - "No upcoming events" : "沒有接下來的活動", - "Create a new event" : "建立新活動", - "[Today]" : "[今天]", - "[Tomorrow]" : "[明天]", - "[Yesterday]" : "[昨天]", - "[Last] dddd" : "[上] dddd", + "Availability of {displayName}" : "{displayName} 的可用性", + "Edit event" : "編輯活動", "Event does not exist" : "活動不存在", "Duplicate" : "重複", "Delete this occurrence" : "刪除這次活動", "Delete this and all future" : "刪除這次和所有未來重複", - "Details" : "詳細資料", - "Attendees" : "參與者", - "Resources" : "資源", + "All day" : "全天", + "Modifications wont get propagated to the organizer and other attendees" : "修改將不會傳達給主辦人與其他參與者", + "Managing shared access" : "管理已分享的存取權限", + "Deny access" : "拒絕存取", + "Invite" : "邀請", + "_User requires access to your file_::_Users require access to your file_" : ["使用者要求存取您的檔案"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["需要分享存取權限的附件"], + "Untitled event" : "未命名活動", "Close" : " 關閉", - "Show more details" : "顯示更多細節", + "Modifications will not get propagated to the organizer and other attendees" : "修改將不會傳達給主辦人與其他參與者", "Subscribe to {name}" : "訂閱 {name}", "Export {name}" : "匯出 {name}", + "Show availability" : "顯示可用性", "Anniversary" : "週年", "Appointment" : "預約", "Business" : "商業", @@ -406,7 +515,6 @@ OC.L10N.register( "on {time}" : "於 {time}", "on {time} ({timezoneId})" : "於 {time} ({timezoneId})", "Week {number} of {year}" : "{year} 的第 {number} 週", - "Does not repeat" : "不要重複", "Daily" : "每日", "Weekly" : "每週", "Monthly" : "每月", @@ -418,24 +526,30 @@ OC.L10N.register( "_on {weekday}_::_on {weekdays}_" : ["於 {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["在 {dayOfMonthList} 天"], "on the {ordinalNumber} {byDaySet}" : "在 {ordinalNumber} {byDaySet} 上", - "in {monthNames}" : "於 {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "在 {monthNames} 於 {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "在 {ordinalNumber} {byDaySet} 於 {monthNames}", "until {untilDate}" : "到 {untilDate}", "_%n time_::_%n times_" : ["%n 次"], - "Untitled event" : "未命名活動", + "second" : "第二", + "third" : "第三", + "fourth" : "第四", + "fifth" : "第五", + "second to last" : "倒數第二", + "last" : "倒數第一", "Untitled task" : "未命名工作項目", "Please ask your administrator to enable the Tasks App." : "請要求您的管理員啟用工作項目應用程式。", - "Prev" : "上一個", - "Next" : "下一個", - "Prev year" : "去年", - "Next year" : "明年", - "Year" : "年", + "You are not allowed to edit this event as an attendee." : "作為參與者,您無權編輯此活動。", "W" : "週", "%n more" : "其餘 %n 項", "No events to display" : "無可顯示的活動", + "All participants declined" : "所有參與者均拒絕", + "Please confirm your participation" : "請確認您的參與", + "You declined this event" : "您拒絕了此活動", + "Your participation is tentative" : "您的參與是暫時性的", "_+%n more_::_+%n more_" : ["* 和其他 %n 個"], "No events" : "無活動", "Create a new event or change the visible time-range" : "建立新活動或變更可見的時間範圍", + "Failed to save event" : "儲存事件失敗", "It might have been deleted, or there was a typo in a link" : "其可能已經被刪除,或是連結中有錯字", "It might have been deleted, or there was a typo in the link" : "其可能已經被刪除,或是連結中有錯字", "Meeting room" : "會議室", @@ -448,7 +562,7 @@ OC.L10N.register( "When shared hide this event" : "分享的時候隱藏這個活動", "The visibility of this event in shared calendars." : "此活動在分享的日曆可見程度。", "Add a location" : "加入地點", - "Add a description" : "加入描述", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "新增描述\n\n- 此會議的主題是\n- 議程項目\n- 參與者需要準備的事情", "Status" : "狀態", "Confirmed" : "已確認", "Canceled" : "已取消", @@ -461,135 +575,26 @@ OC.L10N.register( "Add this as a new category" : "將此加入為新分類", "Custom color" : "自訂顏色", "Special color of this event. Overrides the calendar-color." : "此活動的特殊顏色。覆寫日曆顏色。", - "Chat room for event" : "活動的聊天室", + "Error while sharing file" : "分享檔案時發生錯誤", + "Error while sharing file with user" : "與使用者分享檔案時發生錯誤", + "Error creating a folder {folder}" : "建立資料夾 {folder} 時發生錯誤", + "Attachment {fileName} already exists!" : "附件 {fileName} 已存在!", + "Attachment {fileName} added!" : "已新增附件 {fileName}!", + "An error occurred during uploading file {fileName}" : "上傳檔案 {fileName} 時發生錯誤", + "An error occurred during getting file information" : "取得檔案資訊時發生錯誤", + "Talk conversation for event" : "活動的 Talk 對話", + "An error occurred, unable to delete the calendar." : "發生錯誤,無法刪除日曆", "Imported {filename}" : "匯入的 {filename}", - "Meditation" : "冥想", - "Relaxing" : "放鬆", - "Relax" : "放鬆", - "Break" : "休息", - "Commute" : "通勤", - "Commuting" : "通勤中", - "Shuttle" : "穿梭", - "Invoice" : "發票", - "Finance" : "金融", - "Bank" : "銀行", - "Money" : "錢", - "Wedding" : "婚禮", - "Dog" : "狗", - "Concert" : "音樂會", - "Festival" : "節日", - "Theater" : "劇院", - "Theatre" : "劇院", - "Presentation" : "簡報", - "Talk" : "交談", - "Speech" : "演講", - "Deadline" : "最後期限", - "Submission" : "遞交", - "Reporting" : "報告", - "Camping" : "露營", - "Camp" : "露營", - "Election" : "選舉", - "Voting" : "投票", - "Vote" : "投票", - "Barbecue" : "燒烤", - "Barbeque" : "燒烤", - "Garden" : "園藝", - "Farm" : "農場", - "Movie" : "電影", - "Cinema" : "電影院", - "Graduation" : "畢業", - "Brainstorm" : "腦力激盪", - "Review" : "檢閱", - "Audit" : "稽核", - "Inspection" : "檢查", - "Proofreading" : "校對", - "Baseball" : "棒球", - "Meet" : "會面", - "Planning" : "計劃中", - "Pointing" : "指向", - "Retrospective" : "回顧", - "Office" : "辦公室", - "Contributor week" : "貢獻週", - "Mail" : "郵件", - "Soccer" : "足球", - "Football" : "美式足球", - "Gaming" : "遊戲", - "Drive" : "駕駛", - "Driving" : "駕駛", - "Bicycle" : "單車", - "Cycle" : "腳踏車", - "Cycling" : "騎車", - "Biking" : "自行車", - "Bike" : "腳踏車", - "Podcast" : "Podcast", - "Basketball" : "籃球", - "Fishing" : "釣魚", - "Hiking" : "健行", - "Hike" : "登山", - "Art" : "藝術", - "Exhibition" : "展覽", - "Museum" : "博物館", - "Pilates" : "皮拉提斯", - "Park" : "公園", - "Walk" : "步行", - "Studying" : "讀書", - "Doctor" : "醫生", - "Health" : "健康", - "Dentist" : "牙醫", - "Hospital" : "醫院", - "Interview" : "面試", - "Training" : "訓練", - "Practice" : "練習", - "Sports" : "體育", - "Exercise" : "運動", - "Work out" : "鍛鍊", - "Working out" : "鍛鍊", - "Gym" : "健身房", - "Barber" : "理髮師", - "Haircut" : "理髮", - "Hairdresser" : "美髮師", - "Exam" : "考試", - "Written test" : "筆試", - "Oral test" : "口試", - "Working" : "工作", - "New Years Eve" : "新年前夕", - "NYE" : "新年前夕", - "Fireworks" : "煙火", - "Running" : "跑步", - "Go for a run" : "去跑步", - "Marathon" : "馬拉松", - "Video-conference" : "視訊會議", - "Conference-call" : "電話會議", - "Video-call" : "視訊通話", - "Video-chat" : "視訊聊天", - "Video-meeting" : "視訊會議", - "Call" : "通話", - "Calling" : "通話", - "Christmas" : "耶誕節", - "Conference" : "會議", - "Pizza" : "披薩", - "Travelling" : "旅行", - "Trip" : "旅行", - "Journey" : "旅程", - "Collaborate" : "協作", - "Pair" : "配對", - "Lecture" : "演講", - "Seminar" : "專題討論", - "Teaching" : "教學", - "Photograph" : "攝影", - "Party" : "派對", - "Celebration" : "慶祝", - "Celebrate" : "慶祝", - "Birthday" : "生日", - "Shopping" : "購物", - "Groceries" : "雜貨", - "Skate" : "溜冰", - "Skateboard" : "滑板", - "Wine tasting" : "品酒", - "Golf" : "高爾夫球", - "Dinner" : "晚餐", - "Lunch" : "午餐", + "This is an event reminder." : "這是一個事件提醒。", + "Error while parsing a PROPFIND error" : "解析 PROFIND 錯誤時發生錯誤", "Appointment not found" : "找不到預約", - "User not found" : "找不到使用者" + "User not found" : "找不到使用者", + "Reminder" : "提醒", + "+ Add reminder" : "+ 加入提醒", + "Select automatic slot" : "選取自動時段", + "with" : "與", + "Available times:" : "可用項目:", + "Suggestions" : "建議", + "Details" : "詳細資料" }, "nplurals=1; plural=0;"); diff --git a/l10n/zh_TW.json b/l10n/zh_TW.json index afd6105c969b071a98fd5a744107538bb29413f3..02466950636963061d0a52e93c3a0e04152328aa 100644 --- a/l10n/zh_TW.json +++ b/l10n/zh_TW.json @@ -1,4 +1,5 @@ { "translations": { + "Provided email-address is too long" : "已提供的電子郵件地址太長", "User-Session unexpectedly expired" : "使用者連線階段過期", "Provided email-address is not valid" : "提供的電子郵件地址無效", "%s has published the calendar »%s«" : "%s 發佈了日曆 »%s«", @@ -9,129 +10,161 @@ "Open »%s«" : "開啟 »%s«", "Cheers!" : "太棒了!", "Upcoming events" : "接下來的活動", + "No more events today" : "今天沒有其他活動", + "No upcoming events" : "沒有接下來的活動", + "More events" : "更多活動", + "%1$s with %2$s" : "由 %2$s 預訂的 %1$s", + "Calendar" : "日曆", + "New booking {booking}" : "新預約 {booking}", + "{display_name} ({email}) booked the appointment \"{config_display_name}\" on {date_time}." : "{display_name} ({email}) 在 {date_time} 預約了「{config_display_name}」。", "Appointments" : "預約", "Schedule appointment \"%s\"" : "安排預約「%s」", "Schedule an appointment" : "安排預約", + "%1$s - %2$s" : "%1$s - %2$s", "Prepare for %s" : "準備 %s", "Follow up for %s" : "跟進 %s", - "Your appointment \"%s\" needs confirmation" : "您的預約「%s」需要確認", + "Your appointment \"%s\" with %s needs confirmation" : "您的預約「%s」包含 %s 需要確認", "Dear %s, please confirm your booking" : "親愛的 %s,請確認您的預約", "Confirm" : "確認", + "Appointment with:" : "預約:", + "Description:" : "描述:", "This confirmation link expires in %s hours." : "此確認連結將於 %s 小時後過期。", - "If you wish to cancel the appointment after all, please contact your organizer." : "如果您想要取消預約,請與您的舉辦者聯絡。", - "Appointment:" : "預約:", + "If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page." : "若您想要取消預約,請回覆此電子郵件或造訪他們的個人資料頁面與您的舉辦者聯絡。", + "Your appointment \"%s\" with %s has been accepted" : "您的預約「%s」包含 %s 已被接受", + "Dear %s, your booking has been accepted." : "親愛的 %s,您的預約已被接受。", + "Appointment for:" : "預約:", "Date:" : "日期:", + "You will receive a link with the confirmation email" : "您將會收到包含連結的確認電子郵件", "Where:" : "地點:", - "Description:" : "描述:", - "Calendar" : "日曆", + "Comment:" : "留言:", + "You have a new appointment booking \"%s\" from %s" : "您有一個新預約「%s」,來自 %s", + "Dear %s, %s (%s) booked an appointment with you." : "親愛的 %s,%s (%s) 與您預約了。", "A Calendar app for Nextcloud" : "Nextcloud 的日曆應用程式", - "The Calendar app is a user interface for Nextcloud's CalDAV server. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Currently Contacts - more to come.\n* 🌐 **WebCal Support!** Want to see your favorite team’s matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚️ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 Search! Find your events at ease\n* ☑️ Tasks! See tasks with a due date directly in the calendar\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "日曆應用程式是 Nextcloud 的 CalDAV 伺服器的使用者介面。透過您的 Nextcloud 輕鬆同步來自各裝置的活動,並在線上編輯它們。\n\n* 🚀 **與其他 Nextcloud 應用程式的整合!** 目前為通訊錄,但還會有更多的。\n* 🌐 **支援 WebCal!** 想在您的日曆中檢視您最愛球隊的比賽日期?沒問題!\n* 🙋 **參與者!** 邀請夥伴來參加您的活動\n* ⌚️ **有空/忙碌!** 看看您的參與者們什麼時候可以見面\n* ⏰ **提醒!** 在您的瀏覽器中以及透過電子郵件取得警示\n* 🔍 搜尋!輕鬆找到您的活動\n* ☑️ 工作項目!直接在日曆中檢視工作項目的到期日\n* 🙈 **我們並未重新發明輪子!** 以超棒的 [c-dav 函式庫](https://github.com/nextcloud/cdav-library)、[ical.js](https://github.com/mozilla-comm/ical.js) 與 [fullcalendar](https://github.com/fullcalendar/fullcalendar) 函式庫為基礎。", + "A Calendar app for Nextcloud. Easily sync events from various devices with your Nextcloud and edit them online.\n\n* 🚀 **Integration with other Nextcloud apps!** Like Contacts, Talk, Tasks, Deck and Circles\n* 🌐 **WebCal Support!** Want to see your favorite team's matchdays in your calendar? No problem!\n* 🙋 **Attendees!** Invite people to your events\n* ⌚ **Free/Busy!** See when your attendees are available to meet\n* ⏰ **Reminders!** Get alarms for events inside your browser and via email\n* 🔍 **Search!** Find your events at ease\n* ☑️ **Tasks!** See tasks or Deck cards with a due date directly in the calendar\n* 🔈 **Talk rooms!** Create an associated Talk room when booking a meeting with just one click\n* 📆 **Appointment booking** Send people a link so they can book an appointment with you [using this app](https://apps.nextcloud.com/apps/appointments)\n* 📎 **Attachments!** Add, upload and view event attachments\n* 🙈 **We’re not reinventing the wheel!** Based on the great [c-dav library](https://github.com/nextcloud/cdav-library), [ical.js](https://github.com/mozilla-comm/ical.js) and [fullcalendar](https://github.com/fullcalendar/fullcalendar) libraries." : "適用於 Nextcloud 的日曆應用程式。輕鬆從各種裝置與 Nextcloud 同步處理事件,並可線上編輯。\n\n* 🚀 **與其他 Nextcloud 應用程式整合!** 例如通訊錄、Talk、工作項目、Deck 與小圈圈\n* 🌐 **支援 WebCal!** 想要在您的日曆中看到您最喜愛的球隊的比賽日嗎?沒問題!\n* 🙋 **參與者!** 邀請夥伴參與您的活動\n* ⌚ **有空/忙碌!** 檢視您的與會者何時可以見面\n* ⏰ **提醒!** 透過您的瀏覽器與電子郵件取得活動提醒\n* 🔍 **搜尋!** 輕鬆找到您的活動\n* ☑️ **工作項目!** 直接在日曆中檢視有到期日的工作項目或 Deck 卡片\n* 🔈 **Talk 聊天室!** 預約會議時,只要按一下就能建立相關的 Talk 聊天室\n* 📆 **預約** 傳送連結給他人,讓他們可以[使用此應用程式](https://apps.nextcloud.com/apps/appointments)與您預約\n* 📎 **附件!** 新增、上傳與檢視活動附件\n* 🙈 **我們沒有重新發明輪子!** 以超棒的 [c-dav](https://github.com/nextcloud/cdav-library)、[ical.js](https://github.com/mozilla-comm/ical.js) 與 [fullcalendar](https://github.com/fullcalendar/fullcalendar) 函式庫為基礎開發。", "Previous day" : "前一日", "Previous week" : "前週", - "Previous month" : "前月", + "Previous year" : "前一年", + "Previous month" : "上個月", "Next day" : "隔天", "Next week" : "下週", + "Next year" : "明年", "Next month" : "下個月", - "New event" : "新活動", + "Create new event" : "建立新事件", + "Event" : "事件", "Today" : "今天", "Day" : "日", "Week" : "週", "Month" : "月", + "Year" : "年", "List" : "清單", + "Appointment link was copied to clipboard" : "預約連結已複製到剪貼簿", + "Appointment link could not be copied to clipboard" : "預約連結無法複製到剪貼簿", "Preview" : "預覽", "Copy link" : "複製連結", "Edit" : "編輯", "Delete" : "刪除", - "Appointment link was copied to clipboard" : "預約連結已複製到剪貼簿", - "Appointment link could not be copied to clipboard" : "預約連結無法複製到剪貼簿", - "Add new" : "新增", - "Untitled calendar" : "未命名日曆", - "Edit name" : "編輯名稱", - "Saving name …" : "儲存名稱…", - "Edit color" : "編輯顏色", - "Saving color …" : "儲存顏色…", - "Copy private link" : "複製私人連結", - "Export" : "匯出", - "Unshare from me" : "取消與我分享", + "Appointment schedules" : "預約時間表", + "Create new" : "建立新的", "Disable calendar \"{calendar}\"" : "停用行事曆 \"{calendar}\"", "Disable untitled calendar" : "停用未命名的行事曆", "Enable calendar \"{calendar}\"" : "啟用行事曆 \"{calendar}\"", "Enable untitled calendar" : "啟用未命名的行事曆", "An error occurred, unable to change visibility of the calendar." : "發生錯誤,無法改變日曆的能見度", - "An error occurred, unable to delete the calendar." : "發生錯誤,無法刪除日曆", - "Calendar link copied to clipboard." : "複製日曆連結到剪貼簿", - "Calendar link could not be copied to clipboard." : "日曆連結無法複製到剪貼簿", - "An error occurred, unable to rename the calendar." : "發生錯誤,無法重新命名日曆", - "An error occurred, unable to change the calendar's color." : "發生錯誤,無法變更日曆的顏色", + "Untitled calendar" : "未命名日曆", + "Shared with you by" : "分享給您藉由", + "Edit and share calendar" : "編輯並分享行事曆", + "Edit calendar" : "編輯行事曆", "_Unsharing the calendar in {countdown} second_::_Unsharing the calendar in {countdown} seconds_" : ["將在 {countdown} 秒後取消分享日曆"], "_Deleting the calendar in {countdown} second_::_Deleting the calendar in {countdown} seconds_" : ["將在 {countdown} 秒後刪除日曆"], + "An error occurred, unable to create the calendar." : "發生錯誤,無法建立日曆", + "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "請輸入有效的連結(以 http:// , https:// , webcal:// , 或 webcals:// 開頭)", + "Calendars" : "日曆", + "Add new" : "新增", + "New calendar" : "新日曆", + "Name for new calendar" : "新行事曆名稱", + "Creating calendar …" : "正在建立日曆…", + "New calendar with task list" : "新日曆及待辦清單", + "New subscription from link (read-only)" : "自連結建立新訂閱(唯讀)", + "Creating subscription …" : "正在建立新訂閱…", + "Add public holiday calendar" : "新增公眾節日行事曆", + "Add custom public calendar" : "新增自訂公開日曆", + "Calendar link copied to clipboard." : "複製日曆連結到剪貼簿", + "Calendar link could not be copied to clipboard." : "日曆連結無法複製到剪貼簿", + "Copy subscription link" : "複製訂閱的連結", + "Copying link …" : "正在複製連結…", + "Copied link" : "連結已複製", + "Could not copy link" : "無法複製連結", + "Export" : "匯出", + "Untitled item" : "未命名的項目", + "Unknown calendar" : "未知行事曆", + "Could not load deleted calendars and objects" : "無法載入已刪除的日曆與物件", + "Could not delete calendar or event" : "無法刪除日曆或活動", + "Could not restore calendar or event" : "無法復原日曆或活動", + "Do you really want to empty the trash bin?" : "您真的想要清空回收桶嗎?", + "Empty trash bin" : "清空回收桶", + "Trash bin" : "回收桶", + "Loading deleted items." : "載入已刪除的項目。", + "You do not have any deleted items." : "您沒有任何已刪除的項目。", + "Name" : "名稱", + "Deleted" : "已刪除", + "Restore" : "還原", + "Delete permanently" : "永久刪除", + "_Items in the trash bin are deleted after {numDays} day_::_Items in the trash bin are deleted after {numDays} days_" : ["回收桶中的項目會在{numDays}天後刪除"], + "Could not update calendar order." : "無法變更日曆順序", + "Shared calendars" : "分享的行事曆", + "Deck" : "Deck", + "Hidden" : "隱藏", + "Internal link" : "內部連結", + "A private link that can be used with external clients" : "可與外部客戶端一起使用的私人連結", + "Copy internal link" : "複製內部連結", + "An error occurred, unable to publish calendar." : "發生錯誤,無法發佈日曆", + "An error occurred, unable to send email." : "發生錯誤,無法寄送電子郵件", + "Embed code copied to clipboard." : "內嵌程式碼已複製到剪貼簿", + "Embed code could not be copied to clipboard." : "無法複製內嵌程式碼到剪貼簿", + "Unpublishing calendar failed" : "取消發佈日曆失敗", "Share link" : "分享連結", - "Publish calendar" : "發布日曆", - "Publishing calendar" : "正在發布日曆", "Copy public link" : "複製公開連結", "Send link to calendar via email" : "透過電子郵件傳送日曆連結", "Enter one address" : "輸入一個位址", "Sending email …" : "正在傳送電子郵件…", - "Copy subscription link" : "複製訂閱的連結", - "Copying link …" : "正在複製連結…", - "Copied link" : "連結已複製", - "Could not copy link" : "無法複製連結", "Copy embedding code" : "複製內嵌程式碼", "Copying code …" : "正在複製程式碼…", "Copied code" : "已複製程式碼", "Could not copy code" : "無法複製程式碼", "Delete share link" : "刪除分享連結", "Deleting share link …" : "正在刪除共享連結…", - "An error occurred, unable to publish calendar." : "發生錯誤,無法發佈日曆", - "An error occurred, unable to send email." : "發生錯誤,無法寄送電子郵件", - "Embed code copied to clipboard." : "內嵌程式碼已複製到剪貼簿", - "Embed code could not be copied to clipboard." : "無法複製內嵌程式碼到剪貼簿", - "Unpublishing calendar failed" : "取消發佈日曆失敗", - "Share with users or groups" : "與使用者或群組分享", - "No users or groups" : "沒有使用者或群組", + "{teamDisplayName} (Team)" : "{teamDisplayName}(團隊)", + "An error occurred while unsharing the calendar." : "取消分享行事曆時發生錯誤。", + "An error occurred, unable to change the permission of the share." : "發生錯誤,無法變更分享權限", "can edit" : "可編輯", "Unshare with {displayName}" : "取消與 {displayName} 的分享", - "An error occurred, unable to change the unshare the calendar." : "發生錯誤,無法變更日曆", - "An error occurred, unable to change the permission of the share." : "發生錯誤,無法變更分享權限", - "+ New calendar" : "+ 新日曆", - "New calendar" : "新日曆", - "Name for new calendar" : "新行事曆名稱", - "Creating calendar …" : "正在建立日曆…", - "New calendar with task list" : "新日曆及待辦清單", - "New subscription from link (read-only)" : "自連結建立新訂閱(唯讀)", - "Creating subscription …" : "正在建立新訂閱…", - "An error occurred, unable to create the calendar." : "發生錯誤,無法建立日曆", - "Please enter a valid link (starting with http://, https://, webcal://, or webcals://)" : "請輸入有效的連結(以 http:// , https:// , webcal:// , 或 webcals:// 開頭)", - "Trash bin" : "回收桶", - "Loading deleted elements." : "正在載入已刪除的元素。", - "You do not have any deleted elements." : "您沒有任何已刪除的元素。", - "Name" : "名稱", - "Deleted" : "已刪除", - "Restore" : "還原", - "Delete permanently" : "永久刪除", - "Empty trash bin" : "清空回收桶", - "Untitled element" : "無標題元素", - "Unknown calendar" : "未知行事曆", - "Could not load deleted calendars and objects" : "無法載入已刪除的日曆與物件", - "Could not restore calendar or event" : "無法復原日曆或活動", - "Do you really want to empty the trash bin?" : "您真的想要清空回收桶嗎?", - "_Elements in the trash bin are deleted after {numDays} day_::_Elements in the trash bin are deleted after {numDays} days_" : ["回收桶中的元素將於{numDays}天候刪除"], - "Could not update calendar order." : "無法變更日曆順序", + "Share with users or groups" : "與使用者或群組分享", + "No users or groups" : "沒有使用者或群組", + "Failed to save calendar name and color" : "儲存行事曆名稱或色彩失敗", + "Calendar name …" : "行事曆名稱……", + "Never show me as busy (set this calendar to transparent)" : "永不顯示我為忙碌狀態(設定此行事曆為透明)", + "Share calendar" : "分享行事曆", + "Unshare from me" : "取消與我分享", + "Save" : "儲存", "Import calendars" : "匯入日曆", "Please select a calendar to import into …" : "請選擇將匯入的日曆", "Filename" : "檔案名稱", "Calendar to import into" : "將匯入的日曆", "Cancel" : "取消", "_Import calendar_::_Import calendars_" : ["匯入日曆"], + "Select the default location for attachments" : "選取附件的預設位置", + "Pick" : "挑選", + "Invalid location selected" : "選取無效的位置", + "Attachments folder successfully saved." : "附件資料夾已成功儲存。", + "Error on saving attachments folder." : "儲存附件資料夾時發生錯誤。", + "Default attachments location" : "預設附件位置", "{filename} could not be parsed" : "無法解析 {filename}", "No valid files found, aborting import" : "沒有找到有效的檔案,中斷匯入", - "Import partially failed. Imported {accepted} out of {total}." : "匯入部分失敗,僅成功匯入 {total} 中的 {accepted} 項", "_Successfully imported %n event_::_Successfully imported %n events_" : ["成功匯入 %n 個活動"], + "Import partially failed. Imported {accepted} out of {total}." : "匯入部分失敗,僅成功匯入 {total} 中的 {accepted} 項", "Automatic" : "自動", "Automatic ({detected})" : "自動({detected})", "New setting was not saved successfully." : "新設定未成功儲存", - "Shortcut overview" : "捷徑簡介", - "or" : "或者", "Navigation" : "導覽列", "Previous period" : "前一期間", "Next period" : "下一期間", @@ -139,6 +172,7 @@ "Day view" : "每日", "Week view" : "每週", "Month view" : "每月", + "Year view" : "年檢視", "List view" : "清單檢視", "Actions" : "動作", "Create event" : "建立活動", @@ -148,24 +182,29 @@ "Save edited event" : "儲存已編輯的事件", "Delete edited event" : "刪除已編輯的事件", "Duplicate event" : "重複事件", + "Shortcut overview" : "捷徑簡介", + "or" : "或者", + "Calendar settings" : "行事曆設定", + "At event start" : "活動開始時", + "No reminder" : "無提醒", + "Failed to save default calendar" : "儲存預設日曆失敗", + "CalDAV link copied to clipboard." : "已複製 CalDAV 連結至剪貼簿", + "CalDAV link could not be copied to clipboard." : "無法複製 CalDAV 連結至剪貼簿", "Enable birthday calendar" : "啟用生日日曆", "Show tasks in calendar" : "在日曆上顯示待辦事項", "Enable simplified editor" : "啟用簡化的編輯器", - "Limit visible events per view" : "限制每個顯示可見的活動數", + "Limit the number of events displayed in the monthly view" : "限制行事曆月檢視模式中顯示的事件數量", "Show weekends" : "顯示週末", "Show week numbers" : "顯示週數", "Time increments" : "隨時間遞增", + "Default calendar for incoming invitations" : "收到的邀請的預設行事曆", "Default reminder" : "預設提醒", "Copy primary CalDAV address" : "複製主要的 CalDAV 位址", "Copy iOS/macOS CalDAV address" : "複製 iOS/macOS 的 CalDAV 位址", "Personal availability settings" : "個人可用設定", "Show keyboard shortcuts" : "顯示快速鍵", - "Calendar settings" : "行事曆設定", - "No reminder" : "無提醒", - "CalDAV link copied to clipboard." : "已複製 CalDAV 連結至剪貼簿", - "CalDAV link could not be copied to clipboard." : "無法複製 CalDAV 連結至剪貼簿", - "Appointment was created successfully" : "成功建立預約", - "Appointment was updated successfully" : "成功更新預約", + "Appointment schedule successfully created" : "已成功建立預約時間表", + "Appointment schedule successfully updated" : "已成功更新預約時間表", "_{duration} minute_::_{duration} minutes_" : ["{duration} 分鐘"], "0 minutes" : "0分鐘", "_{duration} hour_::_{duration} hours_" : ["{duration} 小時"], @@ -176,7 +215,14 @@ "To configure appointments, add your email address in personal settings." : "要設定預約,請在您的個人設定中新增電子郵件。", "Public – shown on the profile page" : "公開 – 在個人資料頁面上展示", "Private – only accessible via secret link" : "私人 – 僅能透過祕密連結存取", + "Appointment schedule saved" : "已儲存預約時間表", + "Create appointment schedule" : "建立預約時間表", + "Edit appointment schedule" : "編輯預約時間表", + "Update" : "更新", + "Appointment name" : "約會名稱", "Location" : "地點", + "Create a Talk room" : "建立 Talk 聊天室", + "A unique link will be generated for every booked appointment and sent via the confirmation email" : "將為每個預定的約會產生一個獨一無二的連結,並透過確認電子郵件寄送", "Description" : "描述", "Visibility" : "能見度", "Duration" : "持續時間", @@ -194,6 +240,7 @@ "Friday" : "週五", "Saturday" : "週六", "Sunday" : "週日", + "Weekdays" : "週間", "Add time before and after the event" : "新增活動前後的時間", "Before the event" : "活動前", "After the event" : "活動後", @@ -201,18 +248,29 @@ "Minimum time before next available slot" : "下一個可用時段前的最短時間", "Max slots per day" : "每日最大時段數", "Limit how far in the future appointments can be booked" : "限制可以預訂未來多久的預約", - "Create appointment" : "建立預約", - "Edit appointment" : "編輯預約", - "Save" : "儲存", - "Update" : "更新", + "It seems a rate limit has been reached. Please try again later." : "似乎已達速率限制。請稍後再試。", "Please confirm your reservation" : "請確認您的預約", "We sent you an email with details. Please confirm your appointment using the link in the email. You can close this page now." : "我們向您寄送了一封包含詳細資訊的電子郵件。請使用電子郵件中的連結確認您的預約。您現在可以關閉此頁面了。", "Your name" : "您的名字", "Your email address" : "您的電子郵件地址", "Please share anything that will help prepare for our meeting" : "請分享任何有助於為我們的會議做準備的資訊", "Could not book the appointment. Please try again later or contact the organizer." : "無法預約。請稍後再試或聯絡舉辦者。", - "Book the appointment" : "預約", - "Reminder" : "提醒", + "Back" : "返回", + "Book appointment" : "預約", + "Error fetching Talk conversations." : "擷取 Talk 對話時發生錯誤", + "Conversation does not have a valid URL." : "對話沒有有效的 URL。", + "Successfully added Talk conversation link to location." : "成功在位置中新增 Talk 對話連結。", + "Successfully added Talk conversation link to description." : "成功在描述中新增 Talk 對話連結。", + "Failed to apply Talk room." : "套用 Talk 聊天室失敗。", + "Error creating Talk conversation" : "建立 Talk 對話時發生錯誤", + "Select a Talk Room" : "選取 Talk 聊天室", + "Add Talk conversation" : "新增 Talk 對話", + "Fetching Talk rooms…" : "正在擷取 Talk 聊天室……", + "No Talk room available" : "無可用的 Talk 聊天室", + "Create a new conversation" : "建立新對話", + "Select conversation" : "選擇對話", + "on" : "在", + "at" : "在", "before at" : "之前於", "Notification" : "通知", "Email" : "Email", @@ -223,114 +281,147 @@ "Edit time" : "編輯時間", "Save time" : "儲存時間", "Remove reminder" : "刪除提醒", - "on" : "在", - "at" : "在", - "+ Add reminder" : "+ 加入提醒", "Add reminder" : "新增提醒", - "_second_::_seconds_" : ["秒"], - "_minute_::_minutes_" : ["分鐘"], - "_hour_::_hours_" : ["時"], - "_day_::_days_" : ["天"], - "_week_::_weeks_" : ["週"], + "seconds" : "秒", + "minutes" : "分鐘", + "hours" : "小時", + "days" : "日", + "weeks" : "週", + "Choose a file to add as attachment" : "選擇要作為附件的檔案", + "Choose a file to share as a link" : "選擇要作為連結分享的檔案", + "Attachment {name} already exist!" : "附件 {name} 已存在!", + "Could not upload attachment(s)" : "無法上傳附件", + "You are about to download a file. Please check the file name before opening it. Are you sure to proceed?" : "您將要下載檔案。請在開啟前檢查檔案名稱。您確定要繼續嗎?", + "You are about to navigate to {host}. Are you sure to proceed? Link: {link}" : "您即將前往 {host}。您確定要繼續嗎?連結:{link}", + "Proceed" : "繼續", + "No attachments" : "無附件", + "Add from Files" : "新增自檔案", + "Upload from device" : "從裝置上傳", + "Delete file" : "刪除檔案", + "Confirmation" : "確認", + "_{count} attachment_::_{count} attachments_" : ["{count} 個附件"], "Suggested" : "建議", "Available" : "可用", - "Not available" : "無法使用", - "Checking availability" : "正在檢查可用性。", "Invitation accepted" : "已接受邀請", "Accepted {organizerName}'s invitation" : "已接受 {organizerName} 的邀請", + "Participation marked as tentative" : "將參與標記為暫定", + "Invitation is delegated" : "邀請已配送", + "Not available" : "無法使用", "Invitation declined" : "邀請被拒絕", "Declined {organizerName}'s invitation" : "已拒絕 {organizerName} 的邀請", - "Invitation is delegated" : "邀請已配送", - "Participation marked as tentative" : "將參與標記為暫定", - "Invitation sent" : "邀請已傳送", + "Availability will be checked" : "將檢查可用性", + "Invitation will be sent" : "將會傳送邀請", + "Failed to check availability" : "檢查可用性失敗", + "Failed to deliver invitation" : "遞送邀請失敗", + "Awaiting response" : "等待回應", + "Checking availability" : "正在檢查可用性。", "Has not responded to {organizerName}'s invitation yet" : "尚未回覆 {organizerName} 的邀請", - "Availability of attendees, resources and rooms" : "參與者、資源和空間的可用性", + "Suggested times" : "建議的時間", + "chairperson" : "主席", + "required participant" : "必須出席的參與者", + "non-participant" : "非參與者", + "optional participant" : "可不出席的參與者", "{organizer} (organizer)" : "{organizer} (organizer)", + "{attendee} ({role})" : "{attendee} ({role})", + "Availability of attendees, resources and rooms" : "參與者、資源和空間的可用性", + "Suggestion accepted" : "已接受建議", + "Previous date" : "前一個日期", + "Next date" : "下一個日期", + "Legend" : "圖例", + "Out of office" : "不在辦公室", + "Attendees:" : "參與者:", + "Done" : "完成", + "Search room" : "搜尋房間", + "Room name" : "空間名稱", + "Check room availability" : "檢查房間是否可供使用", "Free" : "有空", "Busy (tentative)" : "忙碌(暫定)", "Busy" : "忙碌", - "Out of office" : "不在辦公室", "Unknown" : "不明", - "Accept" : "接受", - "Decline" : "回絕", - "Tentative" : "暫定", + "Find a time" : "找個時間", "The invitation has been accepted successfully." : "已成功接受邀請。", "Failed to accept the invitation." : "接受邀請失敗。", "The invitation has been declined successfully." : "已成功回絕邀請。", "Failed to decline the invitation." : "回絕邀請失敗。", "Your participation has been marked as tentative." : "您的參與已被標記為暫定。", "Failed to set the participation status to tentative." : "未能將參與狀態設定為暫定。", - "Create Talk room for this event" : "建立此活動的線上會議室", - "Show busy times" : "顯示忙碌時段", + "Accept" : "接受", + "Decline" : "回絕", + "Tentative" : "暫定", "No attendees yet" : "還沒有任何參與者", + "{invitedCount} invited, {confirmedCount} confirmed" : "{invitedCount} 個已邀請,{confirmedCount} 個已確認", + "Please add at least one attendee to use the \"Find a time\" feature." : "請新增至少一位參與者,以使用「尋找時間」功能。", + "Successfully appended link to talk room to location." : "成功將線上會議室的連結加至位置", "Successfully appended link to talk room to description." : "成功將線上會議室的連結加至活動細節", "Error creating Talk room" : "建立線上會議室發生錯誤", - "Send email" : "傳送電子郵件", + "Attendees" : "參與者", + "_%n more guest_::_%n more guests_" : ["還有 %n 位來賓"], + "Remove group" : "移除群組", + "Remove attendee" : "移除參與者", + "Request reply" : "請求回覆", "Chairperson" : "主席", "Required participant" : "需出席的參與者", "Optional participant" : "可不出席的參與者", "Non-participant" : "非參與者", - "Remove attendee" : "移除參與者", - "Search for emails, users or contacts" : "搜尋電子郵件、使用者與聯絡人", + "_%n member_::_%n members_" : ["%n 個成員"], + "Search for emails, users, contacts, contact groups or teams" : "搜尋電子郵件、使用者、聯絡人群組或團隊", "No match found" : "找不到符合的項目", + "Note that members of circles get invited but are not synced yet." : "請注意,小圈圈成員已收到邀請,但尚未同步。", + "Note that members of contact groups get invited but are not synced yet." : "請注意,聯絡人群組的成員已收到邀請,但尚未同步。", "(organizer)" : "(主辦人)", + "Make {label} the organizer" : "讓 {label} 成為組織者", + "Make {label} the organizer and attend" : "讓 {label} 成為組織者並參與", "To send out invitations and handle responses, [linkopen]add your email address in personal settings[linkclose]." : "若要送出邀請函並處理回覆,[linkopen]請至個人設定頁加入您的電郵地址[linkclose]", "Remove color" : "移除顏色", "Event title" : "活動標題", - "All day" : "全天", "Cannot modify all-day setting for events that are part of a recurrence-set." : "無法變更定期重複活動的全日設定。", - "from {startDate}" : "從 {startDate}", - "from {startDate} at {startTime}" : "從 {startDate} {startTime}", - "to {endDate}" : "至 {endDate} 止", - "to {endDate} at {endTime}" : "至 {endDate} {endTime} 止", + "From" : "從", + "To" : "至", "Repeat" : "重複", - "End repeat" : "停止重複", - "Select to end repeat" : "選擇以結束重複", + "Repeat event" : "重複事件", + "_time_::_times_" : ["次"], "never" : "永不", "on date" : "在特定日期", "after" : "之後", - "_time_::_times_" : ["次"], + "End repeat" : "停止重複", + "Select to end repeat" : "選擇以結束重複", "This event is the recurrence-exception of a recurrence-set. You cannot add a recurrence-rule to it." : "此活動是一系列重複活動的特例,您無法針對它設定重複規則。", "first" : "第一", - "third" : "第三", - "fourth" : "第四", - "fifth" : "第五", - "second to last" : "倒數第二", - "last" : "倒數第一", "Changes to the recurrence-rule will only apply to this and all future occurrences." : "變更的重複規則只會套用至這項活動和重複的未來活動", "Repeat every" : "重複循環", "By day of the month" : "每月中特定日", "On the" : "在", + "_day_::_days_" : ["天"], + "_week_::_weeks_" : ["週"], "_month_::_months_" : ["月"], "_year_::_years_" : ["年"], + "On specific day" : "在指定的日子", "weekday" : "週間", "weekend day" : "週末", - "No recurrence" : "無重複", + "Does not repeat" : "不要重複", "The recurrence definition of this event is not fully supported by Nextcloud. If you edit the recurrence-options, certain recurrences may be lost." : "Nextcloud 不完全支援此活動的重複。如果您編輯了重複選項,某些重複可能會遺失。", - "Suggestions" : "建議", "No rooms or resources yet" : "還沒有聊天室或資源", + "Resources" : "資源", + "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} 個座位"], "Add resource" : "新增資源", "Has a projector" : "有投影機", "Has a whiteboard" : "有白板", "Wheelchair accessible" : "無障礙通道", "Remove resource" : "移除資源", - "_{seatingCapacity} seat_::_{seatingCapacity} seats_" : ["{seatingCapacity} 個座位"], - "Projector" : "投影機", - "Whiteboard" : "白板", "Search for resources or rooms" : "搜尋資源或聊天室", "available" : "可用", "unavailable" : "不可用", + "Show all rooms" : "顯示所有房間", + "Projector" : "投影機", + "Whiteboard" : "白板", "Room type" : "房間類型", "Any" : "任何", "Minimum seating capacity" : "最小座位數", - "More" : "更多", - "Update this occurrence" : "更新此重複", + "More details" : "更多詳細資訊", "Update this and all future" : "更新這次和所有未來的重複", + "Update this occurrence" : "更新此重複", "Public calendar does not exist" : "公開日曆不存在", "Maybe the share was deleted or has expired?" : "分享是否已刪除或過期?", - "Please select a time zone:" : "請選取時區:", - "Pick a time" : "挑選時間", - "Pick a date" : "挑選日期", "from {formattedDate}" : "從 {formattedDate}", "to {formattedDate}" : "至 {formattedDate}", "on {formattedDate}" : "於 {formattedDate}", @@ -340,9 +431,26 @@ "{formattedDate} at {formattedTime}" : "{formattedDate} {formattedTime}", "Please enter a valid date" : "請輸入有效的日期", "Please enter a valid date and time" : "請輸入有效的日期和時間", + "Select a time zone" : "選取時區", + "Please select a time zone:" : "請選取時區:", + "Pick a time" : "挑選時間", + "Pick a date" : "挑選日期", "Type to search time zone" : "輸入以搜尋時區", "Global" : "全球", - "Select date" : "選取日期", + "Holidays in {region}" : "{region} 的節日", + "An error occurred, unable to read public calendars." : "發生錯誤,無法讀取公開日曆。", + "An error occurred, unable to subscribe to calendar." : "發生錯誤,無法訂閱日曆。", + "Public holiday calendars" : "公眾節日行事曆", + "Public calendars" : "公開日曆", + "No valid public calendars configured" : "未設定有效的公開日曆", + "Speak to the server administrator to resolve this issue." : "請與伺服器管理員聯絡以解決此問題。", + "Public holiday calendars are provided by Thunderbird. Calendar data will be downloaded from {website}" : "公眾節日行事曆由 Thunderbird 提供。將會從 {website} 下載行事曆資料", + "These public calendars are suggested by the sever administrator. Calendar data will be downloaded from the respective website." : "這些公開日曆是伺服器管理員建議的。日曆資料將從對應的網站下載。", + "By {authors}" : "作者為 {authors}", + "Subscribed" : "已訂閱", + "Subscribe" : "訂閱", + "Could not fetch slots" : "無法擷取時段", + "Select a date" : "選取日期", "Select slot" : "選取時段", "No slots available" : "無可用時段", "The slot for your appointment has been confirmed" : "您預約的時段已確認", @@ -359,24 +467,25 @@ "Personal" : "私人", "The automatic time zone detection determined your time zone to be UTC.\nThis is most likely the result of security measures of your web browser.\nPlease set your time zone manually in the calendar settings." : "自動時區偵測認為您的時間是 UTC。\n這很可能視您的網路瀏覽器安全措施的結果。\n請在行事曆設定中手動設定您的時間。", "Your configured time zone ({timezoneId}) was not found. Falling back to UTC.\nPlease change your time zone in the settings and report this issue." : "找不到您設定的時間 ({timezoneId})。正在汰退至 UTC。\n請在設定中變更您的時區並回報此問題。", - "No more events today" : "今天沒有其他活動", - "No upcoming events" : "沒有接下來的活動", - "Create a new event" : "建立新活動", - "[Today]" : "[今天]", - "[Tomorrow]" : "[明天]", - "[Yesterday]" : "[昨天]", - "[Last] dddd" : "[上] dddd", + "Availability of {displayName}" : "{displayName} 的可用性", + "Edit event" : "編輯活動", "Event does not exist" : "活動不存在", "Duplicate" : "重複", "Delete this occurrence" : "刪除這次活動", "Delete this and all future" : "刪除這次和所有未來重複", - "Details" : "詳細資料", - "Attendees" : "參與者", - "Resources" : "資源", + "All day" : "全天", + "Modifications wont get propagated to the organizer and other attendees" : "修改將不會傳達給主辦人與其他參與者", + "Managing shared access" : "管理已分享的存取權限", + "Deny access" : "拒絕存取", + "Invite" : "邀請", + "_User requires access to your file_::_Users require access to your file_" : ["使用者要求存取您的檔案"], + "_Attachment requires shared access_::_Attachments requiring shared access_" : ["需要分享存取權限的附件"], + "Untitled event" : "未命名活動", "Close" : " 關閉", - "Show more details" : "顯示更多細節", + "Modifications will not get propagated to the organizer and other attendees" : "修改將不會傳達給主辦人與其他參與者", "Subscribe to {name}" : "訂閱 {name}", "Export {name}" : "匯出 {name}", + "Show availability" : "顯示可用性", "Anniversary" : "週年", "Appointment" : "預約", "Business" : "商業", @@ -404,7 +513,6 @@ "on {time}" : "於 {time}", "on {time} ({timezoneId})" : "於 {time} ({timezoneId})", "Week {number} of {year}" : "{year} 的第 {number} 週", - "Does not repeat" : "不要重複", "Daily" : "每日", "Weekly" : "每週", "Monthly" : "每月", @@ -416,24 +524,30 @@ "_on {weekday}_::_on {weekdays}_" : ["於 {weekdays}"], "_on day {dayOfMonthList}_::_on days {dayOfMonthList}_" : ["在 {dayOfMonthList} 天"], "on the {ordinalNumber} {byDaySet}" : "在 {ordinalNumber} {byDaySet} 上", - "in {monthNames}" : "於 {monthNames}", + "in {monthNames} on the {dayOfMonthList}" : "在 {monthNames} 於 {dayOfMonthList}", "in {monthNames} on the {ordinalNumber} {byDaySet}" : "在 {ordinalNumber} {byDaySet} 於 {monthNames}", "until {untilDate}" : "到 {untilDate}", "_%n time_::_%n times_" : ["%n 次"], - "Untitled event" : "未命名活動", + "second" : "第二", + "third" : "第三", + "fourth" : "第四", + "fifth" : "第五", + "second to last" : "倒數第二", + "last" : "倒數第一", "Untitled task" : "未命名工作項目", "Please ask your administrator to enable the Tasks App." : "請要求您的管理員啟用工作項目應用程式。", - "Prev" : "上一個", - "Next" : "下一個", - "Prev year" : "去年", - "Next year" : "明年", - "Year" : "年", + "You are not allowed to edit this event as an attendee." : "作為參與者,您無權編輯此活動。", "W" : "週", "%n more" : "其餘 %n 項", "No events to display" : "無可顯示的活動", + "All participants declined" : "所有參與者均拒絕", + "Please confirm your participation" : "請確認您的參與", + "You declined this event" : "您拒絕了此活動", + "Your participation is tentative" : "您的參與是暫時性的", "_+%n more_::_+%n more_" : ["* 和其他 %n 個"], "No events" : "無活動", "Create a new event or change the visible time-range" : "建立新活動或變更可見的時間範圍", + "Failed to save event" : "儲存事件失敗", "It might have been deleted, or there was a typo in a link" : "其可能已經被刪除,或是連結中有錯字", "It might have been deleted, or there was a typo in the link" : "其可能已經被刪除,或是連結中有錯字", "Meeting room" : "會議室", @@ -446,7 +560,7 @@ "When shared hide this event" : "分享的時候隱藏這個活動", "The visibility of this event in shared calendars." : "此活動在分享的日曆可見程度。", "Add a location" : "加入地點", - "Add a description" : "加入描述", + "Add a description\n\n- What is this meeting about\n- Agenda items\n- Anything participants need to prepare" : "新增描述\n\n- 此會議的主題是\n- 議程項目\n- 參與者需要準備的事情", "Status" : "狀態", "Confirmed" : "已確認", "Canceled" : "已取消", @@ -459,135 +573,26 @@ "Add this as a new category" : "將此加入為新分類", "Custom color" : "自訂顏色", "Special color of this event. Overrides the calendar-color." : "此活動的特殊顏色。覆寫日曆顏色。", - "Chat room for event" : "活動的聊天室", + "Error while sharing file" : "分享檔案時發生錯誤", + "Error while sharing file with user" : "與使用者分享檔案時發生錯誤", + "Error creating a folder {folder}" : "建立資料夾 {folder} 時發生錯誤", + "Attachment {fileName} already exists!" : "附件 {fileName} 已存在!", + "Attachment {fileName} added!" : "已新增附件 {fileName}!", + "An error occurred during uploading file {fileName}" : "上傳檔案 {fileName} 時發生錯誤", + "An error occurred during getting file information" : "取得檔案資訊時發生錯誤", + "Talk conversation for event" : "活動的 Talk 對話", + "An error occurred, unable to delete the calendar." : "發生錯誤,無法刪除日曆", "Imported {filename}" : "匯入的 {filename}", - "Meditation" : "冥想", - "Relaxing" : "放鬆", - "Relax" : "放鬆", - "Break" : "休息", - "Commute" : "通勤", - "Commuting" : "通勤中", - "Shuttle" : "穿梭", - "Invoice" : "發票", - "Finance" : "金融", - "Bank" : "銀行", - "Money" : "錢", - "Wedding" : "婚禮", - "Dog" : "狗", - "Concert" : "音樂會", - "Festival" : "節日", - "Theater" : "劇院", - "Theatre" : "劇院", - "Presentation" : "簡報", - "Talk" : "交談", - "Speech" : "演講", - "Deadline" : "最後期限", - "Submission" : "遞交", - "Reporting" : "報告", - "Camping" : "露營", - "Camp" : "露營", - "Election" : "選舉", - "Voting" : "投票", - "Vote" : "投票", - "Barbecue" : "燒烤", - "Barbeque" : "燒烤", - "Garden" : "園藝", - "Farm" : "農場", - "Movie" : "電影", - "Cinema" : "電影院", - "Graduation" : "畢業", - "Brainstorm" : "腦力激盪", - "Review" : "檢閱", - "Audit" : "稽核", - "Inspection" : "檢查", - "Proofreading" : "校對", - "Baseball" : "棒球", - "Meet" : "會面", - "Planning" : "計劃中", - "Pointing" : "指向", - "Retrospective" : "回顧", - "Office" : "辦公室", - "Contributor week" : "貢獻週", - "Mail" : "郵件", - "Soccer" : "足球", - "Football" : "美式足球", - "Gaming" : "遊戲", - "Drive" : "駕駛", - "Driving" : "駕駛", - "Bicycle" : "單車", - "Cycle" : "腳踏車", - "Cycling" : "騎車", - "Biking" : "自行車", - "Bike" : "腳踏車", - "Podcast" : "Podcast", - "Basketball" : "籃球", - "Fishing" : "釣魚", - "Hiking" : "健行", - "Hike" : "登山", - "Art" : "藝術", - "Exhibition" : "展覽", - "Museum" : "博物館", - "Pilates" : "皮拉提斯", - "Park" : "公園", - "Walk" : "步行", - "Studying" : "讀書", - "Doctor" : "醫生", - "Health" : "健康", - "Dentist" : "牙醫", - "Hospital" : "醫院", - "Interview" : "面試", - "Training" : "訓練", - "Practice" : "練習", - "Sports" : "體育", - "Exercise" : "運動", - "Work out" : "鍛鍊", - "Working out" : "鍛鍊", - "Gym" : "健身房", - "Barber" : "理髮師", - "Haircut" : "理髮", - "Hairdresser" : "美髮師", - "Exam" : "考試", - "Written test" : "筆試", - "Oral test" : "口試", - "Working" : "工作", - "New Years Eve" : "新年前夕", - "NYE" : "新年前夕", - "Fireworks" : "煙火", - "Running" : "跑步", - "Go for a run" : "去跑步", - "Marathon" : "馬拉松", - "Video-conference" : "視訊會議", - "Conference-call" : "電話會議", - "Video-call" : "視訊通話", - "Video-chat" : "視訊聊天", - "Video-meeting" : "視訊會議", - "Call" : "通話", - "Calling" : "通話", - "Christmas" : "耶誕節", - "Conference" : "會議", - "Pizza" : "披薩", - "Travelling" : "旅行", - "Trip" : "旅行", - "Journey" : "旅程", - "Collaborate" : "協作", - "Pair" : "配對", - "Lecture" : "演講", - "Seminar" : "專題討論", - "Teaching" : "教學", - "Photograph" : "攝影", - "Party" : "派對", - "Celebration" : "慶祝", - "Celebrate" : "慶祝", - "Birthday" : "生日", - "Shopping" : "購物", - "Groceries" : "雜貨", - "Skate" : "溜冰", - "Skateboard" : "滑板", - "Wine tasting" : "品酒", - "Golf" : "高爾夫球", - "Dinner" : "晚餐", - "Lunch" : "午餐", + "This is an event reminder." : "這是一個事件提醒。", + "Error while parsing a PROPFIND error" : "解析 PROFIND 錯誤時發生錯誤", "Appointment not found" : "找不到預約", - "User not found" : "找不到使用者" + "User not found" : "找不到使用者", + "Reminder" : "提醒", + "+ Add reminder" : "+ 加入提醒", + "Select automatic slot" : "選取自動時段", + "with" : "與", + "Available times:" : "可用項目:", + "Suggestions" : "建議", + "Details" : "詳細資料" },"pluralForm" :"nplurals=1; plural=0;" } \ No newline at end of file diff --git a/lib/AppInfo/Application.php b/lib/AppInfo/Application.php index e41f2bfacb74646b2db607b9a541ee308330b761..dc692232e8ead568b4fac6d72e372db9bb79b667 100644 --- a/lib/AppInfo/Application.php +++ b/lib/AppInfo/Application.php @@ -2,39 +2,46 @@ declare(strict_types=1); /** - * Calendar App - * - * @author Georg Ehrke - * @copyright 2019 Georg Ehrke - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\AppInfo; use OCA\Calendar\Dashboard\CalendarWidget; +use OCA\Calendar\Events\BeforeAppointmentBookedEvent; +use OCA\Calendar\Listener\AppointmentBookedListener; +use OCA\Calendar\Listener\CalendarReferenceListener; use OCA\Calendar\Listener\UserDeletedListener; +use OCA\Calendar\Notification\Notifier; use OCA\Calendar\Profile\AppointmentsAction; +use OCA\Calendar\Reference\ReferenceProvider; use OCP\AppFramework\App; use OCP\AppFramework\Bootstrap\IBootContext; use OCP\AppFramework\Bootstrap\IBootstrap; use OCP\AppFramework\Bootstrap\IRegistrationContext; +use OCP\Collaboration\Reference\RenderReferenceEvent; +use OCP\ServerVersion; use OCP\User\Events\UserDeletedEvent; +use OCP\Util; +use Psr\Container\ContainerExceptionInterface; +use Psr\Container\ContainerInterface; use function method_exists; +use OCA\Calendar\Middleware\InvitationMiddleware; +use OCP\IRequest; +use OCP\IConfig; +use \OCP\IDBConnection; +use \OC\Core\Application as CoreApplication; +use OCP\Http\Client\IResponse; +use OCP\Calendar\IManager; +use OCP\Mail\IMailer; +use OCP\IL10N; +use OCP\L10N\IFactory as L10NFactory; +use OCP\Defaults; +use OCP\ILogger; +use OCP\IUserManager; -class Application extends App implements IBootstrap { +class Application extends App implements IBootstrap { /** @var string */ public const APP_ID = 'calendar'; @@ -43,11 +50,59 @@ class Application extends App implements IBootstrap { */ public function __construct(array $params = []) { parent::__construct(self::APP_ID, $params); + //$app = new \OCP\AppFramework\App('ecloud-theme-helper'); + //$containerinvite = $app->getContainer() ; + $container = $this->getContainer(); + /** + * Middleware + */ + $container->registerService('InvitationMiddleware', function($c){ + return new InvitationMiddleware( + $c->get(IRequest::class), + $c->get(IConfig::class), + $c->get(IDBConnection::class), + $c->get(IManager::class), + $c->get(IMailer::class), + $c->get(IL10N::class), + $c->get(Defaults::class), + $c->get(ILogger::class), + $c->get(IUserManager::class), + $c->get(L10NFactory::class), + ); + }); + + // executed in the order that it is registered + $container->registerMiddleware('InvitationMiddleware'); + + $app = new \OCP\AppFramework\App('dav'); + $containerinvite = $app->getContainer() ; + + /** + * Middleware + */ + $containerinvite->registerService('InvitationMiddleware', function($c){ + return new InvitationMiddleware( + $c->get(IRequest::class), + $c->get(IConfig::class), + $c->get(IDBConnection::class), + $c->get(IManager::class), + $c->get(IMailer::class), + $c->get(IL10N::class), + $c->get(Defaults::class), + $c->get(ILogger::class), + $c->get(IUserManager::class), + $c->get(L10NFactory::class), + ); + }); + + // executed in the order that it is registered + $containerinvite->registerMiddleware('InvitationMiddleware'); } /** * @inheritDoc */ + #[\Override] public function register(IRegistrationContext $context): void { $context->registerDashboardWidget(CalendarWidget::class); @@ -55,13 +110,37 @@ class Application extends App implements IBootstrap { if (method_exists($context, 'registerProfileLinkAction')) { $context->registerProfileLinkAction(AppointmentsAction::class); } + $context->registerReferenceProvider(ReferenceProvider::class); + $context->registerEventListener(BeforeAppointmentBookedEvent::class, AppointmentBookedListener::class); $context->registerEventListener(UserDeletedEvent::class, UserDeletedListener::class); + $context->registerEventListener(RenderReferenceEvent::class, CalendarReferenceListener::class); + + $context->registerNotifierService(Notifier::class); } /** * @inheritDoc */ + #[\Override] public function boot(IBootContext $context): void { + $this->addContactsMenuScript($context->getServerContainer()); + } + + private function addContactsMenuScript(ContainerInterface $container): void { + // ServerVersion was added in 31, but we don't care about older versions anyway + try { + /** @var ServerVersion $serverVersion */ + $serverVersion = $container->get(ServerVersion::class); + } catch (ContainerExceptionInterface $e) { + return; + } + + // TODO: drop condition once we only support Nextcloud >= 31 + if ($serverVersion->getMajorVersion() >= 31) { + // The contacts menu/avatar is potentially shown everywhere so an event based loading + // mechanism doesn't make sense here + Util::addScript(self::APP_ID, 'calendar-contacts-menu'); + } } -} +} \ No newline at end of file diff --git a/lib/BackgroundJob/CleanUpOutdatedBookingsJob.php b/lib/BackgroundJob/CleanUpOutdatedBookingsJob.php index 647ba9a03eca39245ccc2c5ecd016499592fae47..d14f2170047b4412be6febff945f180456342601 100644 --- a/lib/BackgroundJob/CleanUpOutdatedBookingsJob.php +++ b/lib/BackgroundJob/CleanUpOutdatedBookingsJob.php @@ -1,48 +1,28 @@ - * - * @author Anna Larch - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ - namespace OCA\Calendar\BackgroundJob; use OCA\Calendar\Service\Appointments\BookingService; use OCP\AppFramework\Utility\ITimeFactory; use OCP\BackgroundJob\TimedJob; -use OCP\ILogger; use Psr\Log\LoggerInterface; use function method_exists; class CleanUpOutdatedBookingsJob extends TimedJob { - /** @var ILogger */ - private $logger; + /** @var LoggerInterface */ + private LoggerInterface $logger; /** @var BookingService */ private $service; public function __construct(ITimeFactory $time, - BookingService $service, - LoggerInterface $logger) { + BookingService $service, + LoggerInterface $logger) { parent::__construct($time); $this->service = $service; $this->logger = $logger; @@ -57,6 +37,7 @@ class CleanUpOutdatedBookingsJob extends TimedJob { } + #[\Override] protected function run($argument): void { $outdated = $this->service->deleteOutdated(); $this->logger->info('Found and deleted ' . $outdated . ' outdated booking confirmations.'); diff --git a/lib/Controller/AppointmentConfigController.php b/lib/Controller/AppointmentConfigController.php index 8af29cb7dba8f6610e38de71cab57d9cf6583220..07bf24a790f6694014e13ce3c8931d34906fb007 100644 --- a/lib/Controller/AppointmentConfigController.php +++ b/lib/Controller/AppointmentConfigController.php @@ -1,30 +1,10 @@ - * - * @author Anna Larch - * @author Richard Steinmetz - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ - namespace OCA\Calendar\Controller; use InvalidArgumentException; @@ -35,6 +15,7 @@ use OCA\Calendar\Http\JsonResponse; use OCA\Calendar\Service\Appointments\AppointmentConfigService; use OCP\AppFramework\Controller; use OCP\AppFramework\Http; +use OCP\AppFramework\Http\Attribute\UserRateLimit; use OCP\IRequest; use Psr\Log\LoggerInterface; use function array_keys; @@ -42,7 +23,6 @@ use function array_merge; use function array_values; class AppointmentConfigController extends Controller { - /** @var AppointmentConfigService */ private $appointmentConfigService; @@ -53,9 +33,9 @@ class AppointmentConfigController extends Controller { private $logger; public function __construct(IRequest $request, - AppointmentConfigService $appointmentService, - LoggerInterface $logger, - ?string $userId) { + AppointmentConfigService $appointmentService, + LoggerInterface $logger, + ?string $userId) { parent::__construct(Application::APP_ID, $request); $this->appointmentConfigService = $appointmentService; $this->userId = $userId; @@ -148,7 +128,9 @@ class AppointmentConfigController extends Controller { * @param int|null $end * @param int|null $futureLimit * @return JsonResponse + * @UserRateThrottle(limit=10, period=1200) */ + #[UserRateLimit(limit: 10, period: 1200)] public function create( string $name, string $description, @@ -165,7 +147,8 @@ class AppointmentConfigController extends Controller { ?array $calendarFreeBusyUris = null, ?int $start = null, ?int $end = null, - ?int $futureLimit = null): JsonResponse { + ?int $futureLimit = null, + ?bool $createTalkRoom = false): JsonResponse { if ($this->userId === null) { return JsonResponse::fail(); } @@ -193,12 +176,13 @@ class AppointmentConfigController extends Controller { $calendarFreeBusyUris, $start, $end, - $futureLimit + $futureLimit, + $createTalkRoom ); return JsonResponse::success($appointmentConfig); } catch (ServiceException $e) { $this->logger->error('Could not create new configuration', ['exception' => $e]); - return JsonResponse::errorFromThrowable($e); + return JsonResponse::fail($e->getMessage(), Http::STATUS_INTERNAL_SERVER_ERROR); } } @@ -241,7 +225,8 @@ class AppointmentConfigController extends Controller { ?array $calendarFreeBusyUris = null, ?int $start = null, ?int $end = null, - ?int $futureLimit = null): JsonResponse { + ?int $futureLimit = null, + ?bool $createTalkRoom = false): JsonResponse { if ($this->userId === null) { return JsonResponse::fail(null, Http::STATUS_NOT_FOUND); } @@ -255,7 +240,7 @@ class AppointmentConfigController extends Controller { $appointmentConfig = $this->appointmentConfigService->findByIdAndUser($id, $this->userId); } catch (ClientException $e) { $this->logger->error('Could not find configuration with id ' . $id, ['exception' => $e]); - return JsonResponse::errorFromThrowable($e); + return JsonResponse::fail($e->getMessage(), Http::STATUS_NOT_FOUND); } $appointmentConfig->setName($name); @@ -275,13 +260,14 @@ class AppointmentConfigController extends Controller { $appointmentConfig->setStart($start); $appointmentConfig->setEnd($end); $appointmentConfig->setFutureLimit($futureLimit); + $appointmentConfig->setCreateTalkRoom($createTalkRoom === true); try { $appointmentConfig = $this->appointmentConfigService->update($appointmentConfig); return JsonResponse::success($appointmentConfig); } catch (ServiceException $e) { $this->logger->error('Could not update configuration with id ' . $id, ['exception' => $e]); - return JsonResponse::errorFromThrowable($e, 403); + return JsonResponse::fail($e->getMessage(), Http::STATUS_INTERNAL_SERVER_ERROR); } } @@ -300,7 +286,7 @@ class AppointmentConfigController extends Controller { return JsonResponse::success(); } catch (ServiceException $e) { $this->logger->error('Could not delete configuration with id ' . $id, ['exception' => $e]); - return JsonResponse::errorFromThrowable($e, 403); + return JsonResponse::fail($e->getMessage(), Http::STATUS_INTERNAL_SERVER_ERROR); } } } diff --git a/lib/Controller/AppointmentController.php b/lib/Controller/AppointmentController.php index ecdf13f992c00774316de2e10770b39c0855afb3..bceebc9d8ae14c1ae90029c271105134b40717a0 100644 --- a/lib/Controller/AppointmentController.php +++ b/lib/Controller/AppointmentController.php @@ -1,28 +1,10 @@ - * - * @author 2021 Christoph Wurst - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . +/** + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ - namespace OCA\Calendar\Controller; use OCA\Calendar\AppInfo\Application; @@ -40,7 +22,6 @@ use OCP\IUserManager; use RuntimeException; class AppointmentController extends Controller { - /** @var IUserManager */ private $userManager; @@ -54,11 +35,11 @@ class AppointmentController extends Controller { private $userId; public function __construct(IRequest $request, - IUserManager $userManager, - AppointmentConfigService $configService, - IInitialState $initialState, - ?string $userId - ) { + IUserManager $userManager, + AppointmentConfigService $configService, + IInitialState $initialState, + ?string $userId, + ) { parent::__construct(Application::APP_ID, $request); $this->userManager = $userManager; @@ -89,7 +70,7 @@ class AppointmentController extends Controller { 'userInfo', [ 'uid' => $user->getUID(), - 'displayName' => $user->getDisplayName(), + 'displayName' => $this->userManager->getDisplayName($userId), ] ); $this->initialState->provideInitialState( @@ -134,7 +115,7 @@ class AppointmentController extends Controller { 'userInfo', [ 'uid' => $configOwner->getUID(), - 'displayName' => $configOwner->getDisplayName(), + 'displayName' => $this->userManager->getDisplayName($configOwner->getUID()), ] ); $this->initialState->provideInitialState( @@ -151,7 +132,7 @@ class AppointmentController extends Controller { $this->initialState->provideInitialState( 'visitorInfo', [ - 'displayName' => $currentUser->getDisplayName(), + 'displayName' => $this->userManager->getDisplayName($this->userId), 'email' => $currentUser->getEMailAddress(), ] ); diff --git a/lib/Controller/BookingController.php b/lib/Controller/BookingController.php index a8a564c2decb1e42ed527b368f2fadd1a80e8c28..4b955fb8c81de2dbcac29ded6c8933247cc99d2f 100644 --- a/lib/Controller/BookingController.php +++ b/lib/Controller/BookingController.php @@ -1,34 +1,15 @@ - * - * @author Anna Larch - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Controller; -use DateTimeImmutable; +use DateTime; use DateTimeZone; use InvalidArgumentException; -use OC\URLGenerator; use OCA\Calendar\AppInfo\Application; use OCA\Calendar\Exception\ClientException; use OCA\Calendar\Exception\NoSlotFoundException; @@ -38,16 +19,19 @@ use OCA\Calendar\Service\Appointments\AppointmentConfigService; use OCA\Calendar\Service\Appointments\BookingService; use OCP\AppFramework\Controller; use OCP\AppFramework\Http; +use OCP\AppFramework\Http\Attribute\AnonRateLimit; +use OCP\AppFramework\Http\Attribute\UserRateLimit; use OCP\AppFramework\Http\TemplateResponse; use OCP\AppFramework\Services\IInitialState; use OCP\AppFramework\Utility\ITimeFactory; use OCP\DB\Exception; +use OCP\IConfig; use OCP\IRequest; +use OCP\IURLGenerator; use OCP\Mail\IMailer; use Psr\Log\LoggerInterface; class BookingController extends Controller { - /** @var BookingService */ private $bookingService; @@ -60,7 +44,7 @@ class BookingController extends Controller { /** @var IInitialState */ private $initialState; - /** @var URLGenerator */ + /** @var IURLGenerator */ private $urlGenerator; /** @var LoggerInterface */ @@ -68,16 +52,18 @@ class BookingController extends Controller { /** @var IMailer */ private $mailer; + private IConfig $systemConfig; public function __construct(string $appName, - IRequest $request, - ITimeFactory $timeFactory, - IInitialState $initialState, - BookingService $bookingService, - AppointmentConfigService $appointmentConfigService, - URLGenerator $urlGenerator, - LoggerInterface $logger, - IMailer $mailer) { + IRequest $request, + ITimeFactory $timeFactory, + IInitialState $initialState, + BookingService $bookingService, + AppointmentConfigService $appointmentConfigService, + IURLGenerator $urlGenerator, + LoggerInterface $logger, + IMailer $mailer, + IConfig $systemConfig) { parent::__construct($appName, $request); $this->bookingService = $bookingService; @@ -87,6 +73,7 @@ class BookingController extends Controller { $this->urlGenerator = $urlGenerator; $this->logger = $logger; $this->mailer = $mailer; + $this->systemConfig = $systemConfig; } /** @@ -99,25 +86,22 @@ class BookingController extends Controller { * * @return JsonResponse */ - public function getBookableSlots(int $appointmentConfigId, - int $startTime, - string $timeZone): JsonResponse { - // Convert the timestamps to the beginning and end of the respective day in the specified timezone + public function getBookableSlots( + int $appointmentConfigId, + string $dateSelected, + string $timeZone, + ): JsonResponse { try { $tz = new DateTimeZone($timeZone); } catch (Exception $e) { $this->logger->error('Timezone invalid', ['exception' => $e]); return JsonResponse::fail('Invalid time zone', Http::STATUS_UNPROCESSABLE_ENTITY); } - $startTimeInTz = (new DateTimeImmutable()) - ->setTimestamp($startTime) - ->setTimezone($tz) - ->setTime(0, 0) + // Convert selected date to requesters selected timezone adjusted start and end of day in epoch + $startTimeInTz = (new DateTime($dateSelected, $tz)) ->getTimestamp(); - $endTimeInTz = (new DateTimeImmutable()) - ->setTimestamp($startTime) - ->setTimezone($tz) - ->setTime(23, 59, 59) + $endTimeInTz = (new DateTime($dateSelected, $tz)) + ->modify('+1 day') ->getTimestamp(); if ($startTimeInTz > $endTimeInTz) { @@ -159,14 +143,19 @@ class BookingController extends Controller { * @param string $description * @param string $timeZone * @return JsonResponse + * + * @AnonRateThrottle(limit=10, period=1200) + * @UserRateThrottle(limit=10, period=300) */ + #[AnonRateLimit(limit: 10, period: 1200)] + #[UserRateLimit(limit: 10, period: 300)] public function bookSlot(int $appointmentConfigId, - int $start, - int $end, - string $displayName, - string $email, - string $description, - string $timeZone): JsonResponse { + int $start, + int $end, + string $displayName, + string $email, + string $description, + string $timeZone): JsonResponse { if (!$this->mailer->validateMailAddress($email)) { return JsonResponse::fail('Invalid email address', Http::STATUS_UNPROCESSABLE_ENTITY); } @@ -191,10 +180,20 @@ class BookingController extends Controller { return JsonResponse::fail(null, Http::STATUS_UNPROCESSABLE_ENTITY); } catch (ServiceException $e) { $this->logger->error($e->getMessage(), ['exception' => $e]); - return JsonResponse::errorFromThrowable($e, $e->getHttpCode() ?? Http::STATUS_INTERNAL_SERVER_ERROR); + + if ($this->systemConfig->getSystemValue('debug', false)) { + return JsonResponse::errorFromThrowable($e, $e->getHttpCode() ?? Http::STATUS_INTERNAL_SERVER_ERROR, + ['debug' => true,] + ); + } + + return JsonResponse::error( + 'Server error', + $e->getHttpCode() ?? Http::STATUS_INTERNAL_SERVER_ERROR + ); } - return JsonResponse::success($booking); + return JsonResponse::success(); } /** diff --git a/lib/Controller/ContactController.php b/lib/Controller/ContactController.php index a6b3bad07bcdb1239f376612d3aebb1ff5de62f9..cd778a7cfd76ca7ad95ebd25316cf8b89a376ba4 100644 --- a/lib/Controller/ContactController.php +++ b/lib/Controller/ContactController.php @@ -2,37 +2,25 @@ declare(strict_types=1); /** - * Calendar App - * - * @author Georg Ehrke - * @author Jakob Röhrl - * @author Christoph Wurst - * - * @copyright 2019 Georg Ehrke - * @copyright 2019 Jakob Röhrl - * @copyright 2019 Christoph Wurst - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Controller; +use Exception; +use OCA\Calendar\Service\ContactsService; +use OCA\Calendar\Service\ServiceException; +use OCA\Circles\Exceptions\CircleNotFoundException; +use OCP\App\IAppManager; use OCP\AppFramework\Controller; use OCP\AppFramework\Http; +use OCP\AppFramework\Http\Attribute\NoAdminRequired; use OCP\AppFramework\Http\JSONResponse; +use OCP\AppFramework\QueryException; use OCP\Contacts\IManager; use OCP\IRequest; +use OCP\IUserManager; +use Psr\Log\LoggerInterface; /** * Class ContactController @@ -40,22 +28,22 @@ use OCP\IRequest; * @package OCA\Calendar\Controller */ class ContactController extends Controller { - - /** @var IManager */ - private $contactsManager; - /** * ContactController constructor. * * @param string $appName * @param IRequest $request - * @param IManager $contacts */ - public function __construct(string $appName, - IRequest $request, - IManager $contacts) { + public function __construct( + string $appName, + IRequest $request, + private IManager $contactsManager, + private IAppManager $appManager, + private IUserManager $userManager, + private ContactsService $contactsService, + private LoggerInterface $logger, + ) { parent::__construct($appName, $request); - $this->contactsManager = $contacts; } /** @@ -66,7 +54,7 @@ class ContactController extends Controller { * * @NoAdminRequired */ - public function searchLocation(string $search):JSONResponse { + public function searchLocation(string $search): JSONResponse { if (!$this->contactsManager->isEnabled()) { return new JSONResponse(); } @@ -76,7 +64,7 @@ class ContactController extends Controller { $contacts = []; foreach ($result as $r) { // Information about system users is fetched via DAV nowadays - if (isset($r['isLocalSystemBook']) && $r['isLocalSystemBook']) { + if ($this->contactsService->isSystemBook($r)) { continue; } @@ -84,19 +72,9 @@ class ContactController extends Controller { continue; } - $name = $this->getNameFromContact($r); - if (\is_string($r['ADR'])) { - $r['ADR'] = [$r['ADR']]; - } - - $photo = isset($r['PHOTO']) - ? $this->getPhotoUri($r['PHOTO']) - : null; - - $addresses = []; - foreach ($r['ADR'] as $address) { - $addresses[] = trim(preg_replace("/\n+/", "\n", str_replace(';', "\n", $address))); - } + $name = $this->contactsService->getNameFromContact($r); + $photo = $this->contactsService->getPhotoUri($r); + $addresses = $this->contactsService->getAddress($r); $contacts[] = [ 'name' => $name, @@ -126,54 +104,141 @@ class ContactController extends Controller { $contacts = []; foreach ($result as $r) { - // Information about system users is fetched via DAV nowadays - if (isset($r['isLocalSystemBook']) && $r['isLocalSystemBook']) { + if ($this->contactsService->isSystemBook($r) || !$this->contactsService->hasEmail($r)) { continue; } - - if (!isset($r['EMAIL'])) { + $name = $this->contactsService->getNameFromContact($r); + $email = $this->contactsService->getEmail($r); + $photo = $this->contactsService->getPhotoUri($r); + $timezoneId = $this->contactsService->getTimezoneId($r); + $lang = $this->contactsService->getLanguageId($r); + $contacts[] = [ + 'name' => $name, + 'emails' => $email, + 'lang' => $lang, + 'tzid' => $timezoneId, + 'photo' => $photo, + 'type' => 'individual' + ]; + } + + $groups = $this->contactsManager->search($search, ['CATEGORIES']); + $groups = array_filter($groups, function ($group) { + return $this->contactsService->hasEmail($group); + }); + $filtered = $this->contactsService->filterGroupsWithCount($groups, $search); + foreach ($filtered as $groupName => $count) { + if ($count === 0) { continue; } + $contacts[] = [ + 'name' => $groupName, + 'emails' => ['mailto:' . urlencode($groupName) . '@group'], + 'lang' => '', + 'tzid' => '', + 'photo' => '', + 'type' => 'contactsgroup', + 'members' => $count, + ]; + } - $name = $this->getNameFromContact($r); - if (\is_string($r['EMAIL'])) { - $r['EMAIL'] = [$r['EMAIL']]; - } + return new JSONResponse($contacts); + } - $photo = isset($r['PHOTO']) - ? $this->getPhotoUri($r['PHOTO']) - : null; + #[NoAdminRequired] + public function getContactGroupMembers(string $groupName): JSONResponse { + if (!$this->contactsManager->isEnabled()) { + return new JSONResponse(); + } - $lang = null; - if (isset($r['LANG'])) { - if (\is_array($r['LANG'])) { - $lang = $r['LANG'][0]; - } else { - $lang = $r['LANG']; - } + $groupmembers = $this->contactsManager->search($groupName, ['CATEGORIES']); + $contacts = []; + foreach ($groupmembers as $r) { + if (!in_array($groupName, explode(',', $r['CATEGORIES']), true)) { + continue; } - - $timezoneId = null; - if (isset($r['TZ'])) { - if (\is_array($r['TZ'])) { - $timezoneId = $r['TZ'][0]; - } else { - $timezoneId = $r['TZ']; - } + if (!$this->contactsService->hasEmail($r) || $this->contactsService->isSystemBook($r)) { + continue; } - + $name = $this->contactsService->getNameFromContact($r); + $email = $this->contactsService->getEmail($r); + $photo = $this->contactsService->getPhotoUri($r); + $timezoneId = $this->contactsService->getTimezoneId($r); + $lang = $this->contactsService->getLanguageId($r); $contacts[] = [ - 'name' => $name, - 'emails' => $r['EMAIL'], - 'lang' => $lang, - 'tzid' => $timezoneId, - 'photo' => $photo, + 'commonName' => $name, + 'email' => $email[0], + 'calendarUserType' => 'INDIVIDUAL', + 'language' => $lang, + 'timezoneId' => $timezoneId, + 'avatar' => $photo, + 'isUser' => false, + 'member' => 'mailto:' . urlencode($groupName) . '@group', ]; } + return new JSONResponse($contacts); + } + + /** + * Query members of a circle by circleId + * + * @param string $circleId CircleId to query for members + * @return JSONResponse + * @throws Exception + * @throws \OCP\AppFramework\QueryException + * + * @NoAdminRequired + */ + public function getCircleMembers(string $circleId):JSONResponse { + if (!$this->appManager->isEnabledForUser('circles') || !class_exists('\OCA\Circles\Api\v1\Circles')) { + return new JSONResponse(); + } + if (!$this->contactsManager->isEnabled()) { + return new JSONResponse(); + } + + try { + $circle = \OCA\Circles\Api\v1\Circles::detailsCircle($circleId, true); + } catch (QueryException $ex) { + return new JSONResponse(); + } catch (CircleNotFoundException $ex) { + return new JSONResponse(); + } + + if (!$circle) { + return new JSONResponse(); + } + + $circleMembers = $circle->getInheritedMembers(); + + foreach ($circleMembers as $circleMember) { + if ($circleMember->isLocal()) { + + $circleMemberUserId = $circleMember->getUserId(); + + $user = $this->userManager->get($circleMemberUserId); + + if ($user === null) { + throw new ServiceException('Could not find organizer'); + } + + $contacts[] = [ + 'commonName' => $circleMember->getDisplayName(), + 'calendarUserType' => 'INDIVIDUAL', + 'email' => $user->getEMailAddress(), + 'isUser' => true, + 'avatar' => $circleMemberUserId, + 'hasMultipleEMails' => false, + 'dropdownName' => $circleMember->getDisplayName(), + 'member' => 'mailto:circle+' . $circleId . '@' . $circleMember->getInstance(), + ]; + } + } return new JSONResponse($contacts); } + /** * Get a contact's photo based on their email-address * @@ -190,17 +255,14 @@ class ContactController extends Controller { $result = $this->contactsManager->search($search, ['EMAIL']); foreach ($result as $r) { - if (!isset($r['EMAIL'])) { + if (!$this->contactsService->hasEmail($r) || $this->contactsService->isSystemBook($r)) { continue; } - - if (\is_string($r['EMAIL'])) { - $r['EMAIL'] = [$r['EMAIL']]; - } + $email = $this->contactsService->getEmail($r); $match = false; - foreach ($r['EMAIL'] as $email) { - if ($email === $search) { + foreach ($email as $e) { + if ($e === $search) { $match = true; } } @@ -209,15 +271,12 @@ class ContactController extends Controller { continue; } - if (!isset($r['PHOTO'])) { + $photo = $this->contactsService->getPhotoUri($r); + if ($photo === null) { continue; } - $name = $this->getNameFromContact($r); - $photo = $this->getPhotoUri($r['PHOTO']); - if (!$photo) { - continue; - } + $name = $this->contactsService->getNameFromContact($r); return new JSONResponse([ 'name' => $name, @@ -228,28 +287,4 @@ class ContactController extends Controller { return new JSONResponse([], Http::STATUS_NOT_FOUND); } - /** - * Extract name from an array containing a contact's information - * - * @param array $r - * @return string - */ - private function getNameFromContact(array $r):string { - return $r['FN'] ?? ''; - } - - /** - * Get photo uri from contact - * - * @param string $raw - * @return string|null - */ - private function getPhotoUri(string $raw):?string { - $uriPrefix = 'VALUE=uri:'; - if (substr($raw, 0, strlen($uriPrefix)) === $uriPrefix) { - return substr($raw, strpos($raw, 'http')); - } - - return null; - } } diff --git a/lib/Controller/EmailController.php b/lib/Controller/EmailController.php index 0fe36963a235baf00d5f939857a344f3d5d1bf39..7ba5f3ff61fedc9494f19e57045acc326ae09dea 100644 --- a/lib/Controller/EmailController.php +++ b/lib/Controller/EmailController.php @@ -2,26 +2,8 @@ declare(strict_types=1); /** - * @author Thomas Citharel - * @author Georg Ehrke - * - * @copyright 2016 Thomas Citharel - * @copyright 2019 Georg Ehrke - * - * @license GNU AGPL version 3 or any later version - * - * This code is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License, version 3, - * as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License, version 3, - * along with this program. If not, see - * + * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Controller; @@ -33,6 +15,7 @@ use OCP\IConfig; use OCP\IL10N; use OCP\IRequest; use OCP\IURLGenerator; +use OCP\IUserManager; use OCP\IUserSession; use OCP\Mail\IEMailTemplate; use OCP\Mail\IMailer; @@ -44,7 +27,6 @@ use OCP\Mail\IMessage; * @package OCA\Calendar\Controller */ class EmailController extends Controller { - /** @var IConfig */ private $config; @@ -63,6 +45,9 @@ class EmailController extends Controller { /** @var IURLGenerator */ private $urlGenerator; + /** @var IUserManager */ + private $userManager; + /** * EmailController constructor. * @@ -74,15 +59,17 @@ class EmailController extends Controller { * @param IL10N $l10N * @param Defaults $defaults * @param IURLGenerator $urlGenerator + * @param IUserManager $userManager */ public function __construct(string $appName, - IRequest $request, - IUserSession $userSession, - IConfig $config, - IMailer $mailer, - IL10N $l10N, - Defaults $defaults, - IURLGenerator $urlGenerator) { + IRequest $request, + IUserSession $userSession, + IConfig $config, + IMailer $mailer, + IL10N $l10N, + Defaults $defaults, + IURLGenerator $urlGenerator, + IUserManager $userManager) { parent::__construct($appName, $request); $this->config = $config; $this->userSession = $userSession; @@ -90,6 +77,7 @@ class EmailController extends Controller { $this->l10n = $l10N; $this->defaults = $defaults; $this->urlGenerator = $urlGenerator; + $this->userManager = $userManager; } /** @@ -103,8 +91,14 @@ class EmailController extends Controller { * @NoAdminRequired */ public function sendEmailPublicLink(string $recipient, - string $token, - string $calendarName):JSONResponse { + string $token, + string $calendarName):JSONResponse { + if (strlen($recipient) > 512) { + return new JSONResponse([ + 'message' => $this->l10n->t('Provided email-address is too long'), + ], Http::STATUS_BAD_REQUEST); + } + $user = $this->userSession->getUser(); if (!$user) { return new JSONResponse([ @@ -119,7 +113,7 @@ class EmailController extends Controller { } $fromAddress = $this->getFromAddress(); - $displayName = $user->getDisplayName(); + $displayName = $this->userManager->getDisplayName($user->getUID()); $subject = $this->l10n->t('%s has published the calendar »%s«', [$displayName, $calendarName]); $template = $this->createTemplate($subject, $displayName, $calendarName, $token); @@ -160,8 +154,8 @@ class EmailController extends Controller { * @return IMessage */ private function createMessage(string $from, - array $recipients, - IEMailTemplate $template):IMessage { + array $recipients, + IEMailTemplate $template):IMessage { $message = $this->mailer->createMessage(); $message->setFrom([$from => $this->defaults->getName()]); $message->setTo($recipients); @@ -178,9 +172,9 @@ class EmailController extends Controller { * @return IEMailTemplate */ private function createTemplate(string $subject, - string $displayName, - string $calendarName, - string $token):IEMailTemplate { + string $displayName, + string $calendarName, + string $token):IEMailTemplate { $url = $this->getURLFromToken($token); $emailTemplate = $this->mailer->createEMailTemplate('calendar.PublicShareNotification', [ 'displayname' => $displayName, diff --git a/lib/Controller/InvitationMaybeController.php b/lib/Controller/InvitationMaybeController.php new file mode 100755 index 0000000000000000000000000000000000000000..c7fdad4997ff09841b44662f96b8e3afc0e6ce6f --- /dev/null +++ b/lib/Controller/InvitationMaybeController.php @@ -0,0 +1,155 @@ +db = $db; + $this->timeFactory = $timeFactory; + $this->responseServer = $responseServer; + // Don't run `$server->exec()`, because we just need access to the + // fully initialized schedule plugin, but we don't want Sabre/DAV + // to actually handle and reply to the request + } + /** + * @PublicPage + * @NoCSRFRequired + * + * @param string $token + * @return TemplateResponse + */ + public function tentative(string $token):TemplateResponse { + $row = $this->getTokenInformation($token); + if (!$row) { + return new TemplateResponse($this->appName, 'schedule-response-error', [], 'guest'); + } + $iTipMessage = $this->buildITipResponse($row, 'TENTATIVE'); + $this->responseServer->handleITipMessage($iTipMessage); + + if ($iTipMessage->getScheduleStatus() === '1.2') { + return new TemplateResponse($this->appName, 'schedule-response-success', [], 'guest'); + } + + return new TemplateResponse($this->appName, 'schedule-response-error', [ + 'organizer' => $row['organizer'], + ], 'guest'); + } + + /** + * @param array $row + * @param string $partStat participation status of attendee - SEE RFC 5545 + * @param int|null $guests + * @param string|null $comment + * @return Message + */ + private function buildITipResponse(array $row, string $partStat, int $guests = null, + string $comment = null):Message { + $iTipMessage = new Message(); + $iTipMessage->uid = $row['uid']; + $iTipMessage->component = 'VEVENT'; + $iTipMessage->method = 'REPLY'; + $iTipMessage->sequence = $row['sequence']; + $iTipMessage->sender = $row['attendee']; + + if ($this->responseServer->isExternalAttendee($row['attendee'])) { + $iTipMessage->recipient = $row['organizer']; + } else { + $iTipMessage->recipient = $row['attendee']; + } + + $message = <<{'VEVENT'}; + /** @var \Sabre\VObject\Property\ICalendar\CalAddress $attendee */ + $attendee = $vEvent->{'ATTENDEE'}; + + $vEvent->DTSTAMP = date('Ymd\\THis\\Z', $this->timeFactory->getTime()); + + if ($comment) { + $attendee->add('X-RESPONSE-COMMENT', $comment); + $vEvent->add('COMMENT', $comment); + } + if ($guests) { + $attendee->add('X-NUM-GUESTS', $guests); + } + + $iTipMessage->message = $vObject; + + return $iTipMessage; + } + + + /** + * @param string $token + * @return array|null + */ + private function getTokenInformation(string $token) { + $query = $this->db->getQueryBuilder(); + $query->select('*') + ->from('calendar_invitations') + ->where($query->expr()->eq('token', $query->createNamedParameter($token))); + $stmt = $query->execute(); + $row = $stmt->fetch(\PDO::FETCH_ASSOC); + + if (!$row) { + return null; + } + + $currentTime = $this->timeFactory->getTime(); + if (((int) $row['expiration']) < $currentTime) { + return null; + } + + return $row; + } + +} \ No newline at end of file diff --git a/lib/Controller/PublicViewController.php b/lib/Controller/PublicViewController.php index 168625c4835761f68ac392d7e53fa73930175a3e..35e2897818f1c63a6cb799b5a747879ec4b44d9c 100644 --- a/lib/Controller/PublicViewController.php +++ b/lib/Controller/PublicViewController.php @@ -2,24 +2,8 @@ declare(strict_types=1); /** - * Calendar App - * - * @author Georg Ehrke - * @copyright 2019 Georg Ehrke - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Controller; @@ -27,7 +11,7 @@ use OCP\AppFramework\Controller; use OCP\AppFramework\Http\ContentSecurityPolicy; use OCP\AppFramework\Http\RedirectResponse; use OCP\AppFramework\Http\Response; -use OCP\AppFramework\Http\TemplateResponse; +use OCP\AppFramework\Http\Template\PublicTemplateResponse; use OCP\IConfig; use OCP\IInitialStateService; use OCP\IRequest; @@ -39,7 +23,6 @@ use OCP\IURLGenerator; * @package OCA\Calendar\Controller */ class PublicViewController extends Controller { - /** * @var IConfig */ @@ -63,10 +46,10 @@ class PublicViewController extends Controller { * @param IURLGenerator $urlGenerator */ public function __construct(string $appName, - IRequest $request, - IConfig $config, - IInitialStateService $initialStateService, - IURLGenerator $urlGenerator) { + IRequest $request, + IConfig $config, + IInitialStateService $initialStateService, + IURLGenerator $urlGenerator) { parent::__construct($appName, $request); $this->config = $config; $this->initialStateService = $initialStateService; @@ -79,16 +62,13 @@ class PublicViewController extends Controller { * * @PublicPage * @NoCSRFRequired - * - * @param string $token - * @return Response */ public function publicIndexWithBranding(string $token):Response { $acceptHeader = $this->request->getHeader('Accept'); if (strpos($acceptHeader, 'text/calendar') !== false) { return new RedirectResponse($this->urlGenerator->linkTo('', 'remote.php') . '/dav/public-calendars/' . $token . '/?export'); } - return $this->publicIndex($token, 'public'); + return $this->publicIndex($token); } /** @@ -97,28 +77,22 @@ class PublicViewController extends Controller { * @PublicPage * @NoCSRFRequired * @NoSameSiteCookieRequired - * - * @param string $token - * @return TemplateResponse */ - public function publicIndexForEmbedding(string $token):TemplateResponse { - $response = $this->publicIndex($token, 'base'); + public function publicIndexForEmbedding(string $token):PublicTemplateResponse { + $response = $this->publicIndex($token); + $response->setFooterVisible(false); $response->addHeader('X-Frame-Options', 'ALLOW'); $csp = new ContentSecurityPolicy(); $csp->addAllowedFrameAncestorDomain('*'); $response->setContentSecurityPolicy($csp); + $this->initialStateService->provideInitialState($this->appName, 'is_embed', true); + return $response; } - /** - * @param string $token - * @param string $renderAs - * @return TemplateResponse - */ - private function publicIndex(string $token, - string $renderAs):TemplateResponse { + private function publicIndex(string $token):PublicTemplateResponse { $defaultEventLimit = $this->config->getAppValue($this->appName, 'eventLimit', 'yes'); $defaultInitialView = $this->config->getAppValue($this->appName, 'currentView', 'dayGridMonth'); $defaultShowWeekends = $this->config->getAppValue($this->appName, 'showWeekends', 'yes'); @@ -128,8 +102,9 @@ class PublicViewController extends Controller { $defaultSlotDuration = $this->config->getAppValue($this->appName, 'slotDuration', '00:30:00'); $defaultDefaultReminder = $this->config->getAppValue($this->appName, 'defaultReminder', 'none'); $defaultShowTasks = $this->config->getAppValue($this->appName, 'showTasks', 'yes'); + $defaultCanSubscribeLink = $this->config->getAppValue('dav', 'allow_calendar_link_subscriptions', 'yes'); - $appVersion = $this->config->getAppValue($this->appName, 'installed_version', null); + $appVersion = $this->config->getAppValue($this->appName, 'installed_version', ''); $this->initialStateService->provideInitialState($this->appName, 'app_version', $appVersion); $this->initialStateService->provideInitialState($this->appName, 'event_limit', ($defaultEventLimit === 'yes')); @@ -146,17 +121,17 @@ class PublicViewController extends Controller { $this->initialStateService->provideInitialState($this->appName, 'show_tasks', $defaultShowTasks === 'yes'); $this->initialStateService->provideInitialState($this->appName, 'tasks_enabled', false); $this->initialStateService->provideInitialState($this->appName, 'hide_event_export', false); + $this->initialStateService->provideInitialState($this->appName, 'can_subscribe_link', $defaultCanSubscribeLink); + $this->initialStateService->provideInitialState($this->appName, 'show_resources', false); - return new TemplateResponse($this->appName, 'main', [ + return new PublicTemplateResponse($this->appName, 'main', [ 'share_url' => $this->getShareURL(), 'preview_image' => $this->getPreviewImage(), - ], $renderAs); + ]); } /** * Get the sharing Url - * - * @return string */ private function getShareURL():string { $shareURL = $this->request->getServerProtocol() . '://'; @@ -168,8 +143,6 @@ class PublicViewController extends Controller { /** * Get an image for preview when sharing in social media - * - * @return string */ private function getPreviewImage():string { $relativeImagePath = $this->urlGenerator->imagePath('core', 'favicon-touch.png'); diff --git a/lib/Controller/SettingsController.php b/lib/Controller/SettingsController.php index 9d370a001102a90fe04a5ead36ee2a77717ef1c1..7b59b374aeeb720f3b31ba14a85d6a38ca96812d 100644 --- a/lib/Controller/SettingsController.php +++ b/lib/Controller/SettingsController.php @@ -2,30 +2,14 @@ declare(strict_types=1); /** - * Calendar App - * - * @author Georg Ehrke - * @copyright 2019 Georg Ehrke - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Controller; use OCP\AppFramework\Controller; -use OCP\AppFramework\Http\JSONResponse; use OCP\AppFramework\Http; +use OCP\AppFramework\Http\JSONResponse; use OCP\IConfig; use OCP\IRequest; @@ -35,7 +19,6 @@ use OCP\IRequest; * @package OCA\Calendar\Controller */ class SettingsController extends Controller { - /** @var IConfig */ private $config; @@ -51,9 +34,9 @@ class SettingsController extends Controller { * @param string $userId */ public function __construct(string $appName, - IRequest $request, - IConfig $config, - string $userId) { + IRequest $request, + IConfig $config, + string $userId) { parent::__construct($appName, $request); $this->config = $config; $this->userId = $userId; @@ -69,7 +52,7 @@ class SettingsController extends Controller { * @return JSONResponse */ public function setConfig(string $key, - string $value):JSONResponse { + string $value):JSONResponse { switch ($key) { case 'view': return $this->setView($value); @@ -91,6 +74,8 @@ class SettingsController extends Controller { return $this->setDefaultReminder($value); case 'showTasks': return $this->setShowTasks($value); + case 'attachmentsFolder': + return $this->setAttachmentsFolder($value); default: return new JSONResponse([], Http::STATUS_BAD_REQUEST); } @@ -104,7 +89,7 @@ class SettingsController extends Controller { * @return JSONResponse */ private function setView(string $view):JSONResponse { - if (!\in_array($view, ['timeGridDay', 'timeGridWeek', 'dayGridMonth', 'listMonth'])) { + if (!\in_array($view, ['timeGridDay', 'timeGridWeek', 'dayGridMonth', 'multiMonthYear', 'listMonth'])) { return new JSONResponse([], Http::STATUS_UNPROCESSABLE_ENTITY); } @@ -172,6 +157,27 @@ class SettingsController extends Controller { return new JSONResponse(); } + /** + * Set config for attachments folder + * + * @param string $value + * @return JSONResponse + */ + private function setAttachmentsFolder(string $value):JSONResponse { + try { + $this->config->setUserValue( + $this->userId, + 'dav', + 'attachmentsFolder', + $value + ); + } catch (\Exception $e) { + return new JSONResponse([], Http::STATUS_INTERNAL_SERVER_ERROR); + } + + return new JSONResponse(); + } + /** * set config value for showing week numbers * diff --git a/lib/Controller/ViewController.php b/lib/Controller/ViewController.php index 2cbf8335c410f73c79ce103416b72114f6d18725..0969090bac930a2f29b529cf308c763798477001 100644 --- a/lib/Controller/ViewController.php +++ b/lib/Controller/ViewController.php @@ -2,66 +2,52 @@ declare(strict_types=1); /** - * Calendar App - * - * @author Georg Ehrke - * @copyright 2019 Georg Ehrke - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Controller; -use OCA\Calendar\Service\Appointments\AppointmentConfigService; +use OC\App\CompareVersion; +use OCA\Calendar\Service\CalendarInitialStateService; use OCP\App\IAppManager; use OCP\AppFramework\Controller; +use OCP\AppFramework\Http\FileDisplayResponse; use OCP\AppFramework\Http\TemplateResponse; -use OCP\AppFramework\Services\IInitialState; +use OCP\Files\IAppData; +use OCP\Files\NotFoundException; +use OCP\Files\NotPermittedException; use OCP\IConfig; use OCP\IRequest; -use function in_array; class ViewController extends Controller { - /** @var IConfig */ private $config; - /** @var AppointmentConfigService */ - private $appointmentConfigService; - - /** @var IInitialState */ - private $initialStateService; /** @var IAppManager */ private $appManager; + /** @var CompareVersion */ + private $compareVersion; + /** @var string */ private $userId; + private IAppData $appData; + + private CalendarInitialStateService $calendarInitialStateService; + public function __construct(string $appName, - IRequest $request, - IConfig $config, - AppointmentConfigService $appointmentConfigService, - IInitialState $initialStateService, - IAppManager $appManager, - ?string $userId) { + IRequest $request, + IConfig $config, + ?string $userId, + IAppData $appData, + CalendarInitialStateService $calendarInitialStateService) { parent::__construct($appName, $request); $this->config = $config; - $this->appointmentConfigService = $appointmentConfigService; - $this->initialStateService = $initialStateService; - $this->appManager = $appManager; $this->userId = $userId; + $this->appData = $appData; + $this->calendarInitialStateService = $calendarInitialStateService; } /** @@ -73,79 +59,45 @@ class ViewController extends Controller { * @return TemplateResponse */ public function index():TemplateResponse { - $defaultEventLimit = $this->config->getAppValue($this->appName, 'eventLimit', 'yes'); - $defaultInitialView = $this->config->getAppValue($this->appName, 'currentView', 'dayGridMonth'); - $defaultShowWeekends = $this->config->getAppValue($this->appName, 'showWeekends', 'yes'); - $defaultWeekNumbers = $this->config->getAppValue($this->appName, 'showWeekNr', 'no'); - $defaultSkipPopover = $this->config->getAppValue($this->appName, 'skipPopover', 'no'); - $defaultTimezone = $this->config->getAppValue($this->appName, 'timezone', 'automatic'); - $defaultSlotDuration = $this->config->getAppValue($this->appName, 'slotDuration', '00:30:00'); - $defaultDefaultReminder = $this->config->getAppValue($this->appName, 'defaultReminder', 'none'); - $defaultShowTasks = $this->config->getAppValue($this->appName, 'showTasks', 'yes'); - - $appVersion = $this->config->getAppValue($this->appName, 'installed_version', null); - $eventLimit = $this->config->getUserValue($this->userId, $this->appName, 'eventLimit', $defaultEventLimit) === 'yes'; - $firstRun = $this->config->getUserValue($this->userId, $this->appName, 'firstRun', 'yes') === 'yes'; - $initialView = $this->getView($this->config->getUserValue($this->userId, $this->appName, 'currentView', $defaultInitialView)); - $showWeekends = $this->config->getUserValue($this->userId, $this->appName, 'showWeekends', $defaultShowWeekends) === 'yes'; - $showWeekNumbers = $this->config->getUserValue($this->userId, $this->appName, 'showWeekNr', $defaultWeekNumbers) === 'yes'; - $skipPopover = $this->config->getUserValue($this->userId, $this->appName, 'skipPopover', $defaultSkipPopover) === 'yes'; - $timezone = $this->config->getUserValue($this->userId, $this->appName, 'timezone', $defaultTimezone); - $slotDuration = $this->config->getUserValue($this->userId, $this->appName, 'slotDuration', $defaultSlotDuration); - $defaultReminder = $this->config->getUserValue($this->userId, $this->appName, 'defaultReminder', $defaultDefaultReminder); - $showTasks = $this->config->getUserValue($this->userId, $this->appName, 'showTasks', $defaultShowTasks) === 'yes'; - $hideEventExport = $this->config->getAppValue($this->appName, 'hideEventExport', 'no') === 'yes'; - $disableAppointments = $this->config->getAppValue($this->appName, 'disableAppointments', 'no') === 'yes'; - $forceEventAlarmType = $this->config->getAppValue($this->appName, 'forceEventAlarmType', ''); - if (!in_array($forceEventAlarmType, ['DISPLAY', 'EMAIL'], true)) { - $forceEventAlarmType = false; - } - - $talkEnabled = $this->appManager->isEnabledForUser('spreed'); - $talkApiVersion = version_compare($this->appManager->getAppVersion('spreed'), '12.0.0', '>=') ? 'v4' : 'v1'; - $tasksEnabled = $this->appManager->isEnabledForUser('tasks'); - - $this->initialStateService->provideInitialState('app_version', $appVersion); - $this->initialStateService->provideInitialState('event_limit', $eventLimit); - $this->initialStateService->provideInitialState('first_run', $firstRun); - $this->initialStateService->provideInitialState('initial_view', $initialView); - $this->initialStateService->provideInitialState('show_weekends', $showWeekends); - $this->initialStateService->provideInitialState('show_week_numbers', $showWeekNumbers); - $this->initialStateService->provideInitialState('skip_popover', $skipPopover); - $this->initialStateService->provideInitialState('talk_enabled', $talkEnabled); - $this->initialStateService->provideInitialState('talk_api_version', $talkApiVersion); - $this->initialStateService->provideInitialState('timezone', $timezone); - $this->initialStateService->provideInitialState('slot_duration', $slotDuration); - $this->initialStateService->provideInitialState('default_reminder', $defaultReminder); - $this->initialStateService->provideInitialState('show_tasks', $showTasks); - $this->initialStateService->provideInitialState('tasks_enabled', $tasksEnabled); - $this->initialStateService->provideInitialState('hide_event_export', $hideEventExport); - $this->initialStateService->provideInitialState('force_event_alarm_type', $forceEventAlarmType); - $this->initialStateService->provideInitialState('appointmentConfigs', $this->appointmentConfigService->getAllAppointmentConfigurations($this->userId)); - $this->initialStateService->provideInitialState('disable_appointments', $disableAppointments); + $this->calendarInitialStateService->run(); return new TemplateResponse($this->appName, 'main'); } /** - * Makes sure we don't use the old views anymore + * @NoAdminRequired + * @NoCSRFRequired + * + * This function makes the colour dots work for mobile widgets + * + * Returns an SVG with size32x32 if the hex colour is valid + * or a Nextcloud blue svg if the colour is not * - * @param string $view - * @return string + * @param string $color - url encoded HEX colour + * @return FileDisplayResponse + * @throws NotPermittedException */ - private function getView(string $view): string { - switch ($view) { - case 'agendaDay': - return 'timeGridDay'; - - case 'agendaWeek': - return 'timeGridWeek'; - - case 'month': - return 'dayGridMonth'; - - default: - return $view; + public function getCalendarDotSvg(string $color = '#0082c9'): FileDisplayResponse { + $validColor = '#0082c9'; + $color = trim(urldecode($color), '#'); + if (preg_match('/^([0-9a-f]{3}|[0-9a-f]{6})$/i', $color)) { + $validColor = '#' . $color; + } + $svg = ''; + $folderName = implode('_', [ + 'calendar', + $this->userId + ]); + try { + $folder = $this->appData->getFolder($folderName); + } catch (NotFoundException $e) { + $folder = $this->appData->newFolder($folderName); } + $file = $folder->newFile($color . '.svg', $svg); + $response = new FileDisplayResponse($file); + // Some browsers won't render SVGs without content types (for security reasons) + $response->addHeader('Content-Type', 'image/svg+xml'); + $response->cacheFor(24 * 3600); // 1 day + return $response; } } diff --git a/lib/Dashboard/CalendarWidget.php b/lib/Dashboard/CalendarWidget.php index 7a8e0dd17200538fa43a80091a2cd49bc027ff0a..4d5b3769819bc143bf19a61eeebcdc13b41a21ce 100644 --- a/lib/Dashboard/CalendarWidget.php +++ b/lib/Dashboard/CalendarWidget.php @@ -2,69 +2,65 @@ declare(strict_types=1); /** - * @copyright Copyright (c) 2020 Julius Härtl - * - * @author Julius Härtl - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - * + * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ - namespace OCA\Calendar\Dashboard; +use DateInterval; +use DateTime; +use DateTimeImmutable; use OCA\Calendar\AppInfo\Application; use OCA\Calendar\Service\JSDataService; -use OCP\Dashboard\IWidget; -use OCP\IInitialStateService; +use OCP\AppFramework\Services\IInitialState; +use OCP\AppFramework\Utility\ITimeFactory; +use OCP\Calendar\IManager; +use OCP\Dashboard\IAPIWidget; +use OCP\Dashboard\IAPIWidgetV2; +use OCP\Dashboard\IButtonWidget; +use OCP\Dashboard\IIconWidget; +use OCP\Dashboard\IOptionWidget; +use OCP\Dashboard\IReloadableWidget; +use OCP\Dashboard\Model\WidgetButton; +use OCP\Dashboard\Model\WidgetItem; +use OCP\Dashboard\Model\WidgetItems; +use OCP\Dashboard\Model\WidgetOptions; +use OCP\IDateTimeFormatter; use OCP\IL10N; +use OCP\IURLGenerator; -class CalendarWidget implements IWidget { - - /** - * @var IL10N - */ - private $l10n; - - /** - * @var IInitialStateService - */ - private $initialStateService; - - /** - * @var JSDataService - */ - private $dataService; +class CalendarWidget implements IAPIWidget, IAPIWidgetV2, IButtonWidget, IIconWidget, IOptionWidget, IReloadableWidget { + protected IL10N $l10n; + protected IInitialState $initialStateService; + protected JSDataService $dataService; + protected IDateTimeFormatter $dateTimeFormatter; + protected IURLGenerator $urlGenerator; + protected IManager $calendarManager; + protected ITimeFactory $timeFactory; /** * CalendarWidget constructor. - * @param IL10N $l10n - * @param IInitialStateService $initialStateService - * @param JSDataService $dataService */ public function __construct(IL10N $l10n, - IInitialStateService $initialStateService, - JSDataService $dataService) { + IInitialState $initialStateService, + JSDataService $dataService, + IDateTimeFormatter $dateTimeFormatter, + IURLGenerator $urlGenerator, + IManager $calendarManager, + ITimeFactory $timeFactory) { $this->l10n = $l10n; $this->initialStateService = $initialStateService; $this->dataService = $dataService; + $this->dateTimeFormatter = $dateTimeFormatter; + $this->urlGenerator = $urlGenerator; + $this->calendarManager = $calendarManager; + $this->timeFactory = $timeFactory; } /** * @inheritDoc */ + #[\Override] public function getId(): string { return Application::APP_ID; } @@ -72,6 +68,7 @@ class CalendarWidget implements IWidget { /** * @inheritDoc */ + #[\Override] public function getTitle(): string { return $this->l10n->t('Upcoming events'); } @@ -79,6 +76,7 @@ class CalendarWidget implements IWidget { /** * @inheritDoc */ + #[\Override] public function getOrder(): int { return 2; } @@ -86,13 +84,15 @@ class CalendarWidget implements IWidget { /** * @inheritDoc */ + #[\Override] public function getIconClass(): string { - return 'icon-calendar-dark'; + return 'app-icon-calendar'; } /** * @inheritDoc */ + #[\Override] public function getUrl(): ?string { return null; } @@ -100,11 +100,130 @@ class CalendarWidget implements IWidget { /** * @inheritDoc */ + #[\Override] + public function getIconUrl(): string { + return $this->urlGenerator->getAbsoluteURL( + $this->urlGenerator->imagePath(Application::APP_ID, 'calendar-dark.svg') + ); + } + + /** + * @inheritDoc + */ + #[\Override] public function load(): void { - \OCP\Util::addScript('calendar', 'calendar-dashboard'); + // No assets need to be loaded anymore as the widget is rendered from the API + } - $this->initialStateService->provideLazyInitialState(Application::APP_ID, 'dashboard_data', function () { - return $this->dataService; + #[\Override] + public function getItems(string $userId, ?string $since = null, int $limit = 7): array { + $calendars = $this->calendarManager->getCalendarsForPrincipal('principals/users/' . $userId); + $count = count($calendars); + if ($count === 0) { + return []; + } + $dateTime = (new DateTimeImmutable())->setTimestamp($this->timeFactory->getTime()); + $inTwoWeeks = $dateTime->add(new DateInterval('P14D')); + $options = [ + 'timerange' => [ + 'start' => $dateTime, + 'end' => $inTwoWeeks, + ] + ]; + $widgetItems = []; + foreach ($calendars as $calendar) { + if (method_exists($calendar, 'isEnabled') && $calendar->isEnabled() === false) { + continue; + } + if ($calendar->isDeleted()) { + continue; + } + $searchResult = $calendar->search('', [], $options, $limit); + foreach ($searchResult as $calendarEvent) { + // Find first recurrence in the future + $recurrence = null; + foreach ($calendarEvent['objects'] as $object) { + /** @var DateTimeImmutable $startDate */ + $startDate = $object['DTSTART'][0]; + if ($startDate->getTimestamp() >= $dateTime->getTimestamp()) { + $recurrence = $object; + break; + } + } + + if ($recurrence === null) { + continue; + } + + $widget = new WidgetItem( + $recurrence['SUMMARY'][0] ?? 'New Event', + $this->dateTimeFormatter->formatTimeSpan(DateTime::createFromImmutable($startDate)), + $this->urlGenerator->getAbsoluteURL($this->urlGenerator->linkToRoute('calendar.view.index', ['objectId' => $calendarEvent['uid']])), + $this->urlGenerator->getAbsoluteURL($this->urlGenerator->linkToRoute('calendar.view.getCalendarDotSvg', ['color' => $calendar->getDisplayColor() ?? '#0082c9'])), // default NC blue fallback + (string)$startDate->getTimestamp(), + ); + $widgetItems[] = $widget; + } + } + + usort($widgetItems, static function (WidgetItem $a, WidgetItem $b) { + return (int)$a->getSinceId() - (int)$b->getSinceId(); }); + + return $widgetItems; + } + + /** + * @inheritDoc + */ + #[\Override] + public function getItemsV2(string $userId, ?string $since = null, int $limit = 7): WidgetItems { + $widgetItems = $this->getItems($userId, $since, $limit); + + $halfEmptyContentMessage = ''; + if (!empty($widgetItems)) { + $startOfTomorrow = $this->timeFactory->getDateTime('tomorrow')->getTimestamp(); + if ($widgetItems[0]->getSinceId() >= $startOfTomorrow) { + $halfEmptyContentMessage = $this->l10n->t('No more events today'); + } + } + + return new WidgetItems( + $widgetItems, + empty($widgetItems) ? $this->l10n->t('No upcoming events') : '', + $halfEmptyContentMessage, + ); + } + + /** + * @inheritDoc + */ + #[\Override] + public function getWidgetButtons(string $userId): array { + return [ + new WidgetButton( + WidgetButton::TYPE_MORE, + $this->urlGenerator->getAbsoluteURL( + $this->urlGenerator->linkToRoute(Application::APP_ID . '.view.index') + ), + $this->l10n->t('More events') + ), + ]; + } + + /** + * @inheritDoc + */ + #[\Override] + public function getWidgetOptions(): WidgetOptions { + return new WidgetOptions(true); + } + + /** + * @inheritDoc + */ + #[\Override] + public function getReloadInterval(): int { + return 600; } } diff --git a/lib/Db/AppointmentConfig.php b/lib/Db/AppointmentConfig.php index c56bac5c2075525020e9831c9af94d281a7da652..89e47accfb615126517b061f1735366ceba8b203 100644 --- a/lib/Db/AppointmentConfig.php +++ b/lib/Db/AppointmentConfig.php @@ -3,31 +3,15 @@ declare(strict_types=1); /** - * @copyright 2021 Anna Larch - * - * @author Anna Larch - * @author Richard Steinmetz - * - * @license GNU AGPL version 3 or any later version - * - * This code is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License, version 3, - * as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License, version 3, - * along with this program. If not, see - * + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Db; use JsonSerializable; use OCP\AppFramework\Db\Entity; +use OCP\DB\Types; use ReturnTypeWillChange; use function json_decode; use function json_encode; @@ -71,9 +55,10 @@ use function json_encode; * @method void setDailyMax(?int $max) * @method int|null getFutureLimit() * @method void setFutureLimit(?int $limit) + * @method int|null getCreateTalkRoom() + * @method void setCreateTalkRoom(bool $create) */ class AppointmentConfig extends Entity implements JsonSerializable { - /** @var string */ protected $token; @@ -128,6 +113,9 @@ class AppointmentConfig extends Entity implements JsonSerializable { /** @var int|null */ protected $futureLimit; + /** @var bool */ + protected $createTalkRoom; + /** @var string */ public const VISIBILITY_PUBLIC = 'PUBLIC'; @@ -135,22 +123,23 @@ class AppointmentConfig extends Entity implements JsonSerializable { public const VISIBILITY_PRIVATE = 'PRIVATE'; public function __construct() { - $this->addType('start', 'int'); - $this->addType('end', 'int'); - $this->addType('length', 'int'); - $this->addType('increment', 'int'); - $this->addType('preparationDuration', 'int'); - $this->addType('followupDuration', 'int'); - $this->addType('timeBeforeNextSlot', 'int'); - $this->addType('dailyMax', 'int'); - $this->addType('futureLimit', 'int'); + $this->addType('start', Types::INTEGER); + $this->addType('end', Types::INTEGER); + $this->addType('length', Types::INTEGER); + $this->addType('increment', Types::INTEGER); + $this->addType('preparationDuration', Types::INTEGER); + $this->addType('followupDuration', Types::INTEGER); + $this->addType('timeBeforeNextSlot', Types::INTEGER); + $this->addType('dailyMax', Types::INTEGER); + $this->addType('futureLimit', Types::INTEGER); + $this->addType('createTalkRoom', Types::BOOLEAN); } /** * Total length of one slot of the appointment config * in minutes * - * @return int Minutes of Appointment slot length + * @return int Minutes of Appointment slot length */ public function getTotalLength(): int { return $this->getLength() + $this->getPreparationDuration() + $this->getFollowupDuration(); @@ -184,6 +173,11 @@ class AppointmentConfig extends Entity implements JsonSerializable { return $this; } + public function getAvailabilityAsArray(): array { + return json_decode($this->getAvailability(), true, 512, JSON_THROW_ON_ERROR); + } + + #[\Override] #[ReturnTypeWillChange] public function jsonSerialize() { return [ @@ -202,11 +196,12 @@ class AppointmentConfig extends Entity implements JsonSerializable { 'length' => $this->getLength(), 'increment' => $this->getIncrement(), 'preparationDuration' => $this->getPreparationDuration(), - 'followUpDuration' => $this->getFollowupDuration(), + 'followupDuration' => $this->getFollowupDuration(), 'totalLength' => $this->getTotalLength(), 'timeBeforeNextSlot' => $this->getTimeBeforeNextSlot(), 'dailyMax' => $this->getDailyMax(), - 'futureLimit' => $this->getFutureLimit() + 'futureLimit' => $this->getFutureLimit(), + 'createTalkRoom' => $this->getCreateTalkRoom(), ]; } } diff --git a/lib/Db/AppointmentConfigMapper.php b/lib/Db/AppointmentConfigMapper.php index bebb59c6d1e34c6b716949072d8d2fb074125c52..d779a364898959ab794e5798b02936b59183d8fe 100644 --- a/lib/Db/AppointmentConfigMapper.php +++ b/lib/Db/AppointmentConfigMapper.php @@ -3,24 +3,8 @@ declare(strict_types=1); /** - * @copyright 2021 Anna Larch - * - * @author Anna Larch - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Db; @@ -90,7 +74,7 @@ class AppointmentConfigMapper extends QBMapper { * @return AppointmentConfig[] * @throws DbException */ - public function findAllForUser(string $userId, string $visibility = null): array { + public function findAllForUser(string $userId, ?string $visibility = null): array { $qb = $this->db->getQueryBuilder(); $qb->select('*') ->from($this->getTableName()) @@ -114,7 +98,7 @@ class AppointmentConfigMapper extends QBMapper { ->where($qb->expr()->eq('id', $qb->createNamedParameter($id, IQueryBuilder::PARAM_INT), IQueryBuilder::PARAM_INT)) ->andWhere($qb->expr()->eq('user_id', $qb->createNamedParameter($userId, IQueryBuilder::PARAM_STR), IQueryBuilder::PARAM_STR)); - return $qb->execute(); + return $qb->executeStatement(); } public function deleteByUserId(string $uid): void { diff --git a/lib/Db/Booking.php b/lib/Db/Booking.php index b68de88f30d537506558dea9270068fb6d1aa60b..bc3d5cd274313c8fbf2acff7b5d9897d508b45c5 100644 --- a/lib/Db/Booking.php +++ b/lib/Db/Booking.php @@ -1,33 +1,15 @@ - * - * @author Anna Larch - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ - namespace OCA\Calendar\Db; use JsonSerializable; use OCP\AppFramework\Db\Entity; +use OCP\DB\Types; use ReturnTypeWillChange; /** @@ -55,7 +37,6 @@ use ReturnTypeWillChange; * @method void setConfirmed(bool $confirm) */ class Booking extends Entity implements JsonSerializable { - /** @var int */ protected $apptConfigId; @@ -86,15 +67,23 @@ class Booking extends Entity implements JsonSerializable { /** @var bool */ protected $confirmed; + /** + * Transient talk URL + * + * @var string|null + */ + private $talkUrl; + public function __construct() { - $this->addType('id', 'integer'); - $this->addType('apptConfigId', 'integer'); - $this->addType('createdAt', 'integer'); - $this->addType('start', 'integer'); - $this->addType('end', 'integer'); - $this->addType('confirmed', 'boolean'); + $this->addType('id', Types::INTEGER); + $this->addType('apptConfigId', Types::INTEGER); + $this->addType('createdAt', Types::INTEGER); + $this->addType('start', Types::INTEGER); + $this->addType('end', Types::INTEGER); + $this->addType('confirmed', Types::BOOLEAN); } + #[\Override] #[ReturnTypeWillChange] public function jsonSerialize() { return [ @@ -111,4 +100,12 @@ class Booking extends Entity implements JsonSerializable { 'confirmed' => $this->isConfirmed(), ]; } + + public function getTalkUrl(): ?string { + return $this->talkUrl; + } + + public function setTalkUrl(string $talkUrl): void { + $this->talkUrl = $talkUrl; + } } diff --git a/lib/Db/BookingMapper.php b/lib/Db/BookingMapper.php index 51f888ba4f126c9c37fe062d3b01cf65181d9768..50eaf312c027c7f85493729311618c4e810687ee 100644 --- a/lib/Db/BookingMapper.php +++ b/lib/Db/BookingMapper.php @@ -3,24 +3,8 @@ declare(strict_types=1); /** - * @copyright 2021 Anna Larch - * - * @author Anna Larch - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Db; @@ -83,6 +67,6 @@ class BookingMapper extends QBMapper { $qb = $this->db->getQueryBuilder(); $qb->delete($this->getTableName()) ->where($qb->expr()->lt('created_at', $qb->createNamedParameter($limit, IQueryBuilder::PARAM_INT), IQueryBuilder::PARAM_INT)); - return $qb->execute(); + return $qb->executeStatement(); } } diff --git a/lib/Events/BeforeAppointmentBookedEvent.php b/lib/Events/BeforeAppointmentBookedEvent.php new file mode 100644 index 0000000000000000000000000000000000000000..93040f1e0e18c0fabb62285f7b13f172598ef24b --- /dev/null +++ b/lib/Events/BeforeAppointmentBookedEvent.php @@ -0,0 +1,38 @@ +booking = $booking; + $this->config = $config; + } + + public function getBooking(): Booking { + return $this->booking; + } + + public function getConfig(): AppointmentConfig { + return $this->config; + } +} diff --git a/lib/Exception/ClientException.php b/lib/Exception/ClientException.php index a37825cf2943b15bc65f3948fa1ede0a8597dda7..343910c01b2324cccc9dffbcea44fc115d01d05a 100644 --- a/lib/Exception/ClientException.php +++ b/lib/Exception/ClientException.php @@ -2,25 +2,9 @@ declare(strict_types=1); -/* - * @copyright 2021 Christoph Wurst - * - * @author 2021 Christoph Wurst - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . +/** + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Exception; @@ -29,14 +13,13 @@ use Exception; use Throwable; class ClientException extends Exception { - /** @var int|null */ private $httpCode; - public function __construct($message = "", - $code = 0, - Throwable $previous = null, - int $httpCode = null) { + public function __construct($message = '', + $code = 0, + ?Throwable $previous = null, + ?int $httpCode = null) { parent::__construct($message, $code, $previous); $this->httpCode = $httpCode; } diff --git a/lib/Exception/NoSlotFoundException.php b/lib/Exception/NoSlotFoundException.php index edf5da78cd8e415acb66b9de94ce745d7342a0af..a3a84029eaf8110449fb0959dff146dff6472fe2 100644 --- a/lib/Exception/NoSlotFoundException.php +++ b/lib/Exception/NoSlotFoundException.php @@ -1,29 +1,10 @@ - * - * @author Anna Larch - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ - namespace OCA\Calendar\Exception; class NoSlotFoundException extends ClientException { diff --git a/lib/Exception/ServiceException.php b/lib/Exception/ServiceException.php index 4bb9d0c13809ee2e2ef392e3607f7a9e585be824..ed7cc85915aa560e828202f77b81394ea2bebc17 100644 --- a/lib/Exception/ServiceException.php +++ b/lib/Exception/ServiceException.php @@ -1,40 +1,23 @@ - * - * Calendar - * - * This code is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License, version 3, - * as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License, version 3, - * along with this program. If not, see - * + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ - namespace OCA\Calendar\Exception; use Exception; use Throwable; class ServiceException extends Exception { - /** @var int|null */ private $httpCode; - public function __construct($message = "", - $code = 0, - Throwable $previous = null, - int $httpCode = null) { + public function __construct($message = '', + $code = 0, + ?Throwable $previous = null, + ?int $httpCode = null) { parent::__construct($message, $code, $previous); $this->httpCode = $httpCode; } diff --git a/lib/Http/JsonResponse.php b/lib/Http/JsonResponse.php index c6566154ea7eb89dc06fe35974a333b5bb6dafce..d3483935f7cd0ced0fd0e5492b4c6284d4ed0fe6 100644 --- a/lib/Http/JsonResponse.php +++ b/lib/Http/JsonResponse.php @@ -3,24 +3,8 @@ declare(strict_types=1); /** - * @copyright 2021 Anna Larch - * - * @author 2021 Anna Larch - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Http; @@ -37,10 +21,12 @@ use function get_class; /** * @see https://github.com/omniti-labs/jsend + * + * @psalm-suppress MissingTemplateParam */ class JsonResponse extends Base { public function __construct($data = [], - int $statusCode = Http::STATUS_OK) { + int $statusCode = Http::STATUS_OK) { parent::__construct($data, $statusCode); $this->addHeader('x-calendar-response', 'true'); @@ -53,7 +39,7 @@ class JsonResponse extends Base { * @return static */ public static function success($data = null, - int $status = Http::STATUS_OK): self { + int $status = Http::STATUS_OK): self { return new self( [ 'status' => 'success', @@ -70,7 +56,7 @@ class JsonResponse extends Base { * @return static */ public static function fail($data = null, - int $status = Http::STATUS_BAD_REQUEST): self { + int $status = Http::STATUS_BAD_REQUEST): self { return new self( [ 'status' => 'fail', @@ -81,9 +67,9 @@ class JsonResponse extends Base { } public static function error(string $message, - int $status = Http::STATUS_INTERNAL_SERVER_ERROR, - array $data = [], - int $code = 0): self { + int $status = Http::STATUS_INTERNAL_SERVER_ERROR, + array $data = [], + int $code = 0): self { return new self( [ 'status' => 'error', @@ -99,8 +85,8 @@ class JsonResponse extends Base { * @param mixed[] $data */ public static function errorFromThrowable(Throwable $error, - int $status = Http::STATUS_INTERNAL_SERVER_ERROR, - array $data = []): self { + int $status = Http::STATUS_INTERNAL_SERVER_ERROR, + array $data = []): self { return self::error( $error->getMessage(), $status, diff --git a/lib/Listener/AppointmentBookedListener.php b/lib/Listener/AppointmentBookedListener.php new file mode 100644 index 0000000000000000000000000000000000000000..e6a9f0652325b9ae09cadafe878e4b31dcc50e3c --- /dev/null +++ b/lib/Listener/AppointmentBookedListener.php @@ -0,0 +1,86 @@ +broker = $broker; + $this->userManager = $userManager; + $this->l10n = $l10n; + $this->logger = $logger; + } + + #[\Override] + public function handle(Event $event): void { + if (!($event instanceof BeforeAppointmentBookedEvent)) { + // Don't care + return; + } + + if (!$event->getConfig()->getCreateTalkRoom()) { + $this->logger->debug('Booked appointment of config {config} does not need a Talk room', [ + 'config' => $event->getConfig()->getId(), + ]); + return; + } + + if (!$this->broker->hasBackend()) { + $this->logger->warning('Can not create Talk room for config {config} because there is no backend', [ + 'config' => $event->getConfig()->getId(), + ]); + return; + } + + $organizer = $this->userManager->get($event->getConfig()->getUserId()); + if ($organizer === null) { + $this->logger->error('Could not find appointment owner {uid}', [ + 'uid' => $event->getConfig()->getUserId(), + ]); + return; + } + // TRANSLATORS Title for the Talk conversation name that will be created for the appointment. First placeholder is the appointment name, second one is the person who booked the appointement's display name + $conversationName = $this->l10n->t('%1$s with %2$s', [ + $event->getConfig()->getName(), + $event->getBooking()->getDisplayName(), + ]); + $conversation = $this->broker->createConversation( + $conversationName, + [$organizer], + $this->broker->newConversationOptions()->setPublic(), + ); + $event->getBooking()->setTalkUrl( + $conversation->getAbsoluteUrl(), + ); + } + +} diff --git a/lib/Listener/CalendarReferenceListener.php b/lib/Listener/CalendarReferenceListener.php new file mode 100644 index 0000000000000000000000000000000000000000..14bd9f5bf8fab9d980cccf29a72b22f567e63e50 --- /dev/null +++ b/lib/Listener/CalendarReferenceListener.php @@ -0,0 +1,37 @@ + + */ +class CalendarReferenceListener implements IEventListener { + public function __construct( + private CalendarInitialStateService $calendarInitialStateService, + ) { + } + + #[\Override] + public function handle(Event $event): void { + if (!$event instanceof RenderReferenceEvent) { + return; + } + + $this->calendarInitialStateService->run(); + Util::addScript(Application::APP_ID, 'calendar-reference'); + } +} diff --git a/lib/Listener/UserDeletedListener.php b/lib/Listener/UserDeletedListener.php index 94f007d076c98ce1fe513c0895251259c2661db7..0c8149cd9dde191180090fd056adc5c6fc600c5b 100644 --- a/lib/Listener/UserDeletedListener.php +++ b/lib/Listener/UserDeletedListener.php @@ -2,25 +2,9 @@ declare(strict_types=1); -/* - * @copyright 2021 Christoph Wurst - * - * @author 2021 Christoph Wurst - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . +/** + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Listener; @@ -32,8 +16,10 @@ use OCP\EventDispatcher\IEventListener; use OCP\User\Events\UserDeletedEvent; use Psr\Log\LoggerInterface; +/** + * @template-implements IEventListener + */ class UserDeletedListener implements IEventListener { - /** @var AppointmentConfigService */ private $appointmentConfigService; @@ -44,13 +30,14 @@ class UserDeletedListener implements IEventListener { private $logger; public function __construct(AppointmentConfigService $appointmentConfigService, - BookingService $bookingService, - LoggerInterface $logger) { + BookingService $bookingService, + LoggerInterface $logger) { $this->appointmentConfigService = $appointmentConfigService; $this->bookingService = $bookingService; $this->logger = $logger; } + #[\Override] public function handle(Event $event): void { if (!($event instanceof UserDeletedEvent)) { return; @@ -59,6 +46,6 @@ class UserDeletedListener implements IEventListener { $this->bookingService->deleteByUser($event->getUser()); $this->appointmentConfigService->deleteByUser($event->getUser()); - $this->logger->info("Calendar appointments cleaned up for deleted user " . $event->getUser()->getUID()); + $this->logger->info('Calendar appointments cleaned up for deleted user ' . $event->getUser()->getUID()); } } diff --git a/lib/Middleware/InvitationMiddleware.php b/lib/Middleware/InvitationMiddleware.php new file mode 100644 index 0000000000000000000000000000000000000000..3730a53071f48dcfda00e6fee760c1a3c78519a9 --- /dev/null +++ b/lib/Middleware/InvitationMiddleware.php @@ -0,0 +1,230 @@ +request = $request; + $this->config = $config; + $this->db = $db; + $this->calendarManager = $calendarManager; + $this->mailer = $mailer; + $this->l10n = $l10n; + $this->defaults = $defaults; + $this->logger = $logger; + $this->iusermanager = $iusermanager; + $this->languageFactory = $languageFactory; + } + + public function afterController( + $controller, + $methodName, + Response $response + ) { + if ( + ($controller instanceof InvitationMaybeController && + $methodName === "tentative") || + ($controller instanceof InvitationResponseController && + ($methodName === "accept" || $methodName === "decline") && + $response->getStatus() == 200 && + $response->getTemplateName() == "schedule-response-success") + ) { + $token = $this->request->getParam("token"); + $query = $this->db->getQueryBuilder(); + $query + ->select("*") + ->from("calendar_invitations") + ->where( + $query + ->expr() + ->eq("token", $query->createNamedParameter($token)) + ); + $stmt = $query->execute(); + $row = $stmt->fetch(\PDO::FETCH_ASSOC); + + $uid = $row["uid"]; + $sender = substr($row["attendee"], 7); + $recipient = substr($row["organizer"], 7); + + $query2 = $this->db->getQueryBuilder(); + $query2 + ->select("*") + ->from("calendarobjects") + ->where( + $query + ->expr() + ->eq("uid", $query2->createNamedParameter($uid)) + ); + $stmt2 = $query2->execute(); + $row2 = $stmt2->fetch(\PDO::FETCH_ASSOC); + $calendarobjectid = $row2["id"]; + + $query3 = $this->db->getQueryBuilder(); + $query3 + ->select("*") + ->from("calendarobjects_props") + ->where( + $query3 + ->expr() + ->eq( + "objectid", + $query3->createNamedParameter($calendarobjectid) + ) + ); + $stmt3 = $query3->execute(); + $row3 = $stmt3->fetchAll(\PDO::FETCH_ASSOC); + foreach ($row3 as $calendarobj1) { + if ( + $calendarobj1["parameter"] == "CN" && + $calendarobj1["name"] == "ATTENDEE" + ) { + $attendeename = $calendarobj1["value"]; + } + if ( + $calendarobj1["parameter"] == "CN" && + $calendarobj1["name"] == "ORGANIZER" + ) { + $organizername = $calendarobj1["value"]; + } + } + + $vObject = Reader::read($row2["calendardata"]); + $SUMMARY = $vObject->VEVENT->SUMMARY; + $datestart = (string) $vObject->VEVENT->DTSTART; + if (str_contains($datestart, "T")) { + $eventdate = date("F d, Y h:i", strtotime($datestart)); + } else { + $eventdate = date("F d, Y", strtotime($datestart)); + } + + if ($attendeename == "") { + $attendeename = $sender; + } + + if ($organizername == "") { + $organizername = $recipient; + } + + $userdata = $this->iusermanager->getByEmail($recipient); + $username = $userdata[0]->getUID(); + $userlang = $this->languageFactory->getUserLanguage($userdata[0]); + + if ($methodName === "tentative") { + $meetingTitle = $this->l10n->t("Invitation Tentatively Accepted: %s", [$SUMMARY] ); + + $data = [ + "attendee_name" => (string) $sender ?: $defaultVal, + "invitee_name" => (string) $recipient ?: $defaultVal, + "meeting_title" => (string) $meetingTitle ?: $defaultVal, + ]; + $method = "reply"; + $emailTemplate = $this->mailer->createEMailTemplate( + "dav.calendarInvite." . $method, + $data + ); + $emailTemplate->setSubject($this->l10n->t("Invitation Tentatively Accepted: %s",[$SUMMARY])); + $emailTemplate->addHeader(); + $emailTemplate->addHeading( + $this->l10n->t("Tentatively Accepted") + ); + $mailbodytext = $this->l10n->t( + "%s has tentatively accepted your invitation to %s on %s", + [$attendeename, $SUMMARY, $eventdate] + ); + } + + if ($methodName === "accept") { + $meetingTitle = $this->l10n->t("Invitation Accepted: %s", [$SUMMARY]); + $data = [ + "attendee_name" => (string) $sender ?: $defaultVal, + "invitee_name" => (string) $recipient ?: $defaultVal, + "meeting_title" => (string) $meetingTitle ?: $defaultVal, + ]; + $method = "reply"; + $emailTemplate = $this->mailer->createEMailTemplate( + $recipient, + $data + ); + $emailTemplate->setSubject($this->l10n->t("Invitation Accepted: %s", [$SUMMARY])); + $emailTemplate->addHeader(); + $emailTemplate->addHeading($this->l10n->t("Accepted")); + $mailbodytext = $this->l10n->t( + "%s has accepted your invitation to %s on %s", + [$attendeename, $SUMMARY, $eventdate] + ); + } + + if ($methodName === "decline") { + $meetingTitle = $this->l10n->t("Invitation Declined: %s", [$SUMMARY]); + $data = [ + "attendee_name" => (string) $sender ?: $defaultVal, + "invitee_name" => (string) $recipient ?: $defaultVal, + "meeting_title" => (string) $meetingTitle ?: $defaultVal, + ]; + $method = "reply"; + $emailTemplate = $this->mailer->createEMailTemplate( + "dav.calendarInvite." . $method, + $data + ); + $emailTemplate->setSubject($this->l10n->t("Invitation Declined: %s", [$SUMMARY])); + $emailTemplate->addHeader(); + $emailTemplate->addHeading($this->l10n->t("Declined")); + $mailbodytext = $this->l10n->t( + "%s has declined your invitation to %s on %s", + [$attendeename, $SUMMARY, $eventdate] + ); + } + + $emailTemplate->addBodyText( + htmlspecialchars($mailbodytext), + $mailbodytext + ); + $emailTemplate->addFooter(); + try { + $message = $this->mailer->createMessage(); + $message->setTo([$recipient => $organizername]); + $message->setReplyTo([$sender => $attendeename]); + $message->useTemplate($emailTemplate); + $this->mailer->send($message); + } catch (\Exception $e) { + // Log the exception and continue + $this->logger->logException($e); + } + } + + return $response; + } +} diff --git a/lib/Migration/Version2040Date20210908101001.php b/lib/Migration/Version2040Date20210908101001.php index ed7a7136c0b9e1e6f57cbb014978acd343e3aa00..e1e91f8ecc898732bede9245a83c78fac70f8de2 100644 --- a/lib/Migration/Version2040Date20210908101001.php +++ b/lib/Migration/Version2040Date20210908101001.php @@ -3,24 +3,8 @@ declare(strict_types=1); /** - * @copyright 2021 Anna Larch - * - * @author Anna Larch - * - * @license GNU AGPL version 3 or any later version - * - * This code is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License, version 3, - * as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License, version 3, - * along with this program. If not, see - * + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Migration; @@ -31,13 +15,13 @@ use OCP\Migration\IOutput; use OCP\Migration\SimpleMigrationStep; class Version2040Date20210908101001 extends SimpleMigrationStep { - /** * @param IOutput $output * @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper` * @param array $options * @return null|ISchemaWrapper */ + #[\Override] public function changeSchema(IOutput $output, Closure $schemaClosure, array $options): ?ISchemaWrapper { $schema = $schemaClosure(); diff --git a/lib/Migration/Version3000Date20211109132439.php b/lib/Migration/Version3000Date20211109132439.php index 66291af2f4682748d08f16496cfc5d663f2a8247..85baa8bf9cea6e65c94ed36a759df5a94f2d6a6c 100644 --- a/lib/Migration/Version3000Date20211109132439.php +++ b/lib/Migration/Version3000Date20211109132439.php @@ -3,24 +3,8 @@ declare(strict_types=1); /** - * @copyright 2021 Anna Larch - * - * @author Anna Larch - * - * @license GNU AGPL version 3 or any later version - * - * This code is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License, version 3, - * as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License, version 3, - * along with this program. If not, see - * + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Migration; @@ -31,14 +15,13 @@ use OCP\Migration\IOutput; use OCP\Migration\SimpleMigrationStep; class Version3000Date20211109132439 extends SimpleMigrationStep { - - /** * @param IOutput $output * @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper` * @param array $options * @return null|ISchemaWrapper */ + #[\Override] public function changeSchema(IOutput $output, Closure $schemaClosure, array $options): ?ISchemaWrapper { $schema = $schemaClosure(); diff --git a/lib/Migration/Version3010Date20220111090252.php b/lib/Migration/Version3010Date20220111090252.php index be57e1243747e18a0ddfdb3627d0ff766e5481c9..26403842d923f3f50e3ab28dc571634ee5d9dafe 100644 --- a/lib/Migration/Version3010Date20220111090252.php +++ b/lib/Migration/Version3010Date20220111090252.php @@ -3,24 +3,8 @@ declare(strict_types=1); /** - * @copyright 2022 Richard Steinmetz - * - * @author Richard Steinmetz - * - * @license GNU AGPL version 3 or any later version - * - * This code is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License, version 3, - * as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License, version 3, - * along with this program. If not, see - * + * SPDX-FileCopyrightText: 2022 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Migration; @@ -31,13 +15,13 @@ use OCP\Migration\IOutput; use OCP\Migration\SimpleMigrationStep; class Version3010Date20220111090252 extends SimpleMigrationStep { - /** * @param IOutput $output * @param Closure $schemaClosure The `\Closure` returns a `ISchemaWrapper` * @param array $options * @return null|ISchemaWrapper */ + #[\Override] public function changeSchema(IOutput $output, Closure $schemaClosure, array $options): ?ISchemaWrapper { $schema = $schemaClosure(); diff --git a/lib/Migration/Version4050Date20230614163505.php b/lib/Migration/Version4050Date20230614163505.php new file mode 100644 index 0000000000000000000000000000000000000000..bb559cb8c0c207127b10be496ab1b2ef68862d34 --- /dev/null +++ b/lib/Migration/Version4050Date20230614163505.php @@ -0,0 +1,42 @@ +getTable('calendar_appt_configs'); + if (!$table->hasColumn('create_talk_room')) { + $table->addColumn('create_talk_room', Types::BOOLEAN, [ + 'notnull' => false, + 'default' => false, + ]); + } + + return $schema; + } + +} diff --git a/lib/Notification/Notifier.php b/lib/Notification/Notifier.php new file mode 100644 index 0000000000000000000000000000000000000000..194c4bd155fb299113b1337ccc7423efecd8c4fe --- /dev/null +++ b/lib/Notification/Notifier.php @@ -0,0 +1,95 @@ +factory = $factory; + $this->url = $url; + } + + #[\Override] + public function getID(): string { + return Application::APP_ID; + } + + /** + * Human-readable name describing the notifier + * @return string + */ + #[\Override] + public function getName(): string { + return $this->factory->get(Application::APP_ID)->t('Calendar'); + } + + + #[\Override] + public function prepare(INotification $notification, string $languageCode): INotification { + if ($notification->getApp() !== Application::APP_ID) { + // Not my app => throw + throw new UnknownNotificationException(); + } + + // Read the language from the notification + $l = $this->factory->get(Application::APP_ID, $languageCode); + + switch ($notification->getSubject()) { + // Deal with known subjects + case 'booking_accepted': + $parameters = $notification->getSubjectParameters(); + $notification->setRichSubject($l->t('New booking {booking}'), [ + 'booking' => [ + 'id' => $parameters['id'], + 'type' => $parameters['type'], + 'name' => $parameters['name'], + 'link' => $this->url->linkToRouteAbsolute('calendar.view.index') + ] + ]); + + $messageParameters = $notification->getMessageParameters(); + $notification->setRichMessage($l->t('{display_name} ({email}) booked the appointment "{config_display_name}" on {date_time}.'), [ + 'display_name' => [ + 'type' => 'highlight', + 'id' => $messageParameters['id'], + 'name' => $messageParameters['display_name'], + ], + 'email' => [ + 'type' => 'highlight', + 'id' => $messageParameters['id'], + 'name' => $messageParameters['email'], + ], + 'date_time' => [ + 'type' => 'highlight', + 'id' => $messageParameters['id'], + 'name' => $messageParameters['date_time'], + ], + 'config_display_name' => [ + 'type' => 'highlight', + 'id' => $messageParameters['id'], + 'name' => $messageParameters['config_display_name'], + ] + ]); + break; + default: + throw new UnknownNotificationException(); + } + + return $notification; + } +} diff --git a/lib/Profile/AppointmentsAction.php b/lib/Profile/AppointmentsAction.php index e6a583ba060da167ee5cba8826d3fcfba3267438..7bd76465fe52fefbb1c87173d5cec53063cac31a 100644 --- a/lib/Profile/AppointmentsAction.php +++ b/lib/Profile/AppointmentsAction.php @@ -2,25 +2,9 @@ declare(strict_types=1); -/* - * @copyright 2021 Christoph Wurst - * - * @author 2021 Christoph Wurst - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . +/** + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Profile; @@ -36,7 +20,6 @@ use OCP\Profile\ILinkAction; use function count; class AppointmentsAction implements ILinkAction { - /** @var IL10N */ private $l10n; @@ -56,15 +39,16 @@ class AppointmentsAction implements ILinkAction { private $configs = []; public function __construct(IL10N $l10n, - IUserSession $userSession, - AppointmentConfigService $configService, - IURLGenerator $urlGenerator) { + IUserSession $userSession, + AppointmentConfigService $configService, + IURLGenerator $urlGenerator) { $this->l10n = $l10n; $this->userSession = $userSession; $this->configService = $configService; $this->urlGenerator = $urlGenerator; } + #[\Override] public function preload(IUser $targetUser): void { $this->targetUser = $targetUser; @@ -74,18 +58,22 @@ class AppointmentsAction implements ILinkAction { ); } + #[\Override] public function getAppId(): string { return Application::APP_ID; } + #[\Override] public function getId(): string { return 'appointments'; } + #[\Override] public function getDisplayId(): string { return $this->l10n->t('Appointments'); } + #[\Override] public function getTitle(): string { if (count($this->configs) === 1) { return $this->l10n->t('Schedule appointment "%s"', [ @@ -96,14 +84,17 @@ class AppointmentsAction implements ILinkAction { return $this->l10n->t('Schedule an appointment'); } + #[\Override] public function getPriority(): int { return 50; } + #[\Override] public function getIcon(): string { return $this->urlGenerator->getAbsoluteURL($this->urlGenerator->imagePath('core', 'places/calendar.svg')); } + #[\Override] public function getTarget(): ?string { if ($this->configs === []) { return null; diff --git a/lib/Reference/ReferenceProvider.php b/lib/Reference/ReferenceProvider.php new file mode 100644 index 0000000000000000000000000000000000000000..3bb1a07c9894655a9fe7bc05bdf700255af1f808 --- /dev/null +++ b/lib/Reference/ReferenceProvider.php @@ -0,0 +1,161 @@ +urlGenerator->getAbsoluteURL( + $this->urlGenerator->imagePath(Application::APP_ID, 'calendar-dark.svg') + ); + } + + #[\Override] + public function matchReference(string $referenceText): bool { + $start = $this->urlGenerator->getAbsoluteURL('/apps/' . Application::APP_ID); + $startIndex = $this->urlGenerator->getAbsoluteURL('/index.php/apps/' . Application::APP_ID); + if (preg_match('/^' . preg_quote($start, '/') . '\/p\/[a-zA-Z0-9]+$/i', $referenceText) === 1 || preg_match('/^' . preg_quote($startIndex, '/') . '\/p\/[a-zA-Z0-9]+$/i', $referenceText) === 1) { + return true; + } + + $start = $this->urlGenerator->getAbsoluteURL('/remote.php/dav/calendars'); + if (preg_match('/^' . preg_quote($start, '/') . '\/[a-zA-Z0-9-]+\/[a-zA-Z0-9-]+\/$/i', $referenceText) === 1) { + return true; + } + + return false; + } + + #[\Override] + public function resolveReference(string $referenceText): ?IReference { + if ($this->matchReference($referenceText)) { + $type = $this->getType($referenceText); + $reference = new Reference($referenceText); + $reference->setTitle('calendar'); + $reference->setDescription('calendar widget'); + + switch ($type) { + case 'public': + $token = $this->getCalendarTokenFromLink($referenceText); + $url = $this->getUrlFromLink($token, 'public'); + $reference->setRichObject( + 'calendar_widget', + [ + 'title' => 'calendar', + 'token' => $token, + 'isPublic' => true, + 'url' => $url, + ] + ); + break; + case 'private': + $url = $this->getUrlFromLink($referenceText, 'private'); + $reference->setRichObject( + 'calendar_widget', + [ + 'title' => 'calendar', + 'isPublic' => false, + 'url' => $url, + ] + ); + break; + default: + return null; + } + + + + return $reference; + } + + return null; + } + + private function getCalendarTokenFromLink(string $url): ?string { + if (preg_match('/\/p\/([a-zA-Z0-9]+)/', $url, $output_array)) { + return $output_array[1]; + } + return null; + + } + private function getUrlFromLink(string $data, string $type): ?string { + if ($type === 'public') { + return "{$this->urlGenerator->getWebroot()}/remote.php/dav/public-calendars/{$data}/"; + } elseif ($type === 'private' && preg_match('/\/remote.php\/dav\/calendars\/([a-zA-Z0-9-]+)\/([a-zA-Z0-9-]+)\//', $data, $output_array)) { + return $this->urlGenerator->getWebroot() . $output_array[0]; + } + return null; + + } + + private function getType(string $url): string { + if (preg_match('/\/p\/([a-zA-Z0-9]+)/', $url) === 1) { + return 'public'; + } + if (preg_match('/\/dav\/calendars\/([^\/]+)\/([^\/]+)/', $url) === 1) { + return 'private'; + } + return 'unknown'; + } + + #[\Override] + public function getCachePrefix(string $referenceId): string { + return ''; + } + + /** + * @inheritDoc + */ + #[\Override] + public function getCacheKey(string $referenceId): ?string { + return $referenceId; + } +} diff --git a/lib/RepairSteps/CurrentViewNameRepairStep.php b/lib/RepairSteps/CurrentViewNameRepairStep.php deleted file mode 100644 index 58c69129795d48eca40c03719ce1b35a46f96eed..0000000000000000000000000000000000000000 --- a/lib/RepairSteps/CurrentViewNameRepairStep.php +++ /dev/null @@ -1,96 +0,0 @@ - - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * - */ -namespace OCA\Calendar\RepairSteps; - -use OCP\IConfig; -use OCP\IUser; -use OCP\IUserManager; -use OCP\Migration\IOutput; -use OCP\Migration\IRepairStep; - -/** - * Class CurrentViewNameRepairStep - * - * @package OCA\Calendar\RepairSteps - */ -class CurrentViewNameRepairStep implements IRepairStep { - - /** @var IUserManager */ - private $userManager; - - /** @var IConfig */ - private $config; - - /** - * CurrentViewNameRepairStep constructor. - * - * @param IUserManager $userManager - * @param IConfig $config - */ - public function __construct(IUserManager $userManager, - IConfig $config) { - $this->userManager = $userManager; - $this->config = $config; - } - - /** - * @return string - */ - public function getName():string { - return 'Update name of the stored view'; - } - - /** - * @param IOutput $output - */ - public function run(IOutput $output):void { - $this->userManager->callForSeenUsers(function (IUser $user) { - $userId = $user->getUID(); - $savedView = $this->config->getUserValue($userId, 'calendar', 'currentView', null); - - if ($savedView === null) { - return; - } - if (\in_array($savedView, ['timeGridDay', 'timeGridWeek', 'dayGridMonth'], true)) { - return; - } - - switch ($savedView) { - case 'agendaDay': - $this->config->setUserValue($userId, 'calendar', 'currentView', 'timeGridDay'); - break; - - case 'agendaWeek': - $this->config->setUserValue($userId, 'calendar', 'currentView', 'timeGridWeek'); - break; - - case 'month': - default: - $this->config->setUserValue($userId, 'calendar', 'currentView', 'dayGridMonth'); - break; - } - }); - } -} diff --git a/lib/Service/Appointments/AppointmentConfigService.php b/lib/Service/Appointments/AppointmentConfigService.php index aa944c26bcba787e2cbbfc087a1ddfdd9f917ee5..d7e275f64ac70800c85e973ff891ee5096d701bd 100644 --- a/lib/Service/Appointments/AppointmentConfigService.php +++ b/lib/Service/Appointments/AppointmentConfigService.php @@ -1,30 +1,10 @@ - * - * @author Anna Larch - * @author Richard Steinmetz - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ - namespace OCA\Calendar\Service\Appointments; use OCA\Calendar\Db\AppointmentConfig; @@ -39,7 +19,6 @@ use OCP\IUser; use OCP\Security\ISecureRandom; class AppointmentConfigService { - /** @var AppointmentConfigMapper */ private $mapper; @@ -47,7 +26,7 @@ class AppointmentConfigService { private $random; public function __construct(AppointmentConfigMapper $mapper, - ISecureRandom $random) { + ISecureRandom $random) { $this->mapper = $mapper; $this->random = $random; } @@ -60,7 +39,7 @@ class AppointmentConfigService { * @return AppointmentConfig[] * @throws ServiceException */ - public function getAllAppointmentConfigurations(string $userId, string $visibility = null): array { + public function getAllAppointmentConfigurations(string $userId, ?string $visibility = null): array { try { return $this->mapper->findAllForUser($userId, $visibility); } catch (DbException $e) { @@ -105,7 +84,7 @@ class AppointmentConfigService { public function findById(int $id): AppointmentConfig { try { return $this->mapper->findById($id); - } catch (DbException | DoesNotExistException | MultipleObjectsReturnedException $e) { + } catch (DbException|DoesNotExistException|MultipleObjectsReturnedException $e) { throw new ClientException( 'Could not find a record for id', $e->getCode(), @@ -143,43 +122,26 @@ class AppointmentConfigService { } /** - * @param string $name - * @param string $description - * @param string|null $location - * @param string $visibility - * @param string $userId - * @param string $targetCalendarUri - * @param array $availability - * @param int $length - * @param int $increment - * @param int $preparationDuration - * @param int $followupDuration - * @param int $buffer - * @param int|null $dailyMax - * @param string[] $calendarFreeBusyUris - * @param int|null $start - * @param int|null $end - * @param int|null $futureLimit - * @return AppointmentConfig * @throws ServiceException */ public function create(string $name, - string $description, - ?string $location, - string $visibility, - string $userId, - string $targetCalendarUri, - array $availability, - int $length, - int $increment, - int $preparationDuration, - int $followupDuration, - int $buffer, - ?int $dailyMax, - ?array $calendarFreeBusyUris = [], - ?int $start = null, - ?int $end = null, - ?int $futureLimit = null): AppointmentConfig { + string $description, + ?string $location, + string $visibility, + string $userId, + string $targetCalendarUri, + array $availability, + int $length, + int $increment, + int $preparationDuration, + int $followupDuration, + int $buffer, + ?int $dailyMax, + ?array $calendarFreeBusyUris = [], + ?int $start = null, + ?int $end = null, + ?int $futureLimit = null, + ?bool $createTalkRoom = false): AppointmentConfig { try { $appointmentConfig = new AppointmentConfig(); $appointmentConfig->setToken($this->random->generate(12, ISecureRandom::CHAR_HUMAN_READABLE)); @@ -200,6 +162,7 @@ class AppointmentConfigService { $appointmentConfig->setStart($start); $appointmentConfig->setEnd($end); $appointmentConfig->setFutureLimit($futureLimit); + $appointmentConfig->setCreateTalkRoom($createTalkRoom === true); return $this->mapper->insert($appointmentConfig); } catch (DbException $e) { diff --git a/lib/Service/Appointments/AvailabilityGenerator.php b/lib/Service/Appointments/AvailabilityGenerator.php index 2e903f922964ef7a2d635257d2a8169e6903ed14..6ab695f85ad1fa484384fe19e0a6780719ac561a 100644 --- a/lib/Service/Appointments/AvailabilityGenerator.php +++ b/lib/Service/Appointments/AvailabilityGenerator.php @@ -2,25 +2,9 @@ declare(strict_types=1); -/* - * @copyright 2021 Christoph Wurst - * - * @author 2021 Christoph Wurst - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . +/** + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Service\Appointments; @@ -31,16 +15,19 @@ use DateTimeImmutable; use DateTimeZone; use OCA\Calendar\Db\AppointmentConfig; use OCP\AppFramework\Utility\ITimeFactory; +use Psr\Log\LoggerInterface; use function ceil; use function max; use function min; class AvailabilityGenerator { - /** @var ITimeFactory */ private $timeFactory; - public function __construct(ITimeFactory $timeFactory) { + public function __construct( + ITimeFactory $timeFactory, + private LoggerInterface $logger, + ) { $this->timeFactory = $timeFactory; } @@ -54,8 +41,8 @@ class AvailabilityGenerator { * @return Interval[] */ public function generate(AppointmentConfig $config, - int $start, - int $end): array { + int $start, + int $end): array { $now = $this->timeFactory->getTime(); $bufferBeforeStart = ($config->getTimeBeforeNextSlot() ?? 0); @@ -64,13 +51,14 @@ class AvailabilityGenerator { $now + $bufferBeforeStart, ($config->getStart() ?? $now) + $bufferBeforeStart ); - // Always round to "beautiful" slot starts according to slot length + + // Always round to "beautiful" slot starts // E.g. 5m slots should only be available at 10:20 and 10:25, not at 10:17 // when the user opens the page at 10:17. // But only do this when the time isn't already a "pretty" time if ($earliestStart % $config->getIncrement() !== 0) { - $roundTo = (int)round(($config->getIncrement()) / 300) * 300; - $earliestStart = (int)ceil($earliestStart / $roundTo) * $roundTo; + $roundTo = (int)round((float)$config->getIncrement() / 300.0) * 300; + $earliestStart = (int)(ceil((float)$earliestStart / (float)$roundTo) * (float)$roundTo); } $latestEnd = min( @@ -78,13 +66,21 @@ class AvailabilityGenerator { $config->getEnd() ?? $end ); + $this->logger->debug("Earliest start: $earliestStart, latest end: $latestEnd", ['app' => 'calendar-appointments']); + // If we reach this state then there are no available dates anymore if ($latestEnd <= $earliestStart) { + $this->logger->debug('Appointment config ' . $config->getToken() . ' has {latestEnd} as latest end but {earliestStart} as earliest start. No slots available.', [ + 'latestEnd' => $latestEnd, + 'earliestStart' => $earliestStart, + 'app' => 'calendar-appointments' + ]); return []; } if (empty($config->getAvailability())) { // No availability -> full time range is available + $this->logger->debug('Full time range available', ['app' => 'calendar-appointments']); return [ new Interval($earliestStart, $latestEnd), ]; @@ -95,10 +91,12 @@ class AvailabilityGenerator { $timeZone = $availabilityRule['timezoneId']; $slots = $availabilityRule['slots']; - $applicableSlots = $this->filterDates($start, $slots, $timeZone); + $applicableSlots = $this->filterDates($start, $slots, $timeZone, $config->getIncrement()); + $this->logger->debug('Found ' . count($applicableSlots) . ' applicable slot(s) after date filtering', ['app' => 'calendar-appointments']); $intervals = []; foreach ($applicableSlots as $slot) { + $this->logger->debug('Slot start: ' . $slot->getStart() . ', slot end: ' . $slot->getEnd(), ['app' => 'calendar-appointments']); if ($slot->getEnd() <= $earliestStart || $slot->getStart() >= $latestEnd) { continue; } @@ -122,7 +120,7 @@ class AvailabilityGenerator { * * @return Interval[] */ - private function filterDates(int $start, array $availabilityArray, string $timeZone): array { + private function filterDates(int $start, array $availabilityArray, string $timeZone, int $duration): array { $tz = new DateTimeZone($timeZone); // First, transform all timestamps to DateTime Objects $availabilityRules = []; @@ -132,9 +130,15 @@ class AvailabilityGenerator { continue; } foreach ($availabilitySlots as $slot) { + // Fix "not-pretty" timeslots + // A slot from 10:10 to 10:40 could be generated but isn't bookable + // So we round them to the next highest time that is pretty for that slot + $roundTo = (int)round(($duration) / 300) * 300; + $prettyStart = (int)ceil($slot['start'] / $roundTo) * $roundTo; + $prettyEnd = (int)ceil($slot['end'] / $roundTo) * $roundTo; $availabilityRules[$key][] = [ - 'start' => (new DateTimeImmutable())->setTimezone($tz)->setTimestamp($slot['start']), - 'end' => (new DateTimeImmutable())->setTimezone($tz)->setTimestamp($slot['end']) + 'start' => (new DateTimeImmutable())->setTimezone($tz)->setTimestamp($prettyStart), + 'end' => (new DateTimeImmutable())->setTimezone($tz)->setTimestamp($prettyEnd) ]; } } diff --git a/lib/Service/Appointments/BookingCalendarWriter.php b/lib/Service/Appointments/BookingCalendarWriter.php index 9559d514e4764d70645df9709d7a245f024bc9db..3514cf77e4394fa40a3633a680c3594ea7ed28c3 100644 --- a/lib/Service/Appointments/BookingCalendarWriter.php +++ b/lib/Service/Appointments/BookingCalendarWriter.php @@ -1,29 +1,10 @@ - * - * @author Anna Larch - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ - namespace OCA\Calendar\Service\Appointments; use DateTimeImmutable; @@ -33,15 +14,14 @@ use OCP\Calendar\Exceptions\CalendarException; use OCP\Calendar\ICreateFromString; use OCP\Calendar\IManager; use OCP\IConfig; -use OCP\IL10N; use OCP\IUserManager; +use OCP\L10N\IFactory; use OCP\Security\ISecureRandom; use RuntimeException; use Sabre\VObject\Component\VCalendar; use function abs; class BookingCalendarWriter { - /** @var IConfig */ private $config; @@ -53,19 +33,22 @@ class BookingCalendarWriter { /** @var ISecureRandom */ private $random; - /** @var IL10N */ - private $l10n; - - public function __construct(IConfig $config, - IManager $manager, - IUserManager $userManager, - ISecureRandom $random, - IL10N $l10n) { + + private TimezoneGenerator $timezoneGenerator; + + public function __construct( + IConfig $config, + IManager $manager, + IUserManager $userManager, + ISecureRandom $random, + TimezoneGenerator $timezoneGenerator, + private IFactory $l10nFactory, + ) { $this->config = $config; $this->manager = $manager; $this->userManager = $userManager; $this->random = $random; - $this->l10n = $l10n; + $this->timezoneGenerator = $timezoneGenerator; } private function secondsToIso8601Duration(int $secs): string { @@ -73,13 +56,13 @@ class BookingCalendarWriter { $hour = 60 * 60; $minute = 60; if ($secs % $day === 0) { - return 'PT' . $secs / $day . 'S'; + return 'PT' . (int)($secs / $day) . 'S'; } if ($secs % $hour === 0) { - return 'PT' . $secs / $hour . 'H'; + return 'PT' . (int)($secs / $hour) . 'H'; } if ($secs % $minute === 0) { - return 'PT' . $secs / $minute . 'M'; + return 'PT' . (int)($secs / $minute) . 'M'; } return 'PT' . $secs . 'S'; } @@ -87,35 +70,49 @@ class BookingCalendarWriter { /** * @param AppointmentConfig $config * @param DateTimeImmutable $start - * @param string $name + * @param string $displayName * @param string $email - * @param string $description + * @param string|null $description * + * @return string * @throws RuntimeException - * */ - public function write(AppointmentConfig $config, DateTimeImmutable $start, string $displayName, string $email, ?string $description = null) : void { + public function write(AppointmentConfig $config, + DateTimeImmutable $start, + string $displayName, + string $email, + string $timezone, ?string $description = null, + ?string $location = null) : string { $calendar = current($this->manager->getCalendarsForPrincipal($config->getPrincipalUri(), [$config->getTargetCalendarUri()])); - if (!$calendar || !($calendar instanceof ICreateFromString)) { + if (!($calendar instanceof ICreateFromString)) { throw new RuntimeException('Could not find a public writable calendar for this principal'); } - $organizer = $this->userManager->get($config->getUserId()); if ($organizer === null) { throw new RuntimeException('Organizer not registered user for this instance'); } + $lang = $this->config->getUserValue($organizer->getUID(), 'core', 'lang', null); + $l10n = $this->l10nFactory->get('calendar', $lang); + $vcalendar = new VCalendar([ 'CALSCALE' => 'GREGORIAN', 'VERSION' => '2.0', 'VEVENT' => [ - 'SUMMARY' => $config->getName(), + // TRANSLATORS Title for event appoinment, first the attendee name, then the appointment name + 'SUMMARY' => $l10n->t('%1$s - %2$s', [$displayName, $config->getName()]), 'STATUS' => 'CONFIRMED', 'DTSTART' => $start, 'DTEND' => $start->setTimestamp($start->getTimestamp() + ($config->getLength())) ] ]); + $end = $start->getTimestamp() + $config->getLength(); + $tz = $this->timezoneGenerator->generateVTimezone($timezone, $start->getTimestamp(), $end); + if ($tz) { + $vcalendar->add($tz); + } + if (!empty($description)) { $vcalendar->VEVENT->add('DESCRIPTION', $description); } @@ -161,11 +158,15 @@ class BookingCalendarWriter { ); if ($defaultReminder !== 'none') { $alarm = $vcalendar->createComponent('VALARM'); - $alarm->add($vcalendar->createProperty('TRIGGER', '-' . $this->secondsToIso8601Duration(abs((int) $defaultReminder)), ['RELATED' => 'START'])); + $alarm->add($vcalendar->createProperty('TRIGGER', '-' . $this->secondsToIso8601Duration(abs((int)$defaultReminder)), ['RELATED' => 'START'])); $alarm->add($vcalendar->createProperty('ACTION', 'DISPLAY')); $vcalendar->VEVENT->add($alarm); } + if ($location !== null) { + $vcalendar->VEVENT->add('LOCATION', $location); + } + $vcalendar->VEVENT->add('X-NC-APPOINTMENT', $config->getToken()); $filename = $this->random->generate(32, ISecureRandom::CHAR_ALPHANUMERIC); @@ -173,11 +174,11 @@ class BookingCalendarWriter { try { $calendar->createFromString($filename . '.ics', $vcalendar->serialize()); } catch (CalendarException $e) { - throw new RuntimeException('Could not write event for appointment config id ' . $config->getId(). ' to calendar: ' . $e->getMessage(), 0, $e); + throw new RuntimeException('Could not write event for appointment config id ' . $config->getId() . ' to calendar: ' . $e->getMessage(), 0, $e); } if ($config->getPreparationDuration() !== 0) { - $string = $this->l10n->t('Prepare for %s', [$config->getName()]); + $string = $l10n->t('Prepare for %s', [$config->getName()]); $prepStart = $start->setTimestamp($start->getTimestamp() - $config->getPreparationDuration()); $prepCalendar = new VCalendar([ 'CALSCALE' => 'GREGORIAN', @@ -189,6 +190,10 @@ class BookingCalendarWriter { 'DTEND' => $start ] ]); + $tz = $this->timezoneGenerator->generateVTimezone($timezone, $prepStart->getTimestamp(), $start->getTimestamp()); + if ($tz) { + $prepCalendar->add($tz); + } $prepCalendar->VEVENT->add('RELATED-TO', $vcalendar->VEVENT->{'UID'}); $prepCalendar->VEVENT->add('RELTYPE', 'PARENT'); @@ -199,12 +204,12 @@ class BookingCalendarWriter { try { $calendar->createFromString($prepFileName . '.ics', $prepCalendar->serialize()); } catch (CalendarException $e) { - throw new RuntimeException('Could not write event for appointment config id ' . $config->getId(). ' to calendar: ' . $e->getMessage(), 0, $e); + throw new RuntimeException('Could not write event for appointment config id ' . $config->getId() . ' to calendar: ' . $e->getMessage(), 0, $e); } } if ($config->getFollowupDuration() !== 0) { - $string = $this->l10n->t('Follow up for %s', [$config->getName()]); + $string = $l10n->t('Follow up for %s', [$config->getName()]); $followupStart = $start->setTimestamp($start->getTimestamp() + $config->getLength()); $followUpEnd = $followupStart->setTimestamp($followupStart->getTimestamp() + $config->getFollowupDuration()); $followUpCalendar = new VCalendar([ @@ -218,6 +223,11 @@ class BookingCalendarWriter { ] ]); + $tz = $this->timezoneGenerator->generateVTimezone($timezone, $followupStart->getTimestamp(), $followUpEnd->getTimestamp()); + if ($tz) { + $followUpCalendar->add($tz); + } + $followUpCalendar->VEVENT->add('RELATED-TO', $vcalendar->VEVENT->{'UID'}); $followUpCalendar->VEVENT->add('RELTYPE', 'PARENT'); $followUpCalendar->VEVENT->add('X-NC-POST-APPOINTMENT', $config->getToken()); @@ -227,8 +237,9 @@ class BookingCalendarWriter { try { $calendar->createFromString($followUpFilename . '.ics', $followUpCalendar->serialize()); } catch (CalendarException $e) { - throw new RuntimeException('Could not write event for appointment config id ' . $config->getId(). ' to calendar: ' . $e->getMessage(), 0, $e); + throw new RuntimeException('Could not write event for appointment config id ' . $config->getId() . ' to calendar: ' . $e->getMessage(), 0, $e); } } + return $vcalendar->serialize(); } } diff --git a/lib/Service/Appointments/BookingService.php b/lib/Service/Appointments/BookingService.php index e1ce8852c7fd2f72e7264509f8d98e3803864b08..fd62ce3914611473a8f1393971401a19a6787a07 100644 --- a/lib/Service/Appointments/BookingService.php +++ b/lib/Service/Appointments/BookingService.php @@ -2,28 +2,9 @@ declare(strict_types=1); /** - * Calendar App - * - * @copyright 2021 Anna Larch - * - * @author Anna Larch - * @author Richard Steinmetz - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ - namespace OCA\Calendar\Service\Appointments; use DateTimeImmutable; @@ -32,6 +13,7 @@ use InvalidArgumentException; use OCA\Calendar\Db\AppointmentConfig; use OCA\Calendar\Db\Booking; use OCA\Calendar\Db\BookingMapper; +use OCA\Calendar\Events\BeforeAppointmentBookedEvent; use OCA\Calendar\Exception\ClientException; use OCA\Calendar\Exception\NoSlotFoundException; use OCA\Calendar\Exception\ServiceException; @@ -39,13 +21,13 @@ use OCP\AppFramework\Db\DoesNotExistException; use OCP\AppFramework\Http; use OCP\DB\Exception; use OCP\DB\Exception as DbException; +use OCP\EventDispatcher\IEventDispatcher; use OCP\IUser; use OCP\Security\ISecureRandom; use Psr\Log\LoggerInterface; use function count; class BookingService { - /** @var int the expiry of a booking confirmation */ public const EXPIRY = 86400; @@ -73,18 +55,22 @@ class BookingService { /** @var MailService */ private $mailService; + /** @var IEventDispatcher */ + private $eventDispatcher; + /** @var LoggerInterface */ private $logger; public function __construct(AvailabilityGenerator $availabilityGenerator, - SlotExtrapolator $extrapolator, - DailyLimitFilter $dailyLimitFilter, - EventConflictFilter $eventConflictFilter, - BookingMapper $bookingMapper, - BookingCalendarWriter $calendarWriter, - ISecureRandom $random, - MailService $mailService, - LoggerInterface $logger) { + SlotExtrapolator $extrapolator, + DailyLimitFilter $dailyLimitFilter, + EventConflictFilter $eventConflictFilter, + BookingMapper $bookingMapper, + BookingCalendarWriter $calendarWriter, + ISecureRandom $random, + MailService $mailService, + IEventDispatcher $eventDispatcher, + LoggerInterface $logger) { $this->availabilityGenerator = $availabilityGenerator; $this->extrapolator = $extrapolator; $this->dailyLimitFilter = $dailyLimitFilter; @@ -93,6 +79,7 @@ class BookingService { $this->bookingMapper = $bookingMapper; $this->random = $random; $this->mailService = $mailService; + $this->eventDispatcher = $eventDispatcher; $this->logger = $logger; } @@ -112,9 +99,39 @@ class BookingService { throw new ClientException('Could not make sense of booking times'); } - $this->calendarWriter->write($config, $startObj, $booking->getDisplayName(), $booking->getEmail(), $booking->getDescription()); + // TODO: inject broker here and remove indirection + $this->eventDispatcher->dispatchTyped( + new BeforeAppointmentBookedEvent( + $booking, + $config, + ) + ); + + $calendar = $this->calendarWriter->write( + $config, + $startObj, + $booking->getDisplayName(), + $booking->getEmail(), + $booking->getTimezone(), + $booking->getDescription(), + $config->getCreateTalkRoom() ? $booking->getTalkUrl() : $config->getLocation(), + ); $booking->setConfirmed(true); $this->bookingMapper->update($booking); + + try { + $this->mailService->sendBookingInformationEmail($booking, $config, $calendar); + $this->mailService->sendOrganizerBookingInformationEmail($booking, $config, $calendar); + } catch (ServiceException $e) { + $this->logger->info('Could not send booking emails after confirmation from user ' . $booking->getEmail(), ['exception' => $e, 'app' => 'calendar-appointments']); + } + + try { + $this->mailService->sendOrganizerBookingInformationNotification($booking, $config); + } catch (\InvalidArgumentException $e) { + $this->logger->warning('Could not send booking information notification after confirmation by user ' . $booking->getEmail(), ['exception' => $e, 'app' => 'calendar-appointments']); + } + return $booking; } @@ -167,10 +184,13 @@ class BookingService { if ($config->getFutureLimit() !== null) { /** @var int $maxEndTime */ $maxEndTime = time() + $config->getFutureLimit(); + $this->logger->debug('Maximum end time: ' . $maxEndTime, ['app' => 'calendar-appointments']); if ($startTime > $maxEndTime) { + $this->logger->debug('Start time is higher than maximum end time. Start time: ' . $startTime, ['app' => 'calendar-appointments']); return []; } if ($endTime > $maxEndTime) { + $this->logger->debug('End time is higher than maximum end time. Setting end time to maximum end time. End time: ' . $endTime, ['app' => 'calendar-appointments']); $endTime = $maxEndTime; } } @@ -188,7 +208,8 @@ class BookingService { 'availabilityIntervals' => count($availabilityIntervals), 'allPossibleSlots' => count($allPossibleSlots), 'filteredByDailyLimit' => count($filteredByDailyLimit), - 'available' => count($available) + 'available' => count($available), + 'app' => 'calendar-appointments', ]); return $available; diff --git a/lib/Service/Appointments/DailyLimitFilter.php b/lib/Service/Appointments/DailyLimitFilter.php index fc0e97f9be071a80e1a9e81fe0e93106a3256575..21bf2e0261af30ba49d5fd531cdbdbd8dff5093f 100644 --- a/lib/Service/Appointments/DailyLimitFilter.php +++ b/lib/Service/Appointments/DailyLimitFilter.php @@ -2,42 +2,29 @@ declare(strict_types=1); -/* - * @copyright 2021 Christoph Wurst - * - * @author 2021 Christoph Wurst - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . +/** + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Service\Appointments; -use OC\Calendar\CalendarQuery; use OCA\Calendar\Db\AppointmentConfig; +use OCP\Calendar\ICalendarQuery; use OCP\Calendar\IManager; +use Psr\Log\LoggerInterface; use function array_filter; use function array_values; use function count; class DailyLimitFilter { - /** @var IManager */ private $calendarManger; - public function __construct(IManager $calendarManger) { + public function __construct( + IManager $calendarManger, + private LoggerInterface $logger, + ) { $this->calendarManger = $calendarManger; } @@ -48,6 +35,10 @@ class DailyLimitFilter { * @return Interval[] */ public function filter(AppointmentConfig $config, array $slots): array { + $this->logger->debug('Slots before daily limit filtering:' . count($slots), ['app' => 'calendar-appointments']); + if (empty($slots)) { + return []; + } // 0. If there is no limit then we don't have to filter anything if ($config->getDailyMax() === null) { return $slots; @@ -62,7 +53,7 @@ class DailyLimitFilter { } // 2. Check what days are bookable - /** @var CalendarQuery $query */ + /** @var ICalendarQuery $query */ $query = $this->calendarManger->newQuery($config->getPrincipalUri()); // Note: the query is not limited to the target calendar so that the user can // 1. Move the event to another calendar @@ -91,10 +82,13 @@ class DailyLimitFilter { } // 3. Filter out the slots that are on an unavailable day - return array_values(array_filter($slots, function (Interval $slot) use ($available): bool { + $available = array_values(array_filter($slots, function (Interval $slot) use ($available): bool { $startOfDay = $slot->getStartAsObject()->setTime(0, 0, 0, 0); $ts = $startOfDay->getTimestamp(); return $available[$ts]; })); + + $this->logger->debug('Slots after daily limit filtering:' . count($available), ['app' => 'calendar-appointments']); + return $available; } } diff --git a/lib/Service/Appointments/EventConflictFilter.php b/lib/Service/Appointments/EventConflictFilter.php index 0fc4d2aebee8841ea4e831eab7c299c299d10fff..2a491867417f77947b847c5c71c1f18ba664ed5c 100644 --- a/lib/Service/Appointments/EventConflictFilter.php +++ b/lib/Service/Appointments/EventConflictFilter.php @@ -2,25 +2,9 @@ declare(strict_types=1); -/* - * @copyright 2021 Christoph Wurst - * - * @author 2021 Christoph Wurst - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . +/** + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Service\Appointments; @@ -33,13 +17,12 @@ use Psr\Log\LoggerInterface; use function array_filter; class EventConflictFilter { - /** @var IManager */ private $calendarManager; private $logger; public function __construct(IManager $calendarManager, - LoggerInterface $logger) { + LoggerInterface $logger) { $this->calendarManager = $calendarManager; $this->logger = $logger; } @@ -55,6 +38,10 @@ class EventConflictFilter { * @return Interval[] */ public function filter(AppointmentConfig $config, array $slots): array { + $this->logger->debug('Slots before event conflict filtering:' . count($slots), ['app' => 'calendar-appointments']); + if (empty($slots)) { + return []; + } $query = $this->calendarManager->newQuery($config->getPrincipalUri()); foreach ($config->getCalendarFreebusyUrisAsArray() as $uri) { $query->addSearchCalendar($uri); @@ -64,7 +51,7 @@ class EventConflictFilter { $query->addType('VEVENT'); $preparationDuration = DateInterval::createFromDateString($config->getPreparationDuration() . ' seconds'); $followUpDuration = DateInterval::createFromDateString($config->getFollowupDuration() . ' seconds'); - return array_filter($slots, function (Interval $slot) use ($followUpDuration, $preparationDuration, $query, $config): bool { + $available = array_filter($slots, function (Interval $slot) use ($followUpDuration, $preparationDuration, $query, $config): bool { $query->setTimerangeStart($slot->getStartAsObject()->sub($preparationDuration)); $query->setTimerangeEnd($slot->getEndAsObject()->add($followUpDuration)); @@ -82,7 +69,7 @@ class EventConflictFilter { $this->logger->debug('Appointment config ' . $config->getToken() . ' is looking within {start} and {followup} in calendar {calendarUri}. Conflicting UIDs are {uids}', [ 'start' => $slot->getStartAsObject()->sub($preparationDuration)->format(DateTimeInterface::ATOM), - 'end' => $slot->getEndAsObject()->add($followUpDuration)->format(DateTimeInterface::ATOM), + 'followup' => $slot->getEndAsObject()->add($followUpDuration)->format(DateTimeInterface::ATOM), 'calendarUri' => $config->getTargetCalendarUri(), 'uids' => implode(' : ', $uids) ]); @@ -90,5 +77,8 @@ class EventConflictFilter { // If there is at least one event at this time then the slot is taken return empty($objects); }); + + $this->logger->debug('Slots after event conflict filtering:' . count($available), ['app' => 'calendar-appointments']); + return $available; } } diff --git a/lib/Service/Appointments/Interval.php b/lib/Service/Appointments/Interval.php index 6af8a67b7a9caf173e622b74e4d541ddd9fac694..abf2780dc6a098ead949e008961df0a2f11209ec 100644 --- a/lib/Service/Appointments/Interval.php +++ b/lib/Service/Appointments/Interval.php @@ -1,29 +1,10 @@ - * - * @author Anna Larch - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ - namespace OCA\Calendar\Service\Appointments; use DateTimeImmutable; @@ -33,7 +14,6 @@ use JsonSerializable; * @psalm-immutable */ class Interval implements JsonSerializable { - /** @var int */ private $start; @@ -61,6 +41,7 @@ class Interval implements JsonSerializable { return (new DateTimeImmutable())->setTimestamp($this->end); } + #[\Override] public function jsonSerialize(): array { return [ 'start' => $this->start, diff --git a/lib/Service/Appointments/MailService.php b/lib/Service/Appointments/MailService.php index 8e8050e298ff58727e7ce8009359a4b3ad456714..3d8abcaf4b8c44bf71180531ee3ef38b389546be 100644 --- a/lib/Service/Appointments/MailService.php +++ b/lib/Service/Appointments/MailService.php @@ -1,48 +1,32 @@ - * - * @author Anna Larch - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ - namespace OCA\Calendar\Service\Appointments; use Exception; -use OC\URLGenerator; use OCA\Calendar\Db\AppointmentConfig; use OCA\Calendar\Db\Booking; use OCA\Calendar\Exception\ServiceException; use OCP\Defaults; +use OCP\IConfig; use OCP\IDateTimeFormatter; use OCP\IL10N; +use OCP\IURLGenerator; +use OCP\IUser; use OCP\IUserManager; use OCP\L10N\IFactory; use OCP\Mail\IEMailTemplate; use OCP\Mail\IMailer; +use OCP\Notification\IManager; use Psr\Log\LoggerInterface; +use function htmlspecialchars; use function implode; class MailService { - /** @var IUserManager */ private $userManager; /** @var IMailer */ @@ -53,21 +37,27 @@ class MailService { private $defaults; /** @var LoggerInterface */ private $logger; - /** @var URLGenerator */ + /** @var IURLGenerator */ private $urlGenerator; /** @var IDateTimeFormatter */ private $dateFormatter; /** @var IFactory */ private $lFactory; - public function __construct(IMailer $mailer, - IUserManager $userManager, - IL10N $l10n, - Defaults $defaults, - LoggerInterface $logger, - URLGenerator $urlGenerator, - IDateTimeFormatter $dateFormatter, - IFactory $lFactory) { + private IManager $notificationManager; + + public function __construct( + IMailer $mailer, + IUserManager $userManager, + IL10N $l10n, + Defaults $defaults, + LoggerInterface $logger, + IURLGenerator $urlGenerator, + IDateTimeFormatter $dateFormatter, + IFactory $lFactory, + IManager $notificationManager, + private IConfig $userConfig, + ) { $this->userManager = $userManager; $this->mailer = $mailer; $this->l10n = $l10n; @@ -76,6 +66,7 @@ class MailService { $this->urlGenerator = $urlGenerator; $this->dateFormatter = $dateFormatter; $this->lFactory = $lFactory; + $this->notificationManager = $notificationManager; } /** @@ -84,6 +75,7 @@ class MailService { * @throws ServiceException */ public function sendConfirmationEmail(Booking $booking, AppointmentConfig $config): void { + $user = $this->userManager->get($config->getUserId()); if ($user === null) { @@ -91,9 +83,11 @@ class MailService { } $fromEmail = $user->getEMailAddress(); + if ($fromEmail === null) { + throw new ServiceException('Organizer has no email set'); + } $fromName = $user->getDisplayName(); - $sys = $this->getSysEmail(); $message = $this->mailer->createMessage() ->setFrom([$sys => $fromName]) @@ -105,23 +99,28 @@ class MailService { $template->addHeader(); //Subject - $subject = $this->l10n->t('Your appointment "%s" needs confirmation', [$config->getName()]); + $subject = $this->l10n->t('Your appointment "%s" with %s needs confirmation', [$config->getName(), $user->getDisplayName()]); $template->setSubject($subject); // Heading - $summary = $this->l10n->t("Dear %s, please confirm your booking", [$booking->getDisplayName()]); + $summary = $this->l10n->t('Dear %s, please confirm your booking', [$booking->getDisplayName()]); $template->addHeading($summary); - // Create Booking overview - $this->addBulletList($template, $this->l10n, $booking, $config->getLocation()); - $bookingUrl = $this->urlGenerator->linkToRouteAbsolute('calendar.booking.confirmBooking', ['token' => $booking->getToken()]); $template->addBodyButton($this->l10n->t('Confirm'), $bookingUrl); + $template->addBodyListItem($user->getDisplayName(), $this->l10n->t('Appointment with:')); + if (!empty($config->getDescription())) { + $template->addBodyListItem($config->getDescription(), $this->l10n->t('Description:')); + } + + // Create Booking overview + $this->addBulletList($template, $this->l10n, $booking, $config, false); + $bodyText = $this->l10n->t('This confirmation link expires in %s hours.', [(BookingService::EXPIRY / 3600)]); $template->addBodyText($bodyText); - $bodyText = $this->l10n->t("If you wish to cancel the appointment after all, please contact your organizer."); + $bodyText = $this->l10n->t('If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page.'); $template->addBodyText($bodyText); $template->addFooter(); @@ -132,40 +131,130 @@ class MailService { try { $failed = $this->mailer->send($message); if (count($failed) > 0) { - $this->logger->warning('Mail delivery failed for some recipients.'); + $this->logger->warning('Mail delivery failed for some recipients.', ['app' => 'calendar-appointments']); foreach ($failed as $fail) { - $this->logger->debug('Failed to deliver email to ' . $fail); + $this->logger->debug('Failed to deliver email to ' . $fail, ['app' => 'calendar-appointments']); } throw new ServiceException('Could not send mail for recipient(s) ' . implode(', ', $failed)); } } catch (Exception $ex) { - $this->logger->error($ex->getMessage(), ['exception' => $ex]); + $this->logger->error($ex->getMessage(), ['exception' => $ex, 'app' => 'calendar-appointments']); + throw new ServiceException('Could not send mail: ' . $ex->getMessage(), $ex->getCode(), $ex); + } + } + + /** + * @param Booking $booking + * @param AppointmentConfig $config + * @throws ServiceException + */ + public function sendBookingInformationEmail(Booking $booking, AppointmentConfig $config, string $calendar): void { + $user = $this->userManager->get($config->getUserId()); + + if ($user === null) { + throw new ServiceException('Could not find organizer'); + } + + $fromEmail = $user->getEMailAddress(); + if ($fromEmail === null) { + throw new ServiceException('Organizer has no email set'); + } + $fromName = $user->getDisplayName(); + + $sys = $this->getSysEmail(); + $message = $this->mailer->createMessage() + ->setFrom([$sys => $fromName]) + ->setTo([$booking->getEmail() => $booking->getDisplayName()]) + ->setReplyTo([$fromEmail => $fromName]); + + + $template = $this->mailer->createEMailTemplate('calendar.confirmAppointment'); + $template->addHeader(); + + // Subject + $subject = $this->l10n->t('Your appointment "%s" with %s has been accepted', [$config->getName(), $user->getDisplayName()]); + $template->setSubject($subject); + + // Heading + $summary = $this->l10n->t('Dear %s, your booking has been accepted.', [$booking->getDisplayName()]); + $template->addHeading($summary); + + $template->addBodyListItem($user->getDisplayName(), $this->l10n->t('Appointment with:')); + if (!empty($config->getDescription())) { + $template->addBodyListItem($config->getDescription(), $this->l10n->t('Description:')); + } + + // Create Booking overview + $this->addBulletList($template, $this->l10n, $booking, $config, false); + + $bodyText = $this->l10n->t('If you wish to cancel the appointment after all, please contact your organizer by replying to this email or by visiting their profile page.'); + $template->addBodyText($bodyText); + + $template->addFooter(); + + $attachment = $this->mailer->createAttachment($calendar, 'appointment.ics', 'text/calendar'); + $message->attach($attachment); + $message->useTemplate($template); + + + try { + $failed = $this->mailer->send($message); + if (count($failed) > 0) { + $this->logger->warning('Mail delivery failed for some recipients.', ['app' => 'calendar-appointments']); + foreach ($failed as $fail) { + $this->logger->debug('Failed to deliver email to ' . $fail, ['app' => 'calendar-appointments']); + } + throw new ServiceException('Could not send mail for recipient(s) ' . implode(', ', $failed)); + } + } catch (Exception $ex) { + $this->logger->error($ex->getMessage(), ['exception' => $ex, 'app' => 'calendar-appointments']); throw new ServiceException('Could not send mail: ' . $ex->getMessage(), $ex->getCode(), $ex); } } private function addBulletList(IEMailTemplate $template, - IL10N $l10n, - Booking $booking, - ?string $location = null):void { - $template->addBodyListItem($booking->getDisplayName(), $l10n->t('Appointment:')); + IL10N $l10n, + Booking $booking, + AppointmentConfig $config, + bool $recipient): void { + $template->addBodyListItem($booking->getDisplayName(), $l10n->t('Appointment for:')); + + // determine timezone depending on who is getting the message (Requestee/Requester) + $tzid = ($recipient) ? $config->getAvailabilityAsArray()['timezoneId'] : $booking->getTimezone(); + $dtstart = new \DateTime('now', new \DateTimeZone($booking->getTimezone())); // generate DateTime with booking time zone + $dtstart->setTimestamp($booking->getStart()); // set booking time stamp $l = $this->lFactory->findGenericLanguage(); + $relativeTimezone = new \DateTimeZone($tzid); $relativeDateTime = $this->dateFormatter->formatDateTimeRelativeDay( - $booking->getStart(), + $dtstart, 'long', 'short', - new \DateTimeZone($booking->getTimezone()), + $relativeTimezone, $this->lFactory->get('calendar', $l) ); - $template->addBodyListItem($relativeDateTime, $l10n->t('Date:')); + $timestring = $relativeDateTime . ' (' . $relativeTimezone->getName() . ')'; + + $template->addBodyListItem($timestring, $l10n->t('Date:')); - if (!empty($location)) { - $template->addBodyListItem($location, $l10n->t('Where:')); + if (!$booking->isConfirmed() && $config->getCreateTalkRoom()) { + $template->addBodyListItem($l10n->t('You will receive a link with the confirmation email'), $l10n->t('Where:')); + } elseif (!$booking->isConfirmed() && !empty($config->getLocation())) { + $template->addBodyListItem($config->getLocation(), $l10n->t('Where:')); + } elseif ($booking->isConfirmed() && $booking->getTalkUrl() !== null) { + $template->addBodyListItem( + '' . $booking->getTalkUrl() . '', + $l10n->t('Where:'), + '', + $booking->getTalkUrl(), + ); + } elseif ($booking->isConfirmed() && !empty($config->getLocation())) { + $template->addBodyListItem($config->getLocation(), $l10n->t('Where:')); } + if (!empty($booking->getDescription())) { - $template->addBodyListItem($booking->getDescription(), $l10n->t('Description:')); + $template->addBodyListItem($booking->getDescription(), $l10n->t('Comment:')); } } @@ -176,4 +265,105 @@ class MailService { $instanceName = $this->defaults->getName(); return \OCP\Util::getDefaultEmailAddress('appointments-noreply'); } + + public function sendOrganizerBookingInformationEmail(Booking $booking, AppointmentConfig $config, string $calendar): void { + /** @var IUser $user */ + $user = $this->userManager->get($config->getUserId()); + if ($user === null) { + throw new ServiceException('Could not find organizer'); + } + + $toEmail = $user->getEMailAddress(); + if ($toEmail === null) { + throw new ServiceException('Organizer has no email set'); + } + $toName = $user->getDisplayName(); + + $sys = $this->getSysEmail(); + $message = $this->mailer->createMessage() + ->setFrom([$sys => $booking->getDisplayName()]) + ->setTo([$toEmail => $toName]); + + + $template = $this->mailer->createEMailTemplate('calendar.confirmOrganizer'); + $template->addHeader(); + + $lang = $this->userConfig->getUserValue($user->getUID(), 'core', 'lang', null); + $l10n = $this->lFactory->get('calendar', $lang); + // Subject + $subject = $l10n->t('You have a new appointment booking "%s" from %s', [$config->getName(), $booking->getDisplayName()]); + $template->setSubject($subject); + + // Heading + $summary = $l10n->t('Dear %s, %s (%s) booked an appointment with you.', [$user->getDisplayName(), $booking->getDisplayName(), $booking->getEmail()]); + $template->addHeading($summary); + + $template->addBodyListItem($booking->getDisplayName() . ' (' . $booking->getEmail() . ')', $l10n->t('Appointment with:')); + if (!empty($config->getDescription())) { + $template->addBodyListItem($config->getDescription(), $l10n->t('Description:')); + } + + // Create Booking overview + $this->addBulletList($template, $l10n, $booking, $config, true); + $template->addFooter(); + + $attachment = $this->mailer->createAttachment($calendar, 'appointment.ics', 'text/calendar'); + $message->attach($attachment); + $message->useTemplate($template); + + + try { + $failed = $this->mailer->send($message); + if (count($failed) > 0) { + $this->logger->warning('Mail delivery failed for some recipients.', ['app' => 'calendar-appointments']); + foreach ($failed as $fail) { + $this->logger->debug('Failed to deliver email to ' . $fail, ['app' => 'calendar-appointments']); + } + throw new ServiceException('Could not send mail for recipient(s) ' . implode(', ', $failed)); + } + } catch (Exception $ex) { + $this->logger->error('Could not send appointment organizer email: ' . $ex->getMessage(), ['exception' => $ex, 'app' => 'calendar-appointments']); + throw new ServiceException('Could not send mail: ' . $ex->getMessage(), $ex->getCode(), $ex); + } + } + + public function sendOrganizerBookingInformationNotification(Booking $booking, AppointmentConfig $config): void { + $tzid = $config->getAvailabilityAsArray()['timezoneId']; // extract time zone from appointment configuration + $dtstart = new \DateTime('now', new \DateTimeZone($booking->getTimezone())); // generate DateTime with booking time zone + $dtstart->setTimestamp($booking->getStart()); // set booking time stamp + + $relativeDateTime = $this->dateFormatter->formatDateTimeRelativeDay( + $dtstart, + 'long', + 'short', + new \DateTimeZone($tzid), + $this->lFactory->get('calendar') + ); + + $notification = $this->notificationManager->createNotification(); + $notification + ->setApp('calendar') + ->setUser($config->getUserId()) + ->setObject('booking', (string)$booking->getId()) + ->setSubject('booking_accepted', + [ + 'type' => 'highlight', + 'id' => $booking->getId(), + 'name' => $config->getName(), + 'link' => $config->getPrincipalUri() + ]) + ->setDateTime(new \DateTime()) + ->setMessage('booking_accepted_message', + [ + 'type' => 'highlight', + 'id' => $booking->getId(), + 'display_name' => $booking->getDisplayName(), + 'config_display_name' => $config->getName(), + 'link' => $config->getPrincipalUri(), + 'email' => $booking->getEmail(), + 'date_time' => $relativeDateTime + ] + ); + $this->notificationManager->notify($notification); + } } diff --git a/lib/Service/Appointments/SlotExtrapolator.php b/lib/Service/Appointments/SlotExtrapolator.php index 6c3b0fe7a19c6b3d4ec58f04b6e3dc8468742bab..e850a6f71e175581dee493becae7f4c086858c14 100644 --- a/lib/Service/Appointments/SlotExtrapolator.php +++ b/lib/Service/Appointments/SlotExtrapolator.php @@ -1,43 +1,37 @@ - * - * @author 2021 Christoph Wurst - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . +/** + * SPDX-FileCopyrightText: 2021 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ - namespace OCA\Calendar\Service\Appointments; use OCA\Calendar\Db\AppointmentConfig; +use Psr\Log\LoggerInterface; class SlotExtrapolator { + public function __construct( + private LoggerInterface $logger, + ) { + + } /** * @param AppointmentConfig $config * @param Interval[] $availabilityIntervals - * @param int $to * * @return Interval[] */ public function extrapolate(AppointmentConfig $config, - array $availabilityIntervals): array { + array $availabilityIntervals): array { + $this->logger->debug('Intervals before extrapolating:' . count($availabilityIntervals), ['app' => 'calendar-appointments']); + if (empty($availabilityIntervals)) { + return []; + } + foreach ($availabilityIntervals as $availabilityInterval) { + $this->logger->debug('Interval start: ' . $availabilityInterval->getStart() . ', interval end: ' . $availabilityInterval->getEnd(), ['app' => 'calendar-appointments']); + } $increment = $config->getIncrement(); $length = $config->getLength(); $slots = []; @@ -51,6 +45,7 @@ class SlotExtrapolator { } } + $this->logger->debug('Slots after extrapolating:' . count($slots), ['app' => 'calendar-appointments']); return $slots; } } diff --git a/lib/Service/Appointments/TimezoneGenerator.php b/lib/Service/Appointments/TimezoneGenerator.php new file mode 100644 index 0000000000000000000000000000000000000000..1b6cb0044f25e725ff2b25b8656edbc7615d6e7f --- /dev/null +++ b/lib/Service/Appointments/TimezoneGenerator.php @@ -0,0 +1,100 @@ +getTransitions($from - $year, $to + $year); + + $vcalendar = new VCalendar(); + $vtimezone = $vcalendar->createComponent('VTIMEZONE'); + $vtimezone->TZID = $timezone; + + $standard = $daylightStart = null; + foreach ($transitions as $i => $trans) { + $component = null; + // daylight saving time definition + if ($trans['isdst']) { + $daylightDefinition = $trans['ts']; + $daylightStart = $vcalendar->createComponent('DAYLIGHT'); + $component = $daylightStart; + } + // standard time definition + else { + $standardDefinition = $trans['ts']; + $standard = $vcalendar->createComponent('STANDARD'); + $component = $standard; + } + + if ($component) { + if ($i === 0) { + $date = new \DateTime('19700101T000000'); + $tzfrom = $trans['offset'] / 3600; + $offset = $tzfrom; + } else { + $date = new \DateTime($trans['time']); + $offset = $trans['offset'] / 3600; + } + + $component->DTSTART = $date->format('Ymd\THis'); + $component->TZOFFSETFROM = sprintf('%s%02d%02d', $tzfrom >= 0 ? '+' : '-', abs(floor($tzfrom)), ((float)$tzfrom - floor($tzfrom)) * 60.0); + $component->TZOFFSETTO = sprintf('%s%02d%02d', $offset >= 0 ? '+' : '-', abs(floor($offset)), ((float)$offset - floor($offset)) * 60.0); + + // add abbreviated timezone name if available + if (!empty($trans['abbr'])) { + $component->TZNAME = $trans['abbr']; + } + + $tzfrom = $offset; + $vtimezone->add($component); + } + + // we covered the entire date range + if ($standard && $daylightStart && min($standardDefinition, $daylightDefinition) < $from && max($standardDefinition, $daylightDefinition) > $to) { + break; + } + } + + // add X-MICROSOFT-CDO-TZID if available + $microsoftExchangeMap = array_flip(TimeZoneUtil::$microsoftExchangeMap); + if (!empty($microsoftExchangeMap) && array_key_exists($tz->getName(), $microsoftExchangeMap)) { + $vtimezone->add('X-MICROSOFT-CDO-TZID', $microsoftExchangeMap[$tz->getName()]); + } + + return $vtimezone; + } +} diff --git a/lib/Service/CalendarInitialStateService.php b/lib/Service/CalendarInitialStateService.php new file mode 100644 index 0000000000000000000000000000000000000000..861ca2028717a32329190b7f3dd2371d153e72de --- /dev/null +++ b/lib/Service/CalendarInitialStateService.php @@ -0,0 +1,120 @@ +config->getAppValue($this->appName, 'eventLimit', 'yes'); + $defaultInitialView = $this->config->getAppValue($this->appName, 'currentView', 'dayGridMonth'); + $defaultShowWeekends = $this->config->getAppValue($this->appName, 'showWeekends', 'yes'); + $defaultWeekNumbers = $this->config->getAppValue($this->appName, 'showWeekNr', 'no'); + $defaultSkipPopover = $this->config->getAppValue($this->appName, 'skipPopover', 'no'); + $defaultTimezone = $this->config->getAppValue($this->appName, 'timezone', 'automatic'); + $defaultSlotDuration = $this->config->getAppValue($this->appName, 'slotDuration', '00:30:00'); + $defaultDefaultReminder = $this->config->getAppValue($this->appName, 'defaultReminder', 'none'); + $defaultShowTasks = $this->config->getAppValue($this->appName, 'showTasks', 'yes'); + + $appVersion = $this->config->getAppValue($this->appName, 'installed_version', ''); + $eventLimit = $this->config->getUserValue($this->userId, $this->appName, 'eventLimit', $defaultEventLimit) === 'yes'; + $firstRun = $this->config->getUserValue($this->userId, $this->appName, 'firstRun', 'yes') === 'yes'; + $initialView = $this->getView($this->config->getUserValue($this->userId, $this->appName, 'currentView', $defaultInitialView)); + $showWeekends = $this->config->getUserValue($this->userId, $this->appName, 'showWeekends', $defaultShowWeekends) === 'yes'; + $showWeekNumbers = $this->config->getUserValue($this->userId, $this->appName, 'showWeekNr', $defaultWeekNumbers) === 'yes'; + $skipPopover = $this->config->getUserValue($this->userId, $this->appName, 'skipPopover', $defaultSkipPopover) === 'yes'; + $timezone = $this->config->getUserValue($this->userId, $this->appName, 'timezone', $defaultTimezone); + $attachmentsFolder = $this->config->getUserValue($this->userId, 'dav', 'attachmentsFolder', '/Calendar'); + $slotDuration = $this->config->getUserValue($this->userId, $this->appName, 'slotDuration', $defaultSlotDuration); + $defaultReminder = $this->config->getUserValue($this->userId, $this->appName, 'defaultReminder', $defaultDefaultReminder); + $showTasks = $this->config->getUserValue($this->userId, $this->appName, 'showTasks', $defaultShowTasks) === 'yes'; + $hideEventExport = $this->config->getAppValue($this->appName, 'hideEventExport', 'no') === 'yes'; + $disableAppointments = $this->config->getAppValue($this->appName, 'disableAppointments', 'no') === 'yes'; + $forceEventAlarmType = $this->config->getAppValue($this->appName, 'forceEventAlarmType', ''); + if (!in_array($forceEventAlarmType, ['DISPLAY', 'EMAIL'], true)) { + $forceEventAlarmType = false; + } + $canSubscribeLink = $this->config->getAppValue('dav', 'allow_calendar_link_subscriptions', 'yes') === 'yes'; + $showResources = $this->config->getAppValue($this->appName, 'showResources', 'yes') === 'yes'; + $publicCalendars = $this->config->getAppValue($this->appName, 'publicCalendars', ''); + + $talkEnabled = $this->appManager->isEnabledForUser('spreed'); + $talkApiVersion = version_compare($this->appManager->getAppVersion('spreed'), '12.0.0', '>=') ? 'v4' : 'v1'; + $tasksEnabled = $this->appManager->isEnabledForUser('tasks'); + + $circleVersion = $this->appManager->getAppVersion('circles'); + $isCirclesEnabled = $this->appManager->isEnabledForUser('circles') === true; + // if circles is not installed, we use 0.0.0 + $isCircleVersionCompatible = $this->compareVersion->isCompatible($circleVersion ? $circleVersion : '0.0.0', '22'); + + $this->initialStateService->provideInitialState('app_version', $appVersion); + $this->initialStateService->provideInitialState('event_limit', $eventLimit); + $this->initialStateService->provideInitialState('first_run', $firstRun); + $this->initialStateService->provideInitialState('initial_view', $initialView); + $this->initialStateService->provideInitialState('show_weekends', $showWeekends); + $this->initialStateService->provideInitialState('show_week_numbers', $showWeekNumbers); + $this->initialStateService->provideInitialState('skip_popover', $skipPopover); + $this->initialStateService->provideInitialState('talk_enabled', $talkEnabled); + $this->initialStateService->provideInitialState('talk_api_version', $talkApiVersion); + $this->initialStateService->provideInitialState('timezone', $timezone); + $this->initialStateService->provideInitialState('attachments_folder', $attachmentsFolder); + $this->initialStateService->provideInitialState('slot_duration', $slotDuration); + $this->initialStateService->provideInitialState('default_reminder', $defaultReminder); + $this->initialStateService->provideInitialState('show_tasks', $showTasks); + $this->initialStateService->provideInitialState('tasks_enabled', $tasksEnabled); + $this->initialStateService->provideInitialState('hide_event_export', $hideEventExport); + $this->initialStateService->provideInitialState('force_event_alarm_type', $forceEventAlarmType); + if (!is_null($this->userId)) { + $this->initialStateService->provideInitialState('appointmentConfigs', $this->appointmentConfigService->getAllAppointmentConfigurations($this->userId)); + } + $this->initialStateService->provideInitialState('disable_appointments', $disableAppointments); + $this->initialStateService->provideInitialState('can_subscribe_link', $canSubscribeLink); + $this->initialStateService->provideInitialState('show_resources', $showResources); + $this->initialStateService->provideInitialState('isCirclesEnabled', $isCirclesEnabled && $isCircleVersionCompatible); + $this->initialStateService->provideInitialState('publicCalendars', $publicCalendars); + } + + /** + * Makes sure we don't use the old views anymore + * + * @param string $view + * @return string + */ + private function getView(string $view): string { + switch ($view) { + case 'agendaDay': + return 'timeGridDay'; + + case 'agendaWeek': + return 'timeGridWeek'; + + case 'month': + return 'dayGridMonth'; + + default: + return $view; + } + } +} diff --git a/lib/Service/ContactsService.php b/lib/Service/ContactsService.php new file mode 100644 index 0000000000000000000000000000000000000000..2d35e3b54498661117b0c1c163250850daa013f4 --- /dev/null +++ b/lib/Service/ContactsService.php @@ -0,0 +1,144 @@ + - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE - * License as published by the Free Software Foundation; either - * version 3 of the License, or any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU AFFERO GENERAL PUBLIC LICENSE for more details. - * - * You should have received a copy of the GNU Affero General Public - * License along with this library. If not, see . - * + * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later */ namespace OCA\Calendar\Service; @@ -29,7 +13,6 @@ use OCP\IUserSession; use ReturnTypeWillChange; class JSDataService implements \JsonSerializable { - /** @var IConfig */ private $config; @@ -43,7 +26,7 @@ class JSDataService implements \JsonSerializable { * @param IUserSession $userSession */ public function __construct(IConfig $config, - IUserSession $userSession) { + IUserSession $userSession) { $this->config = $config; $this->userSession = $userSession; } @@ -51,6 +34,7 @@ class JSDataService implements \JsonSerializable { /** * @inheritDoc */ + #[\Override] #[ReturnTypeWillChange] public function jsonSerialize() { $user = $this->userSession->getUser(); diff --git a/lib/Service/ServiceException.php b/lib/Service/ServiceException.php new file mode 100644 index 0000000000000000000000000000000000000000..96bda81495750b32f706e2d452e99e11a9b4c2b2 --- /dev/null +++ b/lib/Service/ServiceException.php @@ -0,0 +1,12 @@ +=6.0.0" } }, "node_modules/@babel/code-frame": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", - "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/highlight": "^7.16.7" + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/compat-data": { - "version": "7.16.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.4.tgz", - "integrity": "sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q==", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.8.tgz", + "integrity": "sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.7.tgz", - "integrity": "sha512-aeLaqcqThRNZYmbMqtulsetOQZ/5gbR/dWruUCJcpas4Qoyy+QeagfDsPdMrqwsPRDNxJvBlRiZxxX7THO7qtA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.16.7", - "@babel/helper-compilation-targets": "^7.16.7", - "@babel/helper-module-transforms": "^7.16.7", - "@babel/helpers": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.7", - "@babel/types": "^7.16.7", - "convert-source-map": "^1.7.0", + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.8.tgz", + "integrity": "sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.25.7", + "@babel/generator": "^7.25.7", + "@babel/helper-compilation-targets": "^7.25.7", + "@babel/helper-module-transforms": "^7.25.7", + "@babel/helpers": "^7.25.7", + "@babel/parser": "^7.25.8", + "@babel/template": "^7.25.7", + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.8", + "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.1.2", - "semver": "^6.3.0", - "source-map": "^0.5.0" + "json5": "^2.2.3", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -127,14 +149,20 @@ "url": "https://opencollective.com/babel" } }, + "node_modules/@babel/core/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, "node_modules/@babel/eslint-parser": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.17.0.tgz", - "integrity": "sha512-PUEJ7ZBXbRkbq3qqM/jZ2nIuakUBqCYc7Qf52Lj7dlZ6zERnqisdHioL0l4wwQZnmskMeasqUNzLBFKs3nylXA==", + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.19.1.tgz", + "integrity": "sha512-AqNf2QWt1rtu2/1rLswy6CDP7H9Oh3mMhk177Y67Rg8d7RD9WfOLLv8CGn6tisFvS2htm86yIe1yLF6I1UDaGQ==", "dev": true, "peer": true, "dependencies": { - "eslint-scope": "^5.1.1", + "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", "eslint-visitor-keys": "^2.1.0", "semver": "^6.3.0" }, @@ -147,77 +175,109 @@ } }, "node_modules/@babel/generator": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.7.tgz", - "integrity": "sha512-/ST3Sg8MLGY5HVYmrjOgL60ENux/HfO/CsUh7y4MalThufhE/Ff/6EibFDHi4jiDCaWfJKoqbE6oTh21c5hrRg==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.7.tgz", + "integrity": "sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.16.7", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" + "@babel/types": "^7.25.7", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@babel/helper-annotate-as-pure": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.14.5.tgz", - "integrity": "sha512-EivH9EgBIb+G8ij1B2jAwSH36WnGvkQSEC6CkX/6v6ZFlw5fVOHvsgGF4uiEHO2GzMvunZb6tDLQEQSdrdocrA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.7.tgz", + "integrity": "sha512-4xwU8StnqnlIhhioZf1tqnVWeQ9pvH/ujS8hRfw/WOza+/a+1qv69BWNy+oY231maTCWgKWhfBU7kDpsds6zAA==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.14.5" + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.14.5.tgz", - "integrity": "sha512-YTA/Twn0vBXDVGJuAX6PwW7x5zQei1luDDo2Pl6q1qZ7hVNl0RZrhHCQG/ArGpR29Vl7ETiB8eJyrvpuRp300w==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.25.7.tgz", + "integrity": "sha512-12xfNeKNH7jubQNm7PAkzlLwEmCs1tfuX3UjIw6vP6QXi+leKh6+LyC/+Ed4EIQermwd58wsyh070yjDHFlNGg==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-explode-assignable-expression": "^7.14.5", - "@babel/types": "^7.14.5" + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz", - "integrity": "sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.7.tgz", + "integrity": "sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.16.4", - "@babel/helper-validator-option": "^7.16.7", - "browserslist": "^4.17.5", - "semver": "^6.3.0" + "@babel/compat-data": "^7.25.7", + "@babel/helper-validator-option": "^7.25.7", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" } }, + "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.6.tgz", - "integrity": "sha512-Z6gsfGofTxH/+LQXqYEK45kxmcensbzmk/oi8DmaQytlQCgqNZt9XQF8iqlI/SeXWVjaMNxvYvzaYw+kh42mDg==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.7.tgz", + "integrity": "sha512-bD4WQhbkx80mAyj/WCm4ZHcF4rDxkoLFO6ph8/5/mQ3z4vAzltQXAmbc7GvVJx5H+lk5Mi5EmbTeox5nMGCsbw==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "@babel/helper-function-name": "^7.14.5", - "@babel/helper-member-expression-to-functions": "^7.14.5", - "@babel/helper-optimise-call-expression": "^7.14.5", - "@babel/helper-replace-supers": "^7.14.5", - "@babel/helper-split-export-declaration": "^7.14.5" + "@babel/helper-annotate-as-pure": "^7.25.7", + "@babel/helper-member-expression-to-functions": "^7.25.7", + "@babel/helper-optimise-call-expression": "^7.25.7", + "@babel/helper-replace-supers": "^7.25.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.7", + "@babel/traverse": "^7.25.7", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -227,14 +287,15 @@ } }, "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.14.5.tgz", - "integrity": "sha512-TLawwqpOErY2HhWbGJ2nZT5wSkR192QpN+nBg1THfBfftrlvOh+WbhrxXCH4q4xJ9Gl16BGPR/48JA+Ryiho/A==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.7.tgz", + "integrity": "sha512-byHhumTj/X47wJ6C6eLpK7wW/WBEcnUeb7D0FNc/jFQnQVw7DOso3Zz5u9x/zLrFVkHa89ZGDbkAa1D54NdrCQ==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "regexpu-core": "^4.7.1" + "@babel/helper-annotate-as-pure": "^7.25.7", + "regexpu-core": "^6.1.1", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -244,288 +305,221 @@ } }, "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.3.tgz", - "integrity": "sha512-RH3QDAfRMzj7+0Nqu5oqgO5q9mFtQEVvCRsi8qCEfzLR9p2BHfn5FzhSB2oj1fF7I2+DcTORkYaQ6aTR9Cofew==", + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz", + "integrity": "sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-compilation-targets": "^7.13.0", - "@babel/helper-module-imports": "^7.12.13", - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/traverse": "^7.13.0", + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", "debug": "^4.1.1", "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" + "resolve": "^1.14.2" }, "peerDependencies": { - "@babel/core": "^7.4.0-0" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", - "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", - "dev": true, - "dependencies": { - "@babel/types": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-explode-assignable-expression": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.14.5.tgz", - "integrity": "sha512-Htb24gnGJdIGT4vnRKMdoXiOIlqOLmdiUYpAQ0mYfgVT/GDm8GOYhgi4GL+hMKrkiPRohO4ts34ELFsGAPQLDQ==", - "dev": true, - "peer": true, - "dependencies": { - "@babel/types": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz", - "integrity": "sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==", - "dev": true, - "dependencies": { - "@babel/helper-get-function-arity": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/types": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-get-function-arity": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz", - "integrity": "sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", - "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.7.tgz", - "integrity": "sha512-TMUt4xKxJn6ccjcOW7c4hlwyJArizskAhoSTOCkA0uZ+KghIaci0Qg9R043kUMWI9mtQfgny+NQ5QATnZ+paaA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.7.tgz", + "integrity": "sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.14.5" + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-imports": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", - "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz", + "integrity": "sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.16.7" + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.7.tgz", - "integrity": "sha512-gaqtLDxJEFCeQbYp9aLAefjhkKdjKcdh6DB7jniIGU3Pz52WAmP268zK0VgPz9hUNkMSYeH976K2/Y6yPadpng==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz", + "integrity": "sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-simple-access": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/helper-validator-identifier": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.7", - "@babel/types": "^7.16.7" + "@babel/helper-module-imports": "^7.25.7", + "@babel/helper-simple-access": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.7", + "@babel/traverse": "^7.25.7" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-optimise-call-expression": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz", - "integrity": "sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.7.tgz", + "integrity": "sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.14.5" + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-plugin-utils": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", - "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.7.tgz", + "integrity": "sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.14.5.tgz", - "integrity": "sha512-rLQKdQU+HYlxBwQIj8dk4/0ENOUEhA/Z0l4hN8BexpvmSMN9oA9EagjnhnDpNsRdWCfjwa4mn/HyBXO9yhQP6A==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.7.tgz", + "integrity": "sha512-kRGE89hLnPfcz6fTrlNU+uhgcwv0mBE4Gv3P9Ke9kLVJYpi4AMVVEElXvB5CabrPZW4nCM8P8UyyjrzCM0O2sw==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "@babel/helper-wrap-function": "^7.14.5", - "@babel/types": "^7.14.5" + "@babel/helper-annotate-as-pure": "^7.25.7", + "@babel/helper-wrap-function": "^7.25.7", + "@babel/traverse": "^7.25.7" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-replace-supers": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.5.tgz", - "integrity": "sha512-3i1Qe9/8x/hCHINujn+iuHy+mMRLoc77b2nI9TB0zjH1hvn9qGlXjWlggdwUcju36PkPCy/lpM7LLUdcTyH4Ow==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.25.7.tgz", + "integrity": "sha512-iy8JhqlUW9PtZkd4pHM96v6BdJ66Ba9yWSE4z0W4TvSZwLBPkyDsiIU3ENe4SmrzRBs76F7rQXTy1lYC49n6Lw==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-member-expression-to-functions": "^7.14.5", - "@babel/helper-optimise-call-expression": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5" + "@babel/helper-member-expression-to-functions": "^7.25.7", + "@babel/helper-optimise-call-expression": "^7.25.7", + "@babel/traverse": "^7.25.7" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz", - "integrity": "sha512-ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz", + "integrity": "sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.16.7" + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.14.5.tgz", - "integrity": "sha512-dmqZB7mrb94PZSAOYtr+ZN5qt5owZIAgqtoTuqiFbHFtxgEcmQlRJVI+bO++fciBunXtB6MK7HrzrfcAzIz2NQ==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.7.tgz", + "integrity": "sha512-pPbNbchZBkPMD50K0p3JGcFMNLVUCuU/ABybm/PGNj4JiHrpmNyqqCphBk4i19xXtNV0JhldQJJtbSW5aUvbyA==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.14.5" + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", - "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.16.7" - }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", - "dev": true, + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", - "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz", + "integrity": "sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-wrap-function": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.14.5.tgz", - "integrity": "sha512-YEdjTCq+LNuNS1WfxsDCNpgXkJaIyqco6DAelTUjT4f2KIWC1nBcaCaSdHTBqQVLnTBexBcVcFhLSU1KnYuePQ==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.25.7.tgz", + "integrity": "sha512-MA0roW3JF2bD1ptAaJnvcabsVlNQShUaThyJbCDD4bCp8NEgiFvpoqRI2YS22hHlc2thjO/fTg2ShLMC3jygAg==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-function-name": "^7.14.5", - "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5" + "@babel/template": "^7.25.7", + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.7.tgz", - "integrity": "sha512-9ZDoqtfY7AuEOt3cxchfii6C7GDyyMBffktR5B2jvWv8u2+efwvpnVKXMWzNehqy68tKgAfSwfdw/lWpthS2bw==", + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.10.tgz", + "integrity": "sha512-UPYc3SauzZ3JGgj87GgZ89JVdC5dj0AoetR5Bw6wj4niittNyFh6+eOGonYvJ1ao6B8lEa3Q3klS7ADZ53bc5g==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.7", - "@babel/types": "^7.16.7" + "@babel/template": "^7.26.9", + "@babel/types": "^7.26.10" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/highlight": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.7.tgz", - "integrity": "sha512-aKpPMfLvGO3Q97V0qhw/V2SWNWlwfJknuwAunU7wZLSfrM4xTBvg7E5opUVi1kJTBKihE38CPg4nBiqX83PWYw==", - "dev": true, + "node_modules/@babel/parser": { + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.10.tgz", + "integrity": "sha512-6aQR2zGE/QFi8JpDLjUZEPYOs7+mhKXm86VaKFiLP35JQwQb6bwUE+XbvkH0EptsYhbNBSUGaUBLKqxH1xSgsA==", + "license": "MIT", "dependencies": { - "@babel/helper-validator-identifier": "^7.16.7", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "@babel/types": "^7.26.10" }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/parser": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.6.tgz", - "integrity": "sha512-uQVSa9jJUe/G/304lXspfWVpKpK4euFLgGiMQFOCpM/bgcAdeoHwi/OQz23O9GK2osz26ZiXRRV9aV+Yl1O8tw==", "bin": { "parser": "bin/babel-parser.js" }, @@ -533,104 +527,95 @@ "node": ">=6.0.0" } }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5.tgz", - "integrity": "sha512-ZoJS2XCKPBfTmL122iP6NM9dOg+d4lc9fFk3zxc8iDjvt8Pk4+TlsHSKhIPf6X+L5ORCdBzqMZDjL/WHj7WknQ==", + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.7.tgz", + "integrity": "sha512-UV9Lg53zyebzD1DwQoT9mzkEKa922LNUp5YkTJ6Uta0RbyXaQNUgcvSt7qIu1PpPzVb6rd10OVNTzkyBGeVmxQ==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5", - "@babel/plugin-proposal-optional-chaining": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/traverse": "^7.25.7" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.13.0" + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.14.7.tgz", - "integrity": "sha512-RK8Wj7lXLY3bqei69/cc25gwS5puEc3dknoFPFbqfy3XxYQBQFvu4ioWpafMBAB+L9NyptQK4nMOa5Xz16og8Q==", + "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.7.tgz", + "integrity": "sha512-GDDWeVLNxRIkQTnJn2pDOM1pkCgYdSqPeT1a9vh9yIqu2uzzgw1zcqEb+IJOhy+dTBMlNdThrDIksr2o09qrrQ==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-remap-async-to-generator": "^7.14.5", - "@babel/plugin-syntax-async-generators": "^7.8.4" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-proposal-class-properties": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.14.5.tgz", - "integrity": "sha512-q/PLpv5Ko4dVc1LYMpCY7RVAAO4uk55qPwrIuJ5QJ8c6cVuAmhu7I/49JOppXL6gXf7ZHzpRVEUZdYoPLM04Gg==", + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.7.tgz", + "integrity": "sha512-wxyWg2RYaSUYgmd9MR0FyRGyeOMQE/Uzr1wzd/g5cf5bwi9A4v6HFdDm7y1MgDtod/fLOSTZY6jDgV0xU9d5bA==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-proposal-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.14.5.tgz", - "integrity": "sha512-KBAH5ksEnYHCegqseI5N9skTdxgJdmDoAOc0uXa+4QMYKeZD0w5IARh4FMlTNtaHhbB8v+KzMdTgxMMzsIy6Yg==", + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.7.tgz", + "integrity": "sha512-Xwg6tZpLxc4iQjorYsyGMyfJE7nP5MV8t/Ka58BgiA7Jw0fRqQNcANlLfdJ/yvBt9z9LD2We+BEkT7vLqZRWng==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-class-static-block": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.7", + "@babel/plugin-transform-optional-chaining": "^7.25.7" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.12.0" + "@babel/core": "^7.13.0" } }, - "node_modules/@babel/plugin-proposal-dynamic-import": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.14.5.tgz", - "integrity": "sha512-ExjiNYc3HDN5PXJx+bwC50GIx/KKanX2HiggnIUAYedbARdImiCU4RhhHfdf0Kd7JNXGpsBBBCOm+bBVy3Gb0g==", + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.7.tgz", + "integrity": "sha512-UVATLMidXrnH+GMUIuxq55nejlj02HP7F5ETyBONzP6G87fPBogG4CH6kxrSrdIuAjdwNO9VzyaYsrZPscWUrw==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/traverse": "^7.25.7" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-proposal-export-namespace-from": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.14.5.tgz", - "integrity": "sha512-g5POA32bXPMmSBu5Dx/iZGLGnKmKPc5AiY7qfZgurzrCYgIztDlHFbznSNCoQuv57YQLnQfaDi7dxCtLDIdXdA==", + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", "dev": true, - "peer": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - }, "engines": { "node": ">=6.9.0" }, @@ -638,86 +623,63 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-json-strings": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.14.5.tgz", - "integrity": "sha512-NSq2fczJYKVRIsUJyNxrVUMhB27zb7N7pOFGQOhBKJrChbGcgEAqyZrmZswkPk18VMurEeJAaICbfm57vUeTbQ==", + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", "dev": true, - "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-json-strings": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.8.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.14.5.tgz", - "integrity": "sha512-YGn2AvZAo9TwyhlLvCCWxD90Xq8xJ4aSgaX3G5D/8DW94L8aaT+dS5cSP+Z06+rCJERGSr9GxMBZ601xoc2taw==", + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", "dev": true, - "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.8.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.14.5.tgz", - "integrity": "sha512-gun/SOnMqjSb98Nkaq2rTKMwervfdAoz6NphdY0vTfuzMfryj+tDGb2n6UkDKwez+Y8PZDhE3D143v6Gepp4Hg==", + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, - "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.12.13" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-numeric-separator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.14.5.tgz", - "integrity": "sha512-yiclALKe0vyZRZE0pS6RXgjUOt87GWv6FYa5zqj15PvhOGFO69R5DusPlgK/1K5dVnCtegTiWu9UaBSrLLJJBg==", + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", "dev": true, "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.8.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-object-rest-spread": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.7.tgz", - "integrity": "sha512-082hsZz+sVabfmDWo1Oct1u1AgbKbUAyVgmX4otIc7bdsRgHBXwTwb3DpDmD4Eyyx6DNiuz5UAATT655k+kL5g==", + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.25.7.tgz", + "integrity": "sha512-ZvZQRmME0zfJnDQnVBKYzHxXT7lYBB3Revz1GuS7oLXWMgqUPX4G+DDbT30ICClht9WKV34QVrZhSw6WdklwZQ==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.14.7", - "@babel/helper-compilation-targets": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -726,15 +688,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-optional-catch-binding": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.14.5.tgz", - "integrity": "sha512-3Oyiixm0ur7bzO5ybNcZFlmVsygSIQgdOa7cTfOYCMY+wEPAYhZAJxi3mixKFCTCKUhQXuCTtQ1MzrpL3WT8ZQ==", + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.25.7.tgz", + "integrity": "sha512-AqVo+dguCgmpi/3mYBdu9lkngOBlQ2w2vnNpa6gfiCxQZLzV4ZbhsXitJ2Yblkoe1VQwtHSaNmIaGll/26YWRw==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -743,52 +704,37 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-optional-chaining": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.14.5.tgz", - "integrity": "sha512-ycz+VOzo2UbWNI1rQXxIuMOzrDdHGrI23fRiz/Si2R4kv2XZQ1BK8ccdHwehMKBlcH/joGW/tzrUmo67gbJHlQ==", + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", "dev": true, - "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.10.4" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-private-methods": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.14.5.tgz", - "integrity": "sha512-838DkdUA1u+QTCplatfq4B7+1lnDa/+QMI89x5WZHBcnNv+47N8QEj2k9I2MUU9xIv8XJ4XvPCviM/Dj7Uwt9g==", + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", "dev": true, - "peer": true, "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.8.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-62EyfyA3WA0mZiF2e2IV9mc9Ghwxcg8YTu8BS4Wss4Y3PY725OmS9M0qLORbJwLqFtGh+jiE4wAmocK2CTUK2Q==", + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz", + "integrity": "sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==", "dev": true, - "peer": true, "dependencies": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "@babel/helper-create-class-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { "node": ">=6.9.0" @@ -797,27 +743,22 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-unicode-property-regex": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.14.5.tgz", - "integrity": "sha512-6axIeOU5LnY471KenAB9vI8I5j7NQ2d652hIYwVyRfgaZT5UpiqFKCuVXCDMSrU+3VFafnu2c5m3lrWIlr6A5Q==", + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", "dev": true, - "peer": true, "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=4" + "@babel/helper-plugin-utils": "^7.10.4" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" @@ -826,52 +767,47 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.10.4" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" + "@babel/helper-plugin-utils": "^7.8.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", "dev": true, - "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" + "@babel/helper-plugin-utils": "^7.8.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-dynamic-import": { + "node_modules/@babel/plugin-syntax-optional-chaining": { "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", "dev": true, - "peer": true, "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" }, @@ -879,123 +815,145 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", "dev": true, - "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.14.5" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz", + "integrity": "sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", "dev": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.7.tgz", + "integrity": "sha512-EJN2mKxDwfOUCPxMO6MUI58RN3ganiRAG/MS/S3HfB6QFNjroAMelQo/gybyYq97WerCBAZoyrAoW8Tzdq2jWg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.8.tgz", + "integrity": "sha512-9ypqkozyzpG+HxlH4o4gdctalFGIjjdufzo7I2XPda0iBnZ6a+FO0rIEQcdSPXp02CkvGsII1exJhmROPQd5oA==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/helper-remap-async-to-generator": "^7.25.7", + "@babel/traverse": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.25.7.tgz", + "integrity": "sha512-ZUCjAavsh5CESCmi/xCpX1qcCaAglzs/7tmuvoFnJgA1dM7gQplsguljoTg+Ru8WENpX89cQyAtWoaE0I3X3Pg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-module-imports": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/helper-remap-async-to-generator": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.25.7.tgz", + "integrity": "sha512-xHttvIM9fvqW+0a3tZlYcZYSBpSWzGBFIt/sYG3tcdSzBB8ZeVgz2gBP7Df+sM0N1850jrviYSSeUuc+135dmQ==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.7.tgz", + "integrity": "sha512-ZEPJSkVZaeTFG/m2PARwLZQ+OG0vFIhPlKHK/JdIMy8DbRJ/htz6LRrTFtdzxi9EHmcwbNPAKDnadpNSIW+Aow==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.7.tgz", + "integrity": "sha512-mhyfEW4gufjIqYFo9krXHJ3ElbFLIze5IDp+wQTxoPd+mwFb1NxatNAwmv8Q8Iuxv7Zc+q8EkiMQwc9IhyGf4g==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-create-class-features-plugin": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1004,28 +962,36 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.25.8.tgz", + "integrity": "sha512-e82gl3TCorath6YLf9xUwFehVvjvfqFhdOo4+0iVIVju+6XOi5XHkqB3P2AXnSwoeTX0HBoXq5gJFtvotJzFnQ==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-create-class-features-plugin": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.12.0" } }, - "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.14.5.tgz", - "integrity": "sha512-u6OXzDaIXjEstBRRoBCQ/uKQKlbuaeE5in0RvWdA4pN6AhqxTIwUsnHPU1CFZA/amYObMsuWhYfRl3Ch90HD0Q==", + "node_modules/@babel/plugin-transform-classes": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.7.tgz", + "integrity": "sha512-9j9rnl+YCQY0IGoeipXvnk3niWicIB6kCsWRGLwX241qSXpbA4MKxtp/EdvFxsc4zI5vqfLxzOd0twIJ7I99zg==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-annotate-as-pure": "^7.25.7", + "@babel/helper-compilation-targets": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/helper-replace-supers": "^7.25.7", + "@babel/traverse": "^7.25.7", + "globals": "^11.1.0" }, "engines": { "node": ">=6.9.0" @@ -1034,14 +1000,15 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-arrow-functions": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.14.5.tgz", - "integrity": "sha512-KOnO0l4+tD5IfOdi4x8C1XmEIRWUjNRV8wc6K2vz/3e8yAOoZZvsRXRRIF/yo/MAOFb4QjtAw9xSxMXbSMRy8A==", + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.7.tgz", + "integrity": "sha512-QIv+imtM+EtNxg/XBKL3hiWjgdLjMOmZ+XzQwSgmBfKbfxUjBzGgVPklUuE55eq5/uVoh8gg3dqlrwR/jw3ZeA==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/template": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1050,16 +1017,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-async-to-generator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.14.5.tgz", - "integrity": "sha512-szkbzQ0mNk0rpu76fzDdqSyPu0MuvpXgC+6rz5rpMb5OIRxdmHfQxrktL8CYolL2d8luMCZTR0DpIMIdL27IjA==", + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.7.tgz", + "integrity": "sha512-xKcfLTlJYUczdaM1+epcdh1UGewJqr9zATgrNHcLBcV2QmfvPPEixo/sK/syql9cEmbr7ulu5HMFG5vbbt/sEA==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-module-imports": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-remap-async-to-generator": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1068,14 +1033,15 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.14.5.tgz", - "integrity": "sha512-dtqWqdWZ5NqBX3KzsVCWfQI3A53Ft5pWFCT2eCVUftWZgjc5DpDponbIF1+c+7cSGk2wN0YK7HGL/ezfRbpKBQ==", + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.7.tgz", + "integrity": "sha512-kXzXMMRzAtJdDEgQBLF4oaiT6ZCU3oWHgpARnTKDAqPkDJ+bs3NrZb310YYevR5QlRo3Kn7dzzIdHbZm1VzJdQ==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-create-regexp-features-plugin": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1084,14 +1050,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.5.tgz", - "integrity": "sha512-LBYm4ZocNgoCqyxMLoOnwpsmQ18HWTQvql64t3GvMUzLQrNoV1BDG0lNftC8QKYERkZgCCT/7J5xWGObGAyHDw==", + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.7.tgz", + "integrity": "sha512-by+v2CjoL3aMnWDOyCIg+yxU9KXSRa9tN6MbqggH5xvymmr9p4AMjYkNlQy4brMceBnUyHZ9G8RnpvT8wP7Cfg==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1100,36 +1066,31 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-classes": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.5.tgz", - "integrity": "sha512-J4VxKAMykM06K/64z9rwiL6xnBHgB1+FVspqvlgCdwD1KUbQNfszeKVVOMh59w3sztHYIZDgnhOC4WbdEfHFDA==", + "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.7.tgz", + "integrity": "sha512-HvS6JF66xSS5rNKXLqkk7L9c/jZ/cdIVIcoPVrnl8IsVpLggTjXs8OWekbLHs/VtYDDh5WXnQyeE3PPUGm22MA==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "@babel/helper-function-name": "^7.14.5", - "@babel/helper-optimise-call-expression": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-replace-supers": "^7.14.5", - "@babel/helper-split-export-declaration": "^7.14.5", - "globals": "^11.1.0" + "@babel/helper-create-regexp-features-plugin": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-transform-computed-properties": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.14.5.tgz", - "integrity": "sha512-pWM+E4283UxaVzLb8UBXv4EIxMovU4zxT1OPnpHJcmnvyY9QbPPTKZfEj31EUvG3/EQRbYAGaYEUZ4yWOBC2xg==", + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.25.8.tgz", + "integrity": "sha512-gznWY+mr4ZQL/EWPcbBQUP3BXS5FwZp8RUOw06BaRn8tQLzN4XLIxXejpHN9Qo8x8jjBmAAKp6FoS51AgkSA/A==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1138,14 +1099,15 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.7.tgz", - "integrity": "sha512-0mDE99nK+kVh3xlc5vKwB6wnP9ecuSj+zQCa/n0voENtP/zymdT4HH6QEb65wjjcbqr1Jb/7z9Qp7TF5FtwYGw==", + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.25.7.tgz", + "integrity": "sha512-yjqtpstPfZ0h/y40fAXRv2snciYr0OAoMXY/0ClC7tm4C/nG5NJKmIItlaYlLbIVAWNfrYuy9dq1bE0SbX0PEg==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1154,15 +1116,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-dotall-regex": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.14.5.tgz", - "integrity": "sha512-loGlnBdj02MDsFaHhAIJzh7euK89lBrGIdM9EAtHFo6xKygCUGuuWe07o1oZVk287amtW1n0808sQM99aZt3gw==", + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.25.8.tgz", + "integrity": "sha512-sPtYrduWINTQTW7FtOy99VCTWp4H23UX7vYcut7S4CIMEXU+54zKX9uCoGkLsWXteyaMXzVHgzWbLfQ1w4GZgw==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1171,14 +1132,15 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-duplicate-keys": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.14.5.tgz", - "integrity": "sha512-iJjbI53huKbPDAsJ8EmVmvCKeeq21bAze4fu9GBQtSLqfvzj2oRuHVx4ZkDwEhg1htQ+5OBZh/Ab0XDf5iBZ7A==", + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.25.7.tgz", + "integrity": "sha512-n/TaiBGJxYFWvpJDfsxSj9lEEE44BFM1EPGz4KEiTipTgkoFVVcCmzAL3qA7fdQU96dpo4gGf5HBx/KnDvqiHw==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1187,15 +1149,16 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.14.5.tgz", - "integrity": "sha512-jFazJhMBc9D27o9jDnIE5ZErI0R0m7PbKXVq77FFvqFbzvTMuv8jaAwLZ5PviOLSFttqKIW0/wxNSDbjLk0tYA==", + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.7.tgz", + "integrity": "sha512-5MCTNcjCMxQ63Tdu9rxyN6cAWurqfrDZ76qvVPrGYdBxIj+EawuuxTu/+dgJlhK5eRz3v1gLwp6XwS8XaX2NiQ==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-compilation-targets": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/traverse": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1204,14 +1167,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-for-of": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.14.5.tgz", - "integrity": "sha512-CfmqxSUZzBl0rSjpoQSFoR9UEj3HzbGuGNL21/iFTmjb5gFggJp3ph0xR1YBhexmLoKRHzgxuFvty2xdSt6gTA==", + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.25.8.tgz", + "integrity": "sha512-4OMNv7eHTmJ2YXs3tvxAfa/I43di+VcF+M4Wt66c88EAED1RoGaf1D64cL5FkRpNL+Vx9Hds84lksWvd/wMIdA==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1220,15 +1183,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-function-name": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.14.5.tgz", - "integrity": "sha512-vbO6kv0fIzZ1GpmGQuvbwwm+O4Cbm2NrPzwlup9+/3fdkuzo1YqOZcXw26+YUJB84Ja7j9yURWposEHLYwxUfQ==", + "node_modules/@babel/plugin-transform-literals": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.7.tgz", + "integrity": "sha512-fwzkLrSu2fESR/cm4t6vqd7ebNIopz2QHGtjoU+dswQo/P6lwAG04Q98lliE3jkz/XqnbGFLnUcE0q0CVUf92w==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-function-name": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1237,14 +1199,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-literals": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.14.5.tgz", - "integrity": "sha512-ql33+epql2F49bi8aHXxvLURHkxJbSmMKl9J5yHqg4PLtdE6Uc48CH1GS6TQvZ86eoB/ApZXwm7jlA+B3kra7A==", + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.25.8.tgz", + "integrity": "sha512-f5W0AhSbbI+yY6VakT04jmxdxz+WsID0neG7+kQZbCOjuyJNdL5Nn4WIBm4hRpKnUcO9lP0eipUhFN12JpoH8g==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1254,13 +1216,13 @@ } }, "node_modules/@babel/plugin-transform-member-expression-literals": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.14.5.tgz", - "integrity": "sha512-WkNXxH1VXVTKarWFqmso83xl+2V3Eo28YY5utIkbsmXoItO8Q3aZxN4BTS2k0hz9dGUloHK26mJMyQEYfkn/+Q==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.7.tgz", + "integrity": "sha512-Std3kXwpXfRV0QtQy5JJcRpkqP8/wG4XL7hSKZmGlxPlDqmpXtEPRmhF7ztnlTCtUN3eXRUJp+sBEZjaIBVYaw==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1270,15 +1232,14 @@ } }, "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.14.5.tgz", - "integrity": "sha512-3lpOU8Vxmp3roC4vzFpSdEpGUWSMsHFreTWOMMLzel2gNGfHE5UWIh/LN6ghHs2xurUp4jRFYMUIZhuFbody1g==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.7.tgz", + "integrity": "sha512-CgselSGCGzjQvKzghCvDTxKHP3iooenLpJDO842ehn5D2G5fJB222ptnDwQho0WjEvg7zyoxb9P+wiYxiJX5yA==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "babel-plugin-dynamic-import-node": "^2.3.3" + "@babel/helper-module-transforms": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1288,16 +1249,15 @@ } }, "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.14.5.tgz", - "integrity": "sha512-en8GfBtgnydoao2PS+87mKyw62k02k7kJ9ltbKe0fXTHrQmG6QZZflYuGI1VVG7sVpx4E1n7KBpNlPb8m78J+A==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.25.7.tgz", + "integrity": "sha512-L9Gcahi0kKFYXvweO6n0wc3ZG1ChpSFdgG+eV1WYZ3/dGbJK7vvk91FgGgak8YwRgrCuihF8tE/Xg07EkL5COg==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-simple-access": "^7.14.5", - "babel-plugin-dynamic-import-node": "^2.3.3" + "@babel/helper-module-transforms": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/helper-simple-access": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1307,17 +1267,16 @@ } }, "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.14.5.tgz", - "integrity": "sha512-mNMQdvBEE5DcMQaL5LbzXFMANrQjd2W7FPzg34Y4yEz7dBgdaC+9B84dSO+/1Wba98zoDbInctCDo4JGxz1VYA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.7.tgz", + "integrity": "sha512-t9jZIvBmOXJsiuyOwhrIGs8dVcD6jDyg2icw1VL4A/g+FnWyJKwUfSSU2nwJuMV2Zqui856El9u+ElB+j9fV1g==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-hoist-variables": "^7.14.5", - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-validator-identifier": "^7.14.5", - "babel-plugin-dynamic-import-node": "^2.3.3" + "@babel/helper-module-transforms": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.7", + "@babel/traverse": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1327,14 +1286,14 @@ } }, "node_modules/@babel/plugin-transform-modules-umd": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.14.5.tgz", - "integrity": "sha512-RfPGoagSngC06LsGUYyM9QWSXZ8MysEjDJTAea1lqRjNECE3y0qIJF/qbvJxc4oA4s99HumIMdXOrd+TdKaAAA==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.7.tgz", + "integrity": "sha512-p88Jg6QqsaPh+EB7I9GJrIqi1Zt4ZBHUQtjw3z1bzEXcLh6GfPqzZJ6G+G1HBGKUNukT58MnKG7EN7zXQBCODw==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-module-transforms": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1344,13 +1303,14 @@ } }, "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.14.7.tgz", - "integrity": "sha512-DTNOTaS7TkW97xsDMrp7nycUVh6sn/eq22VaxWfEdzuEbRsiaOU0pqU7DlyUGHVsbQbSghvjKRpEl+nUCKGQSg==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.7.tgz", + "integrity": "sha512-BtAT9LzCISKG3Dsdw5uso4oV1+v2NlVXIIomKJgQybotJY3OwCwJmkongjHgwGKoZXd0qG5UZ12JUlDQ07W6Ow==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.14.5" + "@babel/helper-create-regexp-features-plugin": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1360,13 +1320,13 @@ } }, "node_modules/@babel/plugin-transform-new-target": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.14.5.tgz", - "integrity": "sha512-Nx054zovz6IIRWEB49RDRuXGI4Gy0GMgqG0cII9L3MxqgXz/+rgII+RU58qpo4g7tNEx1jG7rRVH4ihZoP4esQ==", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.7.tgz", + "integrity": "sha512-CfCS2jDsbcZaVYxRFo2qtavW8SpdzmBXC2LOI4oO0rP+JSRDxxF3inF4GcPsLgfb5FjkhXG5/yR/lxuRs2pySA==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1375,15 +1335,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-object-super": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.14.5.tgz", - "integrity": "sha512-MKfOBWzK0pZIrav9z/hkRqIk/2bTv9qvxHzPQc12RcVkMOzpIKnFCNYJip00ssKWYkd8Sf5g0Wr7pqJ+cmtuFg==", + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.25.8.tgz", + "integrity": "sha512-Z7WJJWdQc8yCWgAmjI3hyC+5PXIubH9yRKzkl9ZEG647O9szl9zvmKLzpbItlijBnVhTUf1cpyWBsZ3+2wjWPQ==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-replace-supers": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1392,14 +1351,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-parameters": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.5.tgz", - "integrity": "sha512-Tl7LWdr6HUxTmzQtzuU14SqbgrSKmaR77M0OKyq4njZLQTPfOvzblNKyNkGwOfEFCEx7KeYHQHDI0P3F02IVkA==", + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.25.8.tgz", + "integrity": "sha512-rm9a5iEFPS4iMIy+/A/PiS0QN0UyjPIeVvbU5EMZFKJZHt8vQnasbpo3T3EFcxzCeYO0BHfc4RqooCZc51J86Q==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1408,14 +1367,16 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-property-literals": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.14.5.tgz", - "integrity": "sha512-r1uilDthkgXW8Z1vJz2dKYLV1tuw2xsbrp3MrZmD99Wh9vsfKoob+JTgri5VUb/JqyKRXotlOtwgu4stIYCmnw==", + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.25.8.tgz", + "integrity": "sha512-LkUu0O2hnUKHKE7/zYOIjByMa4VRaV2CD/cdGz0AxU9we+VA3kDDggKEzI0Oz1IroG+6gUP6UmWEHBMWZU316g==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-compilation-targets": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/plugin-transform-parameters": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1424,14 +1385,15 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-regenerator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.14.5.tgz", - "integrity": "sha512-NVIY1W3ITDP5xQl50NgTKlZ0GrotKtLna08/uGY6ErQt6VEQZXla86x/CTddm5gZdcr+5GSsvMeTmWA5Ii6pkg==", + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.7.tgz", + "integrity": "sha512-pWT6UXCEW3u1t2tcAGtE15ornCBvopHj9Bps9D2DsH15APgNVOTwwczGckX+WkAvBmuoYKRCFa4DK+jM8vh5AA==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "regenerator-transform": "^0.14.2" + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/helper-replace-supers": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1440,14 +1402,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-reserved-words": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.14.5.tgz", - "integrity": "sha512-cv4F2rv1nD4qdexOGsRQXJrOcyb5CrgjUH9PKrrtyhSDBNWGxd0UIitjyJiWagS+EbUGjG++22mGH1Pub8D6Vg==", + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.25.8.tgz", + "integrity": "sha512-EbQYweoMAHOn7iJ9GgZo14ghhb9tTjgOc88xFgYngifx7Z9u580cENCV159M4xDh3q/irbhSjZVpuhpC2gKBbg==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1456,14 +1418,15 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-shorthand-properties": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.14.5.tgz", - "integrity": "sha512-xLucks6T1VmGsTB+GWK5Pl9Jl5+nRXD1uoFdA5TSO6xtiNjtXTjKkmPdFXVLGlK5A2/or/wQMKfmQ2Y0XJfn5g==", + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.8.tgz", + "integrity": "sha512-q05Bk7gXOxpTHoQ8RSzGSh/LHVB9JEIkKnk3myAWwZHnYiTGYtbdrYkIsS8Xyh4ltKf7GNUSgzs/6P2bJtBAQg==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1472,15 +1435,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-spread": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.14.6.tgz", - "integrity": "sha512-Zr0x0YroFJku7n7+/HH3A2eIrGMjbmAIbJSVv0IZ+t3U2WUQUA64S/oeied2e+MaGSjmt4alzBCsK9E8gh+fag==", + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.7.tgz", + "integrity": "sha512-FYiTvku63me9+1Nz7TOx4YMtW3tWXzfANZtrzHhUZrz4d47EEtMQhzFoZWESfXuAMMT5mwzD4+y1N8ONAX6lMQ==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1489,14 +1451,15 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-sticky-regex": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.14.5.tgz", - "integrity": "sha512-Z7F7GyvEMzIIbwnziAZmnSNpdijdr4dWt+FJNBnBLz5mwDFkqIXU9wmBcWWad3QeJF5hMTkRe4dAq2sUZiG+8A==", + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.7.tgz", + "integrity": "sha512-KY0hh2FluNxMLwOCHbxVOKfdB5sjWG4M183885FmaqWWiGMhRZq4DQRKH6mHdEucbJnyDyYiZNwNG424RymJjA==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-create-class-features-plugin": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1505,14 +1468,16 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-template-literals": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.14.5.tgz", - "integrity": "sha512-22btZeURqiepOfuy/VkFr+zStqlujWaarpMErvay7goJS6BWwdd6BY9zQyDLDa4x2S3VugxFb162IZ4m/S/+Gg==", + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.25.8.tgz", + "integrity": "sha512-8Uh966svuB4V8RHHg0QJOB32QK287NBksJOByoKmHMp1TAobNniNalIkI2i5IPj5+S9NYCG4VIjbEuiSN8r+ow==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-annotate-as-pure": "^7.25.7", + "@babel/helper-create-class-features-plugin": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1521,14 +1486,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-typeof-symbol": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.14.5.tgz", - "integrity": "sha512-lXzLD30ffCWseTbMQzrvDWqljvZlHkXU+CnseMhkMNqU1sASnCsz3tSzAaH3vCUXb9PHeUb90ZT1BdFTm1xxJw==", + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.7.tgz", + "integrity": "sha512-lQEeetGKfFi0wHbt8ClQrUSUMfEeI3MMm74Z73T9/kuz990yYVtfofjf3NuA42Jy3auFOpbjDyCSiIkTs1VIYw==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1537,14 +1502,15 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-unicode-escapes": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.14.5.tgz", - "integrity": "sha512-crTo4jATEOjxj7bt9lbYXcBAM3LZaUrbP2uUdxb6WIorLmjNKSpHfIybgY4B8SRpbf8tEVIWH3Vtm7ayCrKocA==", + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.25.7.tgz", + "integrity": "sha512-mgDoQCRjrY3XK95UuV60tZlFCQGXEtMg8H+IsW72ldw1ih1jZhzYXbJvghmAEpg5UVhhnCeia1CkGttUvCkiMQ==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7", + "regenerator-transform": "^0.15.2" }, "engines": { "node": ">=6.9.0" @@ -1553,15 +1519,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-unicode-regex": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.14.5.tgz", - "integrity": "sha512-UygduJpC5kHeCiRw/xDVzC+wj8VaYSoKl5JNVmbP7MadpNinAm3SvZCxZ42H37KZBKztz46YC73i9yV34d0Tzw==", + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.7.tgz", + "integrity": "sha512-3OfyfRRqiGeOvIWSagcwUTVk2hXBsr/ww7bLn6TRTuXnexA+Udov2icFOxFX9abaj4l96ooYkcNN1qi2Zvqwng==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1570,108 +1535,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/polyfill": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.2.5.tgz", - "integrity": "sha512-8Y/t3MWThtMLYr0YNC/Q76tqN1w30+b0uQMeFUYauG2UGTR19zyUtFrAzT23zNtBxPp+LbE5E/nwV/q/r3y6ug==", - "deprecated": "🚨 This package has been deprecated in favor of separate inclusion of a polyfill and regenerator-runtime (when needed). See the @babel/polyfill docs (https://babeljs.io/docs/en/babel-polyfill) for more information.", + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.7.tgz", + "integrity": "sha512-uBbxNwimHi5Bv3hUccmOFlUy3ATO6WagTApenHz9KzoIdn0XeACdB12ZJ4cjhuB2WSi80Ez2FWzJnarccriJeA==", + "dev": true, + "license": "MIT", "dependencies": { - "core-js": "^2.5.7", - "regenerator-runtime": "^0.12.0" - } - }, - "node_modules/@babel/polyfill/node_modules/core-js": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", - "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", - "deprecated": "core-js@<3.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Please, upgrade your dependencies to the actual version of core-js.", - "hasInstallScript": true - }, - "node_modules/@babel/polyfill/node_modules/regenerator-runtime": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz", - "integrity": "sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg==" - }, - "node_modules/@babel/preset-env": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.7.tgz", - "integrity": "sha512-itOGqCKLsSUl0Y+1nSfhbuuOlTs0MJk2Iv7iSH+XT/mR8U1zRLO7NjWlYXB47yhK4J/7j+HYty/EhFZDYKa/VA==", - "dev": true, - "peer": true, - "dependencies": { - "@babel/compat-data": "^7.14.7", - "@babel/helper-compilation-targets": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-validator-option": "^7.14.5", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.14.5", - "@babel/plugin-proposal-async-generator-functions": "^7.14.7", - "@babel/plugin-proposal-class-properties": "^7.14.5", - "@babel/plugin-proposal-class-static-block": "^7.14.5", - "@babel/plugin-proposal-dynamic-import": "^7.14.5", - "@babel/plugin-proposal-export-namespace-from": "^7.14.5", - "@babel/plugin-proposal-json-strings": "^7.14.5", - "@babel/plugin-proposal-logical-assignment-operators": "^7.14.5", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.5", - "@babel/plugin-proposal-numeric-separator": "^7.14.5", - "@babel/plugin-proposal-object-rest-spread": "^7.14.7", - "@babel/plugin-proposal-optional-catch-binding": "^7.14.5", - "@babel/plugin-proposal-optional-chaining": "^7.14.5", - "@babel/plugin-proposal-private-methods": "^7.14.5", - "@babel/plugin-proposal-private-property-in-object": "^7.14.5", - "@babel/plugin-proposal-unicode-property-regex": "^7.14.5", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.14.5", - "@babel/plugin-transform-async-to-generator": "^7.14.5", - "@babel/plugin-transform-block-scoped-functions": "^7.14.5", - "@babel/plugin-transform-block-scoping": "^7.14.5", - "@babel/plugin-transform-classes": "^7.14.5", - "@babel/plugin-transform-computed-properties": "^7.14.5", - "@babel/plugin-transform-destructuring": "^7.14.7", - "@babel/plugin-transform-dotall-regex": "^7.14.5", - "@babel/plugin-transform-duplicate-keys": "^7.14.5", - "@babel/plugin-transform-exponentiation-operator": "^7.14.5", - "@babel/plugin-transform-for-of": "^7.14.5", - "@babel/plugin-transform-function-name": "^7.14.5", - "@babel/plugin-transform-literals": "^7.14.5", - "@babel/plugin-transform-member-expression-literals": "^7.14.5", - "@babel/plugin-transform-modules-amd": "^7.14.5", - "@babel/plugin-transform-modules-commonjs": "^7.14.5", - "@babel/plugin-transform-modules-systemjs": "^7.14.5", - "@babel/plugin-transform-modules-umd": "^7.14.5", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.14.7", - "@babel/plugin-transform-new-target": "^7.14.5", - "@babel/plugin-transform-object-super": "^7.14.5", - "@babel/plugin-transform-parameters": "^7.14.5", - "@babel/plugin-transform-property-literals": "^7.14.5", - "@babel/plugin-transform-regenerator": "^7.14.5", - "@babel/plugin-transform-reserved-words": "^7.14.5", - "@babel/plugin-transform-shorthand-properties": "^7.14.5", - "@babel/plugin-transform-spread": "^7.14.6", - "@babel/plugin-transform-sticky-regex": "^7.14.5", - "@babel/plugin-transform-template-literals": "^7.14.5", - "@babel/plugin-transform-typeof-symbol": "^7.14.5", - "@babel/plugin-transform-unicode-escapes": "^7.14.5", - "@babel/plugin-transform-unicode-regex": "^7.14.5", - "@babel/preset-modules": "^0.1.4", - "@babel/types": "^7.14.5", - "babel-plugin-polyfill-corejs2": "^0.2.2", - "babel-plugin-polyfill-corejs3": "^0.2.2", - "babel-plugin-polyfill-regenerator": "^0.2.2", - "core-js-compat": "^3.15.0", - "semver": "^6.3.0" + "@babel/helper-plugin-utils": "^7.25.7" }, "engines": { "node": ">=6.9.0" @@ -1680,65 +1551,275 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/preset-modules": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.4.tgz", - "integrity": "sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg==", + "node_modules/@babel/plugin-transform-spread": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.7.tgz", + "integrity": "sha512-Mm6aeymI0PBh44xNIv/qvo8nmbkpZze1KvR8MkEqbIREDxoiWTi18Zr2jryfRMwDfVZF9foKh060fWgni44luw==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" }, "peerDependencies": { "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/runtime": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.3.4.tgz", - "integrity": "sha512-IvfvnMdSaLBateu0jfsYIpZTxAc2cKEXEMiezGGN75QcBcecDUKd3PgLAncT0oOgxKy8dd8hrJKj9MfzgfZd6g==", + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.7.tgz", + "integrity": "sha512-ZFAeNkpGuLnAQ/NCsXJ6xik7Id+tHuS+NT+ue/2+rn/31zcdnupCdmunOizEaP0JsUmTFSTOPoQY7PkK2pttXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.25.7.tgz", + "integrity": "sha512-SI274k0nUsFFmyQupiO7+wKATAmMFf8iFgq2O+vVFXZ0SV9lNfT1NGzBEhjquFmD8I9sqHLguH+gZVN3vww2AA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.25.7.tgz", + "integrity": "sha512-OmWmQtTHnO8RSUbL0NTdtpbZHeNTnm68Gj5pA4Y2blFNh+V4iZR68V1qL9cI37J21ZN7AaCnkfdHtLExQPf2uA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.7.tgz", + "integrity": "sha512-BN87D7KpbdiABA+t3HbVqHzKWUDN3dymLaTnPFAMyc8lV+KN3+YzNhVRNdinaCPA4AUqx7ubXbQ9shRjYBl3SQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.25.7.tgz", + "integrity": "sha512-IWfR89zcEPQGB/iB408uGtSPlQd3Jpq11Im86vUgcmSTcoWAiQMCTOa2K2yNNqFJEBVICKhayctee65Ka8OB0w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.7.tgz", + "integrity": "sha512-8JKfg/hiuA3qXnlLx8qtv5HWRbgyFx2hMMtpDDuU2rTckpKkGu4ycK5yYHwuEa16/quXfoxHBIApEsNyMWnt0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.7.tgz", + "integrity": "sha512-YRW8o9vzImwmh4Q3Rffd09bH5/hvY0pxg+1H1i0f7APoUeg12G7+HhLj9ZFNIrYkgBXhIijPJ+IXypN0hLTIbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.25.8.tgz", + "integrity": "sha512-58T2yulDHMN8YMUxiLq5YmWUnlDCyY1FsHM+v12VMx+1/FlrUj5tY50iDCpofFQEM8fMYOaY9YRvym2jcjn1Dg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.25.8", + "@babel/helper-compilation-targets": "^7.25.7", + "@babel/helper-plugin-utils": "^7.25.7", + "@babel/helper-validator-option": "^7.25.7", + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.25.7", + "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.25.7", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.25.7", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.25.7", + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.25.7", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-import-assertions": "^7.25.7", + "@babel/plugin-syntax-import-attributes": "^7.25.7", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.25.7", + "@babel/plugin-transform-async-generator-functions": "^7.25.8", + "@babel/plugin-transform-async-to-generator": "^7.25.7", + "@babel/plugin-transform-block-scoped-functions": "^7.25.7", + "@babel/plugin-transform-block-scoping": "^7.25.7", + "@babel/plugin-transform-class-properties": "^7.25.7", + "@babel/plugin-transform-class-static-block": "^7.25.8", + "@babel/plugin-transform-classes": "^7.25.7", + "@babel/plugin-transform-computed-properties": "^7.25.7", + "@babel/plugin-transform-destructuring": "^7.25.7", + "@babel/plugin-transform-dotall-regex": "^7.25.7", + "@babel/plugin-transform-duplicate-keys": "^7.25.7", + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.25.7", + "@babel/plugin-transform-dynamic-import": "^7.25.8", + "@babel/plugin-transform-exponentiation-operator": "^7.25.7", + "@babel/plugin-transform-export-namespace-from": "^7.25.8", + "@babel/plugin-transform-for-of": "^7.25.7", + "@babel/plugin-transform-function-name": "^7.25.7", + "@babel/plugin-transform-json-strings": "^7.25.8", + "@babel/plugin-transform-literals": "^7.25.7", + "@babel/plugin-transform-logical-assignment-operators": "^7.25.8", + "@babel/plugin-transform-member-expression-literals": "^7.25.7", + "@babel/plugin-transform-modules-amd": "^7.25.7", + "@babel/plugin-transform-modules-commonjs": "^7.25.7", + "@babel/plugin-transform-modules-systemjs": "^7.25.7", + "@babel/plugin-transform-modules-umd": "^7.25.7", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.25.7", + "@babel/plugin-transform-new-target": "^7.25.7", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.25.8", + "@babel/plugin-transform-numeric-separator": "^7.25.8", + "@babel/plugin-transform-object-rest-spread": "^7.25.8", + "@babel/plugin-transform-object-super": "^7.25.7", + "@babel/plugin-transform-optional-catch-binding": "^7.25.8", + "@babel/plugin-transform-optional-chaining": "^7.25.8", + "@babel/plugin-transform-parameters": "^7.25.7", + "@babel/plugin-transform-private-methods": "^7.25.7", + "@babel/plugin-transform-private-property-in-object": "^7.25.8", + "@babel/plugin-transform-property-literals": "^7.25.7", + "@babel/plugin-transform-regenerator": "^7.25.7", + "@babel/plugin-transform-reserved-words": "^7.25.7", + "@babel/plugin-transform-shorthand-properties": "^7.25.7", + "@babel/plugin-transform-spread": "^7.25.7", + "@babel/plugin-transform-sticky-regex": "^7.25.7", + "@babel/plugin-transform-template-literals": "^7.25.7", + "@babel/plugin-transform-typeof-symbol": "^7.25.7", + "@babel/plugin-transform-unicode-escapes": "^7.25.7", + "@babel/plugin-transform-unicode-property-regex": "^7.25.7", + "@babel/plugin-transform-unicode-regex": "^7.25.7", + "@babel/plugin-transform-unicode-sets-regex": "^7.25.7", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.10", + "babel-plugin-polyfill-corejs3": "^0.10.6", + "babel-plugin-polyfill-regenerator": "^0.6.1", + "core-js-compat": "^3.38.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", + "dev": true, "dependencies": { - "regenerator-runtime": "^0.12.0" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" } }, - "node_modules/@babel/runtime/node_modules/regenerator-runtime": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz", - "integrity": "sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg==" + "node_modules/@babel/runtime": { + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.10.tgz", + "integrity": "sha512-2WJMeRQPHKSPemqk/awGrAiuFfzBmOIPXKizAsVhWH9YJqLZ0H+HS4c8loHGgW6utJ3E/ejXQUsiGaQy2NZ9Fw==", + "license": "MIT", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } }, "node_modules/@babel/template": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", - "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz", + "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.26.9", + "@babel/types": "^7.26.9" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/traverse": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.7.tgz", - "integrity": "sha512-8KWJPIb8c2VvY8AJrydh6+fVRo2ODx1wYBU2398xJVq0JomuLBZmVQzLPBblJgHIGYG4znCpUZUZ0Pt2vdmVYQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.16.7", - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.16.7", - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7", - "debug": "^4.1.0", + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.7.tgz", + "integrity": "sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.25.7", + "@babel/generator": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/template": "^7.25.7", + "@babel/types": "^7.25.7", + "debug": "^4.3.1", "globals": "^11.1.0" }, "engines": { @@ -1746,13 +1827,13 @@ } }, "node_modules/@babel/types": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.16.7.tgz", - "integrity": "sha512-E8HuV7FO9qLpx6OtoGfUQ2cjIYnbFwvZWYBS+87EwtdMvmUPJSwykpovFB+8insbpF0uJcpr8KMUi64XZntZcg==", - "dev": true, + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.10.tgz", + "integrity": "sha512-emqcG3vHrpxUKTrxcblR36dcrcoRDvKmnL/dCL6ZsHaShW80qxCAcNhzQZrpeM765VzEos+xOi4s+r4IXzTwdQ==", + "license": "MIT", "dependencies": { - "@babel/helper-validator-identifier": "^7.16.7", - "to-fast-properties": "^2.0.0" + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -1764,10 +1845,108 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, + "node_modules/@buttercup/fetch": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@buttercup/fetch/-/fetch-0.2.1.tgz", + "integrity": "sha512-sCgECOx8wiqY8NN1xN22BqqKzXYIG2AicNLlakOAI4f0WgyLVUbAigMf8CZhBtJxdudTcB1gD5lciqi44jwJvg==", + "optionalDependencies": { + "node-fetch": "^3.3.0" + } + }, + "node_modules/@csstools/css-parser-algorithms": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-2.6.1.tgz", + "integrity": "sha512-ubEkAaTfVZa+WwGhs5jbo5Xfqpeaybr/RvWzvFxRs4jfq16wH8l8Ty/QEEpINxll4xhuGfdMbipRyz5QZh9+FA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^2.2.4" + } + }, + "node_modules/@csstools/css-tokenizer": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-2.2.4.tgz", + "integrity": "sha512-PuWRAewQLbDhGeTvFuq2oClaSCKPIBmHyIobCV39JHRYN0byDcUWJl5baPeNUcqrjtdMNqFooE0FGl31I3JOqw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + } + }, + "node_modules/@csstools/media-query-list-parser": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-2.1.9.tgz", + "integrity": "sha512-qqGuFfbn4rUmyOB0u8CVISIp5FfJ5GAR3mBrZ9/TKndHakdnm6pY0L/fbLcpPnrzwCyyTEZl1nUcXAYHEWneTA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^2.6.1", + "@csstools/css-tokenizer": "^2.2.4" + } + }, + "node_modules/@csstools/selector-specificity": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-3.0.3.tgz", + "integrity": "sha512-KEPNw4+WW5AVEIyzC80rTbWEUatTW2lXpN8+8ILC8PiPeWPjwUzrPZDIOZ2wwqDmeqOYTdSGyL3+vE5GC3FB3Q==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.13" + } + }, "node_modules/@discoveryjs/json-ext": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.6.tgz", - "integrity": "sha512-ws57AidsDvREKrZKYffXddNkyaF14iHNHm8VQnZH6t99E8gczjNN0GpvcGny0imC80yQ0tHz1xVUKk/KFQSUyA==", + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", "dev": true, "peer": true, "engines": { @@ -1775,39 +1954,82 @@ } }, "node_modules/@es-joy/jsdoccomment": { - "version": "0.31.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.31.0.tgz", - "integrity": "sha512-tc1/iuQcnaiSIUVad72PBierDFpsxdUHtEF/OrfqvM1CBAsIoMP51j52jTMb3dXriwhieTo289InzZj72jL3EQ==", + "version": "0.41.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.41.0.tgz", + "integrity": "sha512-aKUhyn1QI5Ksbqcr3fFJj16p99QdjUxXAEuFst1Z47DRyoiMwivIH9MV/ARcJOCXVjPfjITciej8ZD2O/6qUmw==", "dev": true, "peer": true, "dependencies": { - "comment-parser": "1.3.1", - "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "~3.1.0" + "comment-parser": "1.4.1", + "esquery": "^1.5.0", + "jsdoc-type-pratt-parser": "~4.0.0" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "peer": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "dev": true, + "peer": true, "engines": { - "node": "^14 || ^16 || ^17 || ^18" + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz", - "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", - "espree": "^9.3.1", - "globals": "^13.9.0", + "espree": "^9.6.0", + "globals": "^13.19.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", - "minimatch": "^3.0.4", + "minimatch": "^3.1.2", "strip-json-comments": "^3.1.1" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/@eslint/eslintrc/node_modules/argparse": { @@ -1815,13 +2037,15 @@ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true, + "license": "Python-2.0", "peer": true }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.13.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", - "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "type-fest": "^0.20.2" @@ -1838,6 +2062,7 @@ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "argparse": "^2.0.1" @@ -1851,6 +2076,7 @@ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, + "license": "(MIT OR CC0-1.0)", "peer": true, "engines": { "node": ">=10" @@ -1859,159 +2085,314 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@fullcalendar/common": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/common/-/common-5.11.0.tgz", - "integrity": "sha512-gWjbMAnN1u73Oqlgjbyky7i+3bY0hvFSnGT0YBPx44n874AkQa9e9OU12PMLTMOPy0tXPb8DEwRelFQ7CJNbcw==", + "node_modules/@eslint/js": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@floating-ui/core": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-0.3.1.tgz", + "integrity": "sha512-ensKY7Ub59u16qsVIFEo2hwTCqZ/r9oZZFh51ivcLGHfUwTn8l1Xzng8RJUe91H/UP8PeqeBronAGx0qmzwk2g==" + }, + "node_modules/@floating-ui/dom": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-0.1.10.tgz", + "integrity": "sha512-4kAVoogvQm2N0XE0G6APQJuCNuErjOfPW8Ux7DFxh8+AfugWflwVJ5LDlHOwrwut7z/30NUvdtHzQ3zSip4EzQ==", "dependencies": { - "tslib": "^2.1.0" + "@floating-ui/core": "^0.3.0" } }, + "node_modules/@floating-ui/utils": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.9.tgz", + "integrity": "sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==", + "license": "MIT" + }, "node_modules/@fullcalendar/core": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/core/-/core-5.11.0.tgz", - "integrity": "sha512-cF/d9LuJb/6xw14ms0urv1H4BiA70c4jrufe/EuVzLR6qTDpK92IZ3JK7GVtZtzptfTYZ/NQgDV9YCzIaO9Blw==", + "version": "6.1.17", + "resolved": "https://registry.npmjs.org/@fullcalendar/core/-/core-6.1.17.tgz", + "integrity": "sha512-0W7lnIrv18ruJ5zeWBeNZXO8qCWlzxDdp9COFEsZnyNjiEhUVnrW/dPbjRKYpL0edGG0/Lhs0ghp1z/5ekt8ZA==", + "license": "MIT", "dependencies": { - "@fullcalendar/common": "~5.11.0", - "preact": "^10.0.5", - "tslib": "^2.1.0" + "preact": "~10.12.1" } }, "node_modules/@fullcalendar/daygrid": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/daygrid/-/daygrid-5.11.0.tgz", - "integrity": "sha512-Ybh/dfHn/VL0qOVIRVyJc9I8oYiqqHl6xQONk8xXCe456QbPzAQLsAxpLLJLH+3smWNCfoQgvDKzR9e9XTzLMQ==", - "dependencies": { - "@fullcalendar/common": "~5.11.0", - "tslib": "^2.1.0" + "version": "6.1.17", + "resolved": "https://registry.npmjs.org/@fullcalendar/daygrid/-/daygrid-6.1.17.tgz", + "integrity": "sha512-K7m+pd7oVJ9fW4h7CLDdDGJbc9szJ1xDU1DZ2ag+7oOo1aCNLv44CehzkkknM6r8EYlOOhgaelxQpKAI4glj7A==", + "license": "MIT", + "peerDependencies": { + "@fullcalendar/core": "~6.1.17" } }, "node_modules/@fullcalendar/interaction": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/interaction/-/interaction-5.11.0.tgz", - "integrity": "sha512-9XTI5+ydqrSX+IL3iWgKBURXfnPewn57Tmsv9mJZhiqrUEF7/+qtftLoKEAc8ZdWk/+01aBe67PFL16uPXj2Jg==", - "dependencies": { - "@fullcalendar/common": "~5.11.0", - "tslib": "^2.1.0" + "version": "6.1.17", + "resolved": "https://registry.npmjs.org/@fullcalendar/interaction/-/interaction-6.1.17.tgz", + "integrity": "sha512-AudvQvgmJP2FU89wpSulUUjeWv24SuyCx8FzH2WIPVaYg+vDGGYarI7K6PcM3TH7B/CyaBjm5Rqw9lXgnwt5YA==", + "license": "MIT", + "peerDependencies": { + "@fullcalendar/core": "~6.1.17" } }, "node_modules/@fullcalendar/list": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/list/-/list-5.11.0.tgz", - "integrity": "sha512-0dl/JV6zEGseTDXpM16nozetByVvJ4l/DElYP+StCtnk+Lr51zFK0yfRWRwB9XInxyapfZLDd/3YjKXQf8Bxcw==", + "version": "6.1.17", + "resolved": "https://registry.npmjs.org/@fullcalendar/list/-/list-6.1.17.tgz", + "integrity": "sha512-fkyK49F9IxwlGUBVhJGsFpd/LTi/vRVERLIAe1HmBaGkjwpxnynm8TMLb9mZip97wvDk3CmZWduMe6PxscAlow==", + "license": "MIT", + "peerDependencies": { + "@fullcalendar/core": "~6.1.17" + } + }, + "node_modules/@fullcalendar/multimonth": { + "version": "6.1.17", + "resolved": "https://registry.npmjs.org/@fullcalendar/multimonth/-/multimonth-6.1.17.tgz", + "integrity": "sha512-ZxA9mkTzKayCdxR5je9P9++qqhSeSbuvXmvZ6doZw6omv8K52cD7XJii+P7gvxATXxtI6hg4i+DuMyOHxP1E2g==", + "license": "MIT", "dependencies": { - "@fullcalendar/common": "~5.11.0", - "tslib": "^2.1.0" + "@fullcalendar/daygrid": "~6.1.17" + }, + "peerDependencies": { + "@fullcalendar/core": "~6.1.17" } }, "node_modules/@fullcalendar/premium-common": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/premium-common/-/premium-common-5.11.0.tgz", - "integrity": "sha512-XVLJwJQ26EhuglBM1flmrKtNt0BEUBHoazko/wvMiz5Yz17eABKQreFTidipOwjL3s74ifQzDoYpkQVn8TzpZQ==", - "dependencies": { - "@fullcalendar/common": "~5.11.0", - "tslib": "^2.1.0" + "version": "6.1.17", + "resolved": "https://registry.npmjs.org/@fullcalendar/premium-common/-/premium-common-6.1.17.tgz", + "integrity": "sha512-zoN7fMwGMcP6Xu+2YudRAGfdwD2J+V+A/xAieXgYDSZT+5ekCsjZiwb2rmvthjt+HVnuZcqs6sGp7rnJ8Ie/mA==", + "license": "SEE LICENSE IN LICENSE.md", + "peerDependencies": { + "@fullcalendar/core": "~6.1.17" } }, - "node_modules/@fullcalendar/resource-common": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/resource-common/-/resource-common-5.11.0.tgz", - "integrity": "sha512-zO6UK9IKo7O8Uj5Y1t9sLMsLyNmxAliriAlz/NNhk//O/yGmQZ5MQOgVDg2qCZpDOWgQeuSZOkTTJdud5ISe2Q==", + "node_modules/@fullcalendar/resource": { + "version": "6.1.17", + "resolved": "https://registry.npmjs.org/@fullcalendar/resource/-/resource-6.1.17.tgz", + "integrity": "sha512-hWnbOWlroIN5Wt4NJmHAJh/F7ge2cV6S0PdGSmLFoZJZJA0hJX9GeYRzyz4MlUoj7f4dGzBlesy2RdC+t5FEMw==", + "license": "SEE LICENSE IN LICENSE.md", "dependencies": { - "@fullcalendar/common": "~5.11.0", - "@fullcalendar/premium-common": "~5.11.0", - "tslib": "^2.1.0" + "@fullcalendar/premium-common": "~6.1.17" + }, + "peerDependencies": { + "@fullcalendar/core": "~6.1.17" } }, "node_modules/@fullcalendar/resource-timeline": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/resource-timeline/-/resource-timeline-5.11.0.tgz", - "integrity": "sha512-+40sKEQj/ig6oh+8/FZPaFYtqI4e9wa/2XT2MTtzwDr3modHU0mQChlpcY8WQ+c6kyPjVwhO89BFiv2OeilLWw==", + "version": "6.1.17", + "resolved": "https://registry.npmjs.org/@fullcalendar/resource-timeline/-/resource-timeline-6.1.17.tgz", + "integrity": "sha512-QMrtc1mLs4c6DtlBNmWICef8Lr4CmzE47uWS/rcJBd9K2kBzvusTp7AQQ1qn3RX5UnjNHqT8pkKO/wE4yspJQw==", + "license": "SEE LICENSE IN LICENSE.md", "dependencies": { - "@fullcalendar/common": "~5.11.0", - "@fullcalendar/premium-common": "~5.11.0", - "@fullcalendar/resource-common": "~5.11.0", - "@fullcalendar/scrollgrid": "~5.11.0", - "@fullcalendar/timeline": "~5.11.0", - "tslib": "^2.1.0" + "@fullcalendar/premium-common": "~6.1.17", + "@fullcalendar/scrollgrid": "~6.1.17", + "@fullcalendar/timeline": "~6.1.17" + }, + "peerDependencies": { + "@fullcalendar/core": "~6.1.17", + "@fullcalendar/resource": "~6.1.17" } }, "node_modules/@fullcalendar/scrollgrid": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/scrollgrid/-/scrollgrid-5.11.0.tgz", - "integrity": "sha512-OPwLGLr0YF2qQYa9K1vPIGsodfAqPnugcwKLwnkiLprC2UybnPaIXvY6xMAHyVWSiBaeJSmkQ0J8mZDmfKjdTw==", + "version": "6.1.17", + "resolved": "https://registry.npmjs.org/@fullcalendar/scrollgrid/-/scrollgrid-6.1.17.tgz", + "integrity": "sha512-lzphEKwxWMS4xQVEuimzZjKFLijlSn49ExvzkYZls0VLDwOa3BYHcRlDJBjQ0LP6kauz9aatg3MfRIde/LAazA==", + "license": "SEE LICENSE IN LICENSE.md", "dependencies": { - "@fullcalendar/common": "~5.11.0", - "@fullcalendar/premium-common": "~5.11.0", - "tslib": "^2.1.0" + "@fullcalendar/premium-common": "~6.1.17" + }, + "peerDependencies": { + "@fullcalendar/core": "~6.1.17" } }, "node_modules/@fullcalendar/timegrid": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/timegrid/-/timegrid-5.11.0.tgz", - "integrity": "sha512-GNy+/PwAj510PS4Fu18Mf/CytNBVftFU7M8XwsUXOCJ6ouyroHZje0a7k5cH/nE5IQ6NJZfH2eAPBlxGath1MQ==", + "version": "6.1.17", + "resolved": "https://registry.npmjs.org/@fullcalendar/timegrid/-/timegrid-6.1.17.tgz", + "integrity": "sha512-K4PlA3L3lclLOs3IX8cvddeiJI9ZVMD7RA9IqaWwbvac771971foc9tFze9YY+Pqesf6S+vhS2dWtEVlERaGlQ==", + "license": "MIT", "dependencies": { - "@fullcalendar/common": "~5.11.0", - "@fullcalendar/daygrid": "~5.11.0", - "tslib": "^2.1.0" + "@fullcalendar/daygrid": "~6.1.17" + }, + "peerDependencies": { + "@fullcalendar/core": "~6.1.17" } }, "node_modules/@fullcalendar/timeline": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/timeline/-/timeline-5.11.0.tgz", - "integrity": "sha512-2mASvwsXMR42Vlvwjnb5w0OvMDf8z2WCZXpLCd11lP/b+ZYOosCrJZZQWpzNfWYf7Y4Sqjo7q+YMPxnJqlichg==", + "version": "6.1.17", + "resolved": "https://registry.npmjs.org/@fullcalendar/timeline/-/timeline-6.1.17.tgz", + "integrity": "sha512-UhL2OOph/S0cEKs3lzbXjS2gTxmQwaNug2XFjdljvO/ERj10v7OBXj/zvJrPyhjvWR/CSgjNgBaUpngkCu4JtQ==", + "license": "SEE LICENSE IN LICENSE.md", "dependencies": { - "@fullcalendar/common": "~5.11.0", - "@fullcalendar/premium-common": "~5.11.0", - "@fullcalendar/scrollgrid": "~5.11.0", - "tslib": "^2.1.0" + "@fullcalendar/premium-common": "~6.1.17", + "@fullcalendar/scrollgrid": "~6.1.17" + }, + "peerDependencies": { + "@fullcalendar/core": "~6.1.17" } }, "node_modules/@fullcalendar/vue": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/vue/-/vue-5.11.0.tgz", - "integrity": "sha512-+hG2D6esKbGK2vUs5Te+mXTL8L0XCPTiTIxSLYXtmNMgRcDHZ2qoAjad/9upIyfarUFfz1yPdjDJpxAs8UvcLw==", - "dependencies": { - "@fullcalendar/core": "~5.11.0", - "tslib": "^2.1.0" - }, + "version": "6.1.17", + "resolved": "https://registry.npmjs.org/@fullcalendar/vue/-/vue-6.1.17.tgz", + "integrity": "sha512-+yVAZjRAoWIVEjR1y8TjL75/FAxlcZiimJfLZouyAKV6U8BTuBRt5NZZOajJcqFyAQ/wRECN83YD10XeqkX3jw==", + "license": "MIT", "peerDependencies": { + "@fullcalendar/core": "~6.1.17", "vue": "^2.6.12" } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.9.5", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", - "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", + "deprecated": "Use @eslint/config-array instead", "dev": true, + "license": "Apache-2.0", "peer": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.4" + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", + "minimatch": "^3.0.5" }, "engines": { "node": ">=10.10.0" } }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", "dev": true, + "license": "BSD-3-Clause", "peer": true }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", "dev": true, "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" }, "engines": { "node": ">=8" @@ -2027,20 +2408,20 @@ } }, "node_modules/@jest/console": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", - "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", + "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", "slash": "^3.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/console/node_modules/ansi-styles": { @@ -2074,19 +2455,30 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@jest/console/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/@jest/console/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, - "node_modules/@jest/console/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/@jest/console/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jest/console/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { "node": ">=8" @@ -2105,42 +2497,42 @@ } }, "node_modules/@jest/core": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", - "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", "dev": true, "dependencies": { - "@jest/console": "^27.5.1", - "@jest/reporters": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", "@types/node": "*", "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", - "emittery": "^0.8.1", + "ci-info": "^3.2.0", "exit": "^0.1.2", "graceful-fs": "^4.2.9", - "jest-changed-files": "^27.5.1", - "jest-config": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-resolve-dependencies": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "jest-watcher": "^27.5.1", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", "micromatch": "^4.0.4", - "rimraf": "^3.0.0", + "pretty-format": "^29.7.0", "slash": "^3.0.0", "strip-ansi": "^6.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" @@ -2166,18 +2558,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@jest/core/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@jest/core/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -2194,18 +2574,26 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@jest/core/node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "node_modules/@jest/core/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", "dependencies": { - "to-regex-range": "^5.0.1" + "color-name": "~1.1.4" }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, + "node_modules/@jest/core/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, "node_modules/@jest/core/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -2215,141 +2603,123 @@ "node": ">=8" } }, - "node_modules/@jest/core/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/@jest/core/node_modules/micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "node_modules/@jest/core/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" + "has-flag": "^4.0.0" }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/@jest/core/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, "engines": { "node": ">=8" } }, - "node_modules/@jest/core/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/core/node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "node_modules/@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", "dev": true, "dependencies": { - "is-number": "^7.0.0" + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" }, "engines": { - "node": ">=8.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/environment": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", - "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", "dev": true, "dependencies": { - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1" + "jest-get-type": "^29.6.3" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/fake-timers": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", - "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@sinonjs/fake-timers": "^8.0.1", + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", "@types/node": "*", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/globals": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", - "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/types": "^27.5.1", - "expect": "^27.5.1" + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/reporters": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", - "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", "dev": true, "dependencies": { "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", "@types/node": "*", "chalk": "^4.0.0", "collect-v8-coverage": "^1.0.0", "exit": "^0.1.2", - "glob": "^7.1.2", + "glob": "^7.1.3", "graceful-fs": "^4.2.9", "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-instrument": "^6.0.0", "istanbul-lib-report": "^3.0.0", "istanbul-lib-source-maps": "^4.0.0", "istanbul-reports": "^3.1.3", - "jest-haste-map": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", "slash": "^3.0.0", - "source-map": "^0.6.0", "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^8.1.0" + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" @@ -2391,6 +2761,35 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/@jest/reporters/node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@jest/reporters/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, "node_modules/@jest/reporters/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -2400,22 +2799,60 @@ "node": ">=8" } }, - "node_modules/@jest/reporters/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/@jest/reporters/node_modules/istanbul-lib-instrument": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz", + "integrity": "sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@jest/reporters/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/@jest/reporters/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/@jest/reporters/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, "engines": { - "node": ">=0.10.0" + "node": ">=10" + } + }, + "node_modules/@jest/reporters/node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" } }, "node_modules/@jest/reporters/node_modules/supports-color": { @@ -2430,83 +2867,92 @@ "node": ">=8" } }, - "node_modules/@jest/source-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", - "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", + "node_modules/@jest/reporters/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", "dev": true, "dependencies": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9", - "source-map": "^0.6.0" + "@sinclair/typebox": "^0.27.8" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/source-map/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/test-result": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", - "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", "dev": true, "dependencies": { - "@jest/console": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", "@types/istanbul-lib-coverage": "^2.0.0", "collect-v8-coverage": "^1.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/test-sequencer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", - "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", "dev": true, "dependencies": { - "@jest/test-result": "^27.5.1", + "@jest/test-result": "^29.7.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-runtime": "^27.5.1" + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", "dev": true, "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", "babel-plugin-istanbul": "^6.1.1", "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", "micromatch": "^4.0.4", "pirates": "^4.0.4", "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" + "write-file-atomic": "^4.0.2" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/transform/node_modules/ansi-styles": { @@ -2524,22 +2970,10 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@jest/transform/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@jest/transform/node_modules/chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { "ansi-styles": "^4.1.0", @@ -2552,18 +2986,32 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@jest/transform/node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "node_modules/@jest/transform/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", "dependencies": { - "to-regex-range": "^5.0.1" + "color-name": "~1.1.4" }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, + "node_modules/@jest/transform/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jest/transform/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, "node_modules/@jest/transform/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -2573,46 +3021,6 @@ "node": ">=8" } }, - "node_modules/@jest/transform/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/@jest/transform/node_modules/micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "dependencies": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/@jest/transform/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/transform/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@jest/transform/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -2625,32 +3033,21 @@ "node": ">=8" } }, - "node_modules/@jest/transform/node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, "node_modules/@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", "dev": true, "dependencies": { + "@jest/schemas": "^29.6.3", "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^3.0.0", "@types/node": "*", - "@types/yargs": "^16.0.0", + "@types/yargs": "^17.0.8", "chalk": "^4.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/types/node_modules/ansi-styles": { @@ -2669,9 +3066,9 @@ } }, "node_modules/@jest/types/node_modules/chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { "ansi-styles": "^4.1.0", @@ -2684,6 +3081,26 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/@jest/types/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/types/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, "node_modules/@jest/types/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -2705,640 +3122,916 @@ "node": ">=8" } }, - "node_modules/@nextcloud/auth": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@nextcloud/auth/-/auth-1.3.0.tgz", - "integrity": "sha512-GfwRM9W7hat4psNdAt74UHEV+drEXQ53klCVp6JpON66ZLPeK5eJ1LQuiQDkpUxZpqNeaumXjiB98h5cug/uQw==", + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, "dependencies": { - "@nextcloud/event-bus": "^1.1.3", - "@nextcloud/typings": "^0.2.2", - "core-js": "^3.6.4" + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/@nextcloud/auth/node_modules/@nextcloud/event-bus": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@nextcloud/event-bus/-/event-bus-1.3.0.tgz", - "integrity": "sha512-+U5MnCvfnNWvf0lvdqJg8F+Nm8wN+s9ayuBjtiEQxTAcootv7lOnlMgfreqF3l2T0Wet2uZh4JbFVUWf8l3w7g==", + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", + "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", + "dev": true, + "peer": true, "dependencies": { - "@types/semver": "^7.3.5", - "core-js": "^3.11.2", - "semver": "^7.3.5" + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" } }, - "node_modules/@nextcloud/auth/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dev": true, + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" }, "engines": { - "node": ">=10" + "node": ">=6.0.0" } }, - "node_modules/@nextcloud/auth/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "license": "MIT", "dependencies": { - "lru-cache": "^6.0.0" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@jsonjoy.com/base64": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/base64/-/base64-1.1.2.tgz", + "integrity": "sha512-q6XAnWQDIMA3+FTiOYajoYqySkO+JSat0ytXGSuRdq9uXE7o92gzuQwQM14xaCRlBLGq3v5miDGC4vkVTn54xA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=10.0" }, - "bin": { - "semver": "bin/semver.js" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@jsonjoy.com/json-pack": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/json-pack/-/json-pack-1.1.0.tgz", + "integrity": "sha512-zlQONA+msXPPwHWZMKFVS78ewFczIll5lXiVPwFPCZUsrOKdxc2AvxU1HoNBmMRhqDZUR9HkC3UOm+6pME6Xsg==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@jsonjoy.com/base64": "^1.1.1", + "@jsonjoy.com/util": "^1.1.2", + "hyperdyperid": "^1.2.0", + "thingies": "^1.20.0" }, "engines": { - "node": ">=10" + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" } }, - "node_modules/@nextcloud/auth/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "node_modules/@jsonjoy.com/util": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/util/-/util-1.5.0.tgz", + "integrity": "sha512-ojoNsrIuPI9g6o8UxhraZQSyF2ByJanAY4cTFbc8Mf2AXEF4aQRGY1dJxyJpuyav8r9FGflEt/Ff3u5Nt6YMPA==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" + } + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", + "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@linusborg/vue-simple-portal": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@linusborg/vue-simple-portal/-/vue-simple-portal-0.1.5.tgz", + "integrity": "sha512-dq+oubEVW4UabBoQxmH97GiDa+F6sTomw4KcXFHnXEpw69rdkXFCxo1WzwuvWjoLiUVYJTyN1dtlUvTa50VcXg==", + "dependencies": { + "nanoid": "^3.1.20" + }, + "peerDependencies": { + "vue": "^2.6.6" + } + }, + "node_modules/@mapbox/hast-util-table-cell-style": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@mapbox/hast-util-table-cell-style/-/hast-util-table-cell-style-0.2.0.tgz", + "integrity": "sha512-gqaTIGC8My3LVSnU38IwjHVKJC94HSonjvFHDk8/aSrApL8v4uWgm8zJkK7MJIIbHuNOr/+Mv2KkQKcxs6LEZA==", + "dependencies": { + "unist-util-visit": "^1.4.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@mapbox/hast-util-table-cell-style/node_modules/unist-util-is": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-3.0.0.tgz", + "integrity": "sha512-sVZZX3+kspVNmLWBPAB6r+7D9ZgAFPNWm66f7YNb420RlQSbn+n8rG8dGZSkrER7ZIXGQYNm5pqC3v3HopH24A==" + }, + "node_modules/@mapbox/hast-util-table-cell-style/node_modules/unist-util-visit": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.4.1.tgz", + "integrity": "sha512-AvGNk7Bb//EmJZyhtRUnNMEpId/AZ5Ph/KUpTI09WHQuDZHKovQ1oEv3mfmKpWKtoMzyMC4GLBm1Zy5k12fjIw==", + "dependencies": { + "unist-util-visit-parents": "^2.0.0" + } + }, + "node_modules/@mapbox/hast-util-table-cell-style/node_modules/unist-util-visit-parents": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-2.1.2.tgz", + "integrity": "sha512-DyN5vD4NE3aSeB+PXYNKxzGsfocxp6asDc2XXE3b0ekO2BaRUpBicbbUygfSvYfUz1IkmjFR1YF7dPklraMZ2g==", + "dependencies": { + "unist-util-is": "^3.0.0" + } + }, + "node_modules/@mdi/js": { + "version": "7.4.47", + "resolved": "https://registry.npmjs.org/@mdi/js/-/js-7.4.47.tgz", + "integrity": "sha512-KPnNOtm5i2pMabqZxpUz7iQf+mfrYZyKCZ8QNz85czgEt7cuHcGorWfdzUMWYA0SD+a6Hn4FmJ+YhzzzjkTZrQ==" + }, + "node_modules/@mdi/svg": { + "version": "7.4.47", + "resolved": "https://registry.npmjs.org/@mdi/svg/-/svg-7.4.47.tgz", + "integrity": "sha512-WQ2gDll12T9WD34fdRFgQVgO8bag3gavrAgJ0frN4phlwdJARpE6gO1YvLEMJR0KKgoc+/Ea/A0Pp11I00xBvw==", + "license": "Apache-2.0" + }, + "node_modules/@nextcloud/auth": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@nextcloud/auth/-/auth-2.5.1.tgz", + "integrity": "sha512-cToowJmI9rvIXuWvpvHp4tKm1ZzK4tlPh4rAuEjX6Dvpq74ia52yJYGJFR2maag/i/tMl9m0diZtHgSog6GTGg==", + "license": "GPL-3.0-or-later", + "dependencies": { + "@nextcloud/browser-storage": "^0.4.0", + "@nextcloud/event-bus": "^3.3.2" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } }, "node_modules/@nextcloud/axios": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/@nextcloud/axios/-/axios-1.10.0.tgz", - "integrity": "sha512-dC+Z5ibBRxkep6ysoRmUldUfQsZiqC5fGLbwwU0Unxjy+Qrcl2U9rcljZJagwXs1kag5/KZFG1rlGcew2GAgyg==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@nextcloud/axios/-/axios-2.5.1.tgz", + "integrity": "sha512-AA7BPF/rsOZWAiVxqlobGSdD67AEwjOnymZCKUIwEIBArKxYK7OQEqcILDjQwgj6G0e/Vg9Y8zTVsPZp+mlvwA==", + "license": "GPL-3.0-or-later", "dependencies": { - "@nextcloud/auth": "^1.3.0", - "axios": "^0.27.1", - "core-js": "^3.6.4" + "@nextcloud/auth": "^2.3.0", + "@nextcloud/router": "^3.0.1", + "axios": "^1.6.8" }, "engines": { - "node": "^14", - "npm": "^7" + "node": "^20.0.0", + "npm": "^10.0.0" } }, "node_modules/@nextcloud/babel-config": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/babel-config/-/babel-config-1.0.0.tgz", - "integrity": "sha512-olz7sqPD7xMDP2KcYwODtitH37faR/C5jKX1oxXzdDf+s1FRy6OQTC5ZqZR2LHZA6jTUvmwM/xWBPoEB/HPFRw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/babel-config/-/babel-config-1.2.0.tgz", + "integrity": "sha512-QOESlmX99UOfXdPANpoeFtfoRWWfKhBm1wXgF2lLnwpOBq4ZzdtqI+wphhWA/lkdfw/sftZzd1UJF/gcPDpiAw==", "dev": true, + "license": "AGPL-3.0-or-later", + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + }, "peerDependencies": { - "@babel/core": "^7.13.10", - "@babel/plugin-proposal-class-properties": "^7.13.0", + "@babel/core": "^7.24.5", "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-transform-modules-commonjs": "^7.13.8", - "@babel/plugin-transform-shorthand-properties": "^7.12.13", - "@babel/preset-env": "^7.13.12" + "@babel/preset-env": "^7.24.5" } }, "node_modules/@nextcloud/browser-storage": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nextcloud/browser-storage/-/browser-storage-0.1.1.tgz", - "integrity": "sha512-bWzs/A44rEK8b3CMOFw0ZhsenagrWdsB902LOEwmlMCcFysiFgWiOPbF4/0/ODlOYjvPrO02wf6RigWtb8P+gA==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@nextcloud/browser-storage/-/browser-storage-0.4.0.tgz", + "integrity": "sha512-D6XxznxCYmJ3oBCC3p0JB6GZJ2RZ9dgbB1UqtTePXrIvHUMBAeF/YkiGKYxLAVZCZb+NSNZXgAYHm/3LnIUbDg==", + "license": "GPL-3.0-or-later", "dependencies": { - "core-js": "3.6.1" + "core-js": "3.37.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" } }, "node_modules/@nextcloud/browser-storage/node_modules/core-js": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.1.tgz", - "integrity": "sha512-186WjSik2iTGfDjfdCZAxv2ormxtKgemjC3SI6PL31qOA0j5LhTDVjHChccoc7brwLvpvLPiMyRlcO88C4l1QQ==", + "version": "3.37.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.37.0.tgz", + "integrity": "sha512-fu5vHevQ8ZG4og+LXug8ulUtVxjOcEYvifJr7L5Bfq9GOztVqsKd9/59hUk2ZSbCrS3BqUr3EpaYGIYzq7g3Ug==", "hasInstallScript": true, + "license": "MIT", "funding": { "type": "opencollective", "url": "https://opencollective.com/core-js" } }, "node_modules/@nextcloud/browserslist-config": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@nextcloud/browserslist-config/-/browserslist-config-2.2.0.tgz", - "integrity": "sha512-kC42RQW5rZjZZsRaEjVlIQpp6aW/yxm+zZdETnrRQnUzcPwBgF4wO4makfGT63Ckd+LkgUW+geesPiPRqxFVew==", - "dev": true + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@nextcloud/browserslist-config/-/browserslist-config-3.0.1.tgz", + "integrity": "sha512-GZTxL5fsDgmFoot/qnRurjHCuHjSfOg+A6t4+P2TySXua2Q1Ex0lecZYlSnRuOR/W5BGOZ06ITTA/hbkSh1Ypg==", + "dev": true, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } }, "node_modules/@nextcloud/calendar-availability-vue": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@nextcloud/calendar-availability-vue/-/calendar-availability-vue-0.3.1.tgz", - "integrity": "sha512-C+i9hgagCe+NPnb3vOCZ4cx2e5E04RR+RhRagPr7Ej1X/lyU+5B2p5VY/mLXB8GB3lIe7zthaCdwKqW/P5V9RQ==", + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/@nextcloud/calendar-availability-vue/-/calendar-availability-vue-2.2.6.tgz", + "integrity": "sha512-FVH1fyE3LClbTtrSGGkd/u0FBASQwXchp4DYDMrw+OPiLb3Q/p9zmOVC6liXzHuRmNPAwvtOgLyKWZE18Fr5Sg==", + "license": "MIT", "dependencies": { - "ical.js": "^1.4.0", + "@nextcloud/logger": "^3.0.2", + "ical.js": "^2.1.0", "icalzone": "^0.0.1", - "uuid": "^8.3.2" + "uuid": "^11.0.3", + "vue-material-design-icons": "^5.3.1" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" }, "peerDependencies": { - "@nextcloud/l10n": "^1.4", - "@nextcloud/vue": "^4.2||^5.0", - "vue": "^2.6" + "@nextcloud/l10n": "^1.4 || ^2.0 || ^3.0.0", + "@nextcloud/vue": "^8", + "vue": "^2.7.16" } }, "node_modules/@nextcloud/calendar-js": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/calendar-js/-/calendar-js-3.0.0.tgz", - "integrity": "sha512-Uy/etWwRmbzG1jxcfampOCEXbGMEzY1xVCBlONVrkusUmD9t02u3jWFkRJGAHvFAtLd4iM+MdTo1x3VXemBvcA==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@nextcloud/calendar-js/-/calendar-js-8.1.1.tgz", + "integrity": "sha512-Wcn3ZdOOvkpwWWKtZTZIU2gCCUHOSGkqBn2VrLHDVF1RbuIVlZGukC08NmjJ2Tqyf7fVkNpKxBzDt3XmIypNaQ==", + "license": "AGPL-3.0-or-later", "engines": { - "node": ">=14.0.0", - "npm": ">=7.0.0" + "node": "^20.0.0", + "npm": "^10.0.0" }, "peerDependencies": { - "ical.js": "^1.4.0", - "uuid": "^8.3.2" + "@nextcloud/timezones": "^0.1.1", + "ical.js": "^2.1.0" } }, "node_modules/@nextcloud/capabilities": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@nextcloud/capabilities/-/capabilities-1.0.4.tgz", - "integrity": "sha512-xsmwPPUJ8NN7YfLcq0gpDTibeb9lMBvY/bffMFnHcZi8hMGOouPiEY+CWAgJ5I9W6I2vNeacHUuTanEN5Ncb2A==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/capabilities/-/capabilities-1.2.0.tgz", + "integrity": "sha512-L1NQtOfHWzkfj0Ple1MEJt6HmOHWAi3y4qs+OnwSWexqJT0DtXTVPyRxi7ADyITwRxS5H9R/HMl6USAj4Nr1nQ==", "dependencies": { - "@nextcloud/initial-state": "^1.1.2", - "core-js": "^3.6.4" + "@nextcloud/initial-state": "^2.1.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" } }, "node_modules/@nextcloud/cdav-library": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@nextcloud/cdav-library/-/cdav-library-1.1.0.tgz", - "integrity": "sha512-hmJgR9Cp11y3ch4dS0NufsPgofe4+iwhUkusYKmDTl0PFsJrBUNy1zawLdfDrpEjK1zXrU3tOpyF3pIqyGMYBg==", - "dependencies": { - "core-js": "^3.19.3", - "regenerator-runtime": "^0.13.9" - }, + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@nextcloud/cdav-library/-/cdav-library-1.5.3.tgz", + "integrity": "sha512-MO9/2ocUwHLHcwTf8fTdjqed+O5IXjGLTEt2Z/nGgiLzv+UlLMWWGnCrwRivVibz8fG/PbkkMF91G33XJGmXuw==", + "license": "AGPL-3.0-or-later", "engines": { - "node": ">=14.0.0" + "node": "^20.0.0", + "npm": "^10.0.0" } }, "node_modules/@nextcloud/dialogs": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@nextcloud/dialogs/-/dialogs-3.1.4.tgz", - "integrity": "sha512-Jf/DWacCqPZDWroDkdOFuX+3AyHVWjy6JpkxAUNkmFPlKjNG8fGPRm/cdQIkqVqAnC+b1sUdMqH6N89Zdyks2Q==", - "dependencies": { - "@nextcloud/l10n": "^1.3.0", - "@nextcloud/typings": "^1.0.0", - "core-js": "^3.6.4", - "toastify-js": "^1.12.0" + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/@nextcloud/dialogs/-/dialogs-6.3.1.tgz", + "integrity": "sha512-lklTssGdphRZKoR07pYU88btqguEKcQjEpKYom342i1eiMPiejgmoPZEignWJvJhpaN9CT5FoGndCrqqS3BswA==", + "license": "AGPL-3.0-or-later", + "dependencies": { + "@mdi/js": "^7.4.47", + "@nextcloud/auth": "^2.5.1", + "@nextcloud/axios": "^2.5.1", + "@nextcloud/browser-storage": "^0.4.0", + "@nextcloud/event-bus": "^3.3.2", + "@nextcloud/files": "^3.10.2", + "@nextcloud/initial-state": "^2.2.0", + "@nextcloud/l10n": "^3.3.0", + "@nextcloud/router": "^3.0.1", + "@nextcloud/sharing": "^0.2.4", + "@nextcloud/typings": "^1.9.1", + "@types/toastify-js": "^1.12.4", + "@vueuse/core": "^11.3.0", + "cancelable-promise": "^4.3.1", + "p-queue": "^8.1.0", + "toastify-js": "^1.12.0", + "vue-frag": "^1.4.3", + "webdav": "^5.8.0" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" }, - "engines": { - "node": "^14.0.0", - "npm": "^7.0.0" + "peerDependencies": { + "@nextcloud/vue": "^8.23.1", + "vue": "^2.7.16" } }, - "node_modules/@nextcloud/dialogs/node_modules/@nextcloud/typings": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/typings/-/typings-1.0.0.tgz", - "integrity": "sha512-r8SRvXszWTyKWEhVd3gx7eBAcCKwdoLlr+ZrR8hrSxs2nfH00de/QoGdo0n/Rcv/9mMtX/haJNd71KwODM2+uQ==", + "node_modules/@nextcloud/dialogs/node_modules/@vueuse/core": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-11.3.0.tgz", + "integrity": "sha512-7OC4Rl1f9G8IT6rUfi9JrKiXy4bfmHhZ5x2Ceojy0jnd3mHNEvV4JaRygH362ror6/NZ+Nl+n13LPzGiPN8cKA==", + "license": "MIT", "dependencies": { - "@types/jquery": "2.0.54" - } - }, - "node_modules/@nextcloud/eslint-config": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/eslint-config/-/eslint-config-8.0.0.tgz", - "integrity": "sha512-B93OZ7vSEJl6QLtEGarkdpjTEKGdXbMP/ZSuIj/vecng6CZzv3mDQ9diaNTQPlU7Q3CP0N6nqTVqcOltbApUMQ==", - "dev": true, - "engines": { - "node": "^14.0.0", - "npm": "^7.0.0" + "@types/web-bluetooth": "^0.0.20", + "@vueuse/metadata": "11.3.0", + "@vueuse/shared": "11.3.0", + "vue-demi": ">=0.14.10" }, - "peerDependencies": { - "@babel/core": "^7.13.10", - "@babel/eslint-parser": "^7.16.5", - "@nextcloud/eslint-plugin": "^2.0.0", - "eslint": "^8.6.0", - "eslint-config-standard": "^17.0.0-0", - "eslint-plugin-import": "^2.25.4", - "eslint-plugin-jsdoc": "^39.2.1", - "eslint-plugin-node": "^11.1.0", - "eslint-plugin-promise": "^6.0.0", - "eslint-plugin-vue": "^8.2.0", - "webpack": "^5.4.0" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@nextcloud/eslint-plugin": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/eslint-plugin/-/eslint-plugin-2.0.0.tgz", - "integrity": "sha512-j5WXTDTprr/cDilVJtC1mnrpkvD6jlEMShs72V5plllatHjO7kpZHzUfCX3dSvGwYc2ACa0XH+FbkPoZQ3+eWQ==", - "dev": true, - "peer": true, - "dependencies": { - "requireindex": "^1.2.0" + "node_modules/@nextcloud/dialogs/node_modules/@vueuse/core/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "license": "MIT", + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" }, "peerDependencies": { - "eslint": ">=6.0.0" + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } } }, - "node_modules/@nextcloud/event-bus": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@nextcloud/event-bus/-/event-bus-2.1.1.tgz", - "integrity": "sha512-YEui6N+23uyjBSIUZhf8rEjG9vol7UGgxcgxMddEbO0HS7M/sh1cocRqtn+ZVi/yPybeToGmt68SDPCgwHQHKw==", - "dependencies": { - "@types/semver": "^7.1.0", - "core-js": "^3.6.2", - "semver": "^7.3.2" + "node_modules/@nextcloud/dialogs/node_modules/@vueuse/metadata": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-11.3.0.tgz", + "integrity": "sha512-pwDnDspTqtTo2HwfLw4Rp6yywuuBdYnPYDq+mO38ZYKGebCUQC/nVj/PXSiK9HX5otxLz8Fn7ECPbjiRz2CC3g==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@nextcloud/event-bus/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/@nextcloud/dialogs/node_modules/@vueuse/shared": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-11.3.0.tgz", + "integrity": "sha512-P8gSSWQeucH5821ek2mn/ciCk+MS/zoRKqdQIM3bHq6p7GXDAJLmnRRKmF5F65sAVJIfzQlwR3aDzwCn10s8hA==", + "license": "MIT", "dependencies": { - "yallist": "^4.0.0" + "vue-demi": ">=0.14.10" }, - "engines": { - "node": ">=10" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@nextcloud/event-bus/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "node_modules/@nextcloud/dialogs/node_modules/@vueuse/shared/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "license": "MIT", "bin": { - "semver": "bin/semver.js" + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" }, "engines": { - "node": ">=10" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } } }, - "node_modules/@nextcloud/event-bus/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "node_modules/@nextcloud/eslint-config": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/@nextcloud/eslint-config/-/eslint-config-8.4.1.tgz", + "integrity": "sha512-ilrPxOnfVkB4dAddtkhbJmbYK9FwEVZ5oIJ2ipiE97rQz82TUZxmfEHE1tr87FbIvz0drIcREgGil3zuNWHjrg==", + "dev": true, + "license": "AGPL-3.0-or-later", + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.24.5", + "@babel/eslint-parser": "^7.16.5", + "@nextcloud/eslint-plugin": "^2.2.1", + "@vue/eslint-config-typescript": "^13.0.0", + "eslint": "^8.27.0", + "eslint-config-standard": "^17.1.0", + "eslint-import-resolver-exports": "^1.0.0-beta.5", + "eslint-import-resolver-typescript": "^3.6.1", + "eslint-plugin-import": "^2.26.0", + "eslint-plugin-jsdoc": "^46.2.6", + "eslint-plugin-n": "^16.0.0", + "eslint-plugin-promise": "^6.1.1", + "eslint-plugin-vue": "^9.7.0", + "typescript": "^5.0.2" + } }, - "node_modules/@nextcloud/initial-state": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@nextcloud/initial-state/-/initial-state-1.2.1.tgz", - "integrity": "sha512-2TH2DzJBolYHWfbSovTWkByAIg0gdsyuVfZpf5APnJu/9PixXKbnrVFnaEdxjeP262Gok7ARMFFQeSiuzKRQeQ==", + "node_modules/@nextcloud/eslint-plugin": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@nextcloud/eslint-plugin/-/eslint-plugin-2.2.1.tgz", + "integrity": "sha512-RX+0FxpL1h2EzjNLeW0VSGTkbyWIq7WgV7QAjtyUmDbSGwf1ds9Zy5OcRkgXRHRIu/W0gB0DhS2iz9qXHphCzA==", + "dev": true, + "license": "ISC", + "peer": true, "dependencies": { - "core-js": "^3.6.4" + "fast-xml-parser": "^4.2.5", + "requireindex": "^1.2.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + }, + "peerDependencies": { + "eslint": ">=7.0.0" } }, - "node_modules/@nextcloud/l10n": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-1.6.0.tgz", - "integrity": "sha512-aKGlgrwN9OiafN791sYus0shfwNeU3PlrH6Oi9ISma6iJSvN6a8aJM8WGKCJ9pqBaTR5PrDuckuM/WnybBWb6A==", - "dependencies": { - "core-js": "^3.6.4", - "node-gettext": "^3.0.0" + "node_modules/@nextcloud/eslint-plugin/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "license": "ISC", + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@nextcloud/logger": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@nextcloud/logger/-/logger-2.1.0.tgz", - "integrity": "sha512-1G7KqRNQWorRnz/2llXWpxJtByf77J9lQfyfMdBQ/1ntMcodMFmGHnISt7lOIRA4O+T9cdgDP6nMBAHnt1gZWQ==", + "node_modules/@nextcloud/event-bus": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/@nextcloud/event-bus/-/event-bus-3.3.2.tgz", + "integrity": "sha512-1Qfs6i7Tz2qd1A33NpBQOt810ydHIRjhyXMFwSEkYX2yUI80lAk/sWO8HIB2Fqp+iffhyviPPcQYoytMDRyDNw==", + "license": "GPL-3.0-or-later", "dependencies": { - "@nextcloud/auth": "^1.2.2", - "babel-plugin-transform-class-properties": "^6.24.1", - "core-js": "^3.6.4" + "@types/semver": "^7.5.8", + "semver": "^7.6.3" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" } }, - "node_modules/@nextcloud/moment": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@nextcloud/moment/-/moment-1.2.1.tgz", - "integrity": "sha512-v/yfrZ4Jo8YM1v0DLXKjRLwKOhzE4Y6DcgyZAM1vJ5jOMvkHpICuTDJRw8oOtrr/1H6FqI6EMZcYogeGD+rwSA==", - "dependencies": { - "@nextcloud/l10n": "^1.4.1", - "core-js": "^3.21.1", - "jed": "^1.1.1", - "moment": "^2.29.2", - "node-gettext": "^3.0.0" + "node_modules/@nextcloud/event-bus/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@nextcloud/router": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/router/-/router-2.0.0.tgz", - "integrity": "sha512-GyHYNYrYAZRBGD5VxRggcbahdJ/zCkXb8+ERVfuaosT+nHMjJSmenTD6Uyct41qGm0p3Az4xRCXGyZGJM0NEUQ==", + "node_modules/@nextcloud/files": { + "version": "3.10.2", + "resolved": "https://registry.npmjs.org/@nextcloud/files/-/files-3.10.2.tgz", + "integrity": "sha512-8k6zN3nvGW8nEV5Db5DyfqcyK99RWw1iOSPIafi2RttiRQGpFzHlnF2EoM4buH5vWzI39WEvJnfuLZpkPX0cFw==", + "license": "AGPL-3.0-or-later", "dependencies": { - "core-js": "^3.6.4" + "@nextcloud/auth": "^2.4.0", + "@nextcloud/capabilities": "^1.2.0", + "@nextcloud/l10n": "^3.1.0", + "@nextcloud/logger": "^3.0.2", + "@nextcloud/paths": "^2.2.1", + "@nextcloud/router": "^3.0.1", + "@nextcloud/sharing": "^0.2.4", + "cancelable-promise": "^4.3.1", + "is-svg": "^5.1.0", + "typescript-event-target": "^1.1.1", + "webdav": "^5.7.1" + }, + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" } }, - "node_modules/@nextcloud/stylelint-config": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@nextcloud/stylelint-config/-/stylelint-config-2.1.2.tgz", - "integrity": "sha512-d8jpl1YXxujeDuSV35TovGXeeX4UKAMIpLw4TjkOLeN1lRVrlckrPJxvNVDV06oIFXWxq08q2HCa7PIuthQixw==", - "dev": true, + "node_modules/@nextcloud/initial-state": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/initial-state/-/initial-state-2.2.0.tgz", + "integrity": "sha512-cDW98L5KGGgpS8pzd+05304/p80cyu8U2xSDQGa+kGPTpUFmCbv2qnO5WrwwGTauyjYijCal2bmw82VddSH+Pg==", "engines": { - "node": "^14.0.0", - "npm": "^7.0.0" - }, - "peerDependencies": { - "stylelint": "^14.2.0", - "stylelint-config-recommended-scss": "^5.0.2", - "stylelint-config-recommended-vue": "^1.1.0" + "node": "^20.0.0", + "npm": "^10.0.0" } }, - "node_modules/@nextcloud/typings": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/@nextcloud/typings/-/typings-0.2.4.tgz", - "integrity": "sha512-49M8XUDQH27VIQE+13KrqSOYcyOsDUk6Yfw17jbBVtXFoDJ3YBSYYq8YaKeAM3Lz2JVbEpqQW9suAT+EyYSb6g==", + "node_modules/@nextcloud/l10n": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-3.3.0.tgz", + "integrity": "sha512-gPvAf5gzqxjnk8l6kr8LQTMN3lv5CLN8tTWwMfavmTbPsKj2/ZUjZhwIm3PcZ3xvJzBi7Ttgrf9xz5cT6CGsWg==", + "license": "GPL-3.0-or-later", "dependencies": { - "@types/jquery": "2.0.54" - } - }, - "node_modules/@nextcloud/vue": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/@nextcloud/vue/-/vue-5.3.1.tgz", - "integrity": "sha512-f+OSbcS01s2UqYiLSUufJ8tGe5+SqALj1dysPGJm8pJ+R2zH+Pdl8R13YErwzdAa0nHwyISIp9L9MEOUItixRQ==", - "dependencies": { - "@nextcloud/auth": "^1.2.3", - "@nextcloud/axios": "^1.3.2", - "@nextcloud/browser-storage": "^0.1.1", - "@nextcloud/calendar-js": "^3.0.0", - "@nextcloud/capabilities": "^1.0.2", - "@nextcloud/dialogs": "^3.0.0", - "@nextcloud/event-bus": "^2.0.0", - "@nextcloud/l10n": "^1.2.3", - "@nextcloud/logger": "^2.0.0", - "@nextcloud/router": "^2.0.0", - "debounce": "1.2.1", - "emoji-mart-vue-fast": "^10.2.1", - "escape-html": "^1.0.3", - "hammerjs": "^2.0.8", - "linkify-string": "^3.0.2", - "md5": "^2.2.1", - "splitpanes": "^2.3.6", - "string-length": "^5.0.0", - "striptags": "^3.1.1", - "style-loader": "^3.3.1", - "tributejs": "^5.1.3", - "v-click-outside": "^3.0.1", - "v-tooltip": "^2.0.3", - "vue": "^2.6.14", - "vue-color": "^2.7.1", - "vue-material-design-icons": "^5.0.0", - "vue-multiselect": "^2.1.6", - "vue2-datepicker": "^3.6.3" + "@nextcloud/router": "^3.0.1", + "@nextcloud/typings": "^1.9.1", + "@types/escape-html": "^1.0.4", + "dompurify": "^3.2.6", + "escape-html": "^1.0.3" }, "engines": { - "node": "^14.0.0", - "npm": "^7.0.0" + "node": "^22.0.0", + "npm": "^10.5.1" } }, - "node_modules/@nextcloud/vue-dashboard": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@nextcloud/vue-dashboard/-/vue-dashboard-2.0.1.tgz", - "integrity": "sha512-eLzdK8Ey5rrs3D6i2OAA5jkZ6lklrAbfnRgL40tZLIJ+MEKvRuPOjwrzhJKxHgVp3rU1rEgkaaPvSNXRVGS1mQ==", + "node_modules/@nextcloud/logger": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@nextcloud/logger/-/logger-3.0.2.tgz", + "integrity": "sha512-wByt0R0/6QC44RBpaJr1MWghjjOxk/pRbACHo/ZWWKht1qYbJRHB4GtEi+35KEIHY07ZpqxiDk6dIRuN7sXYWQ==", + "license": "GPL-3.0-or-later", "dependencies": { - "@nextcloud/vue": "^3.1.1", - "core-js": "^3.6.4", - "vue": "^2.6.11" + "@nextcloud/auth": "^2.3.0" }, "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "@nextcloud/vue": "^3.1.1", - "vue": "^2.6.11" + "node": "^20.0.0", + "npm": "^10.0.0" } }, - "node_modules/@nextcloud/vue-dashboard/node_modules/@nextcloud/event-bus": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@nextcloud/event-bus/-/event-bus-1.3.0.tgz", - "integrity": "sha512-+U5MnCvfnNWvf0lvdqJg8F+Nm8wN+s9ayuBjtiEQxTAcootv7lOnlMgfreqF3l2T0Wet2uZh4JbFVUWf8l3w7g==", + "node_modules/@nextcloud/moment": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/@nextcloud/moment/-/moment-1.3.4.tgz", + "integrity": "sha512-ibc1v3HshmI8q1jkfwj5tKgBnOSCpaVp1Nx0uSqnoStUsh5qdf235xA0UFtro+yFuGgfpTbos4gTzfXIoC2enA==", + "license": "GPL-3.0-or-later", "dependencies": { - "@types/semver": "^7.3.5", - "core-js": "^3.11.2", - "semver": "^7.3.5" - } - }, - "node_modules/@nextcloud/vue-dashboard/node_modules/@nextcloud/router": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@nextcloud/router/-/router-1.2.0.tgz", - "integrity": "sha512-kn9QsL9LuhkIMaSSgdiqRL3SZ6PatuAjXUiyq343BbSnI99Oc5eJH8kU6cT2AHije7wKy/tK8Xe3VQuVO32SZQ==", - "dependencies": { - "core-js": "^3.6.4" - } - }, - "node_modules/@nextcloud/vue-dashboard/node_modules/@nextcloud/vue": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/@nextcloud/vue/-/vue-3.10.1.tgz", - "integrity": "sha512-DdnnEFxt5FuZOtAD1x7hSDFVQF9KVVgQtFKwzs2ySNbyIx8rfRfc6noC7JbMAPR1LyPegCst0bVwQIfqsASGog==", - "dependencies": { - "@nextcloud/auth": "^1.2.3", - "@nextcloud/axios": "^1.3.2", - "@nextcloud/browser-storage": "^0.1.1", - "@nextcloud/capabilities": "^1.0.2", - "@nextcloud/dialogs": "^3.0.0", - "@nextcloud/event-bus": "^1.1.4", - "@nextcloud/l10n": "^1.2.3", - "@nextcloud/router": "^1.0.2", - "core-js": "^3.6.5", - "debounce": "1.2.1", - "emoji-mart-vue-fast": "^7.0.7", - "escape-html": "^1.0.3", - "hammerjs": "^2.0.8", - "linkifyjs": "~2.1.9", - "md5": "^2.2.1", - "regenerator-runtime": "^0.13.5", - "string-length": "^4.0.1", - "striptags": "^3.1.1", - "style-loader": "^2.0.0", - "tributejs": "^5.1.3", - "v-click-outside": "^3.0.1", - "v-tooltip": "^2.0.3", - "vue": "^2.6.11", - "vue-color": "^2.7.1", - "vue-multiselect": "^2.1.6", - "vue-visible": "^1.0.2", - "vue2-datepicker": "^3.6.3" + "@nextcloud/l10n": "^3.2.0", + "moment": "^2.30.1" }, "engines": { - "node": ">=10.0.0" + "node": "^20.0.0", + "npm": "^10.0.0" } }, - "node_modules/@nextcloud/vue-dashboard/node_modules/linkifyjs": { - "version": "2.1.9", - "resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-2.1.9.tgz", - "integrity": "sha512-74ivurkK6WHvHFozVaGtQWV38FzBwSTGNmJolEgFp7QgR2bl6ArUWlvT4GcHKbPe1z3nWYi+VUdDZk16zDOVug==", - "peerDependencies": { - "jquery": ">= 1.11.0", - "react": ">= 0.14.0", - "react-dom": ">= 0.14.0" + "node_modules/@nextcloud/paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@nextcloud/paths/-/paths-2.2.1.tgz", + "integrity": "sha512-M3ShLjrxR7B48eKThLMoqbxTqTKyQXcwf9TgeXQGbCIhiHoXU6as5j8l5qNv/uZlANokVdowpuWHBi3b2+YNNA==", + "license": "GPL-3.0-or-later", + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" } }, - "node_modules/@nextcloud/vue-dashboard/node_modules/loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", + "node_modules/@nextcloud/router": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@nextcloud/router/-/router-3.0.1.tgz", + "integrity": "sha512-Ci/uD3x8OKHdxSqXL6gRJ+mGJOEXjeiHjj7hqsZqVTsT7kOrCjDf0/J8z5RyLlokKZ0IpSe+hGxgi3YB7Gpw3Q==", "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" + "@nextcloud/typings": "^1.7.0" }, "engines": { - "node": ">=8.9.0" + "node": "^20.0.0", + "npm": "^10.0.0" } }, - "node_modules/@nextcloud/vue-dashboard/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/@nextcloud/sharing": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/@nextcloud/sharing/-/sharing-0.2.4.tgz", + "integrity": "sha512-kOLAr0w4NDUGPF42L22i9iSs6Z3ylTsE0RudAGDBzw/pnxGY8PEwZI2j0IMAFRfQ7XFNcpV/EVHI5YCMxtxGMQ==", + "license": "GPL-3.0-or-later", "dependencies": { - "yallist": "^4.0.0" + "@nextcloud/initial-state": "^2.2.0" }, "engines": { - "node": ">=10" + "node": "^20.0.0", + "npm": "^10.0.0" } }, - "node_modules/@nextcloud/vue-dashboard/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, + "node_modules/@nextcloud/stylelint-config": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@nextcloud/stylelint-config/-/stylelint-config-2.4.0.tgz", + "integrity": "sha512-S/q/offcs9pwnkjSrnfvsONryCOe6e1lfK2sszN6ZtkYyXvaqi8EbQuuhaGlxCstn9oXwbXfAI6O3Y8lGrjdFg==", + "dev": true, "engines": { - "node": ">= 10.13.0" + "node": "^20.0.0", + "npm": "^10.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "peerDependencies": { + "stylelint": "^15.6.0", + "stylelint-config-recommended-scss": "^13.1.0", + "stylelint-config-recommended-vue": "^1.1.0" } }, - "node_modules/@nextcloud/vue-dashboard/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "node_modules/@nextcloud/timezones": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@nextcloud/timezones/-/timezones-0.1.1.tgz", + "integrity": "sha512-ldLuLyz605sszetnp6jy6mtlThu4ICKsZThxHIZwn6t4QzjQH3xr+k8mRU7GIvKq9egUFDqBp4gBjxm3/ROZig==", + "license": "AGPL-3.0-or-later", "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "ical.js": "^2.0.1" }, "engines": { - "node": ">=10" + "node": "^20.0.0", + "npm": "^10.0.0" } }, - "node_modules/@nextcloud/vue-dashboard/node_modules/style-loader": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-2.0.0.tgz", - "integrity": "sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ==", + "node_modules/@nextcloud/typings": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@nextcloud/typings/-/typings-1.9.1.tgz", + "integrity": "sha512-i0l/L5gKW8EACbXHVxXM6wn3sUhY2qmnL2OijppzU4dENC7/hqySMQDer7/+cJbNSNG7uHF/Z+9JmHtDfRfuGg==", + "license": "GPL-3.0-or-later", "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" + "@types/jquery": "3.5.16" }, "engines": { - "node": ">= 10.13.0" + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/vue": { + "version": "8.27.0", + "resolved": "https://registry.npmjs.org/@nextcloud/vue/-/vue-8.27.0.tgz", + "integrity": "sha512-v9aTv5G5zVKN8PJVAP/WTcTspDXr6yxZtgGyQ4El5pZzMWk2+3wANT+VU4mdNCIpiJ2xyYorLs/Gg0Z9y73Anw==", + "license": "AGPL-3.0-or-later", + "dependencies": { + "@floating-ui/dom": "^1.1.0", + "@linusborg/vue-simple-portal": "^0.1.5", + "@nextcloud/auth": "^2.4.0", + "@nextcloud/axios": "^2.5.0", + "@nextcloud/browser-storage": "^0.4.0", + "@nextcloud/capabilities": "^1.2.0", + "@nextcloud/event-bus": "^3.3.2", + "@nextcloud/initial-state": "^2.2.0", + "@nextcloud/l10n": "^3.2.0", + "@nextcloud/logger": "^3.0.2", + "@nextcloud/router": "^3.0.1", + "@nextcloud/sharing": "^0.2.3", + "@nextcloud/timezones": "^0.2.0", + "@nextcloud/vue-select": "^3.25.1", + "@vueuse/components": "^11.0.0", + "@vueuse/core": "^11.0.0", + "blurhash": "^2.0.5", + "clone": "^2.1.2", + "debounce": "^2.2.0", + "dompurify": "^3.2.4", + "emoji-mart-vue-fast": "^15.0.4", + "escape-html": "^1.0.3", + "floating-vue": "^1.0.0-beta.19", + "focus-trap": "^7.4.3", + "linkify-string": "^4.0.0", + "md5": "^2.3.0", + "p-queue": "^8.1.0", + "rehype-external-links": "^3.0.0", + "rehype-highlight": "^7.0.2", + "rehype-react": "^7.1.2", + "remark-breaks": "^4.0.0", + "remark-parse": "^11.0.0", + "remark-rehype": "^11.0.0", + "remark-unlink-protocols": "^1.0.0", + "splitpanes": "^2.4.1", + "string-length": "^5.0.1", + "striptags": "^3.2.0", + "tabbable": "^6.2.0", + "tributejs": "^5.1.3", + "unified": "^11.0.1", + "unist-builder": "^4.0.0", + "unist-util-visit": "^5.0.0", + "vue": "^2.7.16", + "vue-color": "^2.8.1", + "vue-frag": "^1.4.3", + "vue-router": "^3.6.5", + "vue2-datepicker": "^3.11.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "engines": { + "node": "^20.0.0", + "npm": "^10.0.0" + } + }, + "node_modules/@nextcloud/vue-select": { + "version": "3.25.1", + "resolved": "https://registry.npmjs.org/@nextcloud/vue-select/-/vue-select-3.25.1.tgz", + "integrity": "sha512-jqCi4G+Q0H6+Hm8wSN3vRX2+eXG2jXR2bwBX/sErVEsH5UaxT4Nb7KqgdeIjVfeF7ccIdRqpmIb4Pkf0lao67w==", + "license": "MIT", + "engines": { + "node": "^20.0.0" }, "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" + "vue": "2.x" } }, - "node_modules/@nextcloud/vue-dashboard/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "node_modules/@nextcloud/vue/node_modules/@floating-ui/core": { + "version": "1.6.9", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.9.tgz", + "integrity": "sha512-uMXCuQ3BItDUbAMhIXw7UPXRfAlOAvZzdK9BWpE60MCn+Svt3aLn9jsPTi/WNGlRUu2uI0v5S7JiIUsbsvh3fw==", + "license": "MIT", + "dependencies": { + "@floating-ui/utils": "^0.2.9" + } }, - "node_modules/@nextcloud/vue/node_modules/@babel/polyfill": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.12.1.tgz", - "integrity": "sha512-X0pi0V6gxLi6lFZpGmeNa4zxtwEmCs42isWLNjZZDE0Y8yVfgu0T2OAHlzBbdYlqbW/YXVvoBHpATEM+goCj8g==", - "deprecated": "🚨 This package has been deprecated in favor of separate inclusion of a polyfill and regenerator-runtime (when needed). See the @babel/polyfill docs (https://babeljs.io/docs/en/babel-polyfill) for more information.", + "node_modules/@nextcloud/vue/node_modules/@floating-ui/dom": { + "version": "1.6.13", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.13.tgz", + "integrity": "sha512-umqzocjDgNRGTuO7Q8CU32dkHkECqI8ZdMZ5Swb6QAM0t5rnlrN3lGo1hdpscRd3WS8T6DKYK4ephgIH9iRh3w==", + "license": "MIT", "dependencies": { - "core-js": "^2.6.5", - "regenerator-runtime": "^0.13.4" + "@floating-ui/core": "^1.6.0", + "@floating-ui/utils": "^0.2.9" } }, - "node_modules/@nextcloud/vue/node_modules/@babel/runtime": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.8.tgz", - "integrity": "sha512-dQpEpK0O9o6lj6oPu0gRDbbnk+4LeHlNcBpspf6Olzt3GIX4P1lWF1gS+pHLDFlaJvbR6q7jCfQ08zA4QJBnmA==", + "node_modules/@nextcloud/vue/node_modules/@nextcloud/timezones": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/timezones/-/timezones-0.2.0.tgz", + "integrity": "sha512-1mwQ+asTFOgv9rxPoAMEbDF8JfnenIa2EGNS+8MATCyi6WXxYh0Lhkaq1d3l2+xNbUPHgMnk4cRYsvIo319lkA==", + "license": "AGPL-3.0-or-later", "dependencies": { - "regenerator-runtime": "^0.13.4" + "ical.js": "^2.1.0" }, "engines": { - "node": ">=6.9.0" + "node": "^20 || ^22" } }, - "node_modules/@nextcloud/vue/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "node_modules/@nextcloud/vue/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" + }, + "node_modules/@nextcloud/vue/node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "license": "MIT", "engines": { "node": ">=12" }, "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@nextcloud/vue/node_modules/char-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-2.0.0.tgz", - "integrity": "sha512-oGu2QekBMXgyQNWPDRQ001bjvDnZe4/zBTz37TMbiKz1NbNiyiH5hRkobe7npRN6GfbGbxMYFck/vQ1r9c1VMA==", - "engines": { - "node": ">=12.20" + "node_modules/@nextcloud/vue/node_modules/unified": { + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.5.tgz", + "integrity": "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "bail": "^2.0.0", + "devlop": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/@nextcloud/vue/node_modules/core-js": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", - "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", - "deprecated": "core-js@<3.4 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Please, upgrade your dependencies to the actual version of core-js.", - "hasInstallScript": true - }, - "node_modules/@nextcloud/vue/node_modules/emoji-mart-vue-fast": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/emoji-mart-vue-fast/-/emoji-mart-vue-fast-10.2.1.tgz", - "integrity": "sha512-PtKihhsXBEEw1jHwnoRyJAnJP1OlK4EJrEze58EbUUV7iHWGLub+yuiNSj2Uo1JBHraz4fw/pH98nFysVoe0qg==", + "node_modules/@nextcloud/vue/node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "license": "MIT", "dependencies": { - "@babel/polyfill": "^7.12.1", - "@babel/runtime": "^7.16.3", - "vue-virtual-scroller": "^1.0.10" + "@types/unist": "^3.0.0" }, - "peerDependencies": { - "vue": ">2.0.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/@nextcloud/vue/node_modules/string-length": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-5.0.0.tgz", - "integrity": "sha512-1qjpci3h1G7BUi6dt5uAVyrO2FMUdjj3XWU970/eQh0YKhlYZ8bJMC/+BUpD21YdEhmuHv2nnbUUn024+cC7YQ==", + "node_modules/@nextcloud/vue/node_modules/vfile": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "license": "MIT", "dependencies": { - "char-regex": "^2.0.0", - "strip-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12.20" + "@types/unist": "^3.0.0", + "vfile-message": "^4.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/@nextcloud/vue/node_modules/strip-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.0.tgz", - "integrity": "sha512-UhDTSnGF1dc0DRbUqr1aXwNoY3RgVkSWG8BrpnuFIxhP57IqbS7IRta2Gfiavds4yCxc5+fEAVVOgBZWnYkvzg==", + "node_modules/@nextcloud/vue/node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "license": "MIT", "dependencies": { - "ansi-regex": "^6.0.0" - }, - "engines": { - "node": ">=12" + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" }, "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, "node_modules/@nextcloud/webpack-vue-config": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/@nextcloud/webpack-vue-config/-/webpack-vue-config-5.2.1.tgz", - "integrity": "sha512-FQXtXq6MsN9KPIWm70ZwIpf2DcKF3Pvq037FKht6tgmCBsZ4oZ49hK5mnZ+XkTCZnXGXS1CDP6URpTkWrlTa4A==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@nextcloud/webpack-vue-config/-/webpack-vue-config-6.2.0.tgz", + "integrity": "sha512-6nrrO8O53nog+ThQstPr2iOzrOpKgYTAkfEg2TEsX8cfmtbYzQmb4w+88G8ergL3EH8NyYxuSIvGcXqFO09IIg==", "dev": true, + "license": "AGPL-3.0-or-later", "engines": { - "node": "^14.0.0", - "npm": "^7.0.0" + "node": "^20.0.0", + "npm": "^9.0.0 || ^10.0.0" }, "peerDependencies": { - "@babel/core": "^7.16.7", - "babel-loader": "^8.2.3", - "css-loader": "^6.5.1", - "node-polyfill-webpack-plugin": "2.0.0", - "sass": "^1.47.0", - "sass-loader": "^13.0.1", - "style-loader": "^3.3.1", - "vue-loader": "^15.9.8", - "vue-template-compiler": "^2.7.0", - "webpack": "^5.66.0", - "webpack-cli": "^4.9.1", - "webpack-dev-server": "^4.7.2" + "@babel/core": "^7.22.9", + "babel-loader": "^9.1.3", + "css-loader": "^7.1.1", + "node-polyfill-webpack-plugin": "4.0.0", + "sass": "^1.64.2", + "sass-loader": "^16.0.2", + "style-loader": "^4.0.0", + "ts-loader": "^9.4.4", + "vue": "^2.7.16", + "vue-loader": "^15.10.1", + "vue-template-compiler": "^2.7.16", + "webpack": "^5.88.2", + "webpack-cli": "^5.1.4", + "webpack-dev-server": "^5.0.2" + } + }, + "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { + "version": "5.1.1-v1", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", + "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", + "dev": true, + "peer": true, + "dependencies": { + "eslint-scope": "5.1.1" } }, "node_modules/@nodelib/fs.scandir": { @@ -3366,9 +4059,9 @@ } }, "node_modules/@nodelib/fs.walk": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.7.tgz", - "integrity": "sha512-BTIhocbPBSrRmHxOAJFtR18oLhxTtAFDAvL8hY1S3iU8k+E60W/YFs4jrixGzQjMpF4qPXxIQHcjVD9dz1C2QA==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, "peer": true, "dependencies": { @@ -3379,41 +4072,362 @@ "node": ">= 8" } }, - "node_modules/@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", - "dev": true, - "dependencies": { - "type-detect": "4.0.8" - } + "node_modules/@one-ini/wasm": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@one-ini/wasm/-/wasm-0.1.1.tgz", + "integrity": "sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==", + "dev": true }, - "node_modules/@sinonjs/fake-timers": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", - "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", + "node_modules/@parcel/watcher": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.4.1.tgz", + "integrity": "sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==", "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "@sinonjs/commons": "^1.7.0" + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.4.1", + "@parcel/watcher-darwin-arm64": "2.4.1", + "@parcel/watcher-darwin-x64": "2.4.1", + "@parcel/watcher-freebsd-x64": "2.4.1", + "@parcel/watcher-linux-arm-glibc": "2.4.1", + "@parcel/watcher-linux-arm64-glibc": "2.4.1", + "@parcel/watcher-linux-arm64-musl": "2.4.1", + "@parcel/watcher-linux-x64-glibc": "2.4.1", + "@parcel/watcher-linux-x64-musl": "2.4.1", + "@parcel/watcher-win32-arm64": "2.4.1", + "@parcel/watcher-win32-ia32": "2.4.1", + "@parcel/watcher-win32-x64": "2.4.1" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.4.1.tgz", + "integrity": "sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.4.1.tgz", + "integrity": "sha512-ln41eihm5YXIY043vBrrHfn94SIBlqOWmoROhsMVTSXGh0QahKGy77tfEywQ7v3NywyxBBkGIfrWRHm0hsKtzA==", + "cpu": [ + "arm64" + ], "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "peer": true, "engines": { - "node": ">= 6" + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" } }, - "node_modules/@types/babel__core": { - "version": "7.1.18", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.18.tgz", - "integrity": "sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ==", + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.4.1.tgz", + "integrity": "sha512-yrw81BRLjjtHyDu7J61oPuSoeYWR3lDElcPGJyOvIXmor6DEo7/G2u1o7I38cwlcoBHQFULqF6nesIX3tsEXMg==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0", + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.4.1.tgz", + "integrity": "sha512-TJa3Pex/gX3CWIx/Co8k+ykNdDCLx+TuZj3f3h7eOjgpdKM+Mnix37RYsYU4LHhiYJz3DK5nFCCra81p6g050w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.4.1.tgz", + "integrity": "sha512-4rVYDlsMEYfa537BRXxJ5UF4ddNwnr2/1O4MHM5PjI9cvV2qymvhwZSFgXqbS8YoTk5i/JR0L0JDs69BUn45YA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.4.1.tgz", + "integrity": "sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.4.1.tgz", + "integrity": "sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.4.1.tgz", + "integrity": "sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.4.1.tgz", + "integrity": "sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.4.1.tgz", + "integrity": "sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.4.1.tgz", + "integrity": "sha512-maNRit5QQV2kgHFSYwftmPBxiuK5u4DXjbXx7q6eKjq5dsLXZ4FJiVvlcw35QXzk0KrUecJmuVFbj4uV9oYrcw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.4.1.tgz", + "integrity": "sha512-+DvS92F9ezicfswqrvIRM2njcYJbd5mb9CUgtrHCHmvn7pPPa+nMDRu1o1bYYz/l5IB2NVGNJWiH7h1E58IF2A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true + }, + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, + "node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@types/babel__core": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.0.tgz", + "integrity": "sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", "@types/babel__generator": "*", "@types/babel__template": "*", "@types/babel__traverse": "*" @@ -3439,19 +4453,20 @@ } }, "node_modules/@types/babel__traverse": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.11.1.tgz", - "integrity": "sha512-Vs0hm0vPahPMYi9tDjtP66llufgO3ST16WXaSTtDGEl9cewAl3AibmxWw6TINOqHPT9z0uABKAYjT9jNSg4npw==", + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.2.tgz", + "integrity": "sha512-FcFaxOr2V5KZCviw1TnutEMVUVsGt4D2hP1TAfXZAMKuHYW3xQhe3jTxNPWutgCJ3/X1c5yX8ZoGVEItxKbwBg==", "dev": true, "dependencies": { "@babel/types": "^7.3.0" } }, "node_modules/@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "@types/connect": "*", @@ -3459,110 +4474,142 @@ } }, "node_modules/@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", + "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "@types/express-serve-static-core": "*", "@types/node": "*" } }, - "node_modules/@types/eslint": { - "version": "7.28.2", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.28.2.tgz", - "integrity": "sha512-KubbADPkfoU75KgKeKLsFHXnU4ipH7wYg0TRT33NK3N3yiu7jlFAAoygIWBV+KbuHx/G+AvuGX6DllnK35gfJA==", - "peer": true, + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" + "@types/ms": "*" } }, - "node_modules/@types/eslint-scope": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.0.tgz", - "integrity": "sha512-O/ql2+rrCUe2W2rs7wMR+GqPRcgB6UiqN5RhrR5xruFlY7l9YLMn0ZkDzjoHLeiFkR8MCQZVudUuuvQ2BLC9Qw==", - "peer": true, - "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" - } + "node_modules/@types/escape-html": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@types/escape-html/-/escape-html-1.0.4.tgz", + "integrity": "sha512-qZ72SFTgUAZ5a7Tj6kf2SHLetiH5S6f8G5frB2SPQ3EyF02kxdyBFf4Tz4banE3xCgGnKgWLt//a6VuYHKYJTg==" }, "node_modules/@types/estree": { - "version": "0.0.50", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.50.tgz", - "integrity": "sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": true, + "license": "MIT", "peer": true }, "node_modules/@types/express": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", - "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", + "@types/express-serve-static-core": "^4.17.33", "@types/qs": "*", "@types/serve-static": "*" } }, "node_modules/@types/express-serve-static-core": { - "version": "4.17.27", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.27.tgz", - "integrity": "sha512-e/sVallzUTPdyOTiqi8O8pMdBBphscvI6E4JYaKlja4Lm+zh7UFSSdW5VMkRbhDtmrONqOUHOXRguPsDckzxNA==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.0.0.tgz", + "integrity": "sha512-AbXMTZGt40T+KON9/Fdxx0B2WK5hsgxcfXJLr5bFpZ7b4JCex2WyQPTEKdXqfHiY5nKKBScZ7yCoO6Pvgxfvnw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/express/node_modules/@types/express-serve-static-core": { + "version": "4.19.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", + "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "@types/node": "*", "@types/qs": "*", - "@types/range-parser": "*" + "@types/range-parser": "*", + "@types/send": "*" } }, "node_modules/@types/graceful-fs": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz", - "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==", + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", + "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", "dev": true, "dependencies": { "@types/node": "*" } }, + "node_modules/@types/hast": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", + "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "dev": true, + "license": "MIT", + "peer": true + }, "node_modules/@types/http-proxy": { - "version": "1.17.8", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.8.tgz", - "integrity": "sha512-5kPLG5BKpWYkw/LVOGWpiq3nEVqxiN32rTgI53Sk12/xHFQ2rG3ehI9IO+O3W2QoKeyB92dJkoka8SUm6BX1pA==", + "version": "1.17.15", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.15.tgz", + "integrity": "sha512-25g5atgiVNTIv0LBDTg1H74Hvayx0ajtJPLLcYE3whFv75J0pWNtOBzaXJQgDTmrX1bx5U9YC2w/n65BN1HwRQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", "dev": true }, "node_modules/@types/istanbul-lib-report": { @@ -3584,128 +4631,209 @@ } }, "node_modules/@types/jquery": { - "version": "2.0.54", - "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-2.0.54.tgz", - "integrity": "sha512-D/PomKwNkDfSKD13DEVQT/pq2TUjN54c6uB341fEZanIzkjfGe7UaFuuaLZbpEiS5j7Wk2MUHAZqZIoECw29lg==" + "version": "3.5.16", + "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.16.tgz", + "integrity": "sha512-bsI7y4ZgeMkmpG9OM710RRzDFp+w4P1RGiIt30C1mSBT+ExCleeh4HObwgArnDFELmRrOpXgSYN9VF1hj+f1lw==", + "dependencies": { + "@types/sizzle": "*" + } + }, + "node_modules/@types/jsdom": { + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.0.tgz", + "integrity": "sha512-YfAchFs0yM1QPDrLm2VHe+WHGtqms3NXnXAMolrgrVP6fgBHHXy1ozAbo/dFtPNtZC/m66bPiCTWYmqp1F14gA==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/tough-cookie": "*", + "parse5": "^7.0.0" + } }, "node_modules/@types/json-schema": { - "version": "7.0.9", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz", - "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==" + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "peer": true }, "node_modules/@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", "dev": true, "peer": true }, + "node_modules/@types/mdast": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.3.tgz", + "integrity": "sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==", + "dependencies": { + "@types/unist": "*" + } + }, "node_modules/@types/mime": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", - "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==", + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/@types/minimist": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.1.tgz", - "integrity": "sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", "dev": true, "peer": true }, + "node_modules/@types/ms": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" + }, "node_modules/@types/node": { - "version": "15.12.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.12.4.tgz", - "integrity": "sha512-zrNj1+yqYF4WskCMOHwN+w9iuD12+dGm0rQ35HLl9/Ouuq52cEtd0CH9qMgrdNmi5ejC1/V7vKEXYubB+65DkA==" + "version": "20.12.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.12.tgz", + "integrity": "sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~5.26.4" + } }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", + "node_modules/@types/node-forge": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", + "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", "dev": true, - "peer": true + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*" + } }, - "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "node_modules/@types/normalize-package-data": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", + "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==", "dev": true, "peer": true }, - "node_modules/@types/prettier": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.4.tgz", - "integrity": "sha512-ReVR2rLTV1kvtlWFyuot+d1pkpG2Fw/XKE3PDAdj57rbM97ttSp9JZ2UsP+2EHTylra9cUf6JA7tGwW1INzUrA==", - "dev": true + "node_modules/@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==", + "peer": true }, "node_modules/@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "version": "6.9.16", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.16.tgz", + "integrity": "sha512-7i+zxXdPD0T4cKDuxCUXJ4wHcsJLwENa6Z3dCu8cfCK743OGy5Nu1RmAGqDPsoTDINVEcdXKRvR/zre+P2Ku1A==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", "dev": true, + "license": "MIT", "peer": true }, + "node_modules/@types/react": { + "version": "18.0.28", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.28.tgz", + "integrity": "sha512-RD0ivG1kEztNBdoAK7lekI9M+azSnitIn85h4iOiaLjaTrMjzslhaqCGaI4IyCJ1RljWiLCEu4jyrLLgqxBTew==", + "peer": true, + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, "node_modules/@types/retry": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.1.tgz", - "integrity": "sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==", + "version": "0.12.2", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.2.tgz", + "integrity": "sha512-XISRgDJ2Tc5q4TRqvgJtzsRkFYNJzZrhTdtMoGVBttwzzQJkPnS3WWTFc7kuDRoPtPakl+T+OfdEUjYJj7Jbow==", "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@types/scheduler": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", + "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==", "peer": true }, "node_modules/@types/semver": { - "version": "7.3.6", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.6.tgz", - "integrity": "sha512-0caWDWmpCp0uifxFh+FaqK3CuZ2SkRR/ZRxAV5+zNdC3QVUi6wyOJnefhPvtNt8NQWXB5OA93BUvZsXpWat2Xw==" + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "license": "MIT" + }, + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } }, "node_modules/@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "@types/express": "*" } }, "node_modules/@types/serve-static": { - "version": "1.13.10", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", - "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "@types/mime": "^1", - "@types/node": "*" + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" } }, + "node_modules/@types/sizzle": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz", + "integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==" + }, "node_modules/@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", "dev": true }, "node_modules/@types/strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@types/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-FKjsOVbC6B7bdSB5CuzyHCkK69I=", + "integrity": "sha512-xevGOReSYGM7g/kUBZzPqCrR/KYAo+F0yiPc85WFTJa0MSLtyFTVTU6cJu/aV4mid7IffDIWqo69THF2o4JiEQ==", "dev": true }, "node_modules/@types/strip-json-comments": { @@ -3714,1268 +4842,1512 @@ "integrity": "sha512-7NQmHra/JILCd1QqpSzl8+mJRc8ZHz3uDm8YV1Ks9IhK0epEiTw8aIErbvH9PI+6XbqhyIQy3462nEsn7UVzjQ==", "dev": true }, + "node_modules/@types/toastify-js": { + "version": "1.12.4", + "resolved": "https://registry.npmjs.org/@types/toastify-js/-/toastify-js-1.12.4.tgz", + "integrity": "sha512-zfZHU4tKffPCnZRe7pjv/eFKzTVHozKewFCKaCjZ4gFinKgJRz/t0bkZiMCXJxPhv/ZoeDGNOeRD09R0kQZ/nw==", + "license": "MIT" + }, + "node_modules/@types/tough-cookie": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.2.tgz", + "integrity": "sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==", + "dev": true + }, + "node_modules/@types/trusted-types": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", + "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", + "license": "MIT", + "optional": true + }, + "node_modules/@types/unist": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", + "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" + }, + "node_modules/@types/web-bluetooth": { + "version": "0.0.20", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.20.tgz", + "integrity": "sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==" + }, "node_modules/@types/ws": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.2.2.tgz", - "integrity": "sha512-NOn5eIcgWLOo6qW8AcuLZ7G8PycXu0xTxxkS6Q18VWFxgPUSOwV0pBj2a/4viNZVu25i7RIB7GttdkAIUUXOOg==", + "version": "8.5.12", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.12.tgz", + "integrity": "sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/yargs": { - "version": "16.0.3", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.3.tgz", - "integrity": "sha512-YlFfTGS+zqCgXuXNV26rOIeETOkXnGQXP/pjjL9P0gO/EP9jTmc7pUBhx+jVEIxpq41RX33GQ7N3DzOSfZoglQ==", + "version": "17.0.13", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.13.tgz", + "integrity": "sha512-9sWaruZk2JGxIQU+IhI1fhPYRcQ0UuTNuKuCW9bR5fp7qi2Llf7WDzNa17Cy7TKnh3cdxDOiyTu6gaLS0eDatg==", "dev": true, "dependencies": { "@types/yargs-parser": "*" } }, "node_modules/@types/yargs-parser": { - "version": "20.2.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.0.tgz", - "integrity": "sha512-37RSHht+gzzgYeobbG+KWryeAW8J33Nhr69cjTqSYymXVZEN9NbRYWoYlRtDhHKPVT1FyNKwaTPC1NynKZpzRA==", + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", "dev": true }, - "node_modules/@vue/compiler-sfc": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.0.tgz", - "integrity": "sha512-hPOI15RsXO1G8aK6FNF93ld9C/D4e/uAJBE59K8NnL8giuKqeVksvamgu4jKhCJ9f9bbUpj5BuSV3sufIx2hmw==", + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.18.0.tgz", + "integrity": "sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==", + "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "@babel/parser": "^7.18.4", - "postcss": "^8.4.14", - "source-map": "^0.6.1" - } - }, - "node_modules/@vue/compiler-sfc/node_modules/postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - } - ], - "dependencies": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" + "@eslint-community/regexpp": "^4.10.0", + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/type-utils": "7.18.0", + "@typescript-eslint/utils": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", + "graphemer": "^1.4.0", + "ignore": "^5.3.1", + "natural-compare": "^1.4.0", + "ts-api-utils": "^1.3.0" }, "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/@vue/compiler-sfc/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^7.0.0", + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@vue/component-compiler-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-3.3.0.tgz", - "integrity": "sha512-97sfH2mYNU+2PzGrmK2haqffDpVASuib9/w2/noxiFi31Z54hW+q3izKQXXQZSNhtiUpAI36uSuYepeBe4wpHQ==", + "node_modules/@typescript-eslint/parser": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.18.0.tgz", + "integrity": "sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==", "dev": true, + "license": "BSD-2-Clause", "peer": true, "dependencies": { - "consolidate": "^0.15.1", - "hash-sum": "^1.0.2", - "lru-cache": "^4.1.2", - "merge-source-map": "^1.1.0", - "postcss": "^7.0.36", - "postcss-selector-parser": "^6.0.2", - "source-map": "~0.6.1", - "vue-template-es2015-compiler": "^1.9.0" + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/typescript-estree": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", + "debug": "^4.3.4" }, - "optionalDependencies": { - "prettier": "^1.18.2 || ^2.0.0" + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@vue/component-compiler-utils/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/@typescript-eslint/scope-manager": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.18.0.tgz", + "integrity": "sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==", "dev": true, + "license": "MIT", "peer": true, + "dependencies": { + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0" + }, "engines": { - "node": ">=0.10.0" + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@vue/test-utils": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@vue/test-utils/-/test-utils-1.3.0.tgz", - "integrity": "sha512-Xk2Xiyj2k5dFb8eYUKkcN9PzqZSppTlx7LaQWBbdA8tqh3jHr/KHX2/YLhNFc/xwDrgeLybqd+4ZCPJSGPIqeA==", + "node_modules/@typescript-eslint/type-utils": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.18.0.tgz", + "integrity": "sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==", "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "dom-event-types": "^1.0.0", - "lodash": "^4.17.15", - "pretty": "^2.0.0" + "@typescript-eslint/typescript-estree": "7.18.0", + "@typescript-eslint/utils": "7.18.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.3.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "vue": "2.x", - "vue-template-compiler": "^2.x" + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "node_modules/@typescript-eslint/types": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.18.0.tgz", + "integrity": "sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==", + "dev": true, + "license": "MIT", "peer": true, - "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", - "peer": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", - "peer": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", - "peer": true - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", + "node_modules/@typescript-eslint/typescript-estree": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.18.0.tgz", + "integrity": "sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==", + "dev": true, + "license": "BSD-2-Clause", "peer": true, "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@xtuc/long": "4.2.2" + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/visitor-keys": "7.18.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^1.3.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", - "peer": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" + "balanced-match": "^1.0.0" } }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", "peer": true, "dependencies": { - "@xtuc/ieee754": "^1.2.0" + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "license": "ISC", "peer": true, - "dependencies": { - "@xtuc/long": "4.2.2" + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", - "peer": true - }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", + "node_modules/@typescript-eslint/utils": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.18.0.tgz", + "integrity": "sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==", + "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" + "@eslint-community/eslint-utils": "^4.4.0", + "@typescript-eslint/scope-manager": "7.18.0", + "@typescript-eslint/types": "7.18.0", + "@typescript-eslint/typescript-estree": "7.18.0" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.56.0" } }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "node_modules/@typescript-eslint/visitor-keys": { + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.18.0.tgz", + "integrity": "sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==", + "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" + "@typescript-eslint/types": "7.18.0", + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "license": "Apache-2.0", "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", - "peer": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", - "peer": true, + "node_modules/@vue/compiler-sfc": { + "version": "2.7.16", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.16.tgz", + "integrity": "sha512-KWhJ9k5nXuNtygPU7+t1rX6baZeqOYLEforUPjgNDBnLicfHCoi48H87Q8XyLZOrNNsmhuwKqtpDQWjEFe6Ekg==", "dependencies": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" + "@babel/parser": "^7.23.5", + "postcss": "^8.4.14", + "source-map": "^0.6.1" + }, + "optionalDependencies": { + "prettier": "^1.18.2 || ^2.0.0" } }, - "node_modules/@webpack-cli/configtest": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.1.0.tgz", - "integrity": "sha512-ttOkEkoalEHa7RaFYpM0ErK1xc4twg3Am9hfHhL7MVqlHebnkYd2wuI/ZqTDj0cVzZho6PdinY0phFZV3O0Mzg==", + "node_modules/@vue/component-compiler-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-3.3.0.tgz", + "integrity": "sha512-97sfH2mYNU+2PzGrmK2haqffDpVASuib9/w2/noxiFi31Z54hW+q3izKQXXQZSNhtiUpAI36uSuYepeBe4wpHQ==", "dev": true, - "peer": true, - "peerDependencies": { - "webpack": "4.x.x || 5.x.x", - "webpack-cli": "4.x.x" + "dependencies": { + "consolidate": "^0.15.1", + "hash-sum": "^1.0.2", + "lru-cache": "^4.1.2", + "merge-source-map": "^1.1.0", + "postcss": "^7.0.36", + "postcss-selector-parser": "^6.0.2", + "source-map": "~0.6.1", + "vue-template-es2015-compiler": "^1.9.0" + }, + "optionalDependencies": { + "prettier": "^1.18.2 || ^2.0.0" } }, - "node_modules/@webpack-cli/info": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.4.0.tgz", - "integrity": "sha512-F6b+Man0rwE4n0409FyAJHStYA5OIZERxmnUfLVwv0mc0V1wLad3V7jqRlMkgKBeAq07jUvglacNaa6g9lOpuw==", + "node_modules/@vue/component-compiler-utils/node_modules/picocolors": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", + "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", + "dev": true + }, + "node_modules/@vue/component-compiler-utils/node_modules/postcss": { + "version": "7.0.39", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", + "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", "dev": true, - "peer": true, "dependencies": { - "envinfo": "^7.7.3" + "picocolors": "^0.2.1", + "source-map": "^0.6.1" }, - "peerDependencies": { - "webpack-cli": "4.x.x" + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" } }, - "node_modules/@webpack-cli/serve": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.6.0.tgz", - "integrity": "sha512-ZkVeqEmRpBV2GHvjjUZqEai2PpUbuq8Bqd//vEYsp63J8WyexI8ppCqVS3Zs0QADf6aWuPdU+0XsPI647PVlQA==", + "node_modules/@vue/devtools-api": { + "version": "6.6.3", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.3.tgz", + "integrity": "sha512-0MiMsFma/HqA6g3KLKn+AGpL1kgKhFWszC9U29NfpWK5LE7bjeXxySWJrOJ77hBz+TBrBQ7o4QJqbPbqbs8rJw==", + "license": "MIT" + }, + "node_modules/@vue/eslint-config-typescript": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@vue/eslint-config-typescript/-/eslint-config-typescript-13.0.0.tgz", + "integrity": "sha512-MHh9SncG/sfqjVqjcuFLOLD6Ed4dRAis4HNt0dXASeAuLqIAx4YMB1/m2o4pUKK1vCt8fUvYG8KKX2Ot3BVZTg==", "dev": true, + "license": "MIT", "peer": true, + "dependencies": { + "@typescript-eslint/eslint-plugin": "^7.1.1", + "@typescript-eslint/parser": "^7.1.1", + "vue-eslint-parser": "^9.3.1" + }, + "engines": { + "node": "^18.18.0 || >=20.0.0" + }, "peerDependencies": { - "webpack-cli": "4.x.x" + "eslint": "^8.56.0", + "eslint-plugin-vue": "^9.0.0", + "typescript": ">=4.7.4" }, "peerDependenciesMeta": { - "webpack-dev-server": { + "typescript": { "optional": true } } }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "peer": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "peer": true - }, - "node_modules/abab": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", - "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", - "dev": true - }, - "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "node_modules/abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "node_modules/@vue/test-utils": { + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/@vue/test-utils/-/test-utils-2.4.6.tgz", + "integrity": "sha512-FMxEjOpYNYiFe0GkaHsnJPXFHxQ6m4t8vI/ElPGpMWxZKpmRvQ33OIrvRXemy6yha03RxhOlQuy+gZMC3CQSow==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "event-target-shim": "^5.0.0" - }, - "engines": { - "node": ">=6.5" + "js-beautify": "^1.14.9", + "vue-component-type-helpers": "^2.0.0" } }, - "node_modules/accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "node_modules/@vue/vue2-jest": { + "version": "29.2.6", + "resolved": "https://registry.npmjs.org/@vue/vue2-jest/-/vue2-jest-29.2.6.tgz", + "integrity": "sha512-nPu9IvnEkP0AEpo9ETOAk50uqyBa0QMJ9GnPYkC7EukFN1z29QKjyucICayMt8KuHJ9oYBca2TDMH40HowY9mQ==", "dev": true, - "peer": true, "dependencies": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" + "@babel/plugin-transform-modules-commonjs": "^7.2.0", + "@vue/component-compiler-utils": "^3.1.0", + "chalk": "^2.1.0", + "css-tree": "^2.0.1", + "source-map": "0.5.6", + "tsconfig": "^7.0.0" }, "engines": { - "node": ">= 0.6" + "node": ">10" + }, + "peerDependencies": { + "@babel/core": "7.x", + "babel-jest": "29.x", + "jest": "29.x", + "typescript": ">= 4.3", + "vue": "^2.x", + "vue-template-compiler": "^2.x" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "node_modules/@vue/vue2-jest/node_modules/source-map": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", + "integrity": "sha512-MjZkVp0NHr5+TPihLcadqnlVoGIoWo4IBHptutGh9wI3ttUYvCG26HkSuDi+K6lsZ25syXJXcctwgyVCt//xqA==", "dev": true, - "bin": { - "acorn": "bin/acorn" - }, "engines": { - "node": ">=0.4.0" + "node": ">=0.10.0" } }, - "node_modules/acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", - "dev": true, + "node_modules/@vueuse/components": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@vueuse/components/-/components-11.0.3.tgz", + "integrity": "sha512-/mbv4R1ody3rYz42U14SQ6GkAKHCAHhFIBdR6nKJbEJeFMoiB93dzX0sT2S05CpYCJJgv3JLAwEHeehYqqmbyQ==", + "license": "MIT", "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", - "dev": true, - "peer": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", - "dev": true, - "engines": { - "node": ">=0.4.0" + "@vueuse/core": "11.0.3", + "@vueuse/shared": "11.0.3", + "vue-demi": ">=0.14.10" } }, - "node_modules/adjust-sourcemap-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", - "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", - "dev": true, - "dependencies": { - "loader-utils": "^2.0.0", - "regex-parser": "^2.2.11" + "node_modules/@vueuse/components/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "license": "MIT", + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" }, "engines": { - "node": ">=8.9" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } } }, - "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", - "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", - "dev": true, + "node_modules/@vueuse/core": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-11.0.3.tgz", + "integrity": "sha512-RENlh64+SYA9XMExmmH1a3TPqeIuJBNNB/63GT35MZI+zpru3oMRUA6cEFr9HmGqEgUisurwGwnIieF6qu3aXw==", + "license": "MIT", "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" + "@types/web-bluetooth": "^0.0.20", + "@vueuse/metadata": "11.0.3", + "@vueuse/shared": "11.0.3", + "vue-demi": ">=0.14.10" }, - "engines": { - "node": ">=8.9.0" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "dependencies": { - "debug": "4" + "node_modules/@vueuse/core/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "license": "MIT", + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" }, "engines": { - "node": ">= 6.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } } }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "peer": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" + "node_modules/@vueuse/metadata": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-11.0.3.tgz", + "integrity": "sha512-+FtbO4SD5WpsOcQTcC0hAhNlOid6QNLzqedtquTtQ+CRNBoAt9GuV07c6KNHK1wCmlq8DFPwgiLF2rXwgSHX5Q==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "node_modules/@vueuse/shared": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-11.0.3.tgz", + "integrity": "sha512-0rY2m6HS5t27n/Vp5cTDsKTlNnimCqsbh/fmT2LgE+aaU42EMfXo8+bNX91W9I7DDmxfuACXMmrd7d79JxkqWA==", + "license": "MIT", "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "vue-demi": ">=0.14.10" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "peer": true, - "dependencies": { - "ajv": "^8.0.0" + "node_modules/@vueuse/shared/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "license": "MIT", + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" }, "peerDependencies": { - "ajv": "^8.0.0" + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" }, "peerDependenciesMeta": { - "ajv": { + "@vue/composition-api": { "optional": true } } }, - "node_modules/ajv-formats/node_modules/ajv": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.8.2.tgz", - "integrity": "sha512-x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw==", + "node_modules/@webassemblyjs/ast": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" } }, - "node_modules/ajv-formats/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", "dev": true, + "license": "MIT", "peer": true }, - "node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "peerDependencies": { - "ajv": "^6.9.1" - } + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", + "dev": true, + "license": "MIT", + "peer": true }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", "dev": true, - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "license": "MIT", + "peer": true }, - "node_modules/ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", "dev": true, - "engines": [ - "node >= 0.8.0" - ], + "license": "MIT", "peer": true, - "bin": { - "ansi-html": "bin/ansi-html" + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" } }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "engines": { - "node": ">=8" - } + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "dev": true, + "license": "MIT", + "peer": true }, - "node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.12.1" } }, - "node_modules/ansi-styles/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "color-name": "1.1.3" + "@xtuc/ieee754": "^1.2.0" } }, - "node_modules/ansi-styles/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", "dev": true, + "license": "Apache-2.0", + "peer": true, "dependencies": { - "sprintf-js": "~1.0.2" + "@xtuc/long": "4.2.2" } }, - "node_modules/array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", "dev": true, + "license": "MIT", "peer": true }, - "node_modules/array-includes": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz", - "integrity": "sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw==", + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1", - "get-intrinsic": "^1.1.1", - "is-string": "^1.0.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" } }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", "dev": true, + "license": "MIT", "peer": true, - "engines": { - "node": ">=8" + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" } }, - "node_modules/array.prototype.flat": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz", - "integrity": "sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg==", + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" } }, - "node_modules/array.prototype.flatmap": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", - "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" } }, - "node_modules/asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" + "@webassemblyjs/ast": "1.12.1", + "@xtuc/long": "4.2.2" } }, - "node_modules/asn1.js/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true, - "peer": true - }, - "node_modules/assert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", - "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", + "node_modules/@webpack-cli/configtest": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz", + "integrity": "sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==", "dev": true, "peer": true, - "dependencies": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" + "engines": { + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" } }, - "node_modules/astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "node_modules/@webpack-cli/info": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.2.tgz", + "integrity": "sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==", "dev": true, "peer": true, "engines": { - "node": ">=8" + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" } }, - "node_modules/async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "node_modules/@webpack-cli/serve": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.5.tgz", + "integrity": "sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==", "dev": true, "peer": true, - "dependencies": { - "lodash": "^4.17.14" + "engines": { + "node": ">=14.15.0" + }, + "peerDependencies": { + "webpack": "5.x.x", + "webpack-cli": "5.x.x" + }, + "peerDependenciesMeta": { + "webpack-dev-server": { + "optional": true + } } }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true, + "license": "BSD-3-Clause", + "peer": true }, - "node_modules/atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true, - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } + "license": "Apache-2.0", + "peer": true }, - "node_modules/autosize": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/autosize/-/autosize-5.0.1.tgz", - "integrity": "sha512-UIWUlE4TOVPNNj2jjrU39wI4hEYbneUypEqcyRmRFIx5CC2gNdg3rQr+Zh7/3h6egbBvm33TDQjNQKtj9Tk1HA==" + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "dev": true }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "node_modules/abbrev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", "dev": true, - "peer": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/axios": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", - "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", - "dependencies": { - "follow-redirects": "^1.14.9", - "form-data": "^4.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/axios/node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "event-target-shim": "^5.0.0" }, "engines": { - "node": ">= 6" - } - }, - "node_modules/babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dependencies": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - } - }, - "node_modules/babel-code-frame/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/babel-code-frame/node_modules/ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "engines": { - "node": ">=0.10.0" + "node": ">=6.5" } }, - "node_modules/babel-code-frame/node_modules/chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.6" } }, - "node_modules/babel-code-frame/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, "engines": { - "node": ">=0.8.0" + "node": ">=0.4.0" } }, - "node_modules/babel-code-frame/node_modules/js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" - }, - "node_modules/babel-code-frame/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "node_modules/acorn-globals": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz", + "integrity": "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==", + "dev": true, "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" + "acorn": "^8.1.0", + "acorn-walk": "^8.0.2" } }, - "node_modules/babel-code-frame/node_modules/supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "engines": { - "node": ">=0.8.0" + "node_modules/acorn-import-attributes": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", + "dev": true, + "license": "MIT", + "peer": true, + "peerDependencies": { + "acorn": "^8" } }, - "node_modules/babel-core": { - "version": "7.0.0-bridge.0", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz", - "integrity": "sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==", + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, + "peer": true, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", - "dependencies": { - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "dev": true, + "engines": { + "node": ">=0.4.0" } }, - "node_modules/babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "node_modules/adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "dev": true, "dependencies": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "engines": { + "node": ">=8.9" } }, - "node_modules/babel-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", - "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "dev": true, "dependencies": { - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" + "debug": "4" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.8.0" + "node": ">= 6.0.0" } }, - "node_modules/babel-jest/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, + "peer": true, "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/babel-jest/node_modules/chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", "dev": true, + "peer": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "ajv": "^8.0.0" }, - "engines": { - "node": ">=10" + "peerDependencies": { + "ajv": "^8.0.0" }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "peerDependenciesMeta": { + "ajv": { + "optional": true + } } }, - "node_modules/babel-jest/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", "dev": true, - "engines": { - "node": ">=8" + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/babel-jest/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/ajv-formats/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true, - "engines": { - "node": ">=8" + "peer": true + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peer": true, + "peerDependencies": { + "ajv": "^6.9.1" } }, - "node_modules/babel-jest/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "type-fest": "^0.21.3" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/babel-loader": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.3.tgz", - "integrity": "sha512-n4Zeta8NC3QAsuyiizu0GkmRcQ6clkV9WFUnUf1iXP//IeSKbWjofW3UHyZVwlOB4y039YQKefawyTn64Zwbuw==", + "node_modules/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", "dev": true, + "engines": [ + "node >= 0.8.0" + ], + "license": "Apache-2.0", "peer": true, + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "dependencies": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^1.4.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" + "color-convert": "^1.9.0" }, "engines": { - "node": ">= 8.9" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "webpack": ">=2" + "node": ">=4" } }, - "node_modules/babel-loader-exclude-node-modules-except": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/babel-loader-exclude-node-modules-except/-/babel-loader-exclude-node-modules-except-1.2.1.tgz", - "integrity": "sha512-kp/JcdRhhYKprE9fYRquyasqtrdRKXqBj0BVGB9OYxEzdBTpD/8e6w1K1gafyHgntj7f9JxLhi4phOrnCMKD6Q==", + "node_modules/ansi-styles/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "dependencies": { - "escape-string-regexp": "2.0.0" + "color-name": "1.1.3" } }, - "node_modules/babel-loader/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "node_modules/ansi-styles/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", "dev": true, - "peer": true, "dependencies": { - "semver": "^6.0.0" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 8" } }, - "node_modules/babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "dependencies": { - "babel-runtime": "^6.22.0" + "node_modules/are-docs-informative": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/are-docs-informative/-/are-docs-informative-0.0.2.tgz", + "integrity": "sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==", + "dev": true, + "peer": true, + "engines": { + "node": ">=14" } }, - "node_modules/babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, - "peer": true, "dependencies": { - "object.assign": "^4.1.0" + "sprintf-js": "~1.0.2" } }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/array-includes": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.5.tgz", + "integrity": "sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==", "dev": true, + "peer": true, "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5", + "get-intrinsic": "^1.1.1", + "is-string": "^1.0.7" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/babel-plugin-jest-hoist": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", - "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true, - "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", - "@types/babel__traverse": "^7.0.6" - }, + "peer": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=8" } }, - "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.2.tgz", - "integrity": "sha512-kISrENsJ0z5dNPq5eRvcctITNHYXWOA4DUZRFYCz3jYCcvTb/A546LIddmoGNMVYg2U38OyFeNosQwI9ENTqIQ==", + "node_modules/array.prototype.flat": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.0.tgz", + "integrity": "sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw==", "dev": true, "peer": true, "dependencies": { - "@babel/compat-data": "^7.13.11", - "@babel/helper-define-polyfill-provider": "^0.2.2", - "semver": "^6.1.1" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.2", + "es-shim-unscopables": "^1.0.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.3.tgz", - "integrity": "sha512-rCOFzEIJpJEAU14XCcV/erIf/wZQMmMT5l5vXOpL5uoznyOGfDIjPj6FVytMvtzaKSTSVKouOCTPJ5OMUZH30g==", + "node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", "dev": true, "peer": true, - "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.2.2", - "core-js-compat": "^3.14.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.2.tgz", - "integrity": "sha512-Goy5ghsc21HgPDFtzRkSirpZVW35meGoTmTOb2bxqdl60ghub4xOidgNTHaZfQ2FaxQsKmwvXtOAkcIS4SMBWg==", + "node_modules/asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.2.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" } }, - "node_modules/babel-plugin-syntax-class-properties": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz", - "integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=" + "node_modules/asn1.js/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true, + "license": "MIT", + "peer": true }, - "node_modules/babel-plugin-transform-class-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz", - "integrity": "sha1-anl2PqYdM9NvN7YRqp3vgagbRqw=", + "node_modules/assert": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-2.1.0.tgz", + "integrity": "sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==", + "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "babel-helper-function-name": "^6.24.1", - "babel-plugin-syntax-class-properties": "^6.8.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" + "call-bind": "^1.0.2", + "is-nan": "^1.3.2", + "object-is": "^1.1.5", + "object.assign": "^4.1.4", + "util": "^0.12.5" } }, - "node_modules/babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.2", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", - "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true, - "dependencies": { - "babel-plugin-transform-strict-mode": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-types": "^6.26.0" + "peer": true, + "engines": { + "node": ">=8" } }, - "node_modules/babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", - "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/autosize": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/autosize/-/autosize-6.0.1.tgz", + "integrity": "sha512-f86EjiUKE6Xvczc4ioP1JBlWG7FKrE13qe/DxBCpe8GCipCq2nFw73aO8QEBKHfSbYGDN5eB9jXWKen7tspDqQ==" + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", - "dev": true, + "node_modules/axios": { + "version": "1.8.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.4.tgz", + "integrity": "sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==", + "license": "MIT", "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, - "node_modules/babel-preset-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", - "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", + "node_modules/babel-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", "dev": true, "dependencies": { - "babel-plugin-jest-hoist": "^27.5.1", - "babel-preset-current-node-syntax": "^1.0.0" + "@jest/transform": "^29.7.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { - "@babel/core": "^7.0.0" + "@babel/core": "^7.8.0" } }, - "node_modules/babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "node_modules/babel-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/babel-runtime/node_modules/core-js": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", - "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", - "deprecated": "core-js@<3.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Please, upgrade your dependencies to the actual version of core-js.", - "hasInstallScript": true - }, - "node_modules/babel-runtime/node_modules/regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" - }, - "node_modules/babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "dependencies": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" - } - }, - "node_modules/babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "dependencies": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" - } - }, - "node_modules/babel-traverse/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "node_modules/babel-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/babel-traverse/node_modules/globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/babel-traverse/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "node_modules/babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "node_modules/babel-jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", "dependencies": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - } - }, - "node_modules/babel-types/node_modules/to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "color-name": "~1.1.4" + }, "engines": { - "node": ">=0.10.0" + "node": ">=7.0.0" } }, - "node_modules/babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "bin": { - "babylon": "bin/babylon.js" + "node_modules/babel-jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/babel-jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-loader": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.3.tgz", + "integrity": "sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==", + "dev": true, + "peer": true, + "dependencies": { + "find-cache-dir": "^4.0.0", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0", + "webpack": ">=5" + } + }, + "node_modules/babel-loader-exclude-node-modules-except": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/babel-loader-exclude-node-modules-except/-/babel-loader-exclude-node-modules-except-1.2.1.tgz", + "integrity": "sha512-kp/JcdRhhYKprE9fYRquyasqtrdRKXqBj0BVGB9OYxEzdBTpD/8e6w1K1gafyHgntj7f9JxLhi4phOrnCMKD6Q==", + "dev": true, + "dependencies": { + "escape-string-regexp": "2.0.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.11", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz", + "integrity": "sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.6.2", + "semver": "^6.3.1" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.10.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz", + "integrity": "sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.2", + "core-js-compat": "^3.38.0" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz", + "integrity": "sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.6.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dev": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/bail": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", + "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base-64": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", + "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==" }, "node_modules/base64-js": { "version": "1.5.1", @@ -4996,73 +6368,92 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "peer": true }, "node_modules/batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/big.js": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true, "engines": { "node": "*" } }, - "node_modules/bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, - "dependencies": { - "file-uri-to-path": "1.0.0" + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true, - "peer": true + "dev": true + }, + "node_modules/blurhash": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/blurhash/-/blurhash-2.0.5.tgz", + "integrity": "sha512-cRygWd7kGBQO3VEhPiTgq4Wc43ctsM+o46urrmPOiuAe+07fzlSB9OJVdpgDL0jPqXUVQ9ht7aq7kxOeJHRK+w==", + "license": "MIT" }, "node_modules/bn.js": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/body-parser": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.1.tgz", - "integrity": "sha512-8ljfQi5eBk8EJfECMrgqNGWPEY5jWP+1IzkzkGdFFEwFQZZyaZ21UqdaHktgiMlH0xLHqIFtE/u2OYE5dOtViA==", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "bytes": "3.1.1", - "content-type": "~1.0.4", + "bytes": "3.1.2", + "content-type": "~1.0.5", "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.6", - "raw-body": "2.4.2", - "type-is": "~1.6.18" + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" }, "engines": { - "node": ">= 0.8" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, "node_modules/body-parser/node_modules/bytes": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.1.tgz", - "integrity": "sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.8" @@ -5073,6 +6464,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "ms": "2.0.0" @@ -5081,53 +6473,67 @@ "node_modules/body-parser/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true, + "license": "MIT", "peer": true }, - "node_modules/bonjour": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", - "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "node_modules/bonjour-service": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.2.1.tgz", + "integrity": "sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "array-flatten": "^2.1.0", - "deep-equal": "^1.0.1", - "dns-equal": "^1.0.0", - "dns-txt": "^2.0.2", - "multicast-dns": "^6.0.1", - "multicast-dns-service-types": "^1.1.0" + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" } }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true, + "peer": true + }, "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dev": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/brorand": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", "dev": true, + "license": "MIT", "peer": true }, - "node_modules/browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", - "dev": true - }, "node_modules/browserify-aes": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "buffer-xor": "^1.0.3", @@ -5143,6 +6549,7 @@ "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "browserify-aes": "^1.0.4", @@ -5155,6 +6562,7 @@ "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "cipher-base": "^1.0.1", @@ -5164,53 +6572,86 @@ } }, "node_modules/browserify-rsa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", - "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.1.tgz", + "integrity": "sha512-YBjSAiTqM04ZVei6sXighu679a3SqWORA3qZTEqZImnlkDIFtKc6pNutpjyZ8RJTjQtuYfeetkxM11GwoYXMIQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "bn.js": "^5.0.0", - "randombytes": "^2.0.1" + "bn.js": "^5.2.1", + "randombytes": "^2.1.0", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.10" } }, "node_modules/browserify-sign": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", - "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.3.tgz", + "integrity": "sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw==", "dev": true, + "license": "ISC", "peer": true, "dependencies": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", + "bn.js": "^5.2.1", + "browserify-rsa": "^4.1.0", "create-hash": "^1.2.0", "create-hmac": "^1.1.7", - "elliptic": "^6.5.3", + "elliptic": "^6.5.5", + "hash-base": "~3.0", "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" + "parse-asn1": "^5.1.7", + "readable-stream": "^2.3.8", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.12" } }, - "node_modules/browserify-sign/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "node_modules/browserify-sign/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], + "license": "MIT", + "peer": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/browserify-sign/node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/browserify-sign/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/browserify-sign/node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "license": "MIT", "peer": true }, "node_modules/browserify-zlib": { @@ -5218,31 +6659,43 @@ "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "pako": "~1.0.5" } }, "node_modules/browserslist": { - "version": "4.19.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.1.tgz", - "integrity": "sha512-u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A==", + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz", + "integrity": "sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001286", - "electron-to-chromium": "^1.4.17", - "escalade": "^3.1.1", - "node-releases": "^2.0.1", - "picocolors": "^1.0.0" + "caniuse-lite": "^1.0.30001663", + "electron-to-chromium": "^1.5.28", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.0" }, "bin": { "browserslist": "cli.js" }, "engines": { "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" } }, "node_modules/bser": { @@ -5273,6 +6726,7 @@ "url": "https://feross.org/support" } ], + "license": "MIT", "peer": true, "dependencies": { "base64-js": "^1.3.1", @@ -5280,49 +6734,135 @@ } }, "node_modules/buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" - }, - "node_modules/buffer-indexof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", - "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", - "dev": true, - "peer": true + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true }, "node_modules/buffer-xor": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", "dev": true, + "license": "MIT", "peer": true }, + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/builtin-status-codes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==", "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/builtins": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", + "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", + "dev": true, + "peer": true, + "dependencies": { + "semver": "^7.0.0" + } + }, + "node_modules/builtins/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "peer": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/builtins/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/builtins/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, "peer": true }, + "node_modules/bundle-name": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-4.1.0.tgz", + "integrity": "sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "run-applescript": "^7.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/byte-length/-/byte-length-1.0.2.tgz", + "integrity": "sha512-ovBpjmsgd/teRmgcPh23d4gJvxDoXtAzEL9xTfMU8Yc2kqCDb7L9jAG0XHl1nzuGl+h3ebCIF1i62UFyA9V/2Q==" + }, "node_modules/bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.8" } }, "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -5347,32 +6887,76 @@ } }, "node_modules/camelcase-keys": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", - "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-7.0.2.tgz", + "integrity": "sha512-Rjs1H+A9R+Ig+4E/9oyB66UC5Mj9Xq3N//vcLf2WzgdTi/3gUu3Z9KoqmlrEG4VuuLK8wJHofxzdQXz/knhiYg==", "dev": true, "peer": true, "dependencies": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" + "camelcase": "^6.3.0", + "map-obj": "^4.1.0", + "quick-lru": "^5.1.1", + "type-fest": "^1.2.1" }, "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001297", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001297.tgz", - "integrity": "sha512-6bbIbowYG8vFs/Lk4hU9jFt7NknGDleVAciK916tp6ft1j+D//ZwwL6LbF1wXMQ32DMSjeuUV8suhh6dlmFjcA==", + "node_modules/camelcase-keys/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/camelcase-keys/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/cancelable-promise": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/cancelable-promise/-/cancelable-promise-4.3.1.tgz", + "integrity": "sha512-A/8PwLk/T7IJDfUdQ68NR24QHa8rIlnN/stiJEBo6dmVUkD4K14LswG0w3VwdeK/o7qOwRUR1k2MhK5Rpy2m7A==" + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001668", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001668.tgz", + "integrity": "sha512-nWLrdxqCdblixUO+27JtGJJE/txpJlyUy5YN1u53wLZkP0emYCo5zgS6QYft7VUYR42LGgi/S5hdLZTrnyIddw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, "node_modules/chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -5390,162 +6974,68 @@ "node_modules/chalk/node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, "engines": { "node": ">=0.8.0" } }, "node_modules/char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-2.0.1.tgz", + "integrity": "sha512-oSvEeo6ZUD7NepqAat3RqoucZ5SeqLJgOvVIwkafu6IP3V0pO38s/ypdVUmDDK6qIIHNlYHJAKX9E7R7HoKElw==", "engines": { - "node": ">=10" + "node": ">=12.20" + } + }, + "node_modules/character-entities": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", + "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, "node_modules/charenc": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", - "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=", + "integrity": "sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==", "engines": { "node": "*" } }, "node_modules/chokidar": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", - "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", - "dev": true, - "peer": true, - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "peer": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/chokidar/node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/chokidar/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "peer": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/chokidar/node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "peer": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/chokidar/node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "peer": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/chokidar/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/chokidar/node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", + "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "picomatch": "^2.2.1" + "readdirp": "^4.0.1" }, "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/chokidar/node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "peer": true, - "dependencies": { - "is-number": "^7.0.0" + "node": ">= 14.16.0" }, - "engines": { - "node": ">=8.0" + "funding": { + "url": "https://paulmillr.com/funding/" } }, "node_modules/chrome-trace-event": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true, "peer": true, "engines": { "node": ">=6.0" } }, "node_modules/ci-info": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.3.0.tgz", - "integrity": "sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.5.0.tgz", + "integrity": "sha512-yH4RezKOGlOhxkmhbeNuC4eYZKAUsEaGtBuBzDDP1eFUKiccDWzBABxBfOx31IDwDIXMTxWuwAxUGModvkbuVw==", "dev": true }, "node_modules/cipher-base": { @@ -5553,6 +7043,7 @@ "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "inherits": "^2.0.1", @@ -5560,52 +7051,34 @@ } }, "node_modules/cjs-module-lexer": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz", - "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", + "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", "dev": true }, "node_modules/clamp": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/clamp/-/clamp-1.0.1.tgz", - "integrity": "sha1-ZqDmQBGBbjcZaCj9yMjBRzEshjQ=" - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "peer": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/clipboard": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.8.tgz", - "integrity": "sha512-Y6WO0unAIQp5bLmk1zdThRhgJt/x3ks6f30s3oE3H1mgIEU33XyQjEf8gsf6DxC7NPX8Y1SsNWjUjL/ywLnnbQ==", - "dependencies": { - "good-listener": "^1.2.2", - "select": "^1.1.2", - "tiny-emitter": "^2.0.0" - } + "integrity": "sha512-kgMuFyE78OC6Dyu3Dy7vcx4uy97EIbVxJB/B0eJ3bUNAkwdNcxYzgKltnyADiYwsR7SEqkkUPsEUT//OVS6XMA==" }, "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, "dependencies": { "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", + "strip-ansi": "^6.0.1", "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" } }, "node_modules/clone": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", - "dev": true, + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", "engines": { "node": ">=0.8" } @@ -5625,6 +7098,19 @@ "node": ">=6" } }, + "node_modules/clone-deep/node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "peer": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/clone-deep/node_modules/kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -5635,36 +7121,10 @@ "node": ">=0.10.0" } }, - "node_modules/clone-regexp": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clone-regexp/-/clone-regexp-2.2.0.tgz", - "integrity": "sha512-beMpP7BOtTipFuW8hrJvREQ2DrRu3BE7by0ZpibtfBA+qfHYvMGTc2Yb1JMYPKg/JUw0CHYvpg796aNTSW9z7Q==", - "dev": true, - "peer": true, - "dependencies": { - "is-regexp": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/closest-css-color": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/closest-css-color/-/closest-css-color-1.0.0.tgz", - "integrity": "sha512-tSBfCvnaW4d2gSTg/yKRhZXarp6lDFM0FQthfMWweOiLa2fqVyWJhDO7PXxT7PX//xT+Ci8iPJKaZCIhwGDFHw==", - "dependencies": { - "colour-proximity": "0.0.2", - "css-color-names": "1.0.1", - "lodash": "^4.17.21" - }, - "engines": { - "node": ">=14" - } - }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", "dev": true, "engines": { "iojs": ">= 1.0.0", @@ -5672,65 +7132,58 @@ } }, "node_modules/collect-v8-coverage": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", - "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", "dev": true }, "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-3.0.1.tgz", + "integrity": "sha512-5kQah2eolfQV7HCrxtsBBArPfT5dwaKYMCXeMQsdRO7ihTO/cuNLGjd50ITCDn+ZU/YbS0Go64SjP9154eopxg==", + "license": "MIT", "dependencies": { - "color-name": "~1.1.4" + "color-name": "^2.0.0" }, "engines": { - "node": ">=7.0.0" + "node": ">=14.6" } }, "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-2.0.0.tgz", + "integrity": "sha512-SbtvAMWvASO5TE2QP07jHBMXKafgdZz8Vrsrn96fiL+O92/FN/PLARzUW5sKt013fjAprK2d2iCn2hk2Xb5oow==", + "license": "MIT", + "engines": { + "node": ">=12.20" + } }, "node_modules/color-string": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-0.1.3.tgz", - "integrity": "sha1-6GXS4+WfZlw68N4UOD9r8HBWhfM=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-2.0.1.tgz", + "integrity": "sha512-5z9FbYTZPAo8iKsNEqRNv+OlpBbDcoE+SY9GjLfDUHEfcNNV7tS9eSAlFHEaub/r5tBL9LtskAeq1l9SaoZ5tQ==", + "license": "MIT", "dependencies": { - "color-convert": "0.2.x" - } - }, - "node_modules/color-string/node_modules/color-convert": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-0.2.1.tgz", - "integrity": "sha1-NjyrI8lLMaDWTbcQSLjGqUD4xow=", + "color-name": "^2.0.0" + }, "engines": { - "node": "*" + "node": ">=18" } }, "node_modules/colord": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.2.tgz", - "integrity": "sha512-Uqbg+J445nc1TKn4FoDPS6ZZqAvEDnwrH42yo8B40JSOgSLxMZ/gt3h4nmCtPLQeXhjJJkqBx7SCY35WnIixaQ==", + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", "dev": true, "peer": true }, "node_modules/colorette": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz", - "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==", + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", "dev": true, "peer": true }, - "node_modules/colour-proximity": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/colour-proximity/-/colour-proximity-0.0.2.tgz", - "integrity": "sha1-E5rTr+zzAbyAO42mmPMslyl0dpw=", - "dependencies": { - "color-string": "~0.1.2" - } - }, "node_modules/combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -5742,29 +7195,36 @@ "node": ">= 0.8" } }, + "node_modules/comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true, - "engines": { - "node": ">= 6" - } + "peer": true }, "node_modules/comment-parser": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.1.tgz", - "integrity": "sha512-B52sN2VNghyq5ofvUsqZjmk6YkihBX5vMSChmSK9v4ShjKf3Vk5Xcmgpw4o+iIgtrnM/u5FiMpz9VKb8lpBveA==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", + "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", "dev": true, "peer": true, "engines": { "node": ">= 12.0.0" } }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "node_modules/common-path-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/common-path-prefix/-/common-path-prefix-3.0.0.tgz", + "integrity": "sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==", "dev": true, "peer": true }, @@ -5773,6 +7233,7 @@ "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "mime-db": ">= 1.43.0 < 2" @@ -5786,6 +7247,7 @@ "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "accepts": "~1.3.5", @@ -5805,6 +7267,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "ms": "2.0.0" @@ -5813,20 +7276,29 @@ "node_modules/compression/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/compression/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, "node_modules/condense-newlines": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/condense-newlines/-/condense-newlines-0.2.1.tgz", - "integrity": "sha1-PemFVTE5R10yUCyDsC9gaE0kxV8=", + "integrity": "sha512-P7X+QL9Hb9B/c8HI5BFFKmjgBu2XpQuF98WZ9XkO+dBGgk5XgwiQz7o1SmpglNWId3581UcS0SFAWfoIhMHPfg==", "dev": true, "dependencies": { "extend-shallow": "^2.0.1", @@ -5848,10 +7320,11 @@ } }, "node_modules/connect-history-api-fallback": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", - "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">=0.8" @@ -5869,7 +7342,6 @@ "resolved": "https://registry.npmjs.org/consolidate/-/consolidate-0.15.1.tgz", "integrity": "sha512-DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw==", "dev": true, - "peer": true, "dependencies": { "bluebird": "^3.1.1" }, @@ -5882,6 +7354,7 @@ "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/content-disposition": { @@ -5889,6 +7362,7 @@ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "safe-buffer": "5.2.1" @@ -5897,51 +7371,29 @@ "node": ">= 0.6" } }, - "node_modules/content-disposition/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peer": true - }, "node_modules/content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.6" } }, "node_modules/convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.1" - } + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true }, "node_modules/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.6" @@ -5950,95 +7402,89 @@ "node_modules/cookie-signature": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/core-js": { - "version": "3.24.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.24.1.tgz", - "integrity": "sha512-0QTBSYSUZ6Gq21utGzkfITDylE8jWC9Ne1D2MrhvlsZBI1x39OdDIVbzSqtgMndIy6BlHxBXpMGqzZmnztg2rg==", + "version": "3.42.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.42.0.tgz", + "integrity": "sha512-Sz4PP4ZA+Rq4II21qkNqOEDTDrCvcANId3xpIgB34NDkWc3UduWj2dqEtN9yZIq8Dk3HyPI33x9sqqU5C8sr0g==", "hasInstallScript": true, + "license": "MIT", "funding": { "type": "opencollective", "url": "https://opencollective.com/core-js" } }, "node_modules/core-js-compat": { - "version": "3.15.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.15.1.tgz", - "integrity": "sha512-xGhzYMX6y7oEGQGAJmP2TmtBLvR4nZmRGEcFa3ubHOq5YEp51gGN9AovVa0AoujGZIq+Wm6dISiYyGNfdflYww==", + "version": "3.38.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.38.1.tgz", + "integrity": "sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "browserslist": "^4.16.6", - "semver": "7.0.0" + "browserslist": "^4.23.3" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/core-js" } }, - "node_modules/core-js-compat/node_modules/semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true, - "peer": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "node_modules/cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", "dev": true, - "peer": true, - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "engines": { - "node": ">=10" - } + "license": "MIT", + "peer": true }, - "node_modules/cosmiconfig/node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "node_modules/cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", "dev": true, "peer": true, "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=14" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/cosmiconfig/node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "node_modules/cosmiconfig/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "peer": true + }, + "node_modules/cosmiconfig/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, "peer": true, - "engines": { - "node": ">=8" + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, "node_modules/create-ecdh": { @@ -6046,6 +7492,7 @@ "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "bn.js": "^4.1.0", @@ -6057,6 +7504,7 @@ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/create-hash": { @@ -6064,6 +7512,7 @@ "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "cipher-base": "^1.0.1", @@ -6078,6 +7527,7 @@ "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "cipher-base": "^1.0.3", @@ -6088,11 +7538,105 @@ "sha.js": "^2.4.8" } }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/create-jest/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/create-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/create-jest/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/create-jest/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/create-jest/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/create-jest/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, + "license": "MIT", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -6105,7 +7649,7 @@ "node_modules/crypt": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", - "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=", + "integrity": "sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==", "engines": { "node": "*" } @@ -6115,6 +7659,7 @@ "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "browserify-cipher": "^1.0.0", @@ -6133,18 +7678,6 @@ "node": "*" } }, - "node_modules/css": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", - "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "source-map": "^0.6.1", - "source-map-resolve": "^0.5.2", - "urix": "^0.1.0" - } - }, "node_modules/css-color-names": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-1.0.1.tgz", @@ -6153,50 +7686,57 @@ "node": "*" } }, + "node_modules/css-functions-list": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.2.2.tgz", + "integrity": "sha512-c+N0v6wbKVxTu5gOBBFkr9BEdBWaqqjQeiJ8QvSRIJOf+UxlJh930m8e6/WNeODIK0mYLFkoONrnj16i2EcvfQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12 || >=16" + } + }, "node_modules/css-loader": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.5.1.tgz", - "integrity": "sha512-gEy2w9AnJNnD9Kuo4XAP9VflW/ujKoS9c/syO+uWMlm5igc7LysKzPXaDoR2vroROkSwsTS2tGr1yGGEbZOYZQ==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-7.1.2.tgz", + "integrity": "sha512-6WvYYn7l/XEGN8Xu2vWFt9nVzrCn39vKyTEFf/ExEyoksJjjSZV/0/35XPlMbpnr6VGhZIUg5yJrL8tGfes/FA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "icss-utils": "^5.1.0", - "postcss": "^8.2.15", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", + "postcss": "^8.4.33", + "postcss-modules-extract-imports": "^3.1.0", + "postcss-modules-local-by-default": "^4.0.5", + "postcss-modules-scope": "^3.2.0", "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.1.0", - "semver": "^7.3.5" + "postcss-value-parser": "^4.2.0", + "semver": "^7.5.4" }, "engines": { - "node": ">= 12.13.0" + "node": ">= 18.12.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/webpack" }, "peerDependencies": { - "webpack": "^5.0.0" + "@rspack/core": "0.x || 1.x", + "webpack": "^5.27.0" + }, + "peerDependenciesMeta": { + "@rspack/core": { + "optional": true + }, + "webpack": { + "optional": true + } } }, - "node_modules/css-loader/node_modules/icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true, - "peer": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/css-loader/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/css-loader/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "peer": true, "dependencies": { @@ -6206,92 +7746,10 @@ "node": ">=10" } }, - "node_modules/css-loader/node_modules/postcss": { - "version": "8.4.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", - "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", - "dev": true, - "peer": true, - "dependencies": { - "nanoid": "^3.1.30", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.1" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/css-loader/node_modules/postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true, - "peer": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/css-loader/node_modules/postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "dev": true, - "peer": true, - "dependencies": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/css-loader/node_modules/postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dev": true, - "peer": true, - "dependencies": { - "postcss-selector-parser": "^6.0.4" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, - "node_modules/css-loader/node_modules/postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dev": true, - "peer": true, - "dependencies": { - "icss-utils": "^5.0.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } - }, "node_modules/css-loader/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "peer": true, "dependencies": { @@ -6311,13 +7769,17 @@ "dev": true, "peer": true }, - "node_modules/css/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/css-tree": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", + "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", "dev": true, + "dependencies": { + "mdn-data": "2.0.30", + "source-map-js": "^1.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" } }, "node_modules/cssesc": { @@ -6325,7 +7787,6 @@ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", "dev": true, - "peer": true, "bin": { "cssesc": "bin/cssesc" }, @@ -6334,9 +7795,9 @@ } }, "node_modules/cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz", + "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==", "dev": true }, "node_modules/cssstyle": { @@ -6358,70 +7819,64 @@ "dev": true }, "node_modules/csstype": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.0.tgz", - "integrity": "sha512-uX1KG+x9h5hIJsaKR9xHUeUraxf8IODOwq9JLNPq6BwB04a/xgpq3rcx47l5BZu5zBPlgD342tdke3Hom/nJRA==" - }, - "node_modules/cubic2quad": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/cubic2quad/-/cubic2quad-1.2.1.tgz", - "integrity": "sha512-wT5Y7mO8abrV16gnssKdmIhIbA9wSkeMzhh27jAguKrV82i24wER0vL5TGhUJ9dbJNDcigoRZ0IAHFEEEI4THQ==", - "dev": true + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", + "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" }, "node_modules/custom-event-polyfill": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/custom-event-polyfill/-/custom-event-polyfill-1.0.7.tgz", "integrity": "sha512-TDDkd5DkaZxZFM8p+1I3yAlvM3rSr1wbrOliG4yJiwinMZN8z/iGL7BTlDkrJcYTmgUSb4ywVCc3ZaUtOtC76w==" }, + "node_modules/data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", + "engines": { + "node": ">= 12" + } + }, "node_modules/data-urls": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", - "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", + "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==", "dev": true, "dependencies": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" + "abab": "^2.0.6", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0" }, "engines": { - "node": ">=10" + "node": ">=12" } }, "node_modules/date-format-parse": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/date-format-parse/-/date-format-parse-0.2.6.tgz", - "integrity": "sha512-sdxnYAWmLopeb+6Hmw+vo3or4OCJOnh4+YoJ9p+Id3o2EnNP0INpTqx7wr8UregfMpgaSZAH473R/ytiaB3gVg==" + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/date-format-parse/-/date-format-parse-0.2.7.tgz", + "integrity": "sha512-/+lyMUKoRogMuTeOVii6lUwjbVlesN9YRYLzZT/g3TEZ3uD9QnpjResujeEqUW+OSNbT7T1+SYdyEkTcRv+KDQ==" }, "node_modules/de-indent": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", - "integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0=", + "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", "dev": true }, - "node_modules/deasync": { - "version": "0.1.21", - "resolved": "https://registry.npmjs.org/deasync/-/deasync-0.1.21.tgz", - "integrity": "sha512-kUmM8Y+PZpMpQ+B4AuOW9k2Pfx/mSupJtxOsLzmnHY2WqZUYRFccFn2RhzPAqt3Xb+sorK/badW2D4zNzqZz5w==", - "dev": true, - "hasInstallScript": true, - "dependencies": { - "bindings": "^1.5.0", - "node-addon-api": "^1.7.1" - }, + "node_modules/debounce": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/debounce/-/debounce-2.2.0.tgz", + "integrity": "sha512-Xks6RUDLZFdz8LIdR6q0MTH44k7FikOmnh5xkSjMig6ch45afc8sjTjRQf3P6ax8dMgcQrYO/AR2RGWURrruqw==", + "license": "MIT", "engines": { - "node": ">=0.11.0" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/debounce": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", - "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==" - }, "node_modules/debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, "dependencies": { "ms": "2.1.2" }, @@ -6435,25 +7890,41 @@ } }, "node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-5.0.1.tgz", + "integrity": "sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA==", "dev": true, "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", "dev": true, "peer": true, "dependencies": { "decamelize": "^1.1.0", "map-obj": "^1.0.0" }, + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decamelize-keys/node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, + "peer": true, "engines": { "node": ">=0.10.0" } @@ -6461,7 +7932,7 @@ "node_modules/decamelize-keys/node_modules/map-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", "dev": true, "peer": true, "engines": { @@ -6469,90 +7940,95 @@ } }, "node_modules/decimal.js": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz", - "integrity": "sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==", + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.1.tgz", + "integrity": "sha512-F29o+vci4DodHYT9UrR5IEbfBw9pE5eSapIJdTqXK5+6hq+t8VRxwQyKlW2i+KDKFkkJQRvFyI/QXD83h8LyQw==", "dev": true }, - "node_modules/decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true, - "engines": { - "node": ">=0.10" + "node_modules/decode-named-character-reference": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", + "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==", + "dependencies": { + "character-entities": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, "node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", - "dev": true - }, - "node_modules/deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz", + "integrity": "sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==", "dev": true, - "peer": true, - "dependencies": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } } }, "node_modules/deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true }, "node_modules/deepmerge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", - "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "dev": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "node_modules/default-browser": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.2.1.tgz", + "integrity": "sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "execa": "^5.0.0" + "bundle-name": "^4.1.0", + "default-browser-id": "^5.0.0" }, "engines": { - "node": ">= 10" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "node_modules/default-browser-id": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-5.0.0.tgz", + "integrity": "sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==", "dev": true, + "license": "MIT", "peer": true, "engines": { - "node": ">=8" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/define-properties": { + "node_modules/define-data-property": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -6561,67 +8037,72 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/del": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", - "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", + "node_modules/define-lazy-prop": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", + "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", "dev": true, + "license": "MIT", "peer": true, - "dependencies": { - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", - "is-glob": "^4.0.1", - "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.2", - "p-map": "^4.0.0", - "rimraf": "^3.0.2", - "slash": "^3.0.0" - }, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/del/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "dev": true, + "license": "MIT", "peer": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "engines": { "node": ">=0.4.0" } }, - "node_modules/delegate": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz", - "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==" - }, "node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true, + "license": "MIT", "peer": true, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" + } + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "engines": { + "node": ">=6" } }, "node_modules/des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.1.0.tgz", + "integrity": "sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "inherits": "^2.0.1", @@ -6629,11 +8110,30 @@ } }, "node_modules/destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "dev": true, - "peer": true + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } }, "node_modules/detect-newline": { "version": "3.1.0", @@ -6649,15 +8149,28 @@ "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", "dev": true, + "license": "MIT", "peer": true }, + "node_modules/devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", + "dependencies": { + "dequal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/diffie-hellman": { @@ -6665,6 +8178,7 @@ "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "bn.js": "^4.1.0", @@ -6677,6 +8191,7 @@ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/dir-glob": { @@ -6692,42 +8207,18 @@ "node": ">=8" } }, - "node_modules/dir-glob/node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "node_modules/dns-packet": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", + "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", "dev": true, + "license": "MIT", "peer": true, + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, "engines": { - "node": ">=8" - } - }, - "node_modules/dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", - "dev": true, - "peer": true - }, - "node_modules/dns-packet": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz", - "integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==", - "dev": true, - "peer": true, - "dependencies": { - "ip": "^1.1.0", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/dns-txt": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", - "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", - "dev": true, - "peer": true, - "dependencies": { - "buffer-indexof": "^1.0.0" + "node": ">=6" } }, "node_modules/doctrine": { @@ -6743,54 +8234,39 @@ "node": ">=6.0.0" } }, - "node_modules/dom-event-types": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dom-event-types/-/dom-event-types-1.0.0.tgz", - "integrity": "sha512-2G2Vwi2zXTHBGqXHsJ4+ak/iP0N8Ar+G8a7LiD2oup5o4sQWytwqqrZu/O6hIMV0KMID2PL69OhpshLO0n7UJQ==", - "dev": true - }, "node_modules/dom-serializer": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", - "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", "dev": true, "peer": true, "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" }, "funding": { "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, - "node_modules/dom-serializer/node_modules/entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true, - "peer": true, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, "node_modules/domain-browser": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.22.0.tgz", - "integrity": "sha512-IGBwjF7tNk3cwypFNH/7bfzBcgSCbaMOD3GsaY1AU/JRrnHnYgEM0+9kQt52iZxjNsjBtJYtao146V+f8jFZNw==", + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-5.7.0.tgz", + "integrity": "sha512-edTFu0M/7wO1pXY6GDxVNVW086uqwWYIHP98txhcPyV995X21JIH2DtYp33sQJOupYoXKe9RwTw2Ya2vWaquTQ==", "dev": true, + "license": "Artistic-2.0", "peer": true, "engines": { - "node": ">=10" + "node": ">=4" }, "funding": { "url": "https://bevry.me/fund" } }, "node_modules/domelementtype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", - "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", "dev": true, "funding": [ { @@ -6801,34 +8277,25 @@ "peer": true }, "node_modules/domexception": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", - "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz", + "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==", "dev": true, "dependencies": { - "webidl-conversions": "^5.0.0" + "webidl-conversions": "^7.0.0" }, "engines": { - "node": ">=8" - } - }, - "node_modules/domexception/node_modules/webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", - "dev": true, - "engines": { - "node": ">=8" + "node": ">=12" } }, "node_modules/domhandler": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz", - "integrity": "sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", "dev": true, "peer": true, "dependencies": { - "domelementtype": "^2.2.0" + "domelementtype": "^2.3.0" }, "engines": { "node": ">= 4" @@ -6837,62 +8304,135 @@ "url": "https://github.com/fb55/domhandler?sponsor=1" } }, + "node_modules/dompurify": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.6.tgz", + "integrity": "sha512-/2GogDQlohXPZe6D6NOgQvXLPSYBqIWMnZ8zzOhn09REE4eyAzb+Hed3jhoM9OkuaJ8P6ZGTTVWQKAi8ieIzfQ==", + "license": "(MPL-2.0 OR Apache-2.0)", + "optionalDependencies": { + "@types/trusted-types": "^2.0.7" + } + }, "node_modules/domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", "dev": true, "peer": true, "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" }, "funding": { "url": "https://github.com/fb55/domutils?sponsor=1" } }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, "node_modules/editorconfig": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", - "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-1.0.4.tgz", + "integrity": "sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==", "dev": true, "dependencies": { - "commander": "^2.19.0", - "lru-cache": "^4.1.5", - "semver": "^5.6.0", - "sigmund": "^1.0.1" + "@one-ini/wasm": "0.1.1", + "commander": "^10.0.0", + "minimatch": "9.0.1", + "semver": "^7.5.3" }, "bin": { "editorconfig": "bin/editorconfig" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/editorconfig/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" } }, "node_modules/editorconfig/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "dev": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/editorconfig/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/editorconfig/node_modules/minimatch": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz", + "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, "node_modules/editorconfig/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, "bin": { - "semver": "bin/semver" + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, + "node_modules/editorconfig/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/electron-to-chromium": { - "version": "1.4.38", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.38.tgz", - "integrity": "sha512-WhHt3sZazKj0KK/UpgsbGQnUUoFeAHVishzHFExMxagpZgjiGYSC9S0ZlbhCfSH2L2i+2A1yyqOIliTctMx7KQ==" + "version": "1.5.36", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.36.tgz", + "integrity": "sha512-HYTX8tKge/VNp6FGO+f/uVDmUkq+cEfcxYhKf15Akc4M5yxt5YmorwlAitKWjWhWQnKcDRBAQKXkhqqXMqcrjw==", + "dev": true, + "license": "ISC" }, "node_modules/element-matches": { "version": "0.1.2", @@ -6900,10 +8440,11 @@ "integrity": "sha512-yWh1otcs3OKUWDvu/IxyI36ZI3WNaRZlI0uG/DK6fu0pap0VYZ0J5pEGTk1zakme+hT0OKHwhlHc0N5TJhY6yQ==" }, "node_modules/elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz", + "integrity": "sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "bn.js": "^4.11.9", @@ -6920,31 +8461,32 @@ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/emittery": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", - "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", "dev": true, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sindresorhus/emittery?sponsor=1" } }, "node_modules/emoji-mart-vue-fast": { - "version": "7.0.7", - "resolved": "https://registry.npmjs.org/emoji-mart-vue-fast/-/emoji-mart-vue-fast-7.0.7.tgz", - "integrity": "sha512-Nrk4IOjKcKKYyMnRm4lreEiPpvDX+h3FKI86SYs05dCFZ0WZIMTGok26dtWvJqseTThS1UghsNEjM4HrfDjIJg==", + "version": "15.0.4", + "resolved": "https://registry.npmjs.org/emoji-mart-vue-fast/-/emoji-mart-vue-fast-15.0.4.tgz", + "integrity": "sha512-OjuxqoMJRTTG7Vevz0mR1ZnqY1DI8gGnmoskuuC8qL8VwwTjrGdwAO4WRWtAUN8P6Di7kxvY6cUgNETNFmbP4A==", + "license": "BSD-3-Clause", "dependencies": { - "@babel/polyfill": "7.2.5", - "@babel/runtime": "7.3.4", - "vue-virtual-scroller": "^1.0.0-rc.2" + "@babel/runtime": "^7.18.6", + "core-js": "^3.23.5" }, "peerDependencies": { - "vue": "^2.0.0" + "vue": ">2.0.0" } }, "node_modules/emoji-regex": { @@ -6957,24 +8499,28 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, "engines": { "node": ">= 4" } }, "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.8" } }, "node_modules/enhanced-resolve": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.3.tgz", - "integrity": "sha512-EGAbGvH7j7Xt2nc0E7D99La1OiEs8LnyimkRgwExpUMScN6O+3x9tIWs7PLQZVNx4YD+00skHXPXi1yQHpAmZA==", + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", + "dev": true, + "license": "MIT", "peer": true, "dependencies": { "graceful-fs": "^4.2.4", @@ -6985,11 +8531,10 @@ } }, "node_modules/entities": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz", - "integrity": "sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "dev": true, - "peer": true, "engines": { "node": ">=0.12" }, @@ -7020,31 +8565,33 @@ } }, "node_modules/es-abstract": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.1.tgz", - "integrity": "sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==", + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", + "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", "dev": true, + "peer": true, "dependencies": { "call-bind": "^1.0.2", "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.1", + "get-intrinsic": "^1.1.3", "get-symbol-description": "^1.0.0", "has": "^1.0.3", "has-property-descriptors": "^1.0.0", "has-symbols": "^1.0.3", "internal-slot": "^1.0.3", - "is-callable": "^1.2.4", + "is-callable": "^1.2.7", "is-negative-zero": "^2.0.2", "is-regex": "^1.1.4", "is-shared-array-buffer": "^1.0.2", "is-string": "^1.0.7", "is-weakref": "^1.0.2", - "object-inspect": "^1.12.0", + "object-inspect": "^1.12.2", "object-keys": "^1.1.1", - "object.assign": "^4.1.2", + "object.assign": "^4.1.4", "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", "string.prototype.trimend": "^1.0.5", "string.prototype.trimstart": "^1.0.5", "unbox-primitive": "^1.0.2" @@ -7056,17 +8603,53 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.4.1.tgz", + "integrity": "sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==", + "dev": true, "peer": true }, + "node_modules/es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", + "dev": true, + "peer": true, + "dependencies": { + "has": "^1.0.3" + } + }, "node_modules/es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, + "peer": true, "dependencies": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -7079,17 +8662,12 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==", - "dev": true, - "peer": true - }, "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -7097,7 +8675,7 @@ "node_modules/escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" }, "node_modules/escape-string-regexp": { "version": "2.0.0", @@ -7130,19 +8708,6 @@ "source-map": "~0.6.1" } }, - "node_modules/escodegen/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/escodegen/node_modules/estraverse": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", @@ -7155,7 +8720,7 @@ "node_modules/escodegen/node_modules/levn": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", "dev": true, "dependencies": { "prelude-ls": "~1.1.2", @@ -7185,26 +8750,16 @@ "node_modules/escodegen/node_modules/prelude-ls": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", "dev": true, "engines": { "node": ">= 0.8.0" } }, - "node_modules/escodegen/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/escodegen/node_modules/type-check": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", "dev": true, "dependencies": { "prelude-ls": "~1.1.2" @@ -7214,47 +8769,52 @@ } }, "node_modules/eslint": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.11.0.tgz", - "integrity": "sha512-/KRpd9mIRg2raGxHRGwW9ZywYNAClZrHjdueHcrVDuO3a6bj83eoTirCCk0M0yPwOjWYKHwRVRid+xK4F/GHgA==", - "dev": true, - "peer": true, - "dependencies": { - "@eslint/eslintrc": "^1.2.1", - "@humanwhocodes/config-array": "^0.9.2", - "ajv": "^6.10.0", + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.3.1", - "esquery": "^1.4.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^6.0.1", - "globals": "^13.6.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", "ignore": "^5.2.0", - "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", - "minimatch": "^3.0.4", + "minimatch": "^3.1.2", "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", + "optionator": "^0.9.3", "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" + "text-table": "^0.2.0" }, "bin": { "eslint": "bin/eslint.js" @@ -7266,10 +8826,23 @@ "url": "https://opencollective.com/eslint" } }, + "node_modules/eslint-compat-utils": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/eslint-compat-utils/-/eslint-compat-utils-0.1.2.tgz", + "integrity": "sha512-Jia4JDldWnFNIru1Ehx1H5s9/yxiRHY/TimCuUc0jNexew3cF1gI6CYZil1ociakfWO3rRqFjl1mskBblB3RYg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, "node_modules/eslint-config-standard": { - "version": "17.0.0-1", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-17.0.0-1.tgz", - "integrity": "sha512-aqRG58dqoBNfOLN+PsitasxmW+W9Os4oQrx081B16T4E4WogsSbpUL6hnKSnyv35sSRYA2XjBtKMOrUboL6jgw==", + "version": "17.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-17.1.0.tgz", + "integrity": "sha512-IwHwmaBNtDK4zDHQukFDW5u/aTb8+meQWZvNFWkiGmbWjD6bqyuSSBxxXKkCftCUzc1zwCH2m/baCNDLGmuO5Q==", "dev": true, "funding": [ { @@ -7286,13 +8859,30 @@ } ], "peer": true, + "engines": { + "node": ">=12.0.0" + }, "peerDependencies": { "eslint": "^8.0.1", "eslint-plugin-import": "^2.25.2", - "eslint-plugin-n": "^14.0.0", + "eslint-plugin-n": "^15.0.0 || ^16.0.0 ", "eslint-plugin-promise": "^6.0.0" } }, + "node_modules/eslint-import-resolver-exports": { + "version": "1.0.0-beta.5", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-exports/-/eslint-import-resolver-exports-1.0.0-beta.5.tgz", + "integrity": "sha512-o6t0w7muUpXr7MkUVzD5igQoDfAQvTmcPp8HEAJdNF8eOuAO+yn6I/TTyMxz9ecCwzX7e02vzlkHURoScUuidg==", + "dev": true, + "peer": true, + "dependencies": { + "resolve.exports": "^2.0.0" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*" + } + }, "node_modules/eslint-import-resolver-node": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", @@ -7314,18 +8904,48 @@ "ms": "^2.1.1" } }, + "node_modules/eslint-import-resolver-typescript": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz", + "integrity": "sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==", + "dev": true, + "peer": true, + "dependencies": { + "debug": "^4.3.4", + "enhanced-resolve": "^5.12.0", + "eslint-module-utils": "^2.7.4", + "fast-glob": "^3.3.1", + "get-tsconfig": "^4.5.0", + "is-core-module": "^2.11.0", + "is-glob": "^4.0.3" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*" + } + }, "node_modules/eslint-module-utils": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.3.tgz", - "integrity": "sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ==", + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz", + "integrity": "sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==", "dev": true, "peer": true, "dependencies": { - "debug": "^3.2.7", - "find-up": "^2.1.0" + "debug": "^3.2.7" }, "engines": { "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } } }, "node_modules/eslint-module-utils/node_modules/debug": { @@ -7338,167 +8958,107 @@ "ms": "^2.1.1" } }, - "node_modules/eslint-module-utils/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "node_modules/eslint-plugin-es-x": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-es-x/-/eslint-plugin-es-x-7.5.0.tgz", + "integrity": "sha512-ODswlDSO0HJDzXU0XvgZ3lF3lS3XAZEossh15Q2UHjwrJggWeBoKqqEsLTZLXl+dh5eOAozG0zRcYtuE35oTuQ==", "dev": true, "peer": true, "dependencies": { - "locate-path": "^2.0.0" + "@eslint-community/eslint-utils": "^4.1.2", + "@eslint-community/regexpp": "^4.6.0", + "eslint-compat-utils": "^0.1.2" }, "engines": { - "node": ">=4" + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + }, + "peerDependencies": { + "eslint": ">=8" } }, - "node_modules/eslint-module-utils/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "node_modules/eslint-plugin-import": { + "version": "2.26.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz", + "integrity": "sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==", "dev": true, "peer": true, "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" + "array-includes": "^3.1.4", + "array.prototype.flat": "^1.2.5", + "debug": "^2.6.9", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.7.3", + "has": "^1.0.3", + "is-core-module": "^2.8.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.values": "^1.1.5", + "resolve": "^1.22.0", + "tsconfig-paths": "^3.14.1" }, "engines": { "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" } }, - "node_modules/eslint-module-utils/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "peer": true, "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" + "ms": "2.0.0" } }, - "node_modules/eslint-module-utils/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "peer": true, "dependencies": { - "p-limit": "^1.1.0" + "esutils": "^2.0.2" }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/eslint-module-utils/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/eslint-plugin-es": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz", - "integrity": "sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==", - "dev": true, - "peer": true, - "dependencies": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - }, - "engines": { - "node": ">=8.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=4.19.1" - } - }, - "node_modules/eslint-plugin-import": { - "version": "2.25.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.25.4.tgz", - "integrity": "sha512-/KJBASVFxpu0xg1kIBn9AUa8hQVnszpwgE7Ld0lKAlx7Ie87yzEzCgSkekt+le/YVhiaosO4Y14GDAOc41nfxA==", - "dev": true, - "peer": true, - "dependencies": { - "array-includes": "^3.1.4", - "array.prototype.flat": "^1.2.5", - "debug": "^2.6.9", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.6", - "eslint-module-utils": "^2.7.2", - "has": "^1.0.3", - "is-core-module": "^2.8.0", - "is-glob": "^4.0.3", - "minimatch": "^3.0.4", - "object.values": "^1.1.5", - "resolve": "^1.20.0", - "tsconfig-paths": "^3.12.0" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" - } - }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "peer": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "peer": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-import/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "node_modules/eslint-plugin-import/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true, "peer": true }, "node_modules/eslint-plugin-jsdoc": { - "version": "39.3.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.3.2.tgz", - "integrity": "sha512-RSGN94RYzIJS/WfW3l6cXzRLfJWxvJgNQZ4w0WCaxJWDJMigtwTsILEAfKqmmPkT2rwMH/s3C7G5ChDE6cwPJg==", + "version": "46.10.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-46.10.1.tgz", + "integrity": "sha512-x8wxIpv00Y50NyweDUpa+58ffgSAI5sqe+zcZh33xphD0AVh+1kqr1ombaTRb7Fhpove1zfUuujlX9DWWBP5ag==", "dev": true, "peer": true, "dependencies": { - "@es-joy/jsdoccomment": "~0.31.0", - "comment-parser": "1.3.1", + "@es-joy/jsdoccomment": "~0.41.0", + "are-docs-informative": "^0.0.2", + "comment-parser": "1.4.1", "debug": "^4.3.4", "escape-string-regexp": "^4.0.0", - "esquery": "^1.4.0", - "semver": "^7.3.7", - "spdx-expression-parse": "^3.0.1" + "esquery": "^1.5.0", + "is-builtin-module": "^3.2.1", + "semver": "^7.5.4", + "spdx-expression-parse": "^4.0.0" }, "engines": { - "node": "^14 || ^16 || ^17 || ^18" + "node": ">=16" }, "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" + "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0" } }, "node_modules/eslint-plugin-jsdoc/node_modules/escape-string-regexp": { @@ -7528,9 +9088,9 @@ } }, "node_modules/eslint-plugin-jsdoc/node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "peer": true, "dependencies": { @@ -7543,6 +9103,17 @@ "node": ">=10" } }, + "node_modules/eslint-plugin-jsdoc/node_modules/spdx-expression-parse": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-4.0.0.tgz", + "integrity": "sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==", + "dev": true, + "peer": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, "node_modules/eslint-plugin-jsdoc/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -7551,22 +9122,26 @@ "peer": true }, "node_modules/eslint-plugin-n": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-14.0.0.tgz", - "integrity": "sha512-mNwplPLsbaKhHyA0fa/cy8j+oF6bF6l81hzBTWa6JOvPcMNAuIogk2ih6d9tYvWYzyUG+7ZFeChqbzdFpg2QrQ==", + "version": "16.6.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-16.6.2.tgz", + "integrity": "sha512-6TyDmZ1HXoFQXnhCTUjVFULReoBPOAjpuiKELMkeP40yffI/1ZRO+d9ug/VC6fqISo2WkuIBk3cvuRPALaWlOQ==", "dev": true, "peer": true, "dependencies": { - "eslint-plugin-es": "^4.1.0", - "eslint-utils": "^3.0.0", - "ignore": "^5.1.1", - "is-core-module": "^2.3.0", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "^6.1.0" + "@eslint-community/eslint-utils": "^4.4.0", + "builtins": "^5.0.1", + "eslint-plugin-es-x": "^7.5.0", + "get-tsconfig": "^4.7.0", + "globals": "^13.24.0", + "ignore": "^5.2.4", + "is-builtin-module": "^3.2.1", + "is-core-module": "^2.12.1", + "minimatch": "^3.1.2", + "resolve": "^1.22.2", + "semver": "^7.5.3" }, "engines": { - "node": ">=12.22.0" + "node": ">=16.0.0" }, "funding": { "url": "https://github.com/sponsors/mysticatea" @@ -7575,70 +9150,75 @@ "eslint": ">=7.0.0" } }, - "node_modules/eslint-plugin-n/node_modules/eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "node_modules/eslint-plugin-n/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "peer": true, "dependencies": { - "eslint-visitor-keys": "^2.0.0" + "type-fest": "^0.20.2" }, "engines": { - "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=5" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-plugin-node": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", + "node_modules/eslint-plugin-n/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "peer": true, "dependencies": { - "eslint-plugin-es": "^3.0.0", - "eslint-utils": "^2.0.0", - "ignore": "^5.1.1", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "^6.1.0" + "yallist": "^4.0.0" }, "engines": { - "node": ">=8.10.0" - }, - "peerDependencies": { - "eslint": ">=5.16.0" + "node": ">=10" } }, - "node_modules/eslint-plugin-node/node_modules/eslint-plugin-es": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", + "node_modules/eslint-plugin-n/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "peer": true, "dependencies": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=8.10.0" + "node": ">=10" + } + }, + "node_modules/eslint-plugin-n/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=4.19.1" + "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/eslint-plugin-n/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "peer": true + }, "node_modules/eslint-plugin-promise": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.0.0.tgz", - "integrity": "sha512-7GPezalm5Bfi/E22PnQxDWH2iW9GTvAlUNTztemeHb6c1BniSyoeTrM87JkC0wYdi6aQrZX9p2qEiAno8aTcbw==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.1.1.tgz", + "integrity": "sha512-tjqWDwVZQo7UIPMeDReOpUgHCmCiH+ePnVT+5zVapL0uuHnegBUs2smM13CzOs2Xb5+MHMRFTs9v24yjba4Oig==", "dev": true, "peer": true, "engines": { @@ -7649,43 +9229,27 @@ } }, "node_modules/eslint-plugin-vue": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-8.5.0.tgz", - "integrity": "sha512-i1uHCTAKOoEj12RDvdtONWrGzjFm/djkzqfhmQ0d6M/W8KM81mhswd/z+iTZ0jCpdUedW3YRgcVfQ37/J4zoYQ==", + "version": "9.7.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.7.0.tgz", + "integrity": "sha512-DrOO3WZCZEwcLsnd3ohFwqCoipGRSTKTBTnLwdhqAbYZtzWl0o7D+D8ZhlmiZvABKTEl8AFsqH1GHGdybyoQmw==", "dev": true, "peer": true, "dependencies": { "eslint-utils": "^3.0.0", "natural-compare": "^1.4.0", + "nth-check": "^2.0.1", + "postcss-selector-parser": "^6.0.9", "semver": "^7.3.5", - "vue-eslint-parser": "^8.0.1" + "vue-eslint-parser": "^9.0.1", + "xml-name-validator": "^4.0.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^14.17.0 || >=16.0.0" }, "peerDependencies": { "eslint": "^6.2.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/eslint-plugin-vue/node_modules/eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "dev": true, - "peer": true, - "dependencies": { - "eslint-visitor-keys": "^2.0.0" - }, - "engines": { - "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=5" - } - }, "node_modules/eslint-plugin-vue/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -7700,9 +9264,9 @@ } }, "node_modules/eslint-plugin-vue/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "peer": true, "dependencies": { @@ -7726,6 +9290,7 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, "peer": true, "dependencies": { "esrecurse": "^4.3.0", @@ -7736,29 +9301,22 @@ } }, "node_modules/eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", "dev": true, "peer": true, "dependencies": { - "eslint-visitor-keys": "^1.1.0" + "eslint-visitor-keys": "^2.0.0" }, "engines": { - "node": ">=6" + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" }, "funding": { "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, - "peer": true, - "engines": { - "node": ">=4" + }, + "peerDependencies": { + "eslint": ">=5" } }, "node_modules/eslint-visitor-keys": { @@ -7795,9 +9353,9 @@ "peer": true }, "node_modules/eslint/node_modules/chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "peer": true, "dependencies": { @@ -7811,6 +9369,28 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, "node_modules/eslint/node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -7825,10 +9405,11 @@ } }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, + "license": "BSD-2-Clause", "peer": true, "dependencies": { "esrecurse": "^4.3.0", @@ -7836,45 +9417,23 @@ }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/eslint/node_modules/eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "dev": true, - "peer": true, - "dependencies": { - "eslint-visitor-keys": "^2.0.0" - }, - "engines": { - "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=5" - } - }, - "node_modules/eslint/node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true, - "peer": true, - "engines": { - "node": ">=10" + "url": "https://opencollective.com/eslint" } }, "node_modules/eslint/node_modules/eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, + "license": "Apache-2.0", "peer": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/eslint/node_modules/estraverse": { @@ -7882,29 +9441,35 @@ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, + "license": "BSD-2-Clause", "peer": true, "engines": { "node": ">=4.0" } }, - "node_modules/eslint/node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "node_modules/eslint/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, "peer": true, "dependencies": { - "is-glob": "^4.0.3" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=10.13.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/eslint/node_modules/globals": { - "version": "13.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", - "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "type-fest": "^0.20.2" @@ -7939,25 +9504,31 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/eslint/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/eslint/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "peer": true, "dependencies": { - "has-flag": "^4.0.0" + "p-locate": "^5.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "node_modules/eslint/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "peer": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, "engines": { "node": ">=10" }, @@ -7965,61 +9536,112 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/espree": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz", - "integrity": "sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==", + "node_modules/eslint/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "peer": true, "dependencies": { - "acorn": "^8.7.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^3.3.0" + "p-limit": "^3.0.2" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/espree/node_modules/acorn": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", - "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "peer": true, - "bin": { - "acorn": "bin/acorn" + "dependencies": { + "has-flag": "^4.0.0" }, "engines": { - "node": ">=0.4.0" + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, + "license": "Apache-2.0", "peer": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, "node_modules/esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, "bin": { "esparse": "bin/esparse.js", "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, "node_modules/esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dev": true, "peer": true, "dependencies": { @@ -8030,9 +9652,9 @@ } }, "node_modules/esquery/node_modules/estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, "peer": true, "engines": { @@ -8043,6 +9665,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, "peer": true, "dependencies": { "estraverse": "^5.2.0" @@ -8052,9 +9675,10 @@ } }, "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, "peer": true, "engines": { "node": ">=4.0" @@ -8064,6 +9688,8 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "peer": true, "engines": { "node": ">=4.0" } @@ -8072,6 +9698,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -8079,8 +9706,9 @@ "node_modules/etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.6" @@ -8091,6 +9719,7 @@ "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">=6" @@ -8101,12 +9730,14 @@ "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, "peer": true, "engines": { "node": ">=0.8.x" @@ -8117,6 +9748,7 @@ "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "md5.js": "^1.3.4", @@ -8146,97 +9778,85 @@ "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/execall": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/execall/-/execall-2.0.0.tgz", - "integrity": "sha512-0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow==", - "dev": true, - "peer": true, - "dependencies": { - "clone-regexp": "^2.1.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", "dev": true, "engines": { "node": ">= 0.8.0" } }, "node_modules/expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/express": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.2.tgz", - "integrity": "sha512-oxlxJxcQlYwqPWKVJJtvQiwHgosH/LrLSPA+H4UxpyvSS6jC5aH+5MoHFM+KABgTOt0APue4w66Ha8jCUo9QGg==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "accepts": "~1.3.7", + "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.19.1", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.4.1", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", - "depd": "~1.1.2", - "encodeurl": "~1.0.2", + "depd": "2.0.0", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "~1.1.2", + "finalhandler": "1.3.1", "fresh": "0.5.2", - "merge-descriptors": "1.0.1", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", - "qs": "6.9.6", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.17.2", - "serve-static": "1.14.2", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", - "statuses": "~1.5.0", + "statuses": "2.0.1", "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, - "node_modules/express/node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "dev": true, - "peer": true - }, "node_modules/express/node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "ms": "2.0.0" @@ -8245,35 +9865,20 @@ "node_modules/express/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true, + "license": "MIT", "peer": true }, - "node_modules/express/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peer": true + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" }, "node_modules/extend-shallow": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, "dependencies": { "is-extendable": "^0.1.0" @@ -8282,28 +9887,17 @@ "node": ">=0.10.0" } }, - "node_modules/extract-from-css": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/extract-from-css/-/extract-from-css-0.4.4.tgz", - "integrity": "sha1-HqffLnx8brmSL6COitrqSG9vj5I=", - "dev": true, - "dependencies": { - "css": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0", - "npm": ">=2.0.0" - } - }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "peer": true }, "node_modules/fast-glob": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", - "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", "dev": true, "peer": true, "dependencies": { @@ -8314,94 +9908,66 @@ "micromatch": "^4.0.4" }, "engines": { - "node": ">=8" - } - }, - "node_modules/fast-glob/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "peer": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/fast-glob/node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "peer": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/fast-glob/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/fast-glob/node_modules/micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "peer": true, - "dependencies": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - }, - "engines": { - "node": ">=8.6" + "node": ">=8.6.0" } }, - "node_modules/fast-glob/node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "peer": true, "dependencies": { - "is-number": "^7.0.0" + "is-glob": "^4.0.1" }, "engines": { - "node": ">=8.0" + "node": ">= 6" } }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true }, "node_modules/fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, + "node_modules/fast-xml-parser": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.5.3.tgz", + "integrity": "sha512-RKihhV+SHsIUGXObeVy9AXiBbFwkVk7Syp8XgwN5U3JV416+Gwp/GO9i0JYKmikykgz/UHRrrV4ROuZEo/T0ig==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "license": "MIT", + "dependencies": { + "strnum": "^1.1.1" + }, + "bin": { + "fxparser": "src/cli/cli.js" + } + }, "node_modules/fastest-levenshtein": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz", - "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==", + "version": "1.0.16", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", + "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", "dev": true, - "peer": true + "peer": true, + "engines": { + "node": ">= 4.9.1" + } }, "node_modules/fastq": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz", - "integrity": "sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", "dev": true, "peer": true, "dependencies": { @@ -8413,6 +9979,7 @@ "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", "dev": true, + "license": "Apache-2.0", "peer": true, "dependencies": { "websocket-driver": ">=0.5.1" @@ -8422,14 +9989,36 @@ } }, "node_modules/fb-watchman": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", - "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", "dev": true, "dependencies": { "bser": "2.1.1" } }, + "node_modules/fetch-blob": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", + "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "paypal", + "url": "https://paypal.me/jimmywarting" + } + ], + "dependencies": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + }, + "engines": { + "node": "^12.20 || >= 14.13" + } + }, "node_modules/file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", @@ -8443,35 +10032,32 @@ "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true - }, - "node_modules/filter-obj": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-2.0.2.tgz", - "integrity": "sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==", + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, - "peer": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, "engines": { "node": ">=8" } }, "node_modules/finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", - "statuses": "~1.5.0", + "statuses": "2.0.1", "unpipe": "~1.0.0" }, "engines": { @@ -8483,6 +10069,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "ms": "2.0.0" @@ -8491,86 +10078,117 @@ "node_modules/finalhandler/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true, + "license": "MIT", "peer": true }, - "node_modules/find-babel-config": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/find-babel-config/-/find-babel-config-1.2.0.tgz", - "integrity": "sha512-jB2CHJeqy6a820ssiqwrKMeyC6nNdmrcgkKWJWmpoxpE8RKciYJXCcXRq1h2AzCo5I5BJeN2tkGEO3hLTuePRA==", + "node_modules/find-cache-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz", + "integrity": "sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==", "dev": true, + "peer": true, "dependencies": { - "json5": "^0.5.1", - "path-exists": "^3.0.0" + "common-path-prefix": "^3.0.0", + "pkg-dir": "^7.0.0" }, "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/find-babel-config/node_modules/json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true, - "bin": { - "json5": "lib/cli.js" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/find-babel-config/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "node_modules/find-cache-dir/node_modules/find-up": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz", + "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==", "dev": true, + "peer": true, + "dependencies": { + "locate-path": "^7.1.0", + "path-exists": "^5.0.0" + }, "engines": { - "node": ">=4" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "node_modules/find-cache-dir/node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", "dev": true, "peer": true, "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" + "p-locate": "^6.0.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/find-cache-dir/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "node_modules/find-cache-dir/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", "dev": true, "peer": true, "dependencies": { - "semver": "^6.0.0" + "yocto-queue": "^1.0.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/find-cache-dir/node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "peer": true, + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-cache-dir/node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, "node_modules/find-cache-dir/node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz", + "integrity": "sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==", "dev": true, "peer": true, "dependencies": { - "find-up": "^4.0.0" + "find-up": "^6.3.0" }, "engines": { - "node": ">=8" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/find-up": { @@ -8587,13 +10205,14 @@ } }, "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", "dev": true, "peer": true, "dependencies": { - "flatted": "^3.1.0", + "flatted": "^3.2.9", + "keyv": "^4.5.3", "rimraf": "^3.0.2" }, "engines": { @@ -8601,16 +10220,36 @@ } }, "node_modules/flatted": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", "dev": true, "peer": true }, + "node_modules/floating-vue": { + "version": "1.0.0-beta.19", + "resolved": "https://registry.npmjs.org/floating-vue/-/floating-vue-1.0.0-beta.19.tgz", + "integrity": "sha512-OcM7z5Ua4XAykqolmvPj3l1s+KqUKj6Xz2t66eqjgaWfNBjtuifmxO5+4rRXakIch/Crt8IH+vKdKcR3jOUaoQ==", + "dependencies": { + "@floating-ui/dom": "^0.1.10", + "vue-resize": "^1.0.0" + }, + "peerDependencies": { + "vue": "^2.6.10" + } + }, + "node_modules/focus-trap": { + "version": "7.5.2", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.5.2.tgz", + "integrity": "sha512-p6vGNNWLDGwJCiEjkSK6oERj/hEyI9ITsSwIUICBoKLlWiTWXJRfQibCwcoi50rTZdbi87qDtUlMCmQwsGSgPw==", + "dependencies": { + "tabbable": "^6.2.0" + } + }, "node_modules/follow-redirects": { - "version": "1.14.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", - "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==", + "version": "1.15.6", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", + "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "funding": [ { "type": "individual", @@ -8626,32 +10265,49 @@ } } }, - "node_modules/fonteditor-core": { - "version": "0.0.37", - "resolved": "https://registry.npmjs.org/fonteditor-core/-/fonteditor-core-0.0.37.tgz", - "integrity": "sha1-INXODJcaJXrwBt5EjBaUTrkuIDQ=", - "dev": true, - "dependencies": { - "esprima": "^2.7.3", - "estraverse": "^4.2.0", - "xmldom": "~0.1.19" - } - }, "node_modules/for-each": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "is-callable": "^1.1.3" } }, - "node_modules/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", @@ -8661,11 +10317,23 @@ "node": ">= 6" } }, + "node_modules/formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", + "dependencies": { + "fetch-blob": "^3.1.2" + }, + "engines": { + "node": ">=12.20.0" + } + }, "node_modules/forwarded": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.6" @@ -8674,30 +10342,24 @@ "node_modules/fresh": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.6" } }, - "node_modules/fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", - "dev": true, - "peer": true - }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true }, "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "hasInstallScript": true, "optional": true, "os": [ @@ -8708,16 +10370,20 @@ } }, "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/function.prototype.name": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", "dev": true, + "peer": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -8731,34 +10397,16 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true, - "peer": true - }, "node_modules/functions-have-names": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, + "peer": true, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/gaze": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", - "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", - "dev": true, - "dependencies": { - "globule": "^1.0.0" - }, - "engines": { - "node": ">= 4.0.0" - } - }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -8768,12 +10416,6 @@ "node": ">=6.9.0" } }, - "node_modules/geometry-interfaces": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/geometry-interfaces/-/geometry-interfaces-1.1.4.tgz", - "integrity": "sha512-qD6OdkT6NcES9l4Xx3auTpwraQruU7dARbQPVO71MKvkGYw5/z/oIiGymuFXrRaEQa5Y67EIojUpaLeGEa5hGA==", - "dev": true - }, "node_modules/get-caller-file": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", @@ -8784,14 +10426,21 @@ } }, "node_modules/get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -8806,19 +10455,6 @@ "node": ">=8.0.0" } }, - "node_modules/get-stdin": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", - "dev": true, - "peer": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/get-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", @@ -8836,6 +10472,7 @@ "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", "dev": true, + "peer": true, "dependencies": { "call-bind": "^1.0.2", "get-intrinsic": "^1.1.1" @@ -8847,16 +10484,29 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/get-tsconfig": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.2.tgz", + "integrity": "sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==", + "dev": true, + "peer": true, + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" + } + }, "node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.0.4", + "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" }, @@ -8868,22 +10518,24 @@ } }, "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, "peer": true, "dependencies": { - "is-glob": "^4.0.1" + "is-glob": "^4.0.3" }, "engines": { - "node": ">= 6" + "node": ">=10.13.0" } }, "node_modules/glob-to-regexp": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true, + "license": "BSD-2-Clause", "peer": true }, "node_modules/global-modules": { @@ -8947,17 +10599,17 @@ } }, "node_modules/globby": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", - "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dev": true, "peer": true, "dependencies": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", "slash": "^3.0.0" }, "engines": { @@ -8967,63 +10619,47 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/globby/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "peer": true, - "engines": { - "node": ">=8" - } - }, "node_modules/globjoin": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", - "integrity": "sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM=", + "integrity": "sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==", "dev": true, "peer": true }, - "node_modules/globule": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz", - "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==", + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", "dev": true, + "peer": true, "dependencies": { - "glob": "~7.1.1", - "lodash": "~4.17.10", - "minimatch": "~3.0.2" + "get-intrinsic": "^1.1.3" }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/good-listener": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", - "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=", - "dependencies": { - "delegate": "^3.1.2" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" }, - "node_modules/hammerjs": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/hammerjs/-/hammerjs-2.0.8.tgz", - "integrity": "sha1-BO93hiz/K7edMPdpIJWTAiK/YPE=", - "engines": { - "node": ">=0.8.0" - } + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true, + "license": "MIT", + "peer": true }, "node_modules/handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/hard-rejection": { @@ -9041,6 +10677,7 @@ "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, + "peer": true, "dependencies": { "function-bind": "^1.1.1" }, @@ -9048,30 +10685,12 @@ "node": ">= 0.4.0" } }, - "node_modules/has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-ansi/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/has-bigints": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", "dev": true, + "peer": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -9079,19 +10698,34 @@ "node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, "engines": { "node": ">=4" } }, "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "get-intrinsic": "^1.1.1" + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -9102,6 +10736,7 @@ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", "dev": true, + "peer": true, "engines": { "node": ">= 0.4" }, @@ -9110,12 +10745,13 @@ } }, "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dev": true, + "peer": true, "dependencies": { - "has-symbols": "^1.0.2" + "has-symbols": "^1.0.3" }, "engines": { "node": ">= 0.4" @@ -9125,85 +10761,203 @@ } }, "node_modules/hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" }, "engines": { "node": ">=4" } }, - "node_modules/hash-base/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peer": true - }, "node_modules/hash-sum": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz", - "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=", - "dev": true, - "peer": true + "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==", + "dev": true }, "node_modules/hash.js": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "inherits": "^2.0.3", "minimalistic-assert": "^1.0.1" } }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true, - "bin": { - "he": "bin/he" - } - }, - "node_modules/hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", "dev": true, - "peer": true, "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" } }, + "node_modules/hast-to-hyperscript": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-10.0.3.tgz", + "integrity": "sha512-NuBoUStp4fRwmvlfbidlEiRSTk0gSHm+97q4Xn9CJ10HO+Py7nlTuDi6RhM1qLOureukGrCXLG7AAxaGqqyslQ==", + "dependencies": { + "@types/unist": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "style-to-object": "^0.4.1", + "web-namespaces": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-is-element": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz", + "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-is-element/node_modules/@types/hast": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.1.tgz", + "integrity": "sha512-hs/iBJx2aydugBQx5ETV3ZgeSS0oIreQrFJ4bjBl0XvM4wAmDjFEALY7p0rTSLt2eL+ibjRAAs9dTPiCLtmbqQ==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/hast-util-to-text": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/hast-util-to-text/-/hast-util-to-text-4.0.2.tgz", + "integrity": "sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "hast-util-is-element": "^3.0.0", + "unist-util-find-after": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-text/node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/hast-util-to-text/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" + }, + "node_modules/hast-util-whitespace": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz", + "integrity": "sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/highlight.js": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-11.11.0.tgz", + "integrity": "sha512-6ErL7JlGu2CNFHyRQEuDogOyGPNiqcuWdt4iSSFUPyferNTGlNTPFqeV36Y/XwA4V/TJ8l0sxp6FTnxud/mf8g==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "peer": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/hosted-git-info/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "peer": true + }, + "node_modules/hot-patcher": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hot-patcher/-/hot-patcher-2.0.1.tgz", + "integrity": "sha512-ECg1JFG0YzehicQaogenlcs2qg6WsXQsxtnbr1i696u5tLUjtJdQAh0u2g0Q5YV45f263Ta1GnUJsc8WIfJf4Q==", + "license": "MIT" + }, "node_modules/hpack.js": { "version": "2.1.6", "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "inherits": "^2.0.1", @@ -9213,10 +10967,11 @@ } }, "node_modules/hpack.js/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "core-util-is": "~1.0.0", @@ -9228,35 +10983,37 @@ "util-deprecate": "~1.0.1" } }, + "node_modules/hpack.js/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "license": "MIT", + "peer": true + }, "node_modules/hpack.js/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "safe-buffer": "~5.1.0" } }, "node_modules/html-encoding-sniffer": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", - "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz", + "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==", "dev": true, "dependencies": { - "whatwg-encoding": "^1.0.5" + "whatwg-encoding": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=12" } }, - "node_modules/html-entities": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.2.tgz", - "integrity": "sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ==", - "dev": true, - "peer": true - }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", @@ -9264,19 +11021,22 @@ "dev": true }, "node_modules/html-tags": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.1.0.tgz", - "integrity": "sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", + "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", "dev": true, "peer": true, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/htmlparser2": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-7.2.0.tgz", - "integrity": "sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", + "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", "dev": true, "funding": [ "https://github.com/fb55/htmlparser2?sponsor=1", @@ -9287,41 +11047,44 @@ ], "peer": true, "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.2", - "domutils": "^2.8.0", - "entities": "^3.0.1" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "entities": "^4.4.0" } }, "node_modules/http-deceiver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "depd": "~1.1.2", + "depd": "2.0.0", "inherits": "2.0.4", "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", + "statuses": "2.0.1", "toidentifier": "1.0.1" }, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, "node_modules/http-parser-js": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.5.tgz", - "integrity": "sha512-x+JVEkO2PoM8qqpbPbOL3cqHPwerep7OwzK7Ay+sMQjKzaKCqWvjoXm5tqMP9tXWWTnTzAjIhXg+J99XYuPhPA==", + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/http-proxy": { @@ -9329,6 +11092,7 @@ "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "eventemitter3": "^4.0.0", @@ -9340,12 +11104,12 @@ } }, "node_modules/http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", "dev": true, "dependencies": { - "@tootallnate/once": "1", + "@tootallnate/once": "2", "agent-base": "6", "debug": "4" }, @@ -9354,13 +11118,14 @@ } }, "node_modules/http-proxy-middleware": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.1.tgz", - "integrity": "sha512-cfaXRVoZxSed/BmkA7SwBVNI9Kj7HFltaE5rqYOub5kWzWZ+gofV2koVN1j2rMW7pEfSSlCHGJ31xmuyFyfLOg==", + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.9.tgz", + "integrity": "sha512-c1IyJYLYppU574+YI7R4QyX2ystMtVXZwIdzazUIPIJsHuWNd+mho2j+bKoHftndicGj9yh+xjd+l0yj7VeT1Q==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "@types/http-proxy": "^1.17.5", + "@types/http-proxy": "^1.17.8", "http-proxy": "^1.18.1", "is-glob": "^4.0.1", "is-plain-obj": "^3.0.0", @@ -9368,42 +11133,14 @@ }, "engines": { "node": ">=12.0.0" - } - }, - "node_modules/http-proxy-middleware/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "peer": true, - "dependencies": { - "fill-range": "^7.0.1" }, - "engines": { - "node": ">=8" - } - }, - "node_modules/http-proxy-middleware/node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "peer": true, - "dependencies": { - "to-regex-range": "^5.0.1" + "peerDependencies": { + "@types/express": "^4.17.13" }, - "engines": { - "node": ">=8" - } - }, - "node_modules/http-proxy-middleware/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.12.0" + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } } }, "node_modules/http-proxy-middleware/node_modules/is-plain-obj": { @@ -9411,6 +11148,7 @@ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">=10" @@ -9419,44 +11157,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/http-proxy-middleware/node_modules/micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "peer": true, - "dependencies": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/http-proxy-middleware/node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "peer": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, "node_modules/https-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/https-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", - "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "dev": true, "dependencies": { "agent-base": "6", @@ -9475,33 +11187,35 @@ "node": ">=10.17.0" } }, + "node_modules/hyperdyperid": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/hyperdyperid/-/hyperdyperid-1.2.0.tgz", + "integrity": "sha512-Y93lCzHYgGWdrJ66yIktxiaGULYc6oGiABxhcO5AufBeOyoIdZF7bIfLaOrbM0iGIOXQQgxxRrFEnb+Y6w1n4A==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10.18" + } + }, "node_modules/ical.js": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/ical.js/-/ical.js-1.5.0.tgz", - "integrity": "sha512-7ZxMkogUkkaCx810yp0ZGKvq1ZpRgJeornPttpoxe6nYZ3NLesZe1wWMXDdwTkj/b5NtXT+Y16Aakph/ao98ZQ==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ical.js/-/ical.js-2.1.0.tgz", + "integrity": "sha512-BOVfrH55xQ6kpS3muGvIXIg2l7p+eoe12/oS7R5yrO3TL/j/bLsR0PR+tYQESFbyTbvGgPHn9zQ6tI4FWyuSaQ==", + "license": "MPL-2.0" }, "node_modules/icalzone": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/icalzone/-/icalzone-0.0.1.tgz", "integrity": "sha512-ln0AM3fMSLLuJijuWuRzwrN0Tg+BG8ADi7ha6slmC7ZqOijagif5I6b4Nl4/vPSXWexnxyrHiEof8VxDOllXVQ==" }, - "node_modules/iconfont-plugin-webpack": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/iconfont-plugin-webpack/-/iconfont-plugin-webpack-1.1.4.tgz", - "integrity": "sha512-kpvbzssf7WdxaMZHYAvlQWp61Ln301oE/VCJpnvVFLr3Bib7HWleg7+vrdFgqkuI8XwlMFAZ2fSPGuf144oaqw==", - "dev": true, - "dependencies": { - "fonteditor-core": "0.0.37", - "run-plugin-webpack": "^1.0.0", - "svg2ttf": "^4.0.2", - "svgicons2svgfont": "^9.0.2" - } - }, "node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, + "license": "MIT", + "peer": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3" }, @@ -9509,6 +11223,19 @@ "node": ">=0.10.0" } }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "dev": true, + "peer": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, "node_modules/ieee754": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", @@ -9528,12 +11255,13 @@ "url": "https://feross.org/support" } ], + "license": "BSD-3-Clause", "peer": true }, "node_modules/ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, "peer": true, "engines": { @@ -9541,10 +11269,11 @@ } }, "node_modules/immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", + "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/import-fresh": { @@ -9585,9 +11314,9 @@ } }, "node_modules/import-local": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", - "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", "dev": true, "dependencies": { "pkg-dir": "^4.2.0", @@ -9598,43 +11327,37 @@ }, "engines": { "node": ">=8" - } - }, - "node_modules/import-local/node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, "engines": { "node": ">=0.8.19" } }, "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", "dev": true, "peer": true, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dev": true, "dependencies": { "once": "^1.3.0", @@ -9653,11 +11376,17 @@ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", "dev": true }, + "node_modules/inline-style-parser": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + }, "node_modules/internal-slot": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, + "peer": true, "dependencies": { "get-intrinsic": "^1.1.0", "has": "^1.0.3", @@ -9668,45 +11397,43 @@ } }, "node_modules/interpret": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", - "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz", + "integrity": "sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==", "dev": true, "peer": true, "engines": { - "node": ">= 0.10" - } - }, - "node_modules/invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dependencies": { - "loose-envify": "^1.0.0" + "node": ">=10.13.0" } }, - "node_modules/ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", - "dev": true, - "peer": true - }, "node_modules/ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", + "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 10" } }, + "node_modules/is-absolute-url": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-4.0.1.tgz", + "integrity": "sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-arguments": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "call-bind": "^1.0.2", @@ -9722,7 +11449,7 @@ "node_modules/is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "dev": true }, "node_modules/is-bigint": { @@ -9730,6 +11457,7 @@ "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dev": true, + "peer": true, "dependencies": { "has-bigints": "^1.0.1" }, @@ -9737,13 +11465,28 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "call-bind": "^1.0.2", + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" }, "engines": { @@ -9758,11 +11501,28 @@ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, + "node_modules/is-builtin-module": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", + "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", + "dev": true, + "peer": true, + "dependencies": { + "builtin-modules": "^3.3.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-callable": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", - "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, + "peer": true, "engines": { "node": ">= 0.4" }, @@ -9771,22 +11531,26 @@ } }, "node_modules/is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dev": true, "dependencies": { - "has": "^1.0.3" + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-date-object": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz", - "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, + "peer": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -9795,16 +11559,17 @@ } }, "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", + "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", "dev": true, + "license": "MIT", "peer": true, "bin": { "is-docker": "cli.js" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -9813,7 +11578,7 @@ "node_modules/is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", "dev": true, "engines": { "node": ">=0.10.0" @@ -9822,7 +11587,7 @@ "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, "peer": true, "engines": { @@ -9852,6 +11617,7 @@ "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "has-tostringtag": "^1.0.0" @@ -9876,11 +11642,32 @@ "node": ">=0.10.0" } }, + "node_modules/is-inside-container": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", + "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "is-docker": "^3.0.0" + }, + "bin": { + "is-inside-container": "cli.js" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-nan": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "call-bind": "^1.0.0", @@ -9898,6 +11685,7 @@ "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", "dev": true, + "peer": true, "engines": { "node": ">= 0.4" }, @@ -9905,11 +11693,35 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-network-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-network-error/-/is-network-error-1.1.0.tgz", + "integrity": "sha512-tUdRRAnhT+OtCZR/LxZelH/C7QtjtFrTu5tXCA8pl55eTUElUHT+GPYV8MBMBvea/j+NxQqVt3LbWMRir7Gx9g==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, "node_modules/is-number-object": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dev": true, + "peer": true, "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -9920,16 +11732,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-path-cwd": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", - "dev": true, - "peer": true, - "engines": { - "node": ">=6" - } - }, "node_modules/is-path-inside": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", @@ -9943,7 +11745,7 @@ "node_modules/is-plain-obj": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", "dev": true, "peer": true, "engines": { @@ -9951,14 +11753,11 @@ } }, "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", "dev": true, "peer": true, - "dependencies": { - "isobject": "^3.0.1" - }, "engines": { "node": ">=0.10.0" } @@ -9974,6 +11773,7 @@ "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, + "peer": true, "dependencies": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" @@ -9985,21 +11785,12 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-regexp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-2.1.0.tgz", - "integrity": "sha512-OZ4IlER3zmRIoB9AqNhEggVxqIH4ofDns5nRrPS6yQxXE1TPCUpFznBfRQmQa8uC+pXqjMnukiJBxCisIxiLGA==", - "dev": true, - "peer": true, - "engines": { - "node": ">=6" - } - }, "node_modules/is-shared-array-buffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", "dev": true, + "peer": true, "dependencies": { "call-bind": "^1.0.2" }, @@ -10008,12 +11799,15 @@ } }, "node_modules/is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "dev": true, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-string": { @@ -10021,6 +11815,7 @@ "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, + "peer": true, "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -10031,11 +11826,27 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-svg": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-5.1.0.tgz", + "integrity": "sha512-uVg5yifaTxHoefNf5Jcx+i9RZe2OBYd/UStp1umx+EERa4xGRa3LLGXjoEph43qUORC0qkafUgrXZ6zzK89yGA==", + "license": "MIT", + "dependencies": { + "fast-xml-parser": "^4.4.1" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-symbol": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, + "peer": true, "dependencies": { "has-symbols": "^1.0.2" }, @@ -10047,17 +11858,14 @@ } }, "node_modules/is-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.9.tgz", - "integrity": "sha512-kfrlnTTn8pZkfpJMUgYD7YZ3qzeJgWUn8XfVYBARc4wnmNOmLbmuuaAs3q5fvB0UJOn6yHAKaGTPM7d6ezoD/A==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-abstract": "^1.20.0", - "for-each": "^0.3.3", - "has-tostringtag": "^1.0.0" + "which-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" @@ -10066,17 +11874,12 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, "node_modules/is-weakref": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", "dev": true, + "peer": true, "dependencies": { "call-bind": "^1.0.2" }, @@ -10087,42 +11890,47 @@ "node_modules/is-whitespace": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/is-whitespace/-/is-whitespace-0.3.0.tgz", - "integrity": "sha1-Fjnssb4DauxppUy7QBz77XEUq38=", + "integrity": "sha512-RydPhl4S6JwAyj0JJjshWJEFG6hNye3pZFBRZaTUfZFwGHxzppNaNOVgQuS/E/SlhrApuMXrpnK1EEIXfdo3Dg==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.0.tgz", + "integrity": "sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "is-docker": "^2.0.0" + "is-inside-container": "^1.0.0" }, "engines": { - "node": ">=8" + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, "node_modules/isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "dev": true, "peer": true, "engines": { @@ -10139,9 +11947,9 @@ } }, "node_modules/istanbul-lib-instrument": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz", - "integrity": "sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dev": true, "dependencies": { "@babel/core": "^7.12.3", @@ -10155,17 +11963,17 @@ } }, "node_modules/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, "dependencies": { "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", + "make-dir": "^4.0.0", "supports-color": "^7.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" } }, "node_modules/istanbul-lib-report/node_modules/has-flag": { @@ -10177,21 +11985,48 @@ "node": ">=8" } }, + "node_modules/istanbul-lib-report/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/istanbul-lib-report/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, "dependencies": { - "semver": "^6.0.0" + "semver": "^7.5.3" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/istanbul-lib-report/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/istanbul-lib-report/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -10204,6 +12039,12 @@ "node": ">=8" } }, + "node_modules/istanbul-lib-report/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, "node_modules/istanbul-lib-source-maps": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", @@ -10218,19 +12059,10 @@ "node": ">=10" } }, - "node_modules/istanbul-lib-source-maps/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/istanbul-reports": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", - "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", "dev": true, "dependencies": { "html-escaper": "^2.0.0", @@ -10240,26 +12072,40 @@ "node": ">=8" } }, - "node_modules/jed": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/jed/-/jed-1.1.1.tgz", - "integrity": "sha1-elSbvZ/+FYWwzQoZHiAwVb7ldLQ=" + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } }, "node_modules/jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", - "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", "dev": true, "dependencies": { - "@jest/core": "^27.5.1", + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", "import-local": "^3.0.2", - "jest-cli": "^27.5.1" + "jest-cli": "^29.7.0" }, "bin": { "jest": "bin/jest.js" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" @@ -10271,47 +12117,75 @@ } }, "node_modules/jest-changed-files": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", - "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", "execa": "^5.0.0", - "throat": "^6.0.1" + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-changed-files/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-changed-files/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/jest-circus": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", - "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.5.1", + "dedent": "^1.0.0", "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", "slash": "^3.0.0", - "stack-utils": "^2.0.3", - "throat": "^6.0.1" + "stack-utils": "^2.0.3" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-circus/node_modules/ansi-styles": { @@ -10345,6 +12219,26 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/jest-circus/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-circus/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-circus/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -10354,13 +12248,19 @@ "node": ">=8" } }, - "node_modules/jest-circus/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/jest-circus/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/jest-circus/node_modules/supports-color": { @@ -10375,30 +12275,41 @@ "node": ">=8" } }, - "node_modules/jest-cli": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", - "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", + "node_modules/jest-circus/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, - "dependencies": { - "@jest/core": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "import-local": "^3.0.2", - "jest-config": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "prompts": "^2.0.1", - "yargs": "^16.2.0" - }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", + "dev": true, + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, "bin": { "jest": "bin/jest.js" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" @@ -10440,6 +12351,26 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/jest-cli/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-cli/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-cli/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -10462,43 +12393,45 @@ } }, "node_modules/jest-config": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", - "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", "dev": true, "dependencies": { - "@babel/core": "^7.8.0", - "@jest/test-sequencer": "^27.5.1", - "@jest/types": "^27.5.1", - "babel-jest": "^27.5.1", + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", "chalk": "^4.0.0", "ci-info": "^3.2.0", "deepmerge": "^4.2.2", - "glob": "^7.1.1", + "glob": "^7.1.3", "graceful-fs": "^4.2.9", - "jest-circus": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-jasmine2": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", "micromatch": "^4.0.4", "parse-json": "^5.2.0", - "pretty-format": "^27.5.1", + "pretty-format": "^29.7.0", "slash": "^3.0.0", "strip-json-comments": "^3.1.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "peerDependencies": { + "@types/node": "*", "ts-node": ">=9.0.0" }, "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, "ts-node": { "optional": true } @@ -10519,18 +12452,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/jest-config/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-config/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -10547,18 +12468,26 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/jest-config/node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "node_modules/jest-config/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", "dependencies": { - "to-regex-range": "^5.0.1" + "color-name": "~1.1.4" }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, + "node_modules/jest-config/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-config/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -10568,55 +12497,6 @@ "node": ">=8" } }, - "node_modules/jest-config/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/jest-config/node_modules/micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "dependencies": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/jest-config/node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/jest-config/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-config/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -10629,31 +12509,19 @@ "node": ">=8" } }, - "node_modules/jest-config/node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, "node_modules/jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", "dev": true, "dependencies": { "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-diff/node_modules/ansi-styles": { @@ -10687,6 +12555,26 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/jest-diff/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-diff/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-diff/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -10709,31 +12597,31 @@ } }, "node_modules/jest-docblock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", - "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", "dev": true, "dependencies": { "detect-newline": "^3.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-each": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", - "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", + "@jest/types": "^29.6.3", "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1" + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-each/node_modules/ansi-styles": { @@ -10767,6 +12655,26 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/jest-each/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-each/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-each/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -10789,175 +12697,112 @@ } }, "node_modules/jest-environment-jsdom": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", - "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-29.7.0.tgz", + "integrity": "sha512-k9iQbsf9OyOfdzWH8HDmrRT0gSIcX+FLNW7IQq94tFX0gynPwqDTW0Ho6iMVNjGz/nb+l/vW3dWM2bbLLpkbXA==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/jsdom": "^20.0.0", "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1", - "jsdom": "^16.6.0" + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0", + "jsdom": "^20.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } } }, "node_modules/jest-environment-node": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", - "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", "@types/node": "*", "anymatch": "^3.0.3", "fb-watchman": "^2.0.0", "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", "micromatch": "^4.0.4", - "walker": "^1.0.7" + "walker": "^1.0.8" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, "optionalDependencies": { "fsevents": "^2.3.2" } }, - "node_modules/jest-haste-map/node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/jest-haste-map/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-haste-map/node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-haste-map/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/jest-haste-map/node_modules/micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "dependencies": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/jest-haste-map/node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", "dev": true, "dependencies": { - "is-number": "^7.0.0" + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" }, "engines": { - "node": ">=8.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-jasmine2": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", - "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", "dev": true, "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "throat": "^6.0.1" + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-jasmine2/node_modules/ansi-styles": { + "node_modules/jest-matcher-utils/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", @@ -10972,7 +12817,7 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/jest-jasmine2/node_modules/chalk": { + "node_modules/jest-matcher-utils/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", @@ -10988,7 +12833,27 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/jest-jasmine2/node_modules/has-flag": { + "node_modules/jest-matcher-utils/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-matcher-utils/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", @@ -10997,7 +12862,7 @@ "node": ">=8" } }, - "node_modules/jest-jasmine2/node_modules/supports-color": { + "node_modules/jest-matcher-utils/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", @@ -11009,35 +12874,27 @@ "node": ">=8" } }, - "node_modules/jest-leak-detector": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", - "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", - "dev": true, - "dependencies": { - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", "dev": true, "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-matcher-utils/node_modules/ansi-styles": { + "node_modules/jest-message-util/node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", @@ -11052,7 +12909,7 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/jest-matcher-utils/node_modules/chalk": { + "node_modules/jest-message-util/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", @@ -11068,101 +12925,25 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/jest-matcher-utils/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-matcher-utils/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, - "node_modules/jest-message-util/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/jest-message-util/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "node_modules/jest-message-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-message-util/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=7.0.0" } }, - "node_modules/jest-message-util/node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "node_modules/jest-message-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } + "license": "MIT" }, "node_modules/jest-message-util/node_modules/has-flag": { "version": "4.0.0", @@ -11173,37 +12954,6 @@ "node": ">=8" } }, - "node_modules/jest-message-util/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/jest-message-util/node_modules/micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "dependencies": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/jest-message-util/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-message-util/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -11216,35 +12966,24 @@ "node": ">=8" } }, - "node_modules/jest-message-util/node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, "node_modules/jest-mock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", - "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "@types/node": "*" + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-pnp-resolver": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", - "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", "dev": true, "engines": { "node": ">=6" @@ -11259,47 +12998,45 @@ } }, "node_modules/jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", "dev": true, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-resolve": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", - "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", "chalk": "^4.0.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", + "jest-haste-map": "^29.7.0", "jest-pnp-resolver": "^1.2.2", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", "resolve": "^1.20.0", - "resolve.exports": "^1.1.0", + "resolve.exports": "^2.0.0", "slash": "^3.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-resolve-dependencies": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", - "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-snapshot": "^27.5.1" + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-resolve/node_modules/ansi-styles": { @@ -11333,19 +13070,30 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/jest-resolve/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/jest-resolve/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, - "node_modules/jest-resolve/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/jest-resolve/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-resolve/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { "node": ">=8" @@ -11364,35 +13112,35 @@ } }, "node_modules/jest-runner": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", - "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", "dev": true, "dependencies": { - "@jest/console": "^27.5.1", - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", - "emittery": "^0.8.1", + "emittery": "^0.13.1", "graceful-fs": "^4.2.9", - "jest-docblock": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-leak-detector": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runner/node_modules/ansi-styles": { @@ -11426,6 +13174,26 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/jest-runner/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-runner/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-runner/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -11435,6 +13203,21 @@ "node": ">=8" } }, + "node_modules/jest-runner/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/jest-runner/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -11447,37 +13230,49 @@ "node": ">=8" } }, - "node_modules/jest-runtime": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", - "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", + "node_modules/jest-runner/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, - "dependencies": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/globals": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", "chalk": "^4.0.0", "cjs-module-lexer": "^1.0.0", "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", "glob": "^7.1.3", "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", "slash": "^3.0.0", "strip-bom": "^4.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runtime/node_modules/ansi-styles": { @@ -11511,19 +13306,30 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/jest-runtime/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/jest-runtime/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, - "node_modules/jest-runtime/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/jest-runtime/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-runtime/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "engines": { "node": ">=8" @@ -11541,59 +13347,44 @@ "node": ">=8" } }, - "node_modules/jest-serializer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", - "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", - "dev": true, - "dependencies": { - "@types/node": "*", - "graceful-fs": "^4.2.9" - }, - "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" - } - }, "node_modules/jest-serializer-vue": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/jest-serializer-vue/-/jest-serializer-vue-2.0.2.tgz", - "integrity": "sha1-sjjvKGNX7GtIBCG9RxRQUJh9WbM=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jest-serializer-vue/-/jest-serializer-vue-3.1.0.tgz", + "integrity": "sha512-vXz9/3IgBbLhsaVANYLG4ROCQd+Wg3qbB6ICofzFL+fbhSFPlqb0/MMGXcueVsjaovdWlYiRaLQLpdi1PTcoRQ==", "dev": true, "dependencies": { "pretty": "2.0.0" } }, "node_modules/jest-snapshot": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", - "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", "dev": true, "dependencies": { - "@babel/core": "^7.7.2", + "@babel/core": "^7.11.6", "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", "babel-preset-current-node-syntax": "^1.0.0", "chalk": "^4.0.0", - "expect": "^27.5.1", + "expect": "^29.7.0", "graceful-fs": "^4.2.9", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", "natural-compare": "^1.4.0", - "pretty-format": "^27.5.1", - "semver": "^7.3.2" + "pretty-format": "^29.7.0", + "semver": "^7.5.3" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-snapshot/node_modules/ansi-styles": { @@ -11627,6 +13418,26 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/jest-snapshot/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-snapshot/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -11649,9 +13460,9 @@ } }, "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -11682,12 +13493,12 @@ "dev": true }, "node_modules/jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", + "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", "ci-info": "^3.2.0", @@ -11695,7 +13506,7 @@ "picomatch": "^2.2.3" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-util/node_modules/ansi-styles": { @@ -11729,17 +13540,37 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/jest-util/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/jest-util/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, - "node_modules/jest-util/node_modules/supports-color": { - "version": "7.2.0", + "node_modules/jest-util/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-util/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/node_modules/supports-color": { + "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, @@ -11751,20 +13582,20 @@ } }, "node_modules/jest-validate": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", - "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", "dev": true, "dependencies": { - "@jest/types": "^27.5.1", + "@jest/types": "^29.6.3", "camelcase": "^6.2.0", "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", + "jest-get-type": "^29.6.3", "leven": "^3.1.0", - "pretty-format": "^27.5.1" + "pretty-format": "^29.7.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-validate/node_modules/ansi-styles": { @@ -11810,6 +13641,26 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/jest-validate/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-validate/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-validate/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -11832,21 +13683,22 @@ } }, "node_modules/jest-watcher": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", - "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", "dev": true, "dependencies": { - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", "@types/node": "*", "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", - "jest-util": "^27.5.1", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", "string-length": "^4.0.1" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-watcher/node_modules/ansi-styles": { @@ -11880,6 +13732,35 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/jest-watcher/node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-watcher/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-watcher/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, "node_modules/jest-watcher/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -11889,6 +13770,19 @@ "node": ">=8" } }, + "node_modules/jest-watcher/node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/jest-watcher/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -11902,22 +13796,25 @@ } }, "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", + "dev": true, "dependencies": { "@types/node": "*", + "jest-util": "^29.7.0", "merge-stream": "^2.0.0", "supports-color": "^8.0.0" }, "engines": { - "node": ">= 10.13.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-worker/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, "engines": { "node": ">=8" } @@ -11926,6 +13823,7 @@ "version": "8.1.1", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -11936,22 +13834,17 @@ "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/jquery": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.0.tgz", - "integrity": "sha512-JVzAR/AjBvVt2BmYhxRCSYysDsPcssdmTFnzyLEts9qNwmjmu4JTAMYubEfwVOSwpQ1I1sKKFcxhZCI2buerfw==", - "peer": true - }, "node_modules/js-beautify": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.0.tgz", - "integrity": "sha512-yuck9KirNSCAwyNJbqW+BxJqJ0NLJ4PwBUzQQACl5O3qHMBXVkXb/rD0ilh/Lat/tn88zSZ+CAHOlk0DsY7GuQ==", + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.15.1.tgz", + "integrity": "sha512-ESjNzSlt/sWE8sciZH8kBF8BPlwXPwhR6pWKAw8bw4Bwj+iZcnKW6ONWUutJ7eObuBZQpiIb8S7OYspWrKt7rA==", "dev": true, "dependencies": { - "config-chain": "^1.1.12", - "editorconfig": "^0.15.3", - "glob": "^7.1.3", - "nopt": "^5.0.0" + "config-chain": "^1.1.13", + "editorconfig": "^1.0.4", + "glob": "^10.3.3", + "js-cookie": "^3.0.5", + "nopt": "^7.2.0" }, "bin": { "css-beautify": "js/bin/css-beautify.js", @@ -11959,13 +13852,71 @@ "js-beautify": "js/bin/js-beautify.js" }, "engines": { - "node": ">=10" + "node": ">=14" + } + }, + "node_modules/js-beautify/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/js-beautify/node_modules/glob": { + "version": "10.3.12", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", + "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.6", + "minimatch": "^9.0.1", + "minipass": "^7.0.4", + "path-scurry": "^1.10.2" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/js-beautify/node_modules/minimatch": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/js-cookie": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.5.tgz", + "integrity": "sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==", + "dev": true, + "engines": { + "node": ">=14" } }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT" }, "node_modules/js-yaml": { "version": "3.14.1", @@ -11980,23 +13931,10 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/js-yaml/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/jsdoc-type-pratt-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-3.1.0.tgz", - "integrity": "sha512-MgtD0ZiCDk9B+eI73BextfRrVQl0oyzRG8B2BjORts6jbunj4ScKPcyXGTbB6eXL4y9TzxCm6hyeLq/2ASzNdw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz", + "integrity": "sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==", "dev": true, "peer": true, "engines": { @@ -12004,41 +13942,40 @@ } }, "node_modules/jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "version": "20.0.1", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.1.tgz", + "integrity": "sha512-pksjj7Rqoa+wdpkKcLzQRHhJCEE42qQhl/xLMUKHgoSejaKOdaXEAnqs6uDNwMl/fciHTzKeR8Wm8cw7N+g98A==", "dev": true, "dependencies": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", + "abab": "^2.0.6", + "acorn": "^8.8.0", + "acorn-globals": "^7.0.0", + "cssom": "^0.5.0", "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", + "data-urls": "^3.0.2", + "decimal.js": "^10.4.1", + "domexception": "^4.0.0", "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^3.0.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.1", "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", + "nwsapi": "^2.2.2", + "parse5": "^7.1.1", + "saxes": "^6.0.0", "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" + "tough-cookie": "^4.1.2", + "w3c-xmlserializer": "^3.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^2.0.0", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0", + "ws": "^8.9.0", + "xml-name-validator": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">=14" }, "peerDependencies": { "canvas": "^2.5.0" @@ -12049,34 +13986,24 @@ } } }, - "node_modules/jsdom/node_modules/acorn": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", - "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", "dev": true, + "license": "MIT", "bin": { "jsesc": "bin/jsesc" }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, "peer": true }, "node_modules/json-parse-even-better-errors": { @@ -12088,22 +14015,22 @@ "node_modules/json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "peer": true }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true, "peer": true }, "node_modules/json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", - "dependencies": { - "minimist": "^1.2.5" - }, + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, "bin": { "json5": "lib/cli.js" }, @@ -12119,10 +14046,20 @@ "node": ">=0.10" } }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "peer": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, "node_modules/kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "dependencies": { "is-buffer": "^1.1.5" @@ -12140,22 +14077,30 @@ "node": ">=6" } }, - "node_modules/klona": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", - "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", + "node_modules/known-css-properties": { + "version": "0.29.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.29.0.tgz", + "integrity": "sha512-Ne7wqW7/9Cz54PDt4I3tcV+hAyat8ypyOGzYRJQfdxnnjeWsTxt1cy8pjvvKeI5kfXuyvULyeeAvwvvtAX3ayQ==", + "dev": true, + "peer": true + }, + "node_modules/launch-editor": { + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.9.1.tgz", + "integrity": "sha512-Gcnl4Bd+hRO9P9icCP/RVVT2o8SFlPXofuCxvA2SaZuH45whSvf5p8x5oih5ftLiVhEI4sp5xDY+R+b3zJBh5w==", "dev": true, + "license": "MIT", "peer": true, - "engines": { - "node": ">= 8" + "dependencies": { + "picocolors": "^1.0.0", + "shell-quote": "^1.8.1" } }, - "node_modules/known-css-properties": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.24.0.tgz", - "integrity": "sha512-RTSoaUAfLvpR357vWzAz/50Q/BmHfmE6ETSWfutT0AJiw10e6CmcdYRQJlLRd95B53D0Y2aD1jSxD3V3ySF+PA==", - "dev": true, - "peer": true + "node_modules/layerr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/layerr/-/layerr-3.0.0.tgz", + "integrity": "sha512-tv754Ki2dXpPVApOrjTyRo4/QegVb9eVFq4mjqp4+NM5NaX7syQvN5BBNfV/ZpAHCEHV24XdUVrBAoka4jt3pA==", + "license": "MIT" }, "node_modules/leven": { "version": "3.1.0", @@ -12171,6 +14116,7 @@ "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "prelude-ls": "^1.2.1", @@ -12181,60 +14127,47 @@ } }, "node_modules/lines-and-columns": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", - "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "dev": true }, "node_modules/linkify-string": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/linkify-string/-/linkify-string-3.0.2.tgz", - "integrity": "sha512-e6sa4WYslcwuNA0ciRo7KPAb4VpTIOxsGPAXeSR8XlORtKak8WMleuvrt5iRZwulHAd6dI+BO7b94lNW8lbMUQ==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/linkify-string/-/linkify-string-4.0.2.tgz", + "integrity": "sha512-+HoBme50rPaKxh5TrEJqRLq4gphks1zj3cz6gMBKIHwJCFYVwHig8ii9aCzqGUz8DxF2otbq+Z3AJmKUnfOtKg==", "peerDependencies": { - "linkifyjs": "^3.0.0" + "linkifyjs": "^4.0.0" } }, "node_modules/linkifyjs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-3.0.1.tgz", - "integrity": "sha512-HwXVwdNH1wESBfo2sH7Bkl+ywzbGA3+uJEfhquCyi/bMCa49bFUvd/re1NT1Lox/5jdnpQXzI9O/jykit71idg==", - "peer": true + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-4.2.0.tgz", + "integrity": "sha512-pCj3PrQyATaoTYKHrgWRF3SJwsm61udVh+vuls/Rl6SptiDhgE7ziUIudAedRY9QEfynmM7/RmLEfPUyw1HPCw==", + "license": "MIT" }, "node_modules/loader-runner": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz", - "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, "peer": true, "engines": { "node": ">=6.11.5" } }, "node_modules/loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", "dev": true, - "peer": true, "dependencies": { "big.js": "^5.2.2", "emojis-list": "^3.0.0", - "json5": "^1.0.1" + "json5": "^2.1.2" }, "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/loader-utils/node_modules/json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "peer": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" + "node": ">=8.9.0" } }, "node_modules/locate-path": { @@ -12257,14 +14190,9 @@ "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", "dev": true, - "peer": true - }, - "node_modules/lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=" + "license": "MIT" }, "node_modules/lodash.merge": { "version": "4.6.2", @@ -12276,24 +14204,37 @@ "node_modules/lodash.throttle": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", - "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=" + "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==" }, "node_modules/lodash.truncate": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", + "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", "dev": true, "peer": true }, - "node_modules/loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "node_modules/lowlight": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lowlight/-/lowlight-3.3.0.tgz", + "integrity": "sha512-0JNhgFoPvP6U6lE/UdVsSq99tn6DhjjpAj5MxG49ewd2mOBVtwWYIT8ClyABhq198aXXODMU6Ox8DrGy/CpTZQ==", + "license": "MIT", "dependencies": { - "js-tokens": "^3.0.0 || ^4.0.0" + "@types/hast": "^3.0.0", + "devlop": "^1.0.0", + "highlight.js": "~11.11.0" }, - "bin": { - "loose-envify": "cli.js" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/lowlight/node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", + "dependencies": { + "@types/unist": "*" } }, "node_modules/lru-cache": { @@ -12316,9 +14257,9 @@ } }, "node_modules/map-obj": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.2.1.tgz", - "integrity": "sha512-+WA2/1sPmDj1dlvvJmB5G6JKfY9dpn7EVBUL06+y6PoljPkh+6V1QihwxNkbcGxCRjt2b0F9K0taiCuo7MbdFQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", + "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", "dev": true, "peer": true, "engines": { @@ -12359,6 +14300,7 @@ "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "hash-base": "^3.0.0", @@ -12366,221 +14308,252 @@ "safe-buffer": "^5.1.2" } }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "dev": true, - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/memfs": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.1.tgz", - "integrity": "sha512-1c9VPVvW5P7I85c35zAdEr1TD5+F11IToIHIlrVIcflfnzPkJa0ZoYEoEdYDP8KgPFoSZ/opDrUsAoZWym3mtw==", - "dev": true, - "peer": true, + "node_modules/mdast-squeeze-paragraphs": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-6.0.0.tgz", + "integrity": "sha512-6NDbJPTg0M0Ye+TlYwX1KJ1LFbp515P2immRJyJQhc9Na9cetHzSoHNYIQcXpANEAP1sm9yd/CTZU2uHqR5A+w==", + "license": "MIT", "dependencies": { - "fs-monkey": "1.0.3" + "@types/mdast": "^4.0.0", + "unist-util-visit": "^5.0.0" }, - "engines": { - "node": ">= 4.0.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/meow": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", - "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", - "dev": true, - "peer": true, + "node_modules/mdast-util-find-and-replace": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.1.tgz", + "integrity": "sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==", "dependencies": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize": "^1.2.0", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.18.0", - "yargs-parser": "^20.2.3" + "@types/mdast": "^4.0.0", + "escape-string-regexp": "^5.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/meow/node_modules/hosted-git-info": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.0.2.tgz", - "integrity": "sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==", - "dev": true, - "peer": true, - "dependencies": { - "lru-cache": "^6.0.0" + "node_modules/mdast-util-from-markdown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.0.tgz", + "integrity": "sha512-n7MTOr/z+8NAX/wmhhDji8O3bRvPTV/U0oTCaZJkjhPSKTPhS3xufVhKGF8s1pJ7Ox4QgoIU7KHseh09S+9rTA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark": "^4.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-stringify-position": "^4.0.0" }, - "engines": { - "node": ">=10" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/meow/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "peer": true, + "node_modules/mdast-util-from-markdown/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/mdast-util-from-markdown/node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", "dependencies": { - "yallist": "^4.0.0" + "@types/unist": "^3.0.0" }, - "engines": { - "node": ">=10" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/meow/node_modules/normalize-package-data": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.2.tgz", - "integrity": "sha512-6CdZocmfGaKnIHPVFhJJZ3GuR8SsLKvDANFp47Jmy51aKIr8akjAWTSxtpI+MBgBFdSMRyo4hMpDlT6dTffgZg==", - "dev": true, - "peer": true, + "node_modules/mdast-util-newline-to-break": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-newline-to-break/-/mdast-util-newline-to-break-2.0.0.tgz", + "integrity": "sha512-MbgeFca0hLYIEx/2zGsszCSEJJ1JSCdiY5xQxRcLDDGa8EPvlLPupJ4DSajbMPAnC0je8jfb9TiUATnxxrHUog==", "dependencies": { - "hosted-git-info": "^4.0.1", - "resolve": "^1.20.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" + "@types/mdast": "^4.0.0", + "mdast-util-find-and-replace": "^3.0.0" }, - "engines": { - "node": ">=10" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/meow/node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "peer": true, + "node_modules/mdast-util-to-hast": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.1.0.tgz", + "integrity": "sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA==", "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@ungap/structured-clone": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "trim-lines": "^3.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/meow/node_modules/read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dev": true, - "peer": true, + "node_modules/mdast-util-to-hast/node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "engines": { - "node": ">=8" + "@types/unist": "*" } }, - "node_modules/meow/node_modules/read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "dev": true, - "peer": true, + "node_modules/mdast-util-to-hast/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/mdast-util-to-hast/node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "engines": { - "node": ">=8" + "@types/unist": "^3.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true, - "peer": true, - "engines": { - "node": ">=8" + "node_modules/mdast-util-to-hast/node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/meow/node_modules/read-pkg/node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true, - "peer": true + "node_modules/mdast-util-to-hast/node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "peer": true, + "node_modules/mdast-util-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "@types/mdast": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/meow/node_modules/read-pkg/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "node_modules/mdn-data": { + "version": "2.0.30", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", + "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", + "dev": true + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "dev": true, + "license": "MIT", "peer": true, - "bin": { - "semver": "bin/semver" + "engines": { + "node": ">= 0.6" } }, - "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "node_modules/memfs": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.13.0.tgz", + "integrity": "sha512-dIs5KGy24fbdDhIAg0RxXpFqQp3RwL6wgSMRF9OSuphL/Uc9a4u2/SDJKPLj/zUgtOGKuHrRMrj563+IErj4Cg==", "dev": true, + "license": "Apache-2.0", "peer": true, + "dependencies": { + "@jsonjoy.com/json-pack": "^1.0.3", + "@jsonjoy.com/util": "^1.3.0", + "tree-dump": "^1.0.1", + "tslib": "^2.0.0" + }, "engines": { - "node": ">=8" + "node": ">= 4.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" } }, - "node_modules/meow/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "node_modules/meow": { + "version": "10.1.5", + "resolved": "https://registry.npmjs.org/meow/-/meow-10.1.5.tgz", + "integrity": "sha512-/d+PQ4GKmGvM9Bee/DPa8z3mXs/pkvJE2KEThngVNOqtmljC6K7NMPxtc2JeZYTmpWb9k/TmxjeL18ez3h7vCw==", "dev": true, "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "@types/minimist": "^1.2.2", + "camelcase-keys": "^7.0.0", + "decamelize": "^5.0.0", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.2", + "read-pkg-up": "^8.0.0", + "redent": "^4.0.0", + "trim-newlines": "^4.0.2", + "type-fest": "^1.2.2", + "yargs-parser": "^20.2.9" }, "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/meow/node_modules/type-fest": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", - "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", "dev": true, "peer": true, "engines": { @@ -12590,44 +14563,31 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/meow/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "peer": true - }, "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", "dev": true, - "peer": true + "license": "MIT", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/merge-source-map": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", "dev": true, - "peer": true, "dependencies": { "source-map": "^0.6.1" } }, - "node_modules/merge-source-map/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true }, "node_modules/merge2": { "version": "1.4.1", @@ -12642,96 +14602,530 @@ "node_modules/methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.6" } }, - "node_modules/microbuffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/microbuffer/-/microbuffer-1.0.0.tgz", - "integrity": "sha1-izgy7UDIfVH0e7I0kTppinVtGdI=", - "dev": true - }, - "node_modules/miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dev": true, - "peer": true, + "node_modules/micromark": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz", + "integrity": "sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "bin": { - "miller-rabin": "bin/miller-rabin" + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.0.tgz", + "integrity": "sha512-jThOz/pVmAYUtkroV3D5c1osFXAMv9e0ypGDOIZuCeAe91/sD6BoE2Sjzt30yuXtwOYUmySOhMas/PVyh02itA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-destination": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.0.tgz", + "integrity": "sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/miller-rabin/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true, - "peer": true + "node_modules/micromark-factory-label": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.0.tgz", + "integrity": "sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "peer": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" + "node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/mime-db": { - "version": "1.48.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", - "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==", - "engines": { - "node": ">= 0.6" + "node_modules/micromark-factory-title": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.0.tgz", + "integrity": "sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/mime-types": { - "version": "2.1.31", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", - "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", + "node_modules/micromark-factory-whitespace": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.0.tgz", + "integrity": "sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "dependencies": { - "mime-db": "1.48.0" - }, - "engines": { - "node": ">= 0.6" + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/mimic-fn": { + "node_modules/micromark-util-character": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", + "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true, - "peer": true, - "engines": { - "node": ">=4" + "node_modules/micromark-util-chunked": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.0.tgz", + "integrity": "sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true, + "node_modules/micromark-util-classify-character": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.0.tgz", + "integrity": "sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-combine-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.0.tgz", + "integrity": "sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-chunked": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-numeric-character-reference": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.1.tgz", + "integrity": "sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.0.tgz", + "integrity": "sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", + "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-html-tag-name": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.0.tgz", + "integrity": "sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-normalize-identifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.0.tgz", + "integrity": "sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-resolve-all": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.0.tgz", + "integrity": "sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-sanitize-uri": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", + "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-subtokenize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.0.0.tgz", + "integrity": "sha512-vc93L1t+gpR3p8jxeVdaYlbV2jTYteDje19rNSS/H5dlhxUYll5Fy6vJ2cDwP8RnsXi818yGty1ayP55y3W6fg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", + "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + }, + "bin": { + "miller-rabin": "bin/miller-rabin" + } + }, + "node_modules/miller-rabin/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "license": "MIT", + "peer": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true, + "license": "ISC", "peer": true }, "node_modules/minimalistic-crypto-utils": { @@ -12739,12 +15133,13 @@ "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "dependencies": { "brace-expansion": "^1.1.7" @@ -12754,9 +15149,14 @@ } }, "node_modules/minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "dev": true, + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/minimist-options": { "version": "4.1.0", @@ -12773,16 +15173,6 @@ "node": ">= 6" } }, - "node_modules/minimist-options/node_modules/arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/minimist-options/node_modules/kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -12793,22 +15183,19 @@ "node": ">=0.10.0" } }, - "node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", "dev": true, - "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "mkdirp": "bin/cmd.js" + "engines": { + "node": ">=16 || 14 >=14.17" } }, "node_modules/moment": { - "version": "2.29.4", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", - "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", + "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", "engines": { "node": "*" } @@ -12816,34 +15203,33 @@ "node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "node_modules/multicast-dns": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", - "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "dns-packet": "^1.3.1", + "dns-packet": "^5.2.2", "thunky": "^1.0.2" }, "bin": { "multicast-dns": "cli.js" } }, - "node_modules/multicast-dns-service-types": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", - "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", - "dev": true, - "peer": true - }, "node_modules/nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", + "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "bin": { "nanoid": "bin/nanoid.cjs" }, @@ -12854,23 +15240,15 @@ "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, - "node_modules/neatequal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/neatequal/-/neatequal-1.0.0.tgz", - "integrity": "sha1-LuEhG8n6bkxVcV/SELsFYC6xrjs=", - "dev": true, - "dependencies": { - "varstream": "^0.3.2" - } - }, "node_modules/negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.6" @@ -12880,137 +15258,202 @@ "version": "2.6.2", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true, "peer": true }, - "node_modules/node-addon-api": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-1.7.2.tgz", - "integrity": "sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==", - "dev": true + "node_modules/nested-property": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/nested-property/-/nested-property-4.0.0.tgz", + "integrity": "sha512-yFehXNWRs4cM0+dz7QxCd06hTbWbSkV0ISsqBfkntU6TOY4Qm3Q88fRRLOddkGh2Qq6dZvnKVAahfhjcUvLnyA==" }, - "node_modules/node-cache": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/node-cache/-/node-cache-4.2.1.tgz", - "integrity": "sha512-BOb67bWg2dTyax5kdef5WfU3X8xu4wPg+zHzkvls0Q/QpYycIFRLEEIdAx9Wma43DxG6Qzn4illdZoYseKWa4A==", + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" + } + ], + "engines": { + "node": ">=10.5.0" + } + }, + "node_modules/node-fetch": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz", + "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==", "dependencies": { - "clone": "2.x", - "lodash": "^4.17.15" + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" }, "engines": { - "node": ">= 0.4.6" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" } }, "node_modules/node-forge": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", - "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", "dev": true, + "license": "(BSD-3-Clause OR GPL-2.0)", "peer": true, "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/node-gettext": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/node-gettext/-/node-gettext-3.0.0.tgz", - "integrity": "sha512-/VRYibXmVoN6tnSAY2JWhNRhWYJ8Cd844jrZU/DwLVoI4vBI6ceYbd8i42sYZ9uOgDH3S7vslIKOWV/ZrT2YBA==", - "dependencies": { - "lodash.get": "^4.4.2" + "node": ">= 6.13.0" } }, "node_modules/node-int64": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", "dev": true }, "node_modules/node-polyfill-webpack-plugin": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-2.0.0.tgz", - "integrity": "sha512-jrMdoL1KmeTUiqLJb19nOgIFjqbX0ClJg97o0kmigy/d5dyoum0+bqPCaRpaX5mccJES6hwuQTXyCdKQ1p2Y3Q==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-4.0.0.tgz", + "integrity": "sha512-WLk77vLpbcpmTekRj6s6vYxk30XoyaY5MDZ4+9g8OaKoG3Ij+TjOqhpQjVUlfDZBPBgpNATDltaQkzuXSnnkwg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "assert": "^2.0.0", + "assert": "^2.1.0", "browserify-zlib": "^0.2.0", "buffer": "^6.0.3", "console-browserify": "^1.2.0", "constants-browserify": "^1.0.0", "crypto-browserify": "^3.12.0", - "domain-browser": "^4.22.0", + "domain-browser": "^5.7.0", "events": "^3.3.0", - "filter-obj": "^2.0.2", "https-browserify": "^1.0.0", "os-browserify": "^0.3.0", "path-browserify": "^1.0.1", "process": "^0.11.10", - "punycode": "^2.1.1", + "punycode": "^2.3.1", "querystring-es3": "^0.2.1", - "readable-stream": "^4.0.0", + "readable-stream": "^4.5.2", "stream-browserify": "^3.0.0", "stream-http": "^3.2.0", "string_decoder": "^1.3.0", "timers-browserify": "^2.0.12", "tty-browserify": "^0.0.1", - "type-fest": "^2.14.0", - "url": "^0.11.0", - "util": "^0.12.4", + "type-fest": "^4.18.2", + "url": "^0.11.3", + "util": "^0.12.5", "vm-browserify": "^1.1.2" }, "engines": { - "node": ">=12" + "node": ">=14" }, "peerDependencies": { "webpack": ">=5" } }, - "node_modules/node-polyfill-webpack-plugin/node_modules/readable-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.1.0.tgz", - "integrity": "sha512-sVisi3+P2lJ2t0BPbpK629j8wRW06yKGJUcaLAGXPAUhyUxVJm7VsCTit1PFgT4JHUDMrGNR+ZjSKpzGaRF3zw==", - "dev": true, - "peer": true, - "dependencies": { - "abort-controller": "^3.0.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, "node_modules/node-polyfill-webpack-plugin/node_modules/type-fest": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.18.0.tgz", - "integrity": "sha512-pRS+/yrW5TjPPHNOvxhbNZexr2bS63WjrMU8a+VzEBhUi9Tz1pZeD+vQz3ut0svZ46P+SRqMEPnJmk2XnvNzTw==", + "version": "4.26.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.26.1.tgz", + "integrity": "sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==", "dev": true, + "license": "(MIT OR CC0-1.0)", "peer": true, "engines": { - "node": ">=12.20" + "node": ">=16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/node-releases": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz", - "integrity": "sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==" + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "dev": true, + "license": "MIT" }, "node_modules/nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.0.tgz", + "integrity": "sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==", "dev": true, "dependencies": { - "abbrev": "1" + "abbrev": "^2.0.0" }, "bin": { "nopt": "bin/nopt.js" }, "engines": { - "node": ">=6" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "dev": true, + "peer": true, + "dependencies": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/normalize-package-data/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "peer": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, + "node_modules/normalize-package-data/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "peer": true + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -13020,13 +15463,6 @@ "node": ">=0.10.0" } }, - "node_modules/normalize-selector": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/normalize-selector/-/normalize-selector-0.2.0.tgz", - "integrity": "sha1-0LFF62kRicY6eNIB3E/bEpPvDAM=", - "dev": true, - "peer": true - }, "node_modules/npm-run-path": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", @@ -13039,38 +15475,49 @@ "node": ">=8" } }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "peer": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, "node_modules/nwsapi": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", - "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.2.tgz", + "integrity": "sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==", "dev": true }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/object-inspect": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", - "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", + "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/object-is": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", + "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1" }, "engines": { "node": ">= 0.4" @@ -13084,19 +15531,21 @@ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, + "peer": true, "engines": { "node": ">= 0.4" } }, "node_modules/object.assign": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", "dev": true, + "peer": true, "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", "object-keys": "^1.1.1" }, "engines": { @@ -13129,13 +15578,15 @@ "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "ee-first": "1.1.1" @@ -13149,6 +15600,7 @@ "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.8" @@ -13157,7 +15609,7 @@ "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, "dependencies": { "wrappy": "1" @@ -13179,28 +15631,31 @@ } }, "node_modules/open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/open/-/open-10.1.0.tgz", + "integrity": "sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" + "default-browser": "^5.2.1", + "define-lazy-prop": "^3.0.0", + "is-inside-container": "^1.0.0", + "is-wsl": "^3.1.0" }, "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "deep-is": "^0.1.3", @@ -13208,7 +15663,7 @@ "levn": "^0.4.1", "prelude-ls": "^1.2.1", "type-check": "^0.4.0", - "word-wrap": "^1.2.3" + "word-wrap": "^1.2.5" }, "engines": { "node": ">= 0.8.0" @@ -13219,17 +15674,19 @@ "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-6.2.0.tgz", + "integrity": "sha512-kuUqqHNUqoIWp/c467RI4X6mmyuojY5jGutNU0wVTmEOOfcuwLqyMVoAi9MKi2Ak+5i9+nhmrK4ufZE8069kHA==", + "license": "MIT", "dependencies": { - "yocto-queue": "^1.0.0" + "yocto-queue": "^1.1.1" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -13262,53 +15719,66 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-locate/node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "peer": true, + "node_modules/p-queue": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-8.1.0.tgz", + "integrity": "sha512-mxLDbbGIBEXTJL0zEx8JIylaj3xQ7Z/7eEVjcF9fJX4DBiH9oqe+oahYnlKKxm0Ci9TlWTyhSHgygxMxjIB2jw==", + "license": "MIT", "dependencies": { - "aggregate-error": "^3.0.0" + "eventemitter3": "^5.0.1", + "p-timeout": "^6.1.2" }, "engines": { - "node": ">=10" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/p-queue/node_modules/eventemitter3": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", + "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==", + "license": "MIT" + }, "node_modules/p-retry": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.1.tgz", - "integrity": "sha512-e2xXGNhZOZ0lfgR9kL34iGlU8N/KO0xZnQxVEwdeOvpqNDQfdnxIYizvWtK8RglUa3bGqI8g0R/BdfzLMxRkiA==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-6.2.0.tgz", + "integrity": "sha512-JA6nkq6hKyWLLasXQXUrO4z8BUZGUt/LjlJxx8Gb2+2ntodU/SS63YZ8b0LUTbQ8ZB9iwOfhEPhg4ykKnn2KsA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "@types/retry": "^0.12.0", + "@types/retry": "0.12.2", + "is-network-error": "^1.0.0", "retry": "^0.13.1" }, "engines": { - "node": ">=8" + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-timeout": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-6.1.3.tgz", + "integrity": "sha512-UJUyfKbwvr/uZSV6btANfb+0t/mOhKV/KXcCUTp8FcQI+v/0d+wXqH4htrW0E4rR6WiEO/EPvUFiV9D5OI4vlw==", + "license": "MIT", + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, - "peer": true, "engines": { - "node": ">=4" + "node": ">=6" } }, "node_modules/pako": { @@ -13316,6 +15786,7 @@ "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", "dev": true, + "license": "(MIT AND Zlib)", "peer": true }, "node_modules/parent-module": { @@ -13332,30 +15803,60 @@ } }, "node_modules/parse-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "version": "5.1.7", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.7.tgz", + "integrity": "sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==", "dev": true, + "license": "ISC", "peer": true, "dependencies": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" + "asn1.js": "^4.10.1", + "browserify-aes": "^1.2.0", + "evp_bytestokey": "^1.0.3", + "hash-base": "~3.0", + "pbkdf2": "^3.1.2", + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.1.tgz", + "integrity": "sha512-kwpuwzB+px5WUg9pyK0IcK/shltJN5/OVhQagxhCQNtT9Y9QRZqNY2e1cmbu/paRh5LMnz/oVTVLBpjFmMZhSg==", + "dev": true, + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.8" @@ -13366,6 +15867,7 @@ "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/path-exists": { @@ -13380,7 +15882,7 @@ "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -13401,18 +15903,60 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, + "node_modules/path-posix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/path-posix/-/path-posix-1.0.0.tgz", + "integrity": "sha512-1gJ0WpNIiYcQydgg3Ed8KzvIqTsDpNwq+cjBCssvBtuTWjEqY1AW+i+OepiEMqDCzyro9B2sLAe4RBPajMYFiA==" + }, + "node_modules/path-scurry": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz", + "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", + "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, "node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", "dev": true, + "license": "MIT", "peer": true }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, "node_modules/pbkdf2": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "create-hash": "^1.1.2", @@ -13426,14 +15970,15 @@ } }, "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "license": "ISC" }, "node_modules/picomatch": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", - "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true, "engines": { "node": ">=8.6" @@ -13442,15 +15987,75 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pinia": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.3.1.tgz", + "integrity": "sha512-khUlZSwt9xXCaTbbxFYBKDc/bWAGWJjOgvxETwkTN7KRm66EeT1ZdZj6i2ceh9sP2Pzqsbc704r2yngBrxBVug==", + "license": "MIT", + "dependencies": { + "@vue/devtools-api": "^6.6.3", + "vue-demi": "^0.14.10" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "typescript": ">=4.4.4", + "vue": "^2.7.0 || ^3.5.11" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/pinia/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "license": "MIT", + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, "node_modules/pirates": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.4.tgz", - "integrity": "sha512-ZIrVPH+A52Dw84R0L3/VS9Op04PuQ2SEoJL6bkshmiTic/HldyW9Tf7oH5mhJZBK7NmDx27vSMrYEXPXclpDKw==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", "dev": true, "engines": { "node": ">= 6" } }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/popper.js": { "version": "1.16.1", "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", @@ -13461,58 +16066,53 @@ "url": "https://opencollective.com/popperjs" } }, - "node_modules/portfinder": { - "version": "1.0.28", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", - "integrity": "sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==", + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", "dev": true, + "license": "MIT", "peer": true, - "dependencies": { - "async": "^2.6.2", - "debug": "^3.1.1", - "mkdirp": "^0.5.5" - }, "engines": { - "node": ">= 0.12.0" - } - }, - "node_modules/portfinder/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "peer": true, - "dependencies": { - "ms": "^2.1.1" + "node": ">= 0.4" } }, "node_modules/postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "dev": true, - "peer": true, + "version": "8.4.33", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.33.tgz", + "integrity": "sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" + "nanoid": "^3.3.7", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" }, "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "node": "^10 || ^12 || >=14" } }, "node_modules/postcss-html": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-1.3.0.tgz", - "integrity": "sha512-ewbwd7OGW4dLsErtvZH9HpVMEcXnlhYSzKsr7MepGlOT8imHTIZ/+pdfEruLS+hTYapLTQAWDnoQcJpsYU4uRw==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-1.6.0.tgz", + "integrity": "sha512-OWgQ9/Pe23MnNJC0PL4uZp8k0EDaUvqpJFSiwFxOLClAhmD7UEisyhO3x5hVsD4xFrjReVTXydlrMes45dJ71w==", "dev": true, "peer": true, "dependencies": { - "htmlparser2": "^7.1.2", + "htmlparser2": "^8.0.0", + "js-tokens": "^8.0.0", "postcss": "^8.4.0", "postcss-safe-parser": "^6.0.0" }, @@ -13520,26 +16120,94 @@ "node": "^12 || >=14" } }, - "node_modules/postcss-html/node_modules/postcss": { - "version": "8.4.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", - "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", + "node_modules/postcss-html/node_modules/js-tokens": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-8.0.3.tgz", + "integrity": "sha512-UfJMcSJc+SEXEl9lH/VLHSZbThQyLpw1vLO1Lb+j4RWDvG3N2f7yj3PVQA3cmkTBNldJ9eFnM+xEXxHIXrYiJw==", + "dev": true, + "peer": true + }, + "node_modules/postcss-media-query-parser": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", + "integrity": "sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==", + "dev": true, + "peer": true + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "dev": true, + "license": "ISC", + "peer": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.5.tgz", + "integrity": "sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "nanoid": "^3.1.30", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.1" + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" }, "engines": { - "node": "^10 || ^12 || >=14" + "node": "^10 || ^12 || >= 14" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.0.tgz", + "integrity": "sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dev": true, + "peer": true, + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "node_modules/postcss-html/node_modules/postcss-safe-parser": { + "node_modules/postcss-resolve-nested-selector": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz", + "integrity": "sha512-HvExULSwLqHLgUy1rl3ANIqCsvMS0WHss2UOsXhXnQaZ9VCc2oBvIpXrl00IUFT5ZDITME0o6oiXeiHr2SAIfw==", + "dev": true, + "peer": true + }, + "node_modules/postcss-safe-parser": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz", "integrity": "sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==", @@ -13556,26 +16224,38 @@ "postcss": "^8.3.3" } }, - "node_modules/postcss-media-query-parser": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", - "integrity": "sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ=", - "dev": true, - "peer": true - }, - "node_modules/postcss-resolve-nested-selector": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz", - "integrity": "sha1-Kcy8fDfe36wwTp//C/FZaz9qDk4=", + "node_modules/postcss-scss": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.9.tgz", + "integrity": "sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==", "dev": true, - "peer": true + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss-scss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.4.29" + } }, "node_modules/postcss-selector-parser": { - "version": "6.0.8", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.8.tgz", - "integrity": "sha512-D5PG53d209Z1Uhcc0qAZ5U3t5HagH3cxu+WLZ22jt3gLUpXM4eXXfiO14jiDWST3NNooX/E8wISfOhZ9eIjGTQ==", + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", "dev": true, - "peer": true, "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -13585,39 +16265,16 @@ } }, "node_modules/postcss-value-parser": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", - "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", "dev": true, "peer": true }, - "node_modules/postcss/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "peer": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/preact": { - "version": "10.5.13", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.5.13.tgz", - "integrity": "sha512-q/vlKIGNwzTLu+jCcvywgGrt+H/1P/oIRSD6mV4ln3hmlC+Aa34C7yfPI4+5bzW8pONyVXYS7SvXosy2dKKtWQ==", + "version": "10.12.1", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.12.1.tgz", + "integrity": "sha512-l8386ixSsBdbreOAkqtrwqHwdvR35ID8c3rKPa8lCWuO86dBi32QWHV4vfsZK1utLLFMvw+Z5Ad4XLkZzchscg==", "funding": { "type": "opencollective", "url": "https://opencollective.com/preact" @@ -13628,29 +16285,31 @@ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.8.0" } }, "node_modules/prettier": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.5.1.tgz", - "integrity": "sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg==", - "dev": true, + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz", + "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==", "optional": true, - "peer": true, "bin": { "prettier": "bin-prettier.js" }, "engines": { "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" } }, "node_modules/pretty": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pretty/-/pretty-2.0.0.tgz", - "integrity": "sha1-rbx5YLe7/iiaVX3F9zdhmiINBqU=", + "integrity": "sha512-G9xUchgTEiNpormdYBl+Pha50gOUovT18IvAe7EYMZ1/f9W/WWMPRn+xI68yXNMUk3QXHDwo/1wV/4NejVNe1w==", "dev": true, "dependencies": { "condense-newlines": "^0.2.1", @@ -13662,17 +16321,17 @@ } }, "node_modules/pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", "dev": true, "dependencies": { - "ansi-regex": "^5.0.1", + "@jest/schemas": "^29.6.3", "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" + "react-is": "^18.0.0" }, "engines": { - "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/pretty-format/node_modules/ansi-styles": { @@ -13692,6 +16351,7 @@ "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.6.0" @@ -13702,6 +16362,7 @@ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/prompts": { @@ -13717,10 +16378,19 @@ "node": ">= 6" } }, + "node_modules/property-information": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.2.0.tgz", + "integrity": "sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/proto-list": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", - "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", "dev": true }, "node_modules/proxy-addr": { @@ -13728,6 +16398,7 @@ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "forwarded": "0.2.0", @@ -13742,21 +16413,27 @@ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.10" } }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, "node_modules/pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", "dev": true }, "node_modules/psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", "dev": true }, "node_modules/public-encrypt": { @@ -13764,6 +16441,7 @@ "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "bn.js": "^4.1.0", @@ -13779,22 +16457,44 @@ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, "engines": { "node": ">=6" } }, + "node_modules/pure-rand": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.4.tgz", + "integrity": "sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ] + }, "node_modules/qs": { - "version": "6.9.6", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz", - "integrity": "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dev": true, + "license": "BSD-3-Clause", "peer": true, + "dependencies": { + "side-channel": "^1.0.6" + }, "engines": { "node": ">=0.6" }, @@ -13802,17 +16502,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", - "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.4.x" - } - }, "node_modules/querystring-es3": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", @@ -13823,6 +16512,11 @@ "node": ">=0.4.x" } }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -13845,19 +16539,23 @@ "peer": true }, "node_modules/quick-lru": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", - "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", "dev": true, "peer": true, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, "peer": true, "dependencies": { "safe-buffer": "^5.1.0" @@ -13868,6 +16566,7 @@ "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "randombytes": "^2.0.5", @@ -13879,20 +16578,22 @@ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.6" } }, "node_modules/raw-body": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.2.tgz", - "integrity": "sha512-RPMAFUJP19WIet/99ngh6Iv8fzAbqum4Li7AD6DtGaW2RpMB/11xDoalPiJMTbu6I3hkbMVkATvZrqb9EEqeeQ==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "bytes": "3.1.1", - "http-errors": "1.8.1", + "bytes": "3.1.2", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" }, @@ -13901,135 +16602,260 @@ } }, "node_modules/raw-body/node_modules/bytes": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.1.tgz", - "integrity": "sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 0.8" } }, - "node_modules/react": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", - "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/read-pkg": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-6.0.0.tgz", + "integrity": "sha512-X1Fu3dPuk/8ZLsMhEj5f4wFAF0DWoK7qhGJvgaijocXxBmSToKfbFtqbxMO7bVjNA1dmE5huAzjXj/ey86iw9Q==", + "dev": true, "peer": true, "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^3.0.2", + "parse-json": "^5.2.0", + "type-fest": "^1.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/react-dom": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", - "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "node_modules/read-pkg-up": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-8.0.0.tgz", + "integrity": "sha512-snVCqPczksT0HS2EC+SxUndvSzn6LRCwpfSvLrIfR5BKDQQZMaI6jPRC9dYvYFDRAuFEAnkwww8kBBNE/3VvzQ==", + "dev": true, "peer": true, "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "scheduler": "^0.20.2" + "find-up": "^5.0.0", + "read-pkg": "^6.0.0", + "type-fest": "^1.0.1" }, - "peerDependencies": { - "react": "17.0.2" + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", - "dev": true - }, - "node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, + "peer": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">= 6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/rechoir": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", - "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "peer": true, "dependencies": { - "resolve": "^1.9.0" + "p-locate": "^5.0.0" }, "engines": { - "node": ">= 0.10" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "peer": true, "dependencies": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" + "yocto-queue": "^0.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true, - "peer": true - }, - "node_modules/regenerate-unicode-properties": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", - "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "peer": true, "dependencies": { - "regenerate": "^1.4.0" + "p-limit": "^3.0.2" }, "engines": { - "node": ">=4" - } - }, - "node_modules/regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/regenerator-transform": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", - "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", + "node_modules/read-pkg-up/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/readable-stream": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", + "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "@babel/runtime": "^7.8.4" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/readdirp": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", + "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, - "node_modules/regenerator-transform/node_modules/@babel/runtime": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.6.tgz", - "integrity": "sha512-/PCB2uJ7oM44tz8YhC4Z/6PeOKXp4K588f+5M3clr1M4zbqztlo0XEfJ2LEzj/FgwfgGcIdl8n7YYjTCI0BYwg==", + "node_modules/rechoir": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.8.0.tgz", + "integrity": "sha512-/vxpCXddiX8NGfGO/mTafwjq4aFa/71pvamip0++IQk3zG8cbCj0fifNPrjjF1XMXUne91jL9OoxmdykoEtifQ==", "dev": true, "peer": true, "dependencies": { - "regenerator-runtime": "^0.13.4" + "resolve": "^1.20.0" }, "engines": { - "node": ">=6.9.0" + "node": ">= 10.13.0" + } + }, + "node_modules/redent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-4.0.0.tgz", + "integrity": "sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==", + "dev": true, + "peer": true, + "dependencies": { + "indent-string": "^5.0.0", + "strip-indent": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "dev": true, + "license": "MIT" + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz", + "integrity": "sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==", + "dev": true, + "license": "MIT", + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "license": "MIT" + }, + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.8.4" } }, "node_modules/regex-parser": { @@ -14043,6 +16869,7 @@ "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", "dev": true, + "peer": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.3", @@ -14055,208 +16882,554 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true, - "peer": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, "node_modules/regexpu-core": { - "version": "4.7.1", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz", - "integrity": "sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.1.1.tgz", + "integrity": "sha512-k67Nb9jvwJcJmVpw0jPttR1/zVfnKf8Km0IPatrU/zJ5XeG3+Slx0xLXs9HByJSzXzrlz5EDvN6yLNMDc2qdnw==", "dev": true, - "peer": true, + "license": "MIT", "dependencies": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.2.0", - "regjsgen": "^0.5.1", - "regjsparser": "^0.6.4", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.2.0" + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.2.0", + "regjsgen": "^0.8.0", + "regjsparser": "^0.11.0", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" }, "engines": { "node": ">=4" } }, "node_modules/regjsgen": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", - "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==", + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==", "dev": true, - "peer": true + "license": "MIT" }, "node_modules/regjsparser": { - "version": "0.6.9", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.9.tgz", - "integrity": "sha512-ZqbNRz1SNjLAiYuwY0zoXW8Ne675IX5q+YHioAGbCw4X96Mjl2+dcX9B2ciaeyYjViDAfvIjFpQjJgLttTEERQ==", + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.11.1.tgz", + "integrity": "sha512-1DHODs4B8p/mQHU9kr+jv8+wIC9mtG4eBHxWxIq5mhjE3D5oORhCc6deRKzTjs9DcfRFmj9BHSDguZklqCGFWQ==", "dev": true, - "peer": true, + "license": "BSD-2-Clause", "dependencies": { - "jsesc": "~0.5.0" + "jsesc": "~3.0.2" }, "bin": { "regjsparser": "bin/parser" } }, - "node_modules/regjsparser/node_modules/jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true, - "peer": true, - "bin": { - "jsesc": "bin/jsesc" + "node_modules/rehype-external-links": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/rehype-external-links/-/rehype-external-links-3.0.0.tgz", + "integrity": "sha512-yp+e5N9V3C6bwBeAC4n796kc86M4gJCdlVhiMTxIrJG5UHDMh+PJANf9heqORJbt1nrCbDwIlAZKjANIaVBbvw==", + "dependencies": { + "@types/hast": "^3.0.0", + "@ungap/structured-clone": "^1.0.0", + "hast-util-is-element": "^3.0.0", + "is-absolute-url": "^4.0.0", + "space-separated-tokens": "^2.0.0", + "unist-util-visit": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true, - "engines": { - "node": ">=0.10.0" + "node_modules/rehype-external-links/node_modules/@types/hast": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.1.tgz", + "integrity": "sha512-hs/iBJx2aydugBQx5ETV3ZgeSS0oIreQrFJ4bjBl0XvM4wAmDjFEALY7p0rTSLt2eL+ibjRAAs9dTPiCLtmbqQ==", + "dependencies": { + "@types/unist": "*" } }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.10.0" + "node_modules/rehype-external-links/node_modules/@types/unist": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.0.tgz", + "integrity": "sha512-MFETx3tbTjE7Uk6vvnWINA/1iJ7LuMdO4fcq8UfF0pRbj01aGLduVvQcRyswuACJdpnHgg8E3rQLhaRdNEJS0w==" + }, + "node_modules/rehype-highlight": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/rehype-highlight/-/rehype-highlight-7.0.2.tgz", + "integrity": "sha512-k158pK7wdC2qL3M5NcZROZ2tR/l7zOzjxXd5VGdcfIyoijjQqpHd3JKtYSBDpDZ38UI2WJWuFAtkMDxmx5kstA==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "hast-util-to-text": "^4.0.0", + "lowlight": "^3.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/requireindex": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/requireindex/-/requireindex-1.2.0.tgz", - "integrity": "sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.10.5" + "node_modules/rehype-highlight/node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", + "dependencies": { + "@types/unist": "*" } }, - "node_modules/requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", - "dev": true, - "peer": true + "node_modules/rehype-highlight/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" }, - "node_modules/resolve": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", - "dev": true, + "node_modules/rehype-highlight/node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "license": "MIT", "dependencies": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" + "@types/unist": "^3.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", - "dev": true, + "node_modules/rehype-highlight/node_modules/vfile": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", + "license": "MIT", "dependencies": { - "resolve-from": "^5.0.0" + "@types/unist": "^3.0.0", + "vfile-message": "^4.0.0" }, - "engines": { - "node": ">=8" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/rehype-highlight/node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "deprecated": "https://github.com/lydell/resolve-url#deprecated", - "dev": true + "node_modules/rehype-react": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/rehype-react/-/rehype-react-7.1.2.tgz", + "integrity": "sha512-IWsFMS2M4NTbvWzumBBKhdb39ElV+r5YQHA2HafDDRrH84bEryJA2YPPNbF9he4QzAFOssaMJ9buSC6cDcJTLw==", + "dependencies": { + "@mapbox/hast-util-table-cell-style": "^0.2.0", + "@types/hast": "^2.0.0", + "hast-to-hyperscript": "^10.0.0", + "hast-util-whitespace": "^2.0.0", + "unified": "^10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "@types/react": ">=17" + } }, - "node_modules/resolve-url-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", - "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", - "dev": true, + "node_modules/remark-breaks": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/remark-breaks/-/remark-breaks-4.0.0.tgz", + "integrity": "sha512-IjEjJOkH4FuJvHZVIW0QCDWxcG96kCq7An/KVH2NfJe6rKZU2AsHeB3OEjPNRxi4QC34Xdx7I2KGYn6IpT7gxQ==", "dependencies": { - "adjust-sourcemap-loader": "^4.0.0", - "convert-source-map": "^1.7.0", - "loader-utils": "^2.0.0", - "postcss": "^8.2.14", - "source-map": "0.6.1" + "@types/mdast": "^4.0.0", + "mdast-util-newline-to-break": "^2.0.0", + "unified": "^11.0.0" }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-breaks/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/remark-breaks/node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", "engines": { "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/resolve-url-loader/node_modules/loader-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", - "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", - "dev": true, + "node_modules/remark-breaks/node_modules/unified": { + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.4.tgz", + "integrity": "sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==", "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" + "@types/unist": "^3.0.0", + "bail": "^2.0.0", + "devlop": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^6.0.0" }, - "engines": { - "node": ">=8.9.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/resolve-url-loader/node_modules/postcss": { - "version": "8.4.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", - "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", - "dev": true, + "node_modules/remark-breaks/node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", "dependencies": { - "nanoid": "^3.1.30", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.1" - }, - "engines": { - "node": "^10 || ^12 || >=14" + "@types/unist": "^3.0.0" }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "url": "https://opencollective.com/unified" } }, - "node_modules/resolve-url-loader/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" + "node_modules/remark-breaks/node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/resolve.exports": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz", - "integrity": "sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==", - "dev": true, - "engines": { - "node": ">=10" + "node_modules/remark-breaks/node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz", + "integrity": "sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/remark-parse/node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/remark-parse/node_modules/unified": { + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.4.tgz", + "integrity": "sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==", + "dependencies": { + "@types/unist": "^3.0.0", + "bail": "^2.0.0", + "devlop": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse/node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse/node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse/node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-rehype": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/remark-rehype/-/remark-rehype-11.1.0.tgz", + "integrity": "sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "mdast-util-to-hast": "^13.0.0", + "unified": "^11.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-rehype/node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/remark-rehype/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/remark-rehype/node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/remark-rehype/node_modules/unified": { + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.4.tgz", + "integrity": "sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==", + "dependencies": { + "@types/unist": "^3.0.0", + "bail": "^2.0.0", + "devlop": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-rehype/node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-rehype/node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-rehype/node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-unlink-protocols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/remark-unlink-protocols/-/remark-unlink-protocols-1.0.0.tgz", + "integrity": "sha512-5j/F28jhFmxeyz8nuJYYIWdR4nNpKWZ8A+tVwnK/0pq7Rjue33CINEYSckSq2PZvedhKUwbn08qyiuGoPLBung==", + "license": "MIT", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-squeeze-paragraphs": "^6.0.0", + "unist-util-visit": "^5.0.0" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requireindex": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/requireindex/-/requireindex-1.2.0.tgz", + "integrity": "sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==", + "dev": true, + "peer": true, + "engines": { + "node": ">=0.10.5" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "dev": true, + "peer": true, + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" + } + }, + "node_modules/resolve-url-loader": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", + "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", + "dev": true, + "dependencies": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.14", + "source-map": "0.6.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/resolve.exports": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", + "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", + "dev": true, + "engines": { + "node": ">=10" } }, "node_modules/retry": { @@ -14264,6 +17437,7 @@ "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">= 4" @@ -14285,6 +17459,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, + "peer": true, "dependencies": { "glob": "^7.1.3" }, @@ -14300,12 +17475,27 @@ "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "hash-base": "^3.0.0", "inherits": "^2.0.1" } }, + "node_modules/run-applescript": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.0.0.tgz", + "integrity": "sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -14330,21 +17520,42 @@ "queue-microtask": "^1.2.2" } }, - "node_modules/run-plugin-webpack": { + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/safe-regex-test": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/run-plugin-webpack/-/run-plugin-webpack-1.0.0.tgz", - "integrity": "sha512-8NhhRO3J2YMmJRZG8JCl1tcGPgzd2LxOYFEtbJd5QhIU8sJH9MZwqZlXNEgcThlHW10QQ62CqOeXu36x4Rwhjw==", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", "dev": true, + "peer": true, "dependencies": { - "gaze": "^1.1.2", - "mkdirp": "^0.5.1" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", @@ -14352,13 +17563,15 @@ "dev": true }, "node_modules/sass": { - "version": "1.54.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.54.3.tgz", - "integrity": "sha512-fLodey5Qd41Pxp/Tk7Al97sViYwF/TazRc5t6E65O7JOk4XF8pzwIW7CvCxYVOfJFFI/1x5+elDyBIixrp+zrw==", + "version": "1.79.5", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.79.5.tgz", + "integrity": "sha512-W1h5kp6bdhqFh2tk3DsI771MoEJjvrSY/2ihJRJS4pjIyfJCw0nTsxqhnrUzaLMOJjFchj8rOvraI/YUVjtx5g==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", + "@parcel/watcher": "^2.4.1", + "chokidar": "^4.0.0", "immutable": "^4.0.0", "source-map-js": ">=0.6.2 <2.0.0" }, @@ -14366,35 +17579,35 @@ "sass": "sass.js" }, "engines": { - "node": ">=12.0.0" + "node": ">=14.0.0" } }, "node_modules/sass-loader": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.0.2.tgz", - "integrity": "sha512-BbiqbVmbfJaWVeOOAu2o7DhYWtcNmTfvroVgFXa6k2hHheMxNAeDHLNoDy/Q5aoaVlz0LH+MbMktKwm9vN/j8Q==", + "version": "16.0.2", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-16.0.2.tgz", + "integrity": "sha512-Ll6iXZ1EYwYT19SqW4mSBb76vSSi8JgzElmzIerhEGgzB5hRjDQIWsPmuk1UrAXkR16KJHqVY0eH+5/uw9Tmfw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "klona": "^2.0.4", "neo-async": "^2.6.2" }, "engines": { - "node": ">= 14.15.0" + "node": ">= 18.12.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/webpack" }, "peerDependencies": { - "fibers": ">= 3.1.0", - "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", + "@rspack/core": "0.x || 1.x", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0", "sass": "^1.3.0", "sass-embedded": "*", "webpack": "^5.0.0" }, "peerDependenciesMeta": { - "fibers": { + "@rspack/core": { "optional": true }, "node-sass": { @@ -14405,112 +17618,135 @@ }, "sass-embedded": { "optional": true + }, + "webpack": { + "optional": true } } }, - "node_modules/sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, "node_modules/saxes": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", + "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", "dev": true, "dependencies": { "xmlchars": "^2.2.0" }, "engines": { - "node": ">=10" - } - }, - "node_modules/scheduler": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", - "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", - "peer": true, - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "node": ">=v12.22.7" } }, "node_modules/schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" }, "engines": { - "node": ">= 8.9.0" + "node": ">= 12.13.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/webpack" } }, - "node_modules/scrollparent": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/scrollparent/-/scrollparent-2.0.1.tgz", - "integrity": "sha1-cV1bnMV3YPsivczDvvtb/gaxoxc=" - }, - "node_modules/select": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", - "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=" - }, + "node_modules/schema-utils/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/schema-utils/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/schema-utils/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "peer": true + }, "node_modules/select-hose": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/selfsigned": { - "version": "1.10.11", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.11.tgz", - "integrity": "sha512-aVmbPOfViZqOZPgRBT0+3u4yZFHpmnIghLMlAcb5/xhp5ZtB/RVnKhz5vl2M32CLXAqR4kha9zfhNg0Lf/sxKA==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "node-forge": "^0.10.0" + "@types/node-forge": "^1.3.0", + "node-forge": "^1" + }, + "engines": { + "node": ">=10" } }, "node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, "bin": { "semver": "bin/semver.js" } }, "node_modules/send": { - "version": "0.17.2", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz", - "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", + "depd": "2.0.0", + "destroy": "1.2.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "1.8.1", + "http-errors": "2.0.0", "mime": "1.6.0", "ms": "2.1.3", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "range-parser": "~1.2.1", - "statuses": "~1.5.0" + "statuses": "2.0.1" }, "engines": { "node": ">= 0.8.0" @@ -14521,6 +17757,7 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "ms": "2.0.0" @@ -14529,21 +17766,35 @@ "node_modules/send/node_modules/debug/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true, + "license": "MIT", "peer": true }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/send/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/serialize-javascript": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", - "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, "peer": true, "dependencies": { "randombytes": "^2.1.0" @@ -14552,8 +17803,9 @@ "node_modules/serve-index": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "accepts": "~1.3.4", @@ -14573,16 +17825,29 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "ms": "2.0.0" } }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/serve-index/node_modules/http-errors": { "version": "1.6.3", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "depd": "~1.1.2", @@ -14597,15 +17862,17 @@ "node_modules/serve-index/node_modules/inherits": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", "dev": true, + "license": "ISC", "peer": true }, "node_modules/serve-index/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/serve-index/node_modules/setprototypeof": { @@ -14613,29 +17880,62 @@ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", "dev": true, + "license": "ISC", "peer": true }, + "node_modules/serve-index/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/serve-static": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz", - "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.17.2" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" } }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/setprototypeof": { @@ -14643,6 +17943,7 @@ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "dev": true, + "license": "ISC", "peer": true }, "node_modules/sha.js": { @@ -14650,6 +17951,7 @@ "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dev": true, + "license": "(MIT AND BSD-3-Clause)", "peer": true, "dependencies": { "inherits": "^2.0.1", @@ -14703,30 +18005,41 @@ "node": ">=8" } }, + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "dev": true, + "license": "MIT", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "dev": true, + "license": "MIT", + "peer": true, "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/sigmund": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", - "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=", - "dev": true - }, "node_modules/signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, "node_modules/sisteransi": { @@ -14735,6 +18048,15 @@ "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", "dev": true }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/slice-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", @@ -14769,11 +18091,34 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/slice-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/slice-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, "node_modules/sockjs": { "version": "0.3.24", "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "faye-websocket": "^0.11.3", @@ -14781,16 +18126,26 @@ "websocket-driver": "^0.7.4" } }, + "node_modules/sockjs/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true, + "license": "MIT", + "peer": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, "node_modules/sortablejs": { "version": "1.10.2", "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.10.2.tgz", "integrity": "sha512-YkPGufevysvfwn5rfdlGyrGjt7/CRHwvRPogD/lC+TnvcN29jDpCifKP+rBqf+LRldfXSTh+0CGLcSg0VIxq3A==" }, "node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "engines": { "node": ">=0.10.0" } @@ -14803,46 +18158,29 @@ "node": ">=0.10.0" } }, - "node_modules/source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", - "dev": true, - "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, "node_modules/source-map-support": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" } }, - "node_modules/source-map-support/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "engines": { - "node": ">=0.10.0" + "node_modules/space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/source-map-url": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", - "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", - "dev": true - }, "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", "dev": true, "peer": true, "dependencies": { @@ -14869,9 +18207,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz", - "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", "dev": true, "peer": true }, @@ -14880,6 +18218,7 @@ "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "debug": "^4.1.0", @@ -14897,6 +18236,7 @@ "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "debug": "^4.1.0", @@ -14907,31 +18247,37 @@ "wbuf": "^1.7.3" } }, - "node_modules/specificity": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/specificity/-/specificity-0.4.1.tgz", - "integrity": "sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==", + "node_modules/spdy-transport/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "dev": true, + "license": "MIT", "peer": true, - "bin": { - "specificity": "bin/specificity" + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, "node_modules/splitpanes": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/splitpanes/-/splitpanes-2.3.8.tgz", - "integrity": "sha512-eM/qZ1v7U5BMV8FQR7oeqVlllz3sTGTm0//g/eJMa0hZ4s+A1VK68j26FWzcaVlw2P5+dCXk7/X6ZRjjwcbrgw==" + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/splitpanes/-/splitpanes-2.4.1.tgz", + "integrity": "sha512-kpEo1WuMXuc6QfdQdO2V/fl/trONlkUKp+pputsLTiW9RMtwEvjb4/aYGm2m3+KAzjmb+zLwr4A4SYZu74+pgQ==" }, "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, "node_modules/stack-utils": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", - "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dev": true, "dependencies": { "escape-string-regexp": "^2.0.0" @@ -14941,13 +18287,14 @@ } }, "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true, + "license": "MIT", "peer": true, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, "node_modules/stream-browserify": { @@ -14955,17 +18302,35 @@ "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "inherits": "~2.0.4", "readable-stream": "^3.5.0" } }, + "node_modules/stream-browserify/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/stream-http": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "builtin-status-codes": "^3.0.0", @@ -14974,45 +18339,71 @@ "xtend": "^4.0.2" } }, + "node_modules/stream-http/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "dev": true, + "license": "MIT", + "peer": true, "dependencies": { "safe-buffer": "~5.2.0" } }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/string-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-5.0.1.tgz", + "integrity": "sha512-9Ep08KAMUn0OadnVaBuRdE2l615CQ508kr0XMadjClfYpdCyvrbFp6Taebo8yyxokQ4viUd/xPPUA4FGgUa0ow==", "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" + "char-regex": "^2.0.0", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">=10" + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-length/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/string-length/node_modules/strip-ansi": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", + "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, "node_modules/string-width": { @@ -15029,23 +18420,27 @@ "node": ">=8" } }, - "node_modules/string.fromcodepoint": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/string.fromcodepoint/-/string.fromcodepoint-0.2.1.tgz", - "integrity": "sha1-jZeDM8C8klOPUPOD5IiPPlYZ1lM=", - "dev": true - }, - "node_modules/string.prototype.codepointat": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/string.prototype.codepointat/-/string.prototype.codepointat-0.2.1.tgz", - "integrity": "sha512-2cBVCj6I4IOvEnjgO/hWqXjqBGsY+zwPmHl12Srk9IXSZ56Jwwmy+66XO5Iut/oQVR7t5ihYdLB0GMa4alEUcg==", - "dev": true - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", "dev": true, + "peer": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.4", @@ -15060,6 +18455,7 @@ "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", "dev": true, + "peer": true, "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.1.4", @@ -15073,6 +18469,20 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -15099,16 +18509,19 @@ } }, "node_modules/strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.0.0.tgz", + "integrity": "sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==", "dev": true, "peer": true, "dependencies": { - "min-indent": "^1.0.0" + "min-indent": "^1.0.1" }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/strip-json-comments": { @@ -15128,80 +18541,104 @@ "resolved": "https://registry.npmjs.org/striptags/-/striptags-3.2.0.tgz", "integrity": "sha512-g45ZOGzHDMe2bdYMdIvdAfCQkCTDMGBazSw1ypMowwGIee7ZQ5dU0rBJ8Jqgl+jAKIv4dbeE1jscZq9wid1Tkw==" }, + "node_modules/strnum": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.1.1.tgz", + "integrity": "sha512-O7aCHfYCamLCctjAiaucmE+fHf2DYHkus2OKCn4Wv03sykfFtgeECn505X6K4mPl8CRNd/qurC9guq+ynoN4pw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "license": "MIT" + }, "node_modules/style-loader": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.1.tgz", - "integrity": "sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-4.0.0.tgz", + "integrity": "sha512-1V4WqhhZZgjVAVJyt7TdDPZoPBPNHbekX4fWnCJL1yQukhCeZhJySUL+gL9y6sNdN95uEOS83Y55SqHcP7MzLA==", + "dev": true, + "license": "MIT", + "peer": true, "engines": { - "node": ">= 12.13.0" + "node": ">= 18.12.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/webpack" }, "peerDependencies": { - "webpack": "^5.0.0" + "webpack": "^5.27.0" } }, "node_modules/style-search": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", - "integrity": "sha1-eVjHk+R+MuB9K1yv5cC/jhLneQI=", + "integrity": "sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==", "dev": true, "peer": true }, + "node_modules/style-to-object": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.4.1.tgz", + "integrity": "sha512-HFpbb5gr2ypci7Qw+IOhnP2zOU7e77b+rzM+wTzXzfi1PrtBCX0E7Pk4wL4iTLnhzZ+JgEGAhX81ebTg/aYjQw==", + "dependencies": { + "inline-style-parser": "0.1.1" + } + }, "node_modules/stylelint": { - "version": "14.2.0", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.2.0.tgz", - "integrity": "sha512-i0DrmDXFNpDsWiwx6SPRs4/pyw4kvZgqpDGvsTslQMY7hpUl6r33aQvNSn6cnTg2wtZ9rreFElI7XAKpOWi1vQ==", + "version": "15.11.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.11.0.tgz", + "integrity": "sha512-78O4c6IswZ9TzpcIiQJIN49K3qNoXTM8zEJzhaTE/xRTCZswaovSEVIa/uwbOltZrk16X4jAxjaOhzz/hTm1Kw==", "dev": true, "peer": true, "dependencies": { + "@csstools/css-parser-algorithms": "^2.3.1", + "@csstools/css-tokenizer": "^2.2.0", + "@csstools/media-query-list-parser": "^2.1.4", + "@csstools/selector-specificity": "^3.0.0", "balanced-match": "^2.0.0", - "colord": "^2.9.2", - "cosmiconfig": "^7.0.1", - "debug": "^4.3.3", - "execall": "^2.0.0", - "fast-glob": "^3.2.7", - "fastest-levenshtein": "^1.0.12", - "file-entry-cache": "^6.0.1", - "get-stdin": "^8.0.0", + "colord": "^2.9.3", + "cosmiconfig": "^8.2.0", + "css-functions-list": "^3.2.1", + "css-tree": "^2.3.1", + "debug": "^4.3.4", + "fast-glob": "^3.3.1", + "fastest-levenshtein": "^1.0.16", + "file-entry-cache": "^7.0.0", "global-modules": "^2.0.0", - "globby": "^11.0.4", + "globby": "^11.1.0", "globjoin": "^0.1.4", - "html-tags": "^3.1.0", - "ignore": "^5.2.0", + "html-tags": "^3.3.1", + "ignore": "^5.2.4", "import-lazy": "^4.0.0", "imurmurhash": "^0.1.4", "is-plain-object": "^5.0.0", - "known-css-properties": "^0.24.0", + "known-css-properties": "^0.29.0", "mathml-tag-names": "^2.1.3", - "meow": "^9.0.0", - "micromatch": "^4.0.4", + "meow": "^10.1.5", + "micromatch": "^4.0.5", "normalize-path": "^3.0.0", - "normalize-selector": "^0.2.0", "picocolors": "^1.0.0", - "postcss": "^8.3.11", - "postcss-media-query-parser": "^0.2.3", + "postcss": "^8.4.28", "postcss-resolve-nested-selector": "^0.1.1", "postcss-safe-parser": "^6.0.0", - "postcss-selector-parser": "^6.0.7", - "postcss-value-parser": "^4.1.0", + "postcss-selector-parser": "^6.0.13", + "postcss-value-parser": "^4.2.0", "resolve-from": "^5.0.0", - "specificity": "^0.4.1", "string-width": "^4.2.3", "strip-ansi": "^6.0.1", "style-search": "^0.1.0", + "supports-hyperlinks": "^3.0.0", "svg-tags": "^1.0.0", - "table": "^6.7.5", - "v8-compile-cache": "^2.3.0", - "write-file-atomic": "^3.0.3" + "table": "^6.8.1", + "write-file-atomic": "^5.0.1" }, "bin": { - "stylelint": "bin/stylelint.js" + "stylelint": "bin/stylelint.mjs" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": "^14.13.1 || >=16.0.0" }, "funding": { "type": "opencollective", @@ -15209,229 +18646,176 @@ } }, "node_modules/stylelint-config-html": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-html/-/stylelint-config-html-1.0.0.tgz", - "integrity": "sha512-rKQUUWDpaYC7ybsS6tLxddjn6DxhjSIXybElSmcTyVQj3ExhmU3q+l41ktrlwHRyY0M5SkTkZiwngvYPYmsgSQ==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stylelint-config-html/-/stylelint-config-html-1.1.0.tgz", + "integrity": "sha512-IZv4IVESjKLumUGi+HWeb7skgO6/g4VMuAYrJdlqQFndgbj6WJAXPhaysvBiXefX79upBdQVumgYcdd17gCpjQ==", "dev": true, "peer": true, "engines": { "node": "^12 || >=14" }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + }, "peerDependencies": { "postcss-html": "^1.0.0", "stylelint": ">=14.0.0" } }, "node_modules/stylelint-config-recommended": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-6.0.0.tgz", - "integrity": "sha512-ZorSSdyMcxWpROYUvLEMm0vSZud2uB7tX1hzBZwvVY9SV/uly4AvvJPPhCcymZL3fcQhEQG5AELmrxWqtmzacw==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-13.0.0.tgz", + "integrity": "sha512-EH+yRj6h3GAe/fRiyaoO2F9l9Tgg50AOFhaszyfov9v6ayXJ1IkSHwTxd7lB48FmOeSGDPLjatjO11fJpmarkQ==", "dev": true, "peer": true, + "engines": { + "node": "^14.13.1 || >=16.0.0" + }, "peerDependencies": { - "stylelint": "^14.0.0" + "stylelint": "^15.10.0" } }, "node_modules/stylelint-config-recommended-scss": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-5.0.2.tgz", - "integrity": "sha512-b14BSZjcwW0hqbzm9b0S/ScN2+3CO3O4vcMNOw2KGf8lfVSwJ4p5TbNEXKwKl1+0FMtgRXZj6DqVUe/7nGnuBg==", + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-13.1.0.tgz", + "integrity": "sha512-8L5nDfd+YH6AOoBGKmhH8pLWF1dpfY816JtGMePcBqqSsLU+Ysawx44fQSlMOJ2xTfI9yTGpup5JU77c17w1Ww==", "dev": true, "peer": true, "dependencies": { - "postcss-scss": "^4.0.2", - "stylelint-config-recommended": "^6.0.0", - "stylelint-scss": "^4.0.0" + "postcss-scss": "^4.0.9", + "stylelint-config-recommended": "^13.0.0", + "stylelint-scss": "^5.3.0" }, "peerDependencies": { - "stylelint": "^14.0.0" - } - }, - "node_modules/stylelint-config-recommended-scss/node_modules/postcss": { - "version": "8.4.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", - "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", - "dev": true, - "peer": true, - "dependencies": { - "nanoid": "^3.1.30", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.1" - }, - "engines": { - "node": "^10 || ^12 || >=14" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/stylelint-config-recommended-scss/node_modules/postcss-scss": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.2.tgz", - "integrity": "sha512-xfdkU128CkKKKVAwkyt0M8OdnelJ3MRcIRAPPQkRpoPeuzWY3RIeg7piRCpZ79MK7Q16diLXMMAD9dN5mauPlQ==", - "dev": true, - "peer": true, - "engines": { - "node": ">=12.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "postcss": "^8.3.3", + "stylelint": "^15.10.0" }, - "peerDependencies": { - "postcss": "^8.3.3" + "peerDependenciesMeta": { + "postcss": { + "optional": true + } } }, "node_modules/stylelint-config-recommended-vue": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended-vue/-/stylelint-config-recommended-vue-1.1.0.tgz", - "integrity": "sha512-6O9gHdZ5nmnpq+qJv19pLEcZTZ/BV7ZzBmtl0J/kx92tGwe4CRqoO//SswibLWQP/1VwOaTrjJxN497pNfw7VA==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-vue/-/stylelint-config-recommended-vue-1.5.0.tgz", + "integrity": "sha512-65TAK/clUqkNtkZLcuytoxU0URQYlml+30Nhop7sRkCZ/mtWdXt7T+spPSB3KMKlb+82aEVJ4OrcstyDBdbosg==", "dev": true, "peer": true, "dependencies": { + "semver": "^7.3.5", "stylelint-config-html": ">=1.0.0", "stylelint-config-recommended": ">=6.0.0" }, "engines": { "node": "^12 || >=14" }, + "funding": { + "url": "https://github.com/sponsors/ota-meshi" + }, "peerDependencies": { "postcss-html": "^1.0.0", "stylelint": ">=14.0.0" } }, - "node_modules/stylelint-scss": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.0.1.tgz", - "integrity": "sha512-Ea+KY7ZFsDhU6Ne9r84y7NvFSNA843w352MSdQeDmklar0pDbeQj9flKrVAuDIlK0pDDdhFtgBl/N0FrtWHq0g==", - "dev": true, - "peer": true, - "dependencies": { - "lodash": "^4.17.21", - "postcss-media-query-parser": "^0.2.3", - "postcss-resolve-nested-selector": "^0.1.1", - "postcss-selector-parser": "^6.0.6", - "postcss-value-parser": "^4.1.0" - }, - "peerDependencies": { - "stylelint": "^14.0.0" - } - }, - "node_modules/stylelint/node_modules/balanced-match": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", - "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", - "dev": true, - "peer": true - }, - "node_modules/stylelint/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "node_modules/stylelint-config-recommended-vue/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "peer": true, "dependencies": { - "fill-range": "^7.0.1" + "yallist": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/stylelint/node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "node_modules/stylelint-config-recommended-vue/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", "dev": true, "peer": true, "dependencies": { - "to-regex-range": "^5.0.1" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=8" - } - }, - "node_modules/stylelint/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.12.0" + "node": ">=10" } }, - "node_modules/stylelint/node_modules/is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "node_modules/stylelint-config-recommended-vue/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true, - "peer": true, - "engines": { - "node": ">=0.10.0" - } + "peer": true }, - "node_modules/stylelint/node_modules/micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "node_modules/stylelint-scss": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-5.3.2.tgz", + "integrity": "sha512-4LzLaayFhFyneJwLo0IUa8knuIvj+zF0vBFueQs4e3tEaAMIQX8q5th8ziKkgOavr6y/y9yoBe+RXN/edwLzsQ==", "dev": true, "peer": true, "dependencies": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" + "known-css-properties": "^0.29.0", + "postcss-media-query-parser": "^0.2.3", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-selector-parser": "^6.0.13", + "postcss-value-parser": "^4.2.0" }, - "engines": { - "node": ">=8.6" + "peerDependencies": { + "stylelint": "^14.5.1 || ^15.0.0" } }, - "node_modules/stylelint/node_modules/postcss": { - "version": "8.4.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", - "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", + "node_modules/stylelint/node_modules/balanced-match": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", + "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", + "dev": true, + "peer": true + }, + "node_modules/stylelint/node_modules/file-entry-cache": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-7.0.2.tgz", + "integrity": "sha512-TfW7/1iI4Cy7Y8L6iqNdZQVvdXn0f8B4QcIXmkIbtTIe/Okm/nSlHb4IwGzRVOd3WfSieCgvf5cMzEfySAIl0g==", "dev": true, "peer": true, "dependencies": { - "nanoid": "^3.1.30", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.1" + "flat-cache": "^3.2.0" }, "engines": { - "node": "^10 || ^12 || >=14" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "node": ">=12.0.0" } }, - "node_modules/stylelint/node_modules/postcss-safe-parser": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz", - "integrity": "sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==", + "node_modules/stylelint/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, "peer": true, "engines": { - "node": ">=12.0" + "node": ">=14" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - "peerDependencies": { - "postcss": "^8.3.3" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/stylelint/node_modules/to-regex-range": { + "node_modules/stylelint/node_modules/write-file-atomic": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", + "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", "dev": true, "peer": true, "dependencies": { - "is-number": "^7.0.0" + "imurmurhash": "^0.1.4", + "signal-exit": "^4.0.1" }, "engines": { - "node": ">=8.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/supports-color": { @@ -15447,16 +18831,17 @@ } }, "node_modules/supports-hyperlinks": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz", - "integrity": "sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-3.0.0.tgz", + "integrity": "sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==", "dev": true, + "peer": true, "dependencies": { "has-flag": "^4.0.0", "supports-color": "^7.0.0" }, "engines": { - "node": ">=8" + "node": ">=14.18" } }, "node_modules/supports-hyperlinks/node_modules/has-flag": { @@ -15464,6 +18849,7 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, + "peer": true, "engines": { "node": ">=8" } @@ -15473,6 +18859,7 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, + "peer": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -15480,79 +18867,40 @@ "node": ">=8" } }, - "node_modules/svg-pathdata": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-5.0.5.tgz", - "integrity": "sha512-TAAvLNSE3fEhyl/Da19JWfMAdhSXTYeviXsLSoDT1UM76ADj5ndwAPX1FKQEgB/gFMPavOy6tOqfalXKUiXrow==", + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, "engines": { - "node": ">=6.9.5" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/svg-tags": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", - "integrity": "sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=", + "integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==", "dev": true, "peer": true }, - "node_modules/svg2ttf": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/svg2ttf/-/svg2ttf-4.3.0.tgz", - "integrity": "sha512-LZ0B7zzHWLWbzLzwaKGHQvPOuxCXLReIb3LSxFSGUy1gMw2Utk6KGNbTmbmRL6Rk1qDSmTixnDrQgnXaL9n0CA==", - "dev": true, - "dependencies": { - "argparse": "^1.0.6", - "cubic2quad": "^1.0.0", - "lodash": "^4.17.10", - "microbuffer": "^1.0.0", - "svgpath": "^2.1.5", - "xmldom": "~0.1.22" - }, - "bin": { - "svg2ttf": "svg2ttf.js" - } - }, - "node_modules/svgicons2svgfont": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/svgicons2svgfont/-/svgicons2svgfont-9.2.0.tgz", - "integrity": "sha512-mWeiuob7L2ZTcnAEP4JvSQ1pnIsGjV16ykQ0fCiiXqoUAQ/iNsDvBc601ojjfP89eCPtr3IVZ9mDxYpdxYO3xQ==", - "dev": true, - "dependencies": { - "array.prototype.flatmap": "1.2.4", - "commander": "^4.0.1", - "geometry-interfaces": "^1.1.4", - "glob": "^7.1.6", - "neatequal": "^1.0.0", - "readable-stream": "^3.4.0", - "sax": "^1.2.4", - "string.fromcodepoint": "^0.2.1", - "string.prototype.codepointat": "^0.2.1", - "svg-pathdata": "^5.0.2" - }, - "bin": { - "svgicons2svgfont": "bin/svgicons2svgfont.js" - }, - "engines": { - "node": ">=6.9.5" - } - }, - "node_modules/svgpath": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/svgpath/-/svgpath-2.3.1.tgz", - "integrity": "sha512-wNz6lCoj+99GMoyU7SozTfPqiLHz6WcJYZ30Z+F4lF/gPtxWHBCpZ4DhoDI0+oZ0dObKyYsJdSPGbL2mJq/qCg==", - "dev": true - }, "node_modules/symbol-tree": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", "dev": true }, + "node_modules/tabbable": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==" + }, "node_modules/table": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.5.tgz", - "integrity": "sha512-LFNeryOqiQHqCVKzhkymKwt6ozeRhlm8IL1mE8rNUurkir4heF6PzMyRgaTa4tlyPTGGgXuvVOF/OLWiH09Lqw==", + "version": "6.8.2", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.2.tgz", + "integrity": "sha512-w2sfv80nrAh2VCbqR5AK27wswXhqcck2AhfnNW76beQXskGZ1V12GwS//yYVa3d3fcvAip2OUnbDAjW2k3v9fA==", "dev": true, "peer": true, "dependencies": { @@ -15567,16 +18915,16 @@ } }, "node_modules/table/node_modules/ajv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.0.tgz", - "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz", + "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==", "dev": true, "peer": true, "dependencies": { - "fast-deep-equal": "^3.1.1", + "fast-deep-equal": "^3.1.3", "json-schema-traverse": "^1.0.0", "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "uri-js": "^4.4.1" }, "funding": { "type": "github", @@ -15594,36 +18942,23 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, "peer": true, "engines": { "node": ">=6" } }, - "node_modules/terminal-link": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", - "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.2.1", - "supports-hyperlinks": "^2.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/terser": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.0.tgz", - "integrity": "sha512-HP5/9hp2UaZt5fYkuhNBR8YyRcT8juw8+uFbAme53iN9hblvKnLUTKkmwJG6ocWpIKf8UK4DoeWG4ty0J6S6/g==", + "version": "5.27.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.27.0.tgz", + "integrity": "sha512-bi1HRwVRskAjheeYl291n3JC4GgO/Ty4z1nVs5AAsmonJulGxpSektecnNedrwK9C7vpvVtcX3cw00VSLt7U2A==", + "dev": true, "peer": true, "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", "commander": "^2.20.0", - "source-map": "~0.7.2", - "source-map-support": "~0.5.19" + "source-map-support": "~0.5.20" }, "bin": { "terser": "bin/terser" @@ -15633,17 +18968,17 @@ } }, "node_modules/terser-webpack-plugin": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.3.tgz", - "integrity": "sha512-cxGbMqr6+A2hrIB5ehFIF+F/iST5ZOxvOmy9zih9ySbP1C2oEWQSOUS+2SNBTjzx5xLKO4xnod9eywdfq1Nb9A==", + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", + "dev": true, "peer": true, "dependencies": { - "jest-worker": "^27.0.2", - "p-limit": "^3.1.0", - "schema-utils": "^3.0.0", - "serialize-javascript": "^5.0.1", - "source-map": "^0.6.1", - "terser": "^5.7.0" + "@jridgewell/trace-mapping": "^0.3.20", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.26.0" }, "engines": { "node": ">= 10.13.0" @@ -15654,30 +18989,52 @@ }, "peerDependencies": { "webpack": "^5.1.0" - } - }, - "node_modules/terser-webpack-plugin/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/terser-webpack-plugin/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, "peer": true, "dependencies": { - "yocto-queue": "^0.1.0" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 10.13.0" } }, "node_modules/terser-webpack-plugin/node_modules/schema-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz", - "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, "peer": true, "dependencies": { - "@types/json-schema": "^7.0.6", + "@types/json-schema": "^7.0.8", "ajv": "^6.12.5", "ajv-keywords": "^3.5.2" }, @@ -15689,40 +19046,31 @@ "url": "https://opencollective.com/webpack" } }, - "node_modules/terser-webpack-plugin/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/terser-webpack-plugin/node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "node_modules/terser-webpack-plugin/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/terser/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "peer": true - }, - "node_modules/terser/node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "node_modules/terser/node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, "peer": true, - "engines": { - "node": ">= 8" + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, "node_modules/test-exclude": { @@ -15742,21 +19090,30 @@ "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true, "peer": true }, - "node_modules/throat": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz", - "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==", - "dev": true + "node_modules/thingies": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/thingies/-/thingies-1.21.0.tgz", + "integrity": "sha512-hsqsJsFMsV+aD4s3CWKk85ep/3I9XzYV/IXaSouJMYIoDlgyi11cBhsqYe9/geRfB0YIikBQg6raRaM+nIMP9g==", + "dev": true, + "license": "Unlicense", + "peer": true, + "engines": { + "node": ">=10.18" + }, + "peerDependencies": { + "tslib": "^2" + } }, "node_modules/thunky": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", "dev": true, + "license": "MIT", "peer": true }, "node_modules/timers-browserify": { @@ -15764,6 +19121,7 @@ "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", "dev": true, + "license": "MIT", "peer": true, "dependencies": { "setimmediate": "^1.0.4" @@ -15772,11 +19130,6 @@ "node": ">=0.6.0" } }, - "node_modules/tiny-emitter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", - "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==" - }, "node_modules/tinycolor2": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.4.2.tgz", @@ -15791,13 +19144,16 @@ "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", "dev": true }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, "engines": { - "node": ">=4" + "node": ">=8.0" } }, "node_modules/toastify-js": { @@ -15810,35 +19166,55 @@ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "dev": true, + "license": "MIT", "peer": true, "engines": { "node": ">=0.6" } }, "node_modules/tough-cookie": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", - "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", + "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", "dev": true, "dependencies": { "psl": "^1.1.33", "punycode": "^2.1.1", - "universalify": "^0.1.2" + "universalify": "^0.2.0", + "url-parse": "^1.5.3" }, "engines": { "node": ">=6" } }, "node_modules/tr46": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", "dev": true, "dependencies": { "punycode": "^2.1.1" }, "engines": { - "node": ">=8" + "node": ">=12" + } + }, + "node_modules/tree-dump": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/tree-dump/-/tree-dump-1.0.2.tgz", + "integrity": "sha512-dpev9ABuLWdEubk+cIaI9cHwRNNDjkBBLXTwI4UCUFdQ5xXKqNXoK4FEciw/vxf+NQ7Cb7sGUyeUtORvHIdRXQ==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/streamich" + }, + "peerDependencies": { + "tslib": "2" } }, "node_modules/tributejs": { @@ -15846,16 +19222,196 @@ "resolved": "https://registry.npmjs.org/tributejs/-/tributejs-5.1.3.tgz", "integrity": "sha512-B5CXihaVzXw+1UHhNFyAwUTMDk1EfoLP5Tj1VhD9yybZ1I8DZJEv8tZ1l0RJo0t0tk9ZhR8eG5tEsaCvRigmdQ==" }, - "node_modules/trim-newlines": { + "node_modules/trim-lines": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", - "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", + "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", + "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/trim-newlines": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-4.1.1.tgz", + "integrity": "sha512-jRKj0n0jXWo6kh62nA5TEh3+4igKDXLvzBJcPpiizP7oOolUrYIxmVBG9TOtHYFHoddUk6YvAkGeGoSVTXfQXQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/trough": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/trough/-/trough-2.1.0.tgz", + "integrity": "sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/ts-api-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", + "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, + "node_modules/ts-loader": { + "version": "9.5.1", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz", + "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==", + "dev": true, + "peer": true, + "dependencies": { + "chalk": "^4.1.0", + "enhanced-resolve": "^5.0.0", + "micromatch": "^4.0.0", + "semver": "^7.3.4", + "source-map": "^0.7.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "typescript": "*", + "webpack": "^5.0.0" + } + }, + "node_modules/ts-loader/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ts-loader/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/ts-loader/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/ts-loader/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/ts-loader/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ts-loader/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "peer": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-loader/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-loader/node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/ts-loader/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { "node": ">=8" } }, + "node_modules/ts-loader/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "peer": true + }, "node_modules/tsconfig": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/tsconfig/-/tsconfig-7.0.0.tgz", @@ -15882,9 +19438,9 @@ } }, "node_modules/tsconfig-paths/node_modules/json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", "dev": true, "peer": true, "dependencies": { @@ -15897,7 +19453,7 @@ "node_modules/tsconfig-paths/node_modules/strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true, "peer": true, "engines": { @@ -15907,14781 +19463,1725 @@ "node_modules/tsconfig/node_modules/strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true, "engines": { "node": ">=4" } - }, - "node_modules/tsconfig/node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/tslib": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", - "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" - }, - "node_modules/tty-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", - "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==", - "dev": true, - "peer": true - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "peer": true, - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "peer": true, - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, - "dependencies": { - "is-typedarray": "^1.0.0" - } - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/unicode-canonical-property-names-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", - "dev": true, - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", - "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", - "dev": true, - "peer": true, - "dependencies": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-match-property-value-ecmascript": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", - "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", - "dev": true, - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/unicode-property-aliases-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", - "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", - "dev": true, - "peer": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "dev": true, - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "deprecated": "Please see https://github.com/lydell/urix#deprecated", - "dev": true - }, - "node_modules/url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", - "dev": true, - "peer": true, - "dependencies": { - "punycode": "1.3.2", - "querystring": "0.2.0" - } - }, - "node_modules/url/node_modules/punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==", - "dev": true, - "peer": true - }, - "node_modules/util": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", - "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", - "dev": true, - "peer": true, - "dependencies": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "safe-buffer": "^5.1.2", - "which-typed-array": "^1.1.2" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "dev": true, - "peer": true, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/v-click-outside": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/v-click-outside/-/v-click-outside-3.1.2.tgz", - "integrity": "sha512-gMdRqfRE6m6XU6SiFi3dyBlFB2MWogiXpof8Aa3LQysrl9pzTndqp/iEaAphLoadaQUFnQ0ec6fLLaxr7LiY6A==", - "engines": { - "node": ">=6" - } - }, - "node_modules/v-tooltip": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/v-tooltip/-/v-tooltip-2.1.3.tgz", - "integrity": "sha512-xXngyxLQTOx/yUEy50thb8te7Qo4XU6h4LZB6cvEfVd9mnysUxLEoYwGWDdqR+l69liKsy3IPkdYff3J1gAJ5w==", - "dependencies": { - "@babel/runtime": "^7.13.10", - "lodash": "^4.17.21", - "popper.js": "^1.16.1", - "vue-resize": "^1.0.1" - } - }, - "node_modules/v-tooltip/node_modules/@babel/runtime": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.6.tgz", - "integrity": "sha512-/PCB2uJ7oM44tz8YhC4Z/6PeOKXp4K588f+5M3clr1M4zbqztlo0XEfJ2LEzj/FgwfgGcIdl8n7YYjTCI0BYwg==", - "dependencies": { - "regenerator-runtime": "^0.13.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/v8-compile-cache": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true, - "peer": true - }, - "node_modules/v8-to-istanbul": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", - "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" - }, - "engines": { - "node": ">=10.12.0" - } - }, - "node_modules/v8-to-istanbul/node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "peer": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/varstream": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/varstream/-/varstream-0.3.2.tgz", - "integrity": "sha1-GKxklHZfP/GjWtmkvgU77BiKXeE=", - "dev": true, - "dependencies": { - "readable-stream": "^1.0.33" - }, - "bin": { - "json2varstream": "cli/json2varstream.js", - "varstream2json": "cli/varstream2json.js" - }, - "engines": { - "node": ">=0.10.*" - } - }, - "node_modules/varstream/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - }, - "node_modules/varstream/node_modules/readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", - "dev": true, - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "node_modules/varstream/node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "dev": true, - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/vm-browserify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", - "dev": true, - "peer": true - }, - "node_modules/vue": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.0.tgz", - "integrity": "sha512-su25f1hocH+QNkVEqk+Oj7B+mkDIWU70l0YY7nYSJFEs3Z64njXxo65RUXnWH46ooEhKmEWyLdW6HcYn8coNrg==", - "dependencies": { - "@vue/compiler-sfc": "2.7.0", - "csstype": "^3.1.0" - } - }, - "node_modules/vue-click-outside": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/vue-click-outside/-/vue-click-outside-1.1.0.tgz", - "integrity": "sha512-pNyvAA9mRXJwPHlHJyjMb4IONSc7khS5lxGcMyE2EIKgNMAO279PWM9Hyq0d5J4FkiSRdmFLwnbjDd5UtPizHQ==" - }, - "node_modules/vue-clipboard2": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/vue-clipboard2/-/vue-clipboard2-0.3.3.tgz", - "integrity": "sha512-aNWXIL2DKgJyY/1OOeITwAQz1fHaCIGvUFHf9h8UcoQBG5a74MkdhS/xqoYe7DNZdQmZRL+TAdIbtUs9OyVjbw==", - "dependencies": { - "clipboard": "^2.0.0" - } - }, - "node_modules/vue-color": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/vue-color/-/vue-color-2.8.1.tgz", - "integrity": "sha512-BoLCEHisXi2QgwlhZBg9UepvzZZmi4176vbr+31Shen5WWZwSLVgdScEPcB+yrAtuHAz42309C0A4+WiL9lNBw==", - "dependencies": { - "clamp": "^1.0.1", - "lodash.throttle": "^4.0.0", - "material-colors": "^1.0.0", - "tinycolor2": "^1.1.2" - } - }, - "node_modules/vue-eslint-parser": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-8.3.0.tgz", - "integrity": "sha512-dzHGG3+sYwSf6zFBa0Gi9ZDshD7+ad14DGOdTLjruRVgZXe2J+DcZ9iUhyR48z5g1PqRa20yt3Njna/veLJL/g==", - "dev": true, - "peer": true, - "dependencies": { - "debug": "^4.3.2", - "eslint-scope": "^7.0.0", - "eslint-visitor-keys": "^3.1.0", - "espree": "^9.0.0", - "esquery": "^1.4.0", - "lodash": "^4.17.21", - "semver": "^7.3.5" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - }, - "peerDependencies": { - "eslint": ">=6.0.0" - } - }, - "node_modules/vue-eslint-parser/node_modules/eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", - "dev": true, - "peer": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/vue-eslint-parser/node_modules/eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", - "dev": true, - "peer": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/vue-eslint-parser/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "peer": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/vue-eslint-parser/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "peer": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/vue-eslint-parser/node_modules/semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "peer": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/vue-eslint-parser/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "peer": true - }, - "node_modules/vue-hot-reload-api": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz", - "integrity": "sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==", - "dev": true, - "peer": true - }, - "node_modules/vue-jest": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/vue-jest/-/vue-jest-3.0.7.tgz", - "integrity": "sha512-PIOxFM+wsBMry26ZpfBvUQ/DGH2hvp5khDQ1n51g3bN0TwFwTy4J85XVfxTRMukqHji/GnAoGUnlZ5Ao73K62w==", - "dev": true, - "dependencies": { - "babel-plugin-transform-es2015-modules-commonjs": "^6.26.0", - "chalk": "^2.1.0", - "deasync": "^0.1.15", - "extract-from-css": "^0.4.4", - "find-babel-config": "^1.1.0", - "js-beautify": "^1.6.14", - "node-cache": "^4.1.1", - "object-assign": "^4.1.1", - "source-map": "^0.5.6", - "tsconfig": "^7.0.0", - "vue-template-es2015-compiler": "^1.6.0" - }, - "peerDependencies": { - "babel-core": "^6.25.0 || ^7.0.0-0", - "vue": "^2.x", - "vue-template-compiler": "^2.x" - } - }, - "node_modules/vue-loader": { - "version": "15.9.8", - "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.9.8.tgz", - "integrity": "sha512-GwSkxPrihfLR69/dSV3+5CdMQ0D+jXg8Ma1S4nQXKJAznYFX14vHdc/NetQc34Dw+rBbIJyP7JOuVb9Fhprvog==", - "dev": true, - "peer": true, - "dependencies": { - "@vue/component-compiler-utils": "^3.1.0", - "hash-sum": "^1.0.2", - "loader-utils": "^1.1.0", - "vue-hot-reload-api": "^2.3.0", - "vue-style-loader": "^4.1.0" - }, - "peerDependencies": { - "css-loader": "*", - "webpack": "^3.0.0 || ^4.1.0 || ^5.0.0-0" - }, - "peerDependenciesMeta": { - "cache-loader": { - "optional": true - }, - "vue-template-compiler": { - "optional": true - } - } - }, - "node_modules/vue-material-design-icons": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/vue-material-design-icons/-/vue-material-design-icons-5.0.0.tgz", - "integrity": "sha512-lYSJFW/TyQqmg7MvUbEB8ua1mwWy/v8qve7QJuA/UWUAXC4/yVUdAm4pg/sM9+k5n7VLckBv6ucOROuGBsGPDQ==" - }, - "node_modules/vue-multiselect": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/vue-multiselect/-/vue-multiselect-2.1.6.tgz", - "integrity": "sha512-s7jmZPlm9FeueJg1RwJtnE9KNPtME/7C8uRWSfp9/yEN4M8XcS/d+bddoyVwVnvFyRh9msFo0HWeW0vTL8Qv+w==", - "engines": { - "node": ">= 4.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/vue-observe-visibility": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/vue-observe-visibility/-/vue-observe-visibility-0.4.6.tgz", - "integrity": "sha512-xo0CEVdkjSjhJoDdLSvoZoQrw/H2BlzB5jrCBKGZNXN2zdZgMuZ9BKrxXDjNP2AxlcCoKc8OahI3F3r3JGLv2Q==" - }, - "node_modules/vue-resize": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/vue-resize/-/vue-resize-1.0.1.tgz", - "integrity": "sha512-z5M7lJs0QluJnaoMFTIeGx6dIkYxOwHThlZDeQnWZBizKblb99GSejPnK37ZbNE/rVwDcYcHY+Io+AxdpY952w==", - "dependencies": { - "@babel/runtime": "^7.13.10" - }, - "peerDependencies": { - "vue": "^2.6.0" - } - }, - "node_modules/vue-resize/node_modules/@babel/runtime": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.6.tgz", - "integrity": "sha512-/PCB2uJ7oM44tz8YhC4Z/6PeOKXp4K588f+5M3clr1M4zbqztlo0XEfJ2LEzj/FgwfgGcIdl8n7YYjTCI0BYwg==", - "dependencies": { - "regenerator-runtime": "^0.13.4" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/vue-router": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.5.4.tgz", - "integrity": "sha512-x+/DLAJZv2mcQ7glH2oV9ze8uPwcI+H+GgTgTmb5I55bCgY3+vXWIsqbYUzbBSZnwFHEJku4eoaH/x98veyymQ==" - }, - "node_modules/vue-shortkey": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/vue-shortkey/-/vue-shortkey-3.1.7.tgz", - "integrity": "sha512-Wm/vPXXS+4Wl/LoYpD+cZc0J0HIoVlY8Ep0JLIqqswmAya3XUBtsqKbhzEf9sXo+3rZ5p1YsUyZfXas8XD7YjQ==", - "dependencies": { - "custom-event-polyfill": "^1.0.7", - "element-matches": "^0.1.2" - } - }, - "node_modules/vue-style-loader": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.3.tgz", - "integrity": "sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg==", - "dev": true, - "peer": true, - "dependencies": { - "hash-sum": "^1.0.2", - "loader-utils": "^1.0.2" - } - }, - "node_modules/vue-template-compiler": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.0.tgz", - "integrity": "sha512-b9kKOPNS6J2BVf9skXkKsUwQLP3Bjfb/gG6UoBt3fn4xUVEDko5TSWmkPGW6dSSeAOOvYEMALdouv9caKlTq0Q==", - "dev": true, - "dependencies": { - "de-indent": "^1.0.2", - "he": "^1.2.0" - } - }, - "node_modules/vue-template-es2015-compiler": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz", - "integrity": "sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw==", - "dev": true - }, - "node_modules/vue-virtual-scroller": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/vue-virtual-scroller/-/vue-virtual-scroller-1.0.10.tgz", - "integrity": "sha512-Hn4qSBDhRY4XdngPioYy/ykDjrLX/NMm1fQXm/4UQQ/Xv1x8JbHGFZNftQowTcfICgN7yc31AKnUk1UGLJ2ndA==", - "dependencies": { - "scrollparent": "^2.0.1", - "vue-observe-visibility": "^0.4.4", - "vue-resize": "^0.4.5" - }, - "peerDependencies": { - "vue": "^2.6.11" - } - }, - "node_modules/vue-virtual-scroller/node_modules/vue-resize": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/vue-resize/-/vue-resize-0.4.5.tgz", - "integrity": "sha512-bhP7MlgJQ8TIkZJXAfDf78uJO+mEI3CaLABLjv0WNzr4CcGRGPIAItyWYnP6LsPA4Oq0WE+suidNs6dgpO4RHg==", - "peerDependencies": { - "vue": "^2.3.0" - } - }, - "node_modules/vue-visible": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/vue-visible/-/vue-visible-1.0.2.tgz", - "integrity": "sha512-yaX2its9XAJKGuQqf7LsiZHHSkxsIK8rmCOQOvEGEoF41blKRK8qr9my4qYoD6ikdLss4n8tKqYBecmaY0+WJg==" - }, - "node_modules/vue2-datepicker": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/vue2-datepicker/-/vue2-datepicker-3.9.1.tgz", - "integrity": "sha512-LuvcgGR+sDYKcih0z+cyvYufGyBwUtIiwzJPwxE63C8gOsAWiE09KuGtZ3OxdQXJEQM2MGQ9t9t1t7382FiFOg==", - "dependencies": { - "date-format-parse": "^0.2.6" - }, - "peerDependencies": { - "vue": "^2.5.0" - } - }, - "node_modules/vuedraggable": { - "version": "2.24.3", - "resolved": "https://registry.npmjs.org/vuedraggable/-/vuedraggable-2.24.3.tgz", - "integrity": "sha512-6/HDXi92GzB+Hcs9fC6PAAozK1RLt1ewPTLjK0anTYguXLAeySDmcnqE8IC0xa7shvSzRjQXq3/+dsZ7ETGF3g==", - "dependencies": { - "sortablejs": "1.10.2" - } - }, - "node_modules/vuex": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/vuex/-/vuex-3.6.2.tgz", - "integrity": "sha512-ETW44IqCgBpVomy520DT5jf8n0zoCac+sxWnn+hMe/CzaSejb/eVw2YToiXYX+Ex/AuHHia28vWTq4goAexFbw==", - "peerDependencies": { - "vue": "^2.0.0" - } - }, - "node_modules/vuex-router-sync": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/vuex-router-sync/-/vuex-router-sync-5.0.0.tgz", - "integrity": "sha512-Mry2sO4kiAG64714X1CFpTA/shUH1DmkZ26DFDtwoM/yyx6OtMrc+MxrU+7vvbNLO9LSpgwkiJ8W+rlmRtsM+w==", - "peerDependencies": { - "vue-router": "^3.0.0", - "vuex": "^3.0.0" - } - }, - "node_modules/w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", - "dev": true, - "dependencies": { - "browser-process-hrtime": "^1.0.0" - } - }, - "node_modules/w3c-xmlserializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", - "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", - "dev": true, - "dependencies": { - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", - "dev": true, - "dependencies": { - "makeerror": "1.0.12" - } - }, - "node_modules/watchpack": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.3.1.tgz", - "integrity": "sha512-x0t0JuydIo8qCNctdDrn1OzH/qDzk2+rdCOC3YzumZ42fiMqmQ7T3xQurykYMhYfHaPHTp4ZxAx2NfUo1K6QaA==", - "peer": true, - "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "peer": true, - "dependencies": { - "minimalistic-assert": "^1.0.0" - } - }, - "node_modules/webidl-conversions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", - "dev": true, - "engines": { - "node": ">=10.4" - } - }, - "node_modules/webpack": { - "version": "5.67.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.67.0.tgz", - "integrity": "sha512-LjFbfMh89xBDpUMgA1W9Ur6Rn/gnr2Cq1jjHFPo4v6a79/ypznSYbAyPgGhwsxBtMIaEmDD1oJoA7BEYw/Fbrw==", - "peer": true, - "dependencies": { - "@types/eslint-scope": "^3.7.0", - "@types/estree": "^0.0.50", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.4.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.8.3", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.3.1", - "webpack-sources": "^3.2.3" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-cli": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.9.1.tgz", - "integrity": "sha512-JYRFVuyFpzDxMDB+v/nanUdQYcZtqFPGzmlW4s+UkPMFhSpfRNmf1z4AwYcHJVdvEFAM7FFCQdNTpsBYhDLusQ==", - "dev": true, - "peer": true, - "dependencies": { - "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^1.1.0", - "@webpack-cli/info": "^1.4.0", - "@webpack-cli/serve": "^1.6.0", - "colorette": "^2.0.14", - "commander": "^7.0.0", - "execa": "^5.0.0", - "fastest-levenshtein": "^1.0.12", - "import-local": "^3.0.2", - "interpret": "^2.2.0", - "rechoir": "^0.7.0", - "webpack-merge": "^5.7.3" - }, - "bin": { - "webpack-cli": "bin/cli.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "peerDependencies": { - "webpack": "4.x.x || 5.x.x" - }, - "peerDependenciesMeta": { - "@webpack-cli/generators": { - "optional": true - }, - "@webpack-cli/migrate": { - "optional": true - }, - "webpack-bundle-analyzer": { - "optional": true - }, - "webpack-dev-server": { - "optional": true - } - } - }, - "node_modules/webpack-cli/node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "dev": true, - "peer": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/webpack-dev-middleware": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.0.tgz", - "integrity": "sha512-MouJz+rXAm9B1OTOYaJnn6rtD/lWZPy2ufQCH3BPs8Rloh/Du6Jze4p7AeLYHkVi0giJnYLaSGDC7S+GM9arhg==", - "dev": true, - "peer": true, - "dependencies": { - "colorette": "^2.0.10", - "memfs": "^3.2.2", - "mime-types": "^2.1.31", - "range-parser": "^1.2.1", - "schema-utils": "^4.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/webpack-dev-middleware/node_modules/ajv": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.8.2.tgz", - "integrity": "sha512-x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw==", - "dev": true, - "peer": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/webpack-dev-middleware/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "peer": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/webpack-dev-middleware/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "peer": true - }, - "node_modules/webpack-dev-middleware/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "peer": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.7.2.tgz", - "integrity": "sha512-s6yEOSfPpB6g1T2+C5ZOUt5cQOMhjI98IVmmvMNb5cdiqHoxSUfACISHqU/wZy+q4ar/A9jW0pbNj7sa50XRVA==", - "dev": true, - "peer": true, - "dependencies": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/serve-index": "^1.9.1", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.2.2", - "ansi-html-community": "^0.0.8", - "bonjour": "^3.5.0", - "chokidar": "^3.5.2", - "colorette": "^2.0.10", - "compression": "^1.7.4", - "connect-history-api-fallback": "^1.6.0", - "default-gateway": "^6.0.3", - "del": "^6.0.0", - "express": "^4.17.1", - "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.0", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "portfinder": "^1.0.28", - "schema-utils": "^4.0.0", - "selfsigned": "^1.10.11", - "serve-index": "^1.9.1", - "sockjs": "^0.3.21", - "spdy": "^4.0.2", - "strip-ansi": "^7.0.0", - "webpack-dev-middleware": "^5.3.0", - "ws": "^8.1.0" - }, - "bin": { - "webpack-dev-server": "bin/webpack-dev-server.js" - }, - "engines": { - "node": ">= 12.13.0" - }, - "peerDependencies": { - "webpack": "^4.37.0 || ^5.0.0" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-dev-server/node_modules/ajv": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.8.2.tgz", - "integrity": "sha512-x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw==", - "dev": true, - "peer": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/webpack-dev-server/node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "peer": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, - "peerDependencies": { - "ajv": "^8.8.2" - } - }, - "node_modules/webpack-dev-server/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "peer": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/webpack-dev-server/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "peer": true - }, - "node_modules/webpack-dev-server/node_modules/schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "peer": true, - "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - }, - "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/webpack-dev-server/node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "dev": true, - "peer": true, - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/webpack-dev-server/node_modules/ws": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.4.0.tgz", - "integrity": "sha512-IHVsKe2pjajSUIl4KYMQOdlyliovpEPquKkqbwswulszzI7r0SfQrxnXdWAEqOlDCLrVSJzo+O1hAwdog2sKSQ==", - "dev": true, - "peer": true, - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", - "dev": true, - "peer": true, - "dependencies": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "peer": true, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/webpack/node_modules/acorn": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.4.1.tgz", - "integrity": "sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA==", - "peer": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/webpack/node_modules/acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "peer": true, - "peerDependencies": { - "acorn": "^8" - } - }, - "node_modules/webpack/node_modules/schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "peer": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, - "node_modules/websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dev": true, - "peer": true, - "dependencies": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", - "dev": true, - "dependencies": { - "iconv-lite": "0.4.24" - } - }, - "node_modules/whatwg-mimetype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", - "dev": true - }, - "node_modules/whatwg-url": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", - "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", - "dev": true, - "dependencies": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-typed-array": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.8.tgz", - "integrity": "sha512-Jn4e5PItbcAHyLoRDwvPj1ypu27DJbtdYXUa5zsinrUx77Uvfb0cXwwnGMTn7cjUfhhqgVQnVJCwF+7cgU7tpw==", - "dev": true, - "peer": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-abstract": "^1.20.0", - "for-each": "^0.3.3", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.9" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", - "dev": true, - "peer": true - }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "node_modules/write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "node_modules/ws": { - "version": "7.5.7", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz", - "integrity": "sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A==", - "dev": true, - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", - "dev": true - }, - "node_modules/xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true - }, - "node_modules/xmldom": { - "version": "0.1.31", - "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.31.tgz", - "integrity": "sha512-yS2uJflVQs6n+CyjHoaBmVSqIDevTAWrzMmjG1Gc7h1qQ7uVozNhEPJAwZXWyGQ/Gafo3fCwrcaokezLPupVyQ==", - "deprecated": "Deprecated due to CVE-2021-21366 resolved in 0.5.0", - "dev": true, - "engines": { - "node": ">=0.1" - } - }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true, - "peer": true, - "engines": { - "node": ">=0.4" - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true, - "peer": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - } - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", - "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", - "dev": true, - "requires": { - "@babel/highlight": "^7.16.7" - } - }, - "@babel/compat-data": { - "version": "7.16.4", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.4.tgz", - "integrity": "sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q==", - "dev": true - }, - "@babel/core": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.16.7.tgz", - "integrity": "sha512-aeLaqcqThRNZYmbMqtulsetOQZ/5gbR/dWruUCJcpas4Qoyy+QeagfDsPdMrqwsPRDNxJvBlRiZxxX7THO7qtA==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.16.7", - "@babel/helper-compilation-targets": "^7.16.7", - "@babel/helper-module-transforms": "^7.16.7", - "@babel/helpers": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.7", - "@babel/types": "^7.16.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.1.2", - "semver": "^6.3.0", - "source-map": "^0.5.0" - } - }, - "@babel/eslint-parser": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.17.0.tgz", - "integrity": "sha512-PUEJ7ZBXbRkbq3qqM/jZ2nIuakUBqCYc7Qf52Lj7dlZ6zERnqisdHioL0l4wwQZnmskMeasqUNzLBFKs3nylXA==", - "dev": true, - "peer": true, - "requires": { - "eslint-scope": "^5.1.1", - "eslint-visitor-keys": "^2.1.0", - "semver": "^6.3.0" - } - }, - "@babel/generator": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.16.7.tgz", - "integrity": "sha512-/ST3Sg8MLGY5HVYmrjOgL60ENux/HfO/CsUh7y4MalThufhE/Ff/6EibFDHi4jiDCaWfJKoqbE6oTh21c5hrRg==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.14.5.tgz", - "integrity": "sha512-EivH9EgBIb+G8ij1B2jAwSH36WnGvkQSEC6CkX/6v6ZFlw5fVOHvsgGF4uiEHO2GzMvunZb6tDLQEQSdrdocrA==", - "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.14.5.tgz", - "integrity": "sha512-YTA/Twn0vBXDVGJuAX6PwW7x5zQei1luDDo2Pl6q1qZ7hVNl0RZrhHCQG/ArGpR29Vl7ETiB8eJyrvpuRp300w==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.14.5", - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-compilation-targets": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.7.tgz", - "integrity": "sha512-mGojBwIWcwGD6rfqgRXVlVYmPAv7eOpIemUG3dGnDdCY4Pae70ROij3XmfrH6Fa1h1aiDylpglbZyktfzyo/hA==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.16.4", - "@babel/helper-validator-option": "^7.16.7", - "browserslist": "^4.17.5", - "semver": "^6.3.0" - } - }, - "@babel/helper-create-class-features-plugin": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.6.tgz", - "integrity": "sha512-Z6gsfGofTxH/+LQXqYEK45kxmcensbzmk/oi8DmaQytlQCgqNZt9XQF8iqlI/SeXWVjaMNxvYvzaYw+kh42mDg==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "@babel/helper-function-name": "^7.14.5", - "@babel/helper-member-expression-to-functions": "^7.14.5", - "@babel/helper-optimise-call-expression": "^7.14.5", - "@babel/helper-replace-supers": "^7.14.5", - "@babel/helper-split-export-declaration": "^7.14.5" - } - }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.14.5.tgz", - "integrity": "sha512-TLawwqpOErY2HhWbGJ2nZT5wSkR192QpN+nBg1THfBfftrlvOh+WbhrxXCH4q4xJ9Gl16BGPR/48JA+Ryiho/A==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "regexpu-core": "^4.7.1" - } - }, - "@babel/helper-define-polyfill-provider": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.2.3.tgz", - "integrity": "sha512-RH3QDAfRMzj7+0Nqu5oqgO5q9mFtQEVvCRsi8qCEfzLR9p2BHfn5FzhSB2oj1fF7I2+DcTORkYaQ6aTR9Cofew==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-compilation-targets": "^7.13.0", - "@babel/helper-module-imports": "^7.12.13", - "@babel/helper-plugin-utils": "^7.13.0", - "@babel/traverse": "^7.13.0", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" - } - }, - "@babel/helper-environment-visitor": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", - "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-explode-assignable-expression": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.14.5.tgz", - "integrity": "sha512-Htb24gnGJdIGT4vnRKMdoXiOIlqOLmdiUYpAQ0mYfgVT/GDm8GOYhgi4GL+hMKrkiPRohO4ts34ELFsGAPQLDQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-function-name": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz", - "integrity": "sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz", - "integrity": "sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", - "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.14.7.tgz", - "integrity": "sha512-TMUt4xKxJn6ccjcOW7c4hlwyJArizskAhoSTOCkA0uZ+KghIaci0Qg9R043kUMWI9mtQfgny+NQ5QATnZ+paaA==", - "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-module-imports": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", - "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-module-transforms": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.16.7.tgz", - "integrity": "sha512-gaqtLDxJEFCeQbYp9aLAefjhkKdjKcdh6DB7jniIGU3Pz52WAmP268zK0VgPz9hUNkMSYeH976K2/Y6yPadpng==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-simple-access": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/helper-validator-identifier": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.7", - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz", - "integrity": "sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA==", - "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", - "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==", - "dev": true - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.14.5.tgz", - "integrity": "sha512-rLQKdQU+HYlxBwQIj8dk4/0ENOUEhA/Z0l4hN8BexpvmSMN9oA9EagjnhnDpNsRdWCfjwa4mn/HyBXO9yhQP6A==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "@babel/helper-wrap-function": "^7.14.5", - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-replace-supers": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.5.tgz", - "integrity": "sha512-3i1Qe9/8x/hCHINujn+iuHy+mMRLoc77b2nI9TB0zjH1hvn9qGlXjWlggdwUcju36PkPCy/lpM7LLUdcTyH4Ow==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-member-expression-to-functions": "^7.14.5", - "@babel/helper-optimise-call-expression": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-simple-access": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.16.7.tgz", - "integrity": "sha512-ZIzHVyoeLMvXMN/vok/a4LWRy8G2v205mNP0XOuf9XRLyX5/u9CnVulUtDgUTama3lT+bf/UqucuZjqiGuTS1g==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.14.5.tgz", - "integrity": "sha512-dmqZB7mrb94PZSAOYtr+ZN5qt5owZIAgqtoTuqiFbHFtxgEcmQlRJVI+bO++fciBunXtB6MK7HrzrfcAzIz2NQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.14.5" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", - "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", - "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.14.5.tgz", - "integrity": "sha512-YEdjTCq+LNuNS1WfxsDCNpgXkJaIyqco6DAelTUjT4f2KIWC1nBcaCaSdHTBqQVLnTBexBcVcFhLSU1KnYuePQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-function-name": "^7.14.5", - "@babel/template": "^7.14.5", - "@babel/traverse": "^7.14.5", - "@babel/types": "^7.14.5" - } - }, - "@babel/helpers": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.7.tgz", - "integrity": "sha512-9ZDoqtfY7AuEOt3cxchfii6C7GDyyMBffktR5B2jvWv8u2+efwvpnVKXMWzNehqy68tKgAfSwfdw/lWpthS2bw==", - "dev": true, - "requires": { - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.7", - "@babel/types": "^7.16.7" - } - }, - "@babel/highlight": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.7.tgz", - "integrity": "sha512-aKpPMfLvGO3Q97V0qhw/V2SWNWlwfJknuwAunU7wZLSfrM4xTBvg7E5opUVi1kJTBKihE38CPg4nBiqX83PWYw==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.16.7", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.6.tgz", - "integrity": "sha512-uQVSa9jJUe/G/304lXspfWVpKpK4euFLgGiMQFOCpM/bgcAdeoHwi/OQz23O9GK2osz26ZiXRRV9aV+Yl1O8tw==" - }, - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5.tgz", - "integrity": "sha512-ZoJS2XCKPBfTmL122iP6NM9dOg+d4lc9fFk3zxc8iDjvt8Pk4+TlsHSKhIPf6X+L5ORCdBzqMZDjL/WHj7WknQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5", - "@babel/plugin-proposal-optional-chaining": "^7.14.5" - } - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.14.7.tgz", - "integrity": "sha512-RK8Wj7lXLY3bqei69/cc25gwS5puEc3dknoFPFbqfy3XxYQBQFvu4ioWpafMBAB+L9NyptQK4nMOa5Xz16og8Q==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-remap-async-to-generator": "^7.14.5", - "@babel/plugin-syntax-async-generators": "^7.8.4" - } - }, - "@babel/plugin-proposal-class-properties": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.14.5.tgz", - "integrity": "sha512-q/PLpv5Ko4dVc1LYMpCY7RVAAO4uk55qPwrIuJ5QJ8c6cVuAmhu7I/49JOppXL6gXf7ZHzpRVEUZdYoPLM04Gg==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-proposal-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.14.5.tgz", - "integrity": "sha512-KBAH5ksEnYHCegqseI5N9skTdxgJdmDoAOc0uXa+4QMYKeZD0w5IARh4FMlTNtaHhbB8v+KzMdTgxMMzsIy6Yg==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-class-static-block": "^7.14.5" - } - }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.14.5.tgz", - "integrity": "sha512-ExjiNYc3HDN5PXJx+bwC50GIx/KKanX2HiggnIUAYedbARdImiCU4RhhHfdf0Kd7JNXGpsBBBCOm+bBVy3Gb0g==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" - } - }, - "@babel/plugin-proposal-export-namespace-from": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.14.5.tgz", - "integrity": "sha512-g5POA32bXPMmSBu5Dx/iZGLGnKmKPc5AiY7qfZgurzrCYgIztDlHFbznSNCoQuv57YQLnQfaDi7dxCtLDIdXdA==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3" - } - }, - "@babel/plugin-proposal-json-strings": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.14.5.tgz", - "integrity": "sha512-NSq2fczJYKVRIsUJyNxrVUMhB27zb7N7pOFGQOhBKJrChbGcgEAqyZrmZswkPk18VMurEeJAaICbfm57vUeTbQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-json-strings": "^7.8.3" - } - }, - "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.14.5.tgz", - "integrity": "sha512-YGn2AvZAo9TwyhlLvCCWxD90Xq8xJ4aSgaX3G5D/8DW94L8aaT+dS5cSP+Z06+rCJERGSr9GxMBZ601xoc2taw==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" - } - }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.14.5.tgz", - "integrity": "sha512-gun/SOnMqjSb98Nkaq2rTKMwervfdAoz6NphdY0vTfuzMfryj+tDGb2n6UkDKwez+Y8PZDhE3D143v6Gepp4Hg==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" - } - }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.14.5.tgz", - "integrity": "sha512-yiclALKe0vyZRZE0pS6RXgjUOt87GWv6FYa5zqj15PvhOGFO69R5DusPlgK/1K5dVnCtegTiWu9UaBSrLLJJBg==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" - } - }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.7.tgz", - "integrity": "sha512-082hsZz+sVabfmDWo1Oct1u1AgbKbUAyVgmX4otIc7bdsRgHBXwTwb3DpDmD4Eyyx6DNiuz5UAATT655k+kL5g==", - "dev": true, - "peer": true, - "requires": { - "@babel/compat-data": "^7.14.7", - "@babel/helper-compilation-targets": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.14.5" - } - }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.14.5.tgz", - "integrity": "sha512-3Oyiixm0ur7bzO5ybNcZFlmVsygSIQgdOa7cTfOYCMY+wEPAYhZAJxi3mixKFCTCKUhQXuCTtQ1MzrpL3WT8ZQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" - } - }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.14.5.tgz", - "integrity": "sha512-ycz+VOzo2UbWNI1rQXxIuMOzrDdHGrI23fRiz/Si2R4kv2XZQ1BK8ccdHwehMKBlcH/joGW/tzrUmo67gbJHlQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" - } - }, - "@babel/plugin-proposal-private-methods": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.14.5.tgz", - "integrity": "sha512-838DkdUA1u+QTCplatfq4B7+1lnDa/+QMI89x5WZHBcnNv+47N8QEj2k9I2MUU9xIv8XJ4XvPCviM/Dj7Uwt9g==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-create-class-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-proposal-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-62EyfyA3WA0mZiF2e2IV9mc9Ghwxcg8YTu8BS4Wss4Y3PY725OmS9M0qLORbJwLqFtGh+jiE4wAmocK2CTUK2Q==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "@babel/helper-create-class-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5" - } - }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.14.5.tgz", - "integrity": "sha512-6axIeOU5LnY471KenAB9vI8I5j7NQ2d652hIYwVyRfgaZT5UpiqFKCuVXCDMSrU+3VFafnu2c5m3lrWIlr6A5Q==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - } - }, - "@babel/plugin-syntax-class-static-block": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-export-namespace-from": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", - "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.3" - } - }, - "@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-private-property-in-object": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-syntax-typescript": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.14.5.tgz", - "integrity": "sha512-u6OXzDaIXjEstBRRoBCQ/uKQKlbuaeE5in0RvWdA4pN6AhqxTIwUsnHPU1CFZA/amYObMsuWhYfRl3Ch90HD0Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.14.5.tgz", - "integrity": "sha512-KOnO0l4+tD5IfOdi4x8C1XmEIRWUjNRV8wc6K2vz/3e8yAOoZZvsRXRRIF/yo/MAOFb4QjtAw9xSxMXbSMRy8A==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.14.5.tgz", - "integrity": "sha512-szkbzQ0mNk0rpu76fzDdqSyPu0MuvpXgC+6rz5rpMb5OIRxdmHfQxrktL8CYolL2d8luMCZTR0DpIMIdL27IjA==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-module-imports": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-remap-async-to-generator": "^7.14.5" - } - }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.14.5.tgz", - "integrity": "sha512-dtqWqdWZ5NqBX3KzsVCWfQI3A53Ft5pWFCT2eCVUftWZgjc5DpDponbIF1+c+7cSGk2wN0YK7HGL/ezfRbpKBQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-block-scoping": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.5.tgz", - "integrity": "sha512-LBYm4ZocNgoCqyxMLoOnwpsmQ18HWTQvql64t3GvMUzLQrNoV1BDG0lNftC8QKYERkZgCCT/7J5xWGObGAyHDw==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-classes": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.5.tgz", - "integrity": "sha512-J4VxKAMykM06K/64z9rwiL6xnBHgB1+FVspqvlgCdwD1KUbQNfszeKVVOMh59w3sztHYIZDgnhOC4WbdEfHFDA==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.14.5", - "@babel/helper-function-name": "^7.14.5", - "@babel/helper-optimise-call-expression": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-replace-supers": "^7.14.5", - "@babel/helper-split-export-declaration": "^7.14.5", - "globals": "^11.1.0" - } - }, - "@babel/plugin-transform-computed-properties": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.14.5.tgz", - "integrity": "sha512-pWM+E4283UxaVzLb8UBXv4EIxMovU4zxT1OPnpHJcmnvyY9QbPPTKZfEj31EUvG3/EQRbYAGaYEUZ4yWOBC2xg==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-destructuring": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.7.tgz", - "integrity": "sha512-0mDE99nK+kVh3xlc5vKwB6wnP9ecuSj+zQCa/n0voENtP/zymdT4HH6QEb65wjjcbqr1Jb/7z9Qp7TF5FtwYGw==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.14.5.tgz", - "integrity": "sha512-loGlnBdj02MDsFaHhAIJzh7euK89lBrGIdM9EAtHFo6xKygCUGuuWe07o1oZVk287amtW1n0808sQM99aZt3gw==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.14.5.tgz", - "integrity": "sha512-iJjbI53huKbPDAsJ8EmVmvCKeeq21bAze4fu9GBQtSLqfvzj2oRuHVx4ZkDwEhg1htQ+5OBZh/Ab0XDf5iBZ7A==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.14.5.tgz", - "integrity": "sha512-jFazJhMBc9D27o9jDnIE5ZErI0R0m7PbKXVq77FFvqFbzvTMuv8jaAwLZ5PviOLSFttqKIW0/wxNSDbjLk0tYA==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-for-of": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.14.5.tgz", - "integrity": "sha512-CfmqxSUZzBl0rSjpoQSFoR9UEj3HzbGuGNL21/iFTmjb5gFggJp3ph0xR1YBhexmLoKRHzgxuFvty2xdSt6gTA==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-function-name": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.14.5.tgz", - "integrity": "sha512-vbO6kv0fIzZ1GpmGQuvbwwm+O4Cbm2NrPzwlup9+/3fdkuzo1YqOZcXw26+YUJB84Ja7j9yURWposEHLYwxUfQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-function-name": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-literals": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.14.5.tgz", - "integrity": "sha512-ql33+epql2F49bi8aHXxvLURHkxJbSmMKl9J5yHqg4PLtdE6Uc48CH1GS6TQvZ86eoB/ApZXwm7jlA+B3kra7A==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.14.5.tgz", - "integrity": "sha512-WkNXxH1VXVTKarWFqmso83xl+2V3Eo28YY5utIkbsmXoItO8Q3aZxN4BTS2k0hz9dGUloHK26mJMyQEYfkn/+Q==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-modules-amd": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.14.5.tgz", - "integrity": "sha512-3lpOU8Vxmp3roC4vzFpSdEpGUWSMsHFreTWOMMLzel2gNGfHE5UWIh/LN6ghHs2xurUp4jRFYMUIZhuFbody1g==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.14.5.tgz", - "integrity": "sha512-en8GfBtgnydoao2PS+87mKyw62k02k7kJ9ltbKe0fXTHrQmG6QZZflYuGI1VVG7sVpx4E1n7KBpNlPb8m78J+A==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-simple-access": "^7.14.5", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.14.5.tgz", - "integrity": "sha512-mNMQdvBEE5DcMQaL5LbzXFMANrQjd2W7FPzg34Y4yEz7dBgdaC+9B84dSO+/1Wba98zoDbInctCDo4JGxz1VYA==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-hoist-variables": "^7.14.5", - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-validator-identifier": "^7.14.5", - "babel-plugin-dynamic-import-node": "^2.3.3" - } - }, - "@babel/plugin-transform-modules-umd": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.14.5.tgz", - "integrity": "sha512-RfPGoagSngC06LsGUYyM9QWSXZ8MysEjDJTAea1lqRjNECE3y0qIJF/qbvJxc4oA4s99HumIMdXOrd+TdKaAAA==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-module-transforms": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.14.7.tgz", - "integrity": "sha512-DTNOTaS7TkW97xsDMrp7nycUVh6sn/eq22VaxWfEdzuEbRsiaOU0pqU7DlyUGHVsbQbSghvjKRpEl+nUCKGQSg==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.14.5" - } - }, - "@babel/plugin-transform-new-target": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.14.5.tgz", - "integrity": "sha512-Nx054zovz6IIRWEB49RDRuXGI4Gy0GMgqG0cII9L3MxqgXz/+rgII+RU58qpo4g7tNEx1jG7rRVH4ihZoP4esQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-object-super": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.14.5.tgz", - "integrity": "sha512-MKfOBWzK0pZIrav9z/hkRqIk/2bTv9qvxHzPQc12RcVkMOzpIKnFCNYJip00ssKWYkd8Sf5g0Wr7pqJ+cmtuFg==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-replace-supers": "^7.14.5" - } - }, - "@babel/plugin-transform-parameters": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.5.tgz", - "integrity": "sha512-Tl7LWdr6HUxTmzQtzuU14SqbgrSKmaR77M0OKyq4njZLQTPfOvzblNKyNkGwOfEFCEx7KeYHQHDI0P3F02IVkA==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-property-literals": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.14.5.tgz", - "integrity": "sha512-r1uilDthkgXW8Z1vJz2dKYLV1tuw2xsbrp3MrZmD99Wh9vsfKoob+JTgri5VUb/JqyKRXotlOtwgu4stIYCmnw==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-regenerator": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.14.5.tgz", - "integrity": "sha512-NVIY1W3ITDP5xQl50NgTKlZ0GrotKtLna08/uGY6ErQt6VEQZXla86x/CTddm5gZdcr+5GSsvMeTmWA5Ii6pkg==", - "dev": true, - "peer": true, - "requires": { - "regenerator-transform": "^0.14.2" - } - }, - "@babel/plugin-transform-reserved-words": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.14.5.tgz", - "integrity": "sha512-cv4F2rv1nD4qdexOGsRQXJrOcyb5CrgjUH9PKrrtyhSDBNWGxd0UIitjyJiWagS+EbUGjG++22mGH1Pub8D6Vg==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.14.5.tgz", - "integrity": "sha512-xLucks6T1VmGsTB+GWK5Pl9Jl5+nRXD1uoFdA5TSO6xtiNjtXTjKkmPdFXVLGlK5A2/or/wQMKfmQ2Y0XJfn5g==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-spread": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.14.6.tgz", - "integrity": "sha512-Zr0x0YroFJku7n7+/HH3A2eIrGMjbmAIbJSVv0IZ+t3U2WUQUA64S/oeied2e+MaGSjmt4alzBCsK9E8gh+fag==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-skip-transparent-expression-wrappers": "^7.14.5" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.14.5.tgz", - "integrity": "sha512-Z7F7GyvEMzIIbwnziAZmnSNpdijdr4dWt+FJNBnBLz5mwDFkqIXU9wmBcWWad3QeJF5hMTkRe4dAq2sUZiG+8A==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.14.5.tgz", - "integrity": "sha512-22btZeURqiepOfuy/VkFr+zStqlujWaarpMErvay7goJS6BWwdd6BY9zQyDLDa4x2S3VugxFb162IZ4m/S/+Gg==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.14.5.tgz", - "integrity": "sha512-lXzLD30ffCWseTbMQzrvDWqljvZlHkXU+CnseMhkMNqU1sASnCsz3tSzAaH3vCUXb9PHeUb90ZT1BdFTm1xxJw==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-unicode-escapes": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.14.5.tgz", - "integrity": "sha512-crTo4jATEOjxj7bt9lbYXcBAM3LZaUrbP2uUdxb6WIorLmjNKSpHfIybgY4B8SRpbf8tEVIWH3Vtm7ayCrKocA==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.14.5.tgz", - "integrity": "sha512-UygduJpC5kHeCiRw/xDVzC+wj8VaYSoKl5JNVmbP7MadpNinAm3SvZCxZ42H37KZBKztz46YC73i9yV34d0Tzw==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/polyfill": { - "version": "7.2.5", - "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.2.5.tgz", - "integrity": "sha512-8Y/t3MWThtMLYr0YNC/Q76tqN1w30+b0uQMeFUYauG2UGTR19zyUtFrAzT23zNtBxPp+LbE5E/nwV/q/r3y6ug==", - "requires": { - "core-js": "^2.5.7", - "regenerator-runtime": "^0.12.0" - }, - "dependencies": { - "core-js": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", - "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==" - }, - "regenerator-runtime": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz", - "integrity": "sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg==" - } - } - }, - "@babel/preset-env": { - "version": "7.14.7", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.7.tgz", - "integrity": "sha512-itOGqCKLsSUl0Y+1nSfhbuuOlTs0MJk2Iv7iSH+XT/mR8U1zRLO7NjWlYXB47yhK4J/7j+HYty/EhFZDYKa/VA==", - "dev": true, - "peer": true, - "requires": { - "@babel/compat-data": "^7.14.7", - "@babel/helper-compilation-targets": "^7.14.5", - "@babel/helper-plugin-utils": "^7.14.5", - "@babel/helper-validator-option": "^7.14.5", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.14.5", - "@babel/plugin-proposal-async-generator-functions": "^7.14.7", - "@babel/plugin-proposal-class-properties": "^7.14.5", - "@babel/plugin-proposal-class-static-block": "^7.14.5", - "@babel/plugin-proposal-dynamic-import": "^7.14.5", - "@babel/plugin-proposal-export-namespace-from": "^7.14.5", - "@babel/plugin-proposal-json-strings": "^7.14.5", - "@babel/plugin-proposal-logical-assignment-operators": "^7.14.5", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.5", - "@babel/plugin-proposal-numeric-separator": "^7.14.5", - "@babel/plugin-proposal-object-rest-spread": "^7.14.7", - "@babel/plugin-proposal-optional-catch-binding": "^7.14.5", - "@babel/plugin-proposal-optional-chaining": "^7.14.5", - "@babel/plugin-proposal-private-methods": "^7.14.5", - "@babel/plugin-proposal-private-property-in-object": "^7.14.5", - "@babel/plugin-proposal-unicode-property-regex": "^7.14.5", - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-class-properties": "^7.12.13", - "@babel/plugin-syntax-class-static-block": "^7.14.5", - "@babel/plugin-syntax-dynamic-import": "^7.8.3", - "@babel/plugin-syntax-export-namespace-from": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.10.4", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-private-property-in-object": "^7.14.5", - "@babel/plugin-syntax-top-level-await": "^7.14.5", - "@babel/plugin-transform-arrow-functions": "^7.14.5", - "@babel/plugin-transform-async-to-generator": "^7.14.5", - "@babel/plugin-transform-block-scoped-functions": "^7.14.5", - "@babel/plugin-transform-block-scoping": "^7.14.5", - "@babel/plugin-transform-classes": "^7.14.5", - "@babel/plugin-transform-computed-properties": "^7.14.5", - "@babel/plugin-transform-destructuring": "^7.14.7", - "@babel/plugin-transform-dotall-regex": "^7.14.5", - "@babel/plugin-transform-duplicate-keys": "^7.14.5", - "@babel/plugin-transform-exponentiation-operator": "^7.14.5", - "@babel/plugin-transform-for-of": "^7.14.5", - "@babel/plugin-transform-function-name": "^7.14.5", - "@babel/plugin-transform-literals": "^7.14.5", - "@babel/plugin-transform-member-expression-literals": "^7.14.5", - "@babel/plugin-transform-modules-amd": "^7.14.5", - "@babel/plugin-transform-modules-commonjs": "^7.14.5", - "@babel/plugin-transform-modules-systemjs": "^7.14.5", - "@babel/plugin-transform-modules-umd": "^7.14.5", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.14.7", - "@babel/plugin-transform-new-target": "^7.14.5", - "@babel/plugin-transform-object-super": "^7.14.5", - "@babel/plugin-transform-parameters": "^7.14.5", - "@babel/plugin-transform-property-literals": "^7.14.5", - "@babel/plugin-transform-regenerator": "^7.14.5", - "@babel/plugin-transform-reserved-words": "^7.14.5", - "@babel/plugin-transform-shorthand-properties": "^7.14.5", - "@babel/plugin-transform-spread": "^7.14.6", - "@babel/plugin-transform-sticky-regex": "^7.14.5", - "@babel/plugin-transform-template-literals": "^7.14.5", - "@babel/plugin-transform-typeof-symbol": "^7.14.5", - "@babel/plugin-transform-unicode-escapes": "^7.14.5", - "@babel/plugin-transform-unicode-regex": "^7.14.5", - "@babel/preset-modules": "^0.1.4", - "@babel/types": "^7.14.5", - "babel-plugin-polyfill-corejs2": "^0.2.2", - "babel-plugin-polyfill-corejs3": "^0.2.2", - "babel-plugin-polyfill-regenerator": "^0.2.2", - "core-js-compat": "^3.15.0", - "semver": "^6.3.0" - } - }, - "@babel/preset-modules": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.4.tgz", - "integrity": "sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - } - }, - "@babel/runtime": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.3.4.tgz", - "integrity": "sha512-IvfvnMdSaLBateu0jfsYIpZTxAc2cKEXEMiezGGN75QcBcecDUKd3PgLAncT0oOgxKy8dd8hrJKj9MfzgfZd6g==", - "requires": { - "regenerator-runtime": "^0.12.0" - }, - "dependencies": { - "regenerator-runtime": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz", - "integrity": "sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg==" - } - } - }, - "@babel/template": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", - "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" - } - }, - "@babel/traverse": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.7.tgz", - "integrity": "sha512-8KWJPIb8c2VvY8AJrydh6+fVRo2ODx1wYBU2398xJVq0JomuLBZmVQzLPBblJgHIGYG4znCpUZUZ0Pt2vdmVYQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.16.7", - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.16.7", - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7", - "debug": "^4.1.0", - "globals": "^11.1.0" - } - }, - "@babel/types": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.16.7.tgz", - "integrity": "sha512-E8HuV7FO9qLpx6OtoGfUQ2cjIYnbFwvZWYBS+87EwtdMvmUPJSwykpovFB+8insbpF0uJcpr8KMUi64XZntZcg==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.16.7", - "to-fast-properties": "^2.0.0" - } - }, - "@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, - "@discoveryjs/json-ext": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.6.tgz", - "integrity": "sha512-ws57AidsDvREKrZKYffXddNkyaF14iHNHm8VQnZH6t99E8gczjNN0GpvcGny0imC80yQ0tHz1xVUKk/KFQSUyA==", - "dev": true, - "peer": true - }, - "@es-joy/jsdoccomment": { - "version": "0.31.0", - "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.31.0.tgz", - "integrity": "sha512-tc1/iuQcnaiSIUVad72PBierDFpsxdUHtEF/OrfqvM1CBAsIoMP51j52jTMb3dXriwhieTo289InzZj72jL3EQ==", - "dev": true, - "peer": true, - "requires": { - "comment-parser": "1.3.1", - "esquery": "^1.4.0", - "jsdoc-type-pratt-parser": "~3.1.0" - } - }, - "@eslint/eslintrc": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz", - "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==", - "dev": true, - "peer": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.3.1", - "globals": "^13.9.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.0.4", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "peer": true - }, - "globals": { - "version": "13.13.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", - "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", - "dev": true, - "peer": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "peer": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "peer": true - } - } - }, - "@fullcalendar/common": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/common/-/common-5.11.0.tgz", - "integrity": "sha512-gWjbMAnN1u73Oqlgjbyky7i+3bY0hvFSnGT0YBPx44n874AkQa9e9OU12PMLTMOPy0tXPb8DEwRelFQ7CJNbcw==", - "requires": { - "tslib": "^2.1.0" - } - }, - "@fullcalendar/core": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/core/-/core-5.11.0.tgz", - "integrity": "sha512-cF/d9LuJb/6xw14ms0urv1H4BiA70c4jrufe/EuVzLR6qTDpK92IZ3JK7GVtZtzptfTYZ/NQgDV9YCzIaO9Blw==", - "requires": { - "@fullcalendar/common": "~5.11.0", - "preact": "^10.0.5", - "tslib": "^2.1.0" - } - }, - "@fullcalendar/daygrid": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/daygrid/-/daygrid-5.11.0.tgz", - "integrity": "sha512-Ybh/dfHn/VL0qOVIRVyJc9I8oYiqqHl6xQONk8xXCe456QbPzAQLsAxpLLJLH+3smWNCfoQgvDKzR9e9XTzLMQ==", - "requires": { - "@fullcalendar/common": "~5.11.0", - "tslib": "^2.1.0" - } - }, - "@fullcalendar/interaction": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/interaction/-/interaction-5.11.0.tgz", - "integrity": "sha512-9XTI5+ydqrSX+IL3iWgKBURXfnPewn57Tmsv9mJZhiqrUEF7/+qtftLoKEAc8ZdWk/+01aBe67PFL16uPXj2Jg==", - "requires": { - "@fullcalendar/common": "~5.11.0", - "tslib": "^2.1.0" - } - }, - "@fullcalendar/list": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/list/-/list-5.11.0.tgz", - "integrity": "sha512-0dl/JV6zEGseTDXpM16nozetByVvJ4l/DElYP+StCtnk+Lr51zFK0yfRWRwB9XInxyapfZLDd/3YjKXQf8Bxcw==", - "requires": { - "@fullcalendar/common": "~5.11.0", - "tslib": "^2.1.0" - } - }, - "@fullcalendar/premium-common": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/premium-common/-/premium-common-5.11.0.tgz", - "integrity": "sha512-XVLJwJQ26EhuglBM1flmrKtNt0BEUBHoazko/wvMiz5Yz17eABKQreFTidipOwjL3s74ifQzDoYpkQVn8TzpZQ==", - "requires": { - "@fullcalendar/common": "~5.11.0", - "tslib": "^2.1.0" - } - }, - "@fullcalendar/resource-common": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/resource-common/-/resource-common-5.11.0.tgz", - "integrity": "sha512-zO6UK9IKo7O8Uj5Y1t9sLMsLyNmxAliriAlz/NNhk//O/yGmQZ5MQOgVDg2qCZpDOWgQeuSZOkTTJdud5ISe2Q==", - "requires": { - "@fullcalendar/common": "~5.11.0", - "@fullcalendar/premium-common": "~5.11.0", - "tslib": "^2.1.0" - } - }, - "@fullcalendar/resource-timeline": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/resource-timeline/-/resource-timeline-5.11.0.tgz", - "integrity": "sha512-+40sKEQj/ig6oh+8/FZPaFYtqI4e9wa/2XT2MTtzwDr3modHU0mQChlpcY8WQ+c6kyPjVwhO89BFiv2OeilLWw==", - "requires": { - "@fullcalendar/common": "~5.11.0", - "@fullcalendar/premium-common": "~5.11.0", - "@fullcalendar/resource-common": "~5.11.0", - "@fullcalendar/scrollgrid": "~5.11.0", - "@fullcalendar/timeline": "~5.11.0", - "tslib": "^2.1.0" - } - }, - "@fullcalendar/scrollgrid": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/scrollgrid/-/scrollgrid-5.11.0.tgz", - "integrity": "sha512-OPwLGLr0YF2qQYa9K1vPIGsodfAqPnugcwKLwnkiLprC2UybnPaIXvY6xMAHyVWSiBaeJSmkQ0J8mZDmfKjdTw==", - "requires": { - "@fullcalendar/common": "~5.11.0", - "@fullcalendar/premium-common": "~5.11.0", - "tslib": "^2.1.0" - } - }, - "@fullcalendar/timegrid": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/timegrid/-/timegrid-5.11.0.tgz", - "integrity": "sha512-GNy+/PwAj510PS4Fu18Mf/CytNBVftFU7M8XwsUXOCJ6ouyroHZje0a7k5cH/nE5IQ6NJZfH2eAPBlxGath1MQ==", - "requires": { - "@fullcalendar/common": "~5.11.0", - "@fullcalendar/daygrid": "~5.11.0", - "tslib": "^2.1.0" - } - }, - "@fullcalendar/timeline": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/timeline/-/timeline-5.11.0.tgz", - "integrity": "sha512-2mASvwsXMR42Vlvwjnb5w0OvMDf8z2WCZXpLCd11lP/b+ZYOosCrJZZQWpzNfWYf7Y4Sqjo7q+YMPxnJqlichg==", - "requires": { - "@fullcalendar/common": "~5.11.0", - "@fullcalendar/premium-common": "~5.11.0", - "@fullcalendar/scrollgrid": "~5.11.0", - "tslib": "^2.1.0" - } - }, - "@fullcalendar/vue": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/@fullcalendar/vue/-/vue-5.11.0.tgz", - "integrity": "sha512-+hG2D6esKbGK2vUs5Te+mXTL8L0XCPTiTIxSLYXtmNMgRcDHZ2qoAjad/9upIyfarUFfz1yPdjDJpxAs8UvcLw==", - "requires": { - "@fullcalendar/core": "~5.11.0", - "tslib": "^2.1.0" - } - }, - "@humanwhocodes/config-array": { - "version": "0.9.5", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz", - "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==", - "dev": true, - "peer": true, - "requires": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.4" - } - }, - "@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true, - "peer": true - }, - "@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - } - }, - "@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true - }, - "@jest/console": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-27.5.1.tgz", - "integrity": "sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "@jest/core": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-27.5.1.tgz", - "integrity": "sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==", - "dev": true, - "requires": { - "@jest/console": "^27.5.1", - "@jest/reporters": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^27.5.1", - "jest-config": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-resolve-dependencies": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "jest-watcher": "^27.5.1", - "micromatch": "^4.0.4", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "@jest/environment": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-27.5.1.tgz", - "integrity": "sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==", - "dev": true, - "requires": { - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1" - } - }, - "@jest/fake-timers": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-27.5.1.tgz", - "integrity": "sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@sinonjs/fake-timers": "^8.0.1", - "@types/node": "*", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" - } - }, - "@jest/globals": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-27.5.1.tgz", - "integrity": "sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/types": "^27.5.1", - "expect": "^27.5.1" - } - }, - "@jest/reporters": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-27.5.1.tgz", - "integrity": "sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==", - "dev": true, - "requires": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^5.1.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-haste-map": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^8.1.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "@jest/source-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-27.5.1.tgz", - "integrity": "sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==", - "dev": true, - "requires": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "@jest/test-result": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-27.5.1.tgz", - "integrity": "sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==", - "dev": true, - "requires": { - "@jest/console": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/test-sequencer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-27.5.1.tgz", - "integrity": "sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==", - "dev": true, - "requires": { - "@jest/test-result": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-runtime": "^27.5.1" - } - }, - "@jest/transform": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.5.1.tgz", - "integrity": "sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^27.5.1", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-util": "^27.5.1", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "@jest/types": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz", - "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^16.0.0", - "chalk": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "@nextcloud/auth": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@nextcloud/auth/-/auth-1.3.0.tgz", - "integrity": "sha512-GfwRM9W7hat4psNdAt74UHEV+drEXQ53klCVp6JpON66ZLPeK5eJ1LQuiQDkpUxZpqNeaumXjiB98h5cug/uQw==", - "requires": { - "@nextcloud/event-bus": "^1.1.3", - "@nextcloud/typings": "^0.2.2", - "core-js": "^3.6.4" - }, - "dependencies": { - "@nextcloud/event-bus": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@nextcloud/event-bus/-/event-bus-1.3.0.tgz", - "integrity": "sha512-+U5MnCvfnNWvf0lvdqJg8F+Nm8wN+s9ayuBjtiEQxTAcootv7lOnlMgfreqF3l2T0Wet2uZh4JbFVUWf8l3w7g==", - "requires": { - "@types/semver": "^7.3.5", - "core-js": "^3.11.2", - "semver": "^7.3.5" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "@nextcloud/axios": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/@nextcloud/axios/-/axios-1.10.0.tgz", - "integrity": "sha512-dC+Z5ibBRxkep6ysoRmUldUfQsZiqC5fGLbwwU0Unxjy+Qrcl2U9rcljZJagwXs1kag5/KZFG1rlGcew2GAgyg==", - "requires": { - "@nextcloud/auth": "^1.3.0", - "axios": "^0.27.1", - "core-js": "^3.6.4" - } - }, - "@nextcloud/babel-config": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/babel-config/-/babel-config-1.0.0.tgz", - "integrity": "sha512-olz7sqPD7xMDP2KcYwODtitH37faR/C5jKX1oxXzdDf+s1FRy6OQTC5ZqZR2LHZA6jTUvmwM/xWBPoEB/HPFRw==", - "dev": true, - "requires": {} - }, - "@nextcloud/browser-storage": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@nextcloud/browser-storage/-/browser-storage-0.1.1.tgz", - "integrity": "sha512-bWzs/A44rEK8b3CMOFw0ZhsenagrWdsB902LOEwmlMCcFysiFgWiOPbF4/0/ODlOYjvPrO02wf6RigWtb8P+gA==", - "requires": { - "core-js": "3.6.1" - }, - "dependencies": { - "core-js": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.1.tgz", - "integrity": "sha512-186WjSik2iTGfDjfdCZAxv2ormxtKgemjC3SI6PL31qOA0j5LhTDVjHChccoc7brwLvpvLPiMyRlcO88C4l1QQ==" - } - } - }, - "@nextcloud/browserslist-config": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@nextcloud/browserslist-config/-/browserslist-config-2.2.0.tgz", - "integrity": "sha512-kC42RQW5rZjZZsRaEjVlIQpp6aW/yxm+zZdETnrRQnUzcPwBgF4wO4makfGT63Ckd+LkgUW+geesPiPRqxFVew==", - "dev": true - }, - "@nextcloud/calendar-availability-vue": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@nextcloud/calendar-availability-vue/-/calendar-availability-vue-0.3.1.tgz", - "integrity": "sha512-C+i9hgagCe+NPnb3vOCZ4cx2e5E04RR+RhRagPr7Ej1X/lyU+5B2p5VY/mLXB8GB3lIe7zthaCdwKqW/P5V9RQ==", - "requires": { - "ical.js": "^1.4.0", - "icalzone": "^0.0.1", - "uuid": "^8.3.2" - } - }, - "@nextcloud/calendar-js": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/calendar-js/-/calendar-js-3.0.0.tgz", - "integrity": "sha512-Uy/etWwRmbzG1jxcfampOCEXbGMEzY1xVCBlONVrkusUmD9t02u3jWFkRJGAHvFAtLd4iM+MdTo1x3VXemBvcA==", - "requires": {} - }, - "@nextcloud/capabilities": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@nextcloud/capabilities/-/capabilities-1.0.4.tgz", - "integrity": "sha512-xsmwPPUJ8NN7YfLcq0gpDTibeb9lMBvY/bffMFnHcZi8hMGOouPiEY+CWAgJ5I9W6I2vNeacHUuTanEN5Ncb2A==", - "requires": { - "@nextcloud/initial-state": "^1.1.2", - "core-js": "^3.6.4" - } - }, - "@nextcloud/cdav-library": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@nextcloud/cdav-library/-/cdav-library-1.1.0.tgz", - "integrity": "sha512-hmJgR9Cp11y3ch4dS0NufsPgofe4+iwhUkusYKmDTl0PFsJrBUNy1zawLdfDrpEjK1zXrU3tOpyF3pIqyGMYBg==", - "requires": { - "core-js": "^3.19.3", - "regenerator-runtime": "^0.13.9" - } - }, - "@nextcloud/dialogs": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@nextcloud/dialogs/-/dialogs-3.1.4.tgz", - "integrity": "sha512-Jf/DWacCqPZDWroDkdOFuX+3AyHVWjy6JpkxAUNkmFPlKjNG8fGPRm/cdQIkqVqAnC+b1sUdMqH6N89Zdyks2Q==", - "requires": { - "@nextcloud/l10n": "^1.3.0", - "@nextcloud/typings": "^1.0.0", - "core-js": "^3.6.4", - "toastify-js": "^1.12.0" - }, - "dependencies": { - "@nextcloud/typings": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/typings/-/typings-1.0.0.tgz", - "integrity": "sha512-r8SRvXszWTyKWEhVd3gx7eBAcCKwdoLlr+ZrR8hrSxs2nfH00de/QoGdo0n/Rcv/9mMtX/haJNd71KwODM2+uQ==", - "requires": { - "@types/jquery": "2.0.54" - } - } - } - }, - "@nextcloud/eslint-config": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/eslint-config/-/eslint-config-8.0.0.tgz", - "integrity": "sha512-B93OZ7vSEJl6QLtEGarkdpjTEKGdXbMP/ZSuIj/vecng6CZzv3mDQ9diaNTQPlU7Q3CP0N6nqTVqcOltbApUMQ==", - "dev": true, - "requires": {} - }, - "@nextcloud/eslint-plugin": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/eslint-plugin/-/eslint-plugin-2.0.0.tgz", - "integrity": "sha512-j5WXTDTprr/cDilVJtC1mnrpkvD6jlEMShs72V5plllatHjO7kpZHzUfCX3dSvGwYc2ACa0XH+FbkPoZQ3+eWQ==", - "dev": true, - "peer": true, - "requires": { - "requireindex": "^1.2.0" - } - }, - "@nextcloud/event-bus": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@nextcloud/event-bus/-/event-bus-2.1.1.tgz", - "integrity": "sha512-YEui6N+23uyjBSIUZhf8rEjG9vol7UGgxcgxMddEbO0HS7M/sh1cocRqtn+ZVi/yPybeToGmt68SDPCgwHQHKw==", - "requires": { - "@types/semver": "^7.1.0", - "core-js": "^3.6.2", - "semver": "^7.3.2" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "@nextcloud/initial-state": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@nextcloud/initial-state/-/initial-state-1.2.1.tgz", - "integrity": "sha512-2TH2DzJBolYHWfbSovTWkByAIg0gdsyuVfZpf5APnJu/9PixXKbnrVFnaEdxjeP262Gok7ARMFFQeSiuzKRQeQ==", - "requires": { - "core-js": "^3.6.4" - } - }, - "@nextcloud/l10n": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@nextcloud/l10n/-/l10n-1.6.0.tgz", - "integrity": "sha512-aKGlgrwN9OiafN791sYus0shfwNeU3PlrH6Oi9ISma6iJSvN6a8aJM8WGKCJ9pqBaTR5PrDuckuM/WnybBWb6A==", - "requires": { - "core-js": "^3.6.4", - "node-gettext": "^3.0.0" - } - }, - "@nextcloud/logger": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@nextcloud/logger/-/logger-2.1.0.tgz", - "integrity": "sha512-1G7KqRNQWorRnz/2llXWpxJtByf77J9lQfyfMdBQ/1ntMcodMFmGHnISt7lOIRA4O+T9cdgDP6nMBAHnt1gZWQ==", - "requires": { - "@nextcloud/auth": "^1.2.2", - "babel-plugin-transform-class-properties": "^6.24.1", - "core-js": "^3.6.4" - } - }, - "@nextcloud/moment": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@nextcloud/moment/-/moment-1.2.1.tgz", - "integrity": "sha512-v/yfrZ4Jo8YM1v0DLXKjRLwKOhzE4Y6DcgyZAM1vJ5jOMvkHpICuTDJRw8oOtrr/1H6FqI6EMZcYogeGD+rwSA==", - "requires": { - "@nextcloud/l10n": "^1.4.1", - "core-js": "^3.21.1", - "jed": "^1.1.1", - "moment": "^2.29.2", - "node-gettext": "^3.0.0" - } - }, - "@nextcloud/router": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@nextcloud/router/-/router-2.0.0.tgz", - "integrity": "sha512-GyHYNYrYAZRBGD5VxRggcbahdJ/zCkXb8+ERVfuaosT+nHMjJSmenTD6Uyct41qGm0p3Az4xRCXGyZGJM0NEUQ==", - "requires": { - "core-js": "^3.6.4" - } - }, - "@nextcloud/stylelint-config": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@nextcloud/stylelint-config/-/stylelint-config-2.1.2.tgz", - "integrity": "sha512-d8jpl1YXxujeDuSV35TovGXeeX4UKAMIpLw4TjkOLeN1lRVrlckrPJxvNVDV06oIFXWxq08q2HCa7PIuthQixw==", - "dev": true, - "requires": {} - }, - "@nextcloud/typings": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/@nextcloud/typings/-/typings-0.2.4.tgz", - "integrity": "sha512-49M8XUDQH27VIQE+13KrqSOYcyOsDUk6Yfw17jbBVtXFoDJ3YBSYYq8YaKeAM3Lz2JVbEpqQW9suAT+EyYSb6g==", - "requires": { - "@types/jquery": "2.0.54" - } - }, - "@nextcloud/vue": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/@nextcloud/vue/-/vue-5.3.1.tgz", - "integrity": "sha512-f+OSbcS01s2UqYiLSUufJ8tGe5+SqALj1dysPGJm8pJ+R2zH+Pdl8R13YErwzdAa0nHwyISIp9L9MEOUItixRQ==", - "requires": { - "@nextcloud/auth": "^1.2.3", - "@nextcloud/axios": "^1.3.2", - "@nextcloud/browser-storage": "^0.1.1", - "@nextcloud/calendar-js": "^3.0.0", - "@nextcloud/capabilities": "^1.0.2", - "@nextcloud/dialogs": "^3.0.0", - "@nextcloud/event-bus": "^2.0.0", - "@nextcloud/l10n": "^1.2.3", - "@nextcloud/logger": "^2.0.0", - "@nextcloud/router": "^2.0.0", - "debounce": "1.2.1", - "emoji-mart-vue-fast": "^10.2.1", - "escape-html": "^1.0.3", - "hammerjs": "^2.0.8", - "linkify-string": "^3.0.2", - "md5": "^2.2.1", - "splitpanes": "^2.3.6", - "string-length": "^5.0.0", - "striptags": "^3.1.1", - "style-loader": "^3.3.1", - "tributejs": "^5.1.3", - "v-click-outside": "^3.0.1", - "v-tooltip": "^2.0.3", - "vue": "^2.6.14", - "vue-color": "^2.7.1", - "vue-material-design-icons": "^5.0.0", - "vue-multiselect": "^2.1.6", - "vue2-datepicker": "^3.6.3" - }, - "dependencies": { - "@babel/polyfill": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.12.1.tgz", - "integrity": "sha512-X0pi0V6gxLi6lFZpGmeNa4zxtwEmCs42isWLNjZZDE0Y8yVfgu0T2OAHlzBbdYlqbW/YXVvoBHpATEM+goCj8g==", - "requires": { - "core-js": "^2.6.5", - "regenerator-runtime": "^0.13.4" - } - }, - "@babel/runtime": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.8.tgz", - "integrity": "sha512-dQpEpK0O9o6lj6oPu0gRDbbnk+4LeHlNcBpspf6Olzt3GIX4P1lWF1gS+pHLDFlaJvbR6q7jCfQ08zA4QJBnmA==", - "requires": { - "regenerator-runtime": "^0.13.4" - } - }, - "ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" - }, - "char-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-2.0.0.tgz", - "integrity": "sha512-oGu2QekBMXgyQNWPDRQ001bjvDnZe4/zBTz37TMbiKz1NbNiyiH5hRkobe7npRN6GfbGbxMYFck/vQ1r9c1VMA==" - }, - "core-js": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", - "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==" - }, - "emoji-mart-vue-fast": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/emoji-mart-vue-fast/-/emoji-mart-vue-fast-10.2.1.tgz", - "integrity": "sha512-PtKihhsXBEEw1jHwnoRyJAnJP1OlK4EJrEze58EbUUV7iHWGLub+yuiNSj2Uo1JBHraz4fw/pH98nFysVoe0qg==", - "requires": { - "@babel/polyfill": "^7.12.1", - "@babel/runtime": "^7.16.3", - "vue-virtual-scroller": "^1.0.10" - } - }, - "string-length": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-5.0.0.tgz", - "integrity": "sha512-1qjpci3h1G7BUi6dt5uAVyrO2FMUdjj3XWU970/eQh0YKhlYZ8bJMC/+BUpD21YdEhmuHv2nnbUUn024+cC7YQ==", - "requires": { - "char-regex": "^2.0.0", - "strip-ansi": "^7.0.0" - } - }, - "strip-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.0.tgz", - "integrity": "sha512-UhDTSnGF1dc0DRbUqr1aXwNoY3RgVkSWG8BrpnuFIxhP57IqbS7IRta2Gfiavds4yCxc5+fEAVVOgBZWnYkvzg==", - "requires": { - "ansi-regex": "^6.0.0" - } - } - } - }, - "@nextcloud/vue-dashboard": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@nextcloud/vue-dashboard/-/vue-dashboard-2.0.1.tgz", - "integrity": "sha512-eLzdK8Ey5rrs3D6i2OAA5jkZ6lklrAbfnRgL40tZLIJ+MEKvRuPOjwrzhJKxHgVp3rU1rEgkaaPvSNXRVGS1mQ==", - "requires": { - "@nextcloud/vue": "^3.1.1", - "core-js": "^3.6.4", - "vue": "^2.6.11" - }, - "dependencies": { - "@nextcloud/event-bus": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@nextcloud/event-bus/-/event-bus-1.3.0.tgz", - "integrity": "sha512-+U5MnCvfnNWvf0lvdqJg8F+Nm8wN+s9ayuBjtiEQxTAcootv7lOnlMgfreqF3l2T0Wet2uZh4JbFVUWf8l3w7g==", - "requires": { - "@types/semver": "^7.3.5", - "core-js": "^3.11.2", - "semver": "^7.3.5" - } - }, - "@nextcloud/router": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@nextcloud/router/-/router-1.2.0.tgz", - "integrity": "sha512-kn9QsL9LuhkIMaSSgdiqRL3SZ6PatuAjXUiyq343BbSnI99Oc5eJH8kU6cT2AHije7wKy/tK8Xe3VQuVO32SZQ==", - "requires": { - "core-js": "^3.6.4" - } - }, - "@nextcloud/vue": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/@nextcloud/vue/-/vue-3.10.1.tgz", - "integrity": "sha512-DdnnEFxt5FuZOtAD1x7hSDFVQF9KVVgQtFKwzs2ySNbyIx8rfRfc6noC7JbMAPR1LyPegCst0bVwQIfqsASGog==", - "requires": { - "@nextcloud/auth": "^1.2.3", - "@nextcloud/axios": "^1.3.2", - "@nextcloud/browser-storage": "^0.1.1", - "@nextcloud/capabilities": "^1.0.2", - "@nextcloud/dialogs": "^3.0.0", - "@nextcloud/event-bus": "^1.1.4", - "@nextcloud/l10n": "^1.2.3", - "@nextcloud/router": "^1.0.2", - "core-js": "^3.6.5", - "debounce": "1.2.1", - "emoji-mart-vue-fast": "^7.0.7", - "escape-html": "^1.0.3", - "hammerjs": "^2.0.8", - "linkifyjs": "~2.1.9", - "md5": "^2.2.1", - "regenerator-runtime": "^0.13.5", - "string-length": "^4.0.1", - "striptags": "^3.1.1", - "style-loader": "^2.0.0", - "tributejs": "^5.1.3", - "v-click-outside": "^3.0.1", - "v-tooltip": "^2.0.3", - "vue": "^2.6.11", - "vue-color": "^2.7.1", - "vue-multiselect": "^2.1.6", - "vue-visible": "^1.0.2", - "vue2-datepicker": "^3.6.3" - } - }, - "linkifyjs": { - "version": "2.1.9", - "resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-2.1.9.tgz", - "integrity": "sha512-74ivurkK6WHvHFozVaGtQWV38FzBwSTGNmJolEgFp7QgR2bl6ArUWlvT4GcHKbPe1z3nWYi+VUdDZk16zDOVug==", - "requires": {} - }, - "loader-utils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz", - "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==", - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "requires": { - "lru-cache": "^6.0.0" - } - }, - "style-loader": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-2.0.0.tgz", - "integrity": "sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ==", - "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^3.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "@nextcloud/webpack-vue-config": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/@nextcloud/webpack-vue-config/-/webpack-vue-config-5.2.1.tgz", - "integrity": "sha512-FQXtXq6MsN9KPIWm70ZwIpf2DcKF3Pvq037FKht6tgmCBsZ4oZ49hK5mnZ+XkTCZnXGXS1CDP6URpTkWrlTa4A==", - "dev": true, - "requires": {} - }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "peer": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - } - }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "peer": true - }, - "@nodelib/fs.walk": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.7.tgz", - "integrity": "sha512-BTIhocbPBSrRmHxOAJFtR18oLhxTtAFDAvL8hY1S3iU8k+E60W/YFs4jrixGzQjMpF4qPXxIQHcjVD9dz1C2QA==", - "dev": true, - "peer": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - } - }, - "@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/fake-timers": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-8.1.0.tgz", - "integrity": "sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } - }, - "@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", - "dev": true - }, - "@types/babel__core": { - "version": "7.1.18", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.18.tgz", - "integrity": "sha512-S7unDjm/C7z2A2R9NzfKCK1I+BAALDtxEmsJBwlB3EzNfb929ykjL++1CK9LO++EIp2fQrC8O+BwjKvz6UeDyQ==", - "dev": true, - "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "@types/babel__generator": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", - "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@types/babel__template": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", - "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", - "dev": true, - "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@types/babel__traverse": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.11.1.tgz", - "integrity": "sha512-Vs0hm0vPahPMYi9tDjtP66llufgO3ST16WXaSTtDGEl9cewAl3AibmxWw6TINOqHPT9z0uABKAYjT9jNSg4npw==", - "dev": true, - "requires": { - "@babel/types": "^7.3.0" - } - }, - "@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "dev": true, - "peer": true, - "requires": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "@types/bonjour": { - "version": "3.5.10", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", - "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", - "dev": true, - "peer": true, - "requires": { - "@types/node": "*" - } - }, - "@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "dev": true, - "peer": true, - "requires": { - "@types/node": "*" - } - }, - "@types/connect-history-api-fallback": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", - "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", - "dev": true, - "peer": true, - "requires": { - "@types/express-serve-static-core": "*", - "@types/node": "*" - } - }, - "@types/eslint": { - "version": "7.28.2", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.28.2.tgz", - "integrity": "sha512-KubbADPkfoU75KgKeKLsFHXnU4ipH7wYg0TRT33NK3N3yiu7jlFAAoygIWBV+KbuHx/G+AvuGX6DllnK35gfJA==", - "peer": true, - "requires": { - "@types/estree": "*", - "@types/json-schema": "*" - } - }, - "@types/eslint-scope": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.0.tgz", - "integrity": "sha512-O/ql2+rrCUe2W2rs7wMR+GqPRcgB6UiqN5RhrR5xruFlY7l9YLMn0ZkDzjoHLeiFkR8MCQZVudUuuvQ2BLC9Qw==", - "peer": true, - "requires": { - "@types/eslint": "*", - "@types/estree": "*" - } - }, - "@types/estree": { - "version": "0.0.50", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.50.tgz", - "integrity": "sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==", - "peer": true - }, - "@types/express": { - "version": "4.17.13", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", - "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", - "dev": true, - "peer": true, - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.27", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.27.tgz", - "integrity": "sha512-e/sVallzUTPdyOTiqi8O8pMdBBphscvI6E4JYaKlja4Lm+zh7UFSSdW5VMkRbhDtmrONqOUHOXRguPsDckzxNA==", - "dev": true, - "peer": true, - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "@types/graceful-fs": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz", - "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/http-proxy": { - "version": "1.17.8", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.8.tgz", - "integrity": "sha512-5kPLG5BKpWYkw/LVOGWpiq3nEVqxiN32rTgI53Sk12/xHFQ2rG3ehI9IO+O3W2QoKeyB92dJkoka8SUm6BX1pA==", - "dev": true, - "peer": true, - "requires": { - "@types/node": "*" - } - }, - "@types/istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", - "dev": true - }, - "@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "*" - } - }, - "@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", - "dev": true, - "requires": { - "@types/istanbul-lib-report": "*" - } - }, - "@types/jquery": { - "version": "2.0.54", - "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-2.0.54.tgz", - "integrity": "sha512-D/PomKwNkDfSKD13DEVQT/pq2TUjN54c6uB341fEZanIzkjfGe7UaFuuaLZbpEiS5j7Wk2MUHAZqZIoECw29lg==" - }, - "@types/json-schema": { - "version": "7.0.9", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz", - "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==" - }, - "@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", - "dev": true, - "peer": true - }, - "@types/mime": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", - "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==", - "dev": true, - "peer": true - }, - "@types/minimist": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.1.tgz", - "integrity": "sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==", - "dev": true, - "peer": true - }, - "@types/node": { - "version": "15.12.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.12.4.tgz", - "integrity": "sha512-zrNj1+yqYF4WskCMOHwN+w9iuD12+dGm0rQ35HLl9/Ouuq52cEtd0CH9qMgrdNmi5ejC1/V7vKEXYubB+65DkA==" - }, - "@types/normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", - "dev": true, - "peer": true - }, - "@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true, - "peer": true - }, - "@types/prettier": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.4.tgz", - "integrity": "sha512-ReVR2rLTV1kvtlWFyuot+d1pkpG2Fw/XKE3PDAdj57rbM97ttSp9JZ2UsP+2EHTylra9cUf6JA7tGwW1INzUrA==", - "dev": true - }, - "@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", - "dev": true, - "peer": true - }, - "@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", - "dev": true, - "peer": true - }, - "@types/retry": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.1.tgz", - "integrity": "sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==", - "dev": true, - "peer": true - }, - "@types/semver": { - "version": "7.3.6", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.6.tgz", - "integrity": "sha512-0caWDWmpCp0uifxFh+FaqK3CuZ2SkRR/ZRxAV5+zNdC3QVUi6wyOJnefhPvtNt8NQWXB5OA93BUvZsXpWat2Xw==" - }, - "@types/serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", - "dev": true, - "peer": true, - "requires": { - "@types/express": "*" - } - }, - "@types/serve-static": { - "version": "1.13.10", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", - "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", - "dev": true, - "peer": true, - "requires": { - "@types/mime": "^1", - "@types/node": "*" - } - }, - "@types/sockjs": { - "version": "0.3.33", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", - "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", - "dev": true, - "peer": true, - "requires": { - "@types/node": "*" - } - }, - "@types/stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", - "dev": true - }, - "@types/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-FKjsOVbC6B7bdSB5CuzyHCkK69I=", - "dev": true - }, - "@types/strip-json-comments": { - "version": "0.0.30", - "resolved": "https://registry.npmjs.org/@types/strip-json-comments/-/strip-json-comments-0.0.30.tgz", - "integrity": "sha512-7NQmHra/JILCd1QqpSzl8+mJRc8ZHz3uDm8YV1Ks9IhK0epEiTw8aIErbvH9PI+6XbqhyIQy3462nEsn7UVzjQ==", - "dev": true - }, - "@types/ws": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.2.2.tgz", - "integrity": "sha512-NOn5eIcgWLOo6qW8AcuLZ7G8PycXu0xTxxkS6Q18VWFxgPUSOwV0pBj2a/4viNZVu25i7RIB7GttdkAIUUXOOg==", - "dev": true, - "peer": true, - "requires": { - "@types/node": "*" - } - }, - "@types/yargs": { - "version": "16.0.3", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.3.tgz", - "integrity": "sha512-YlFfTGS+zqCgXuXNV26rOIeETOkXnGQXP/pjjL9P0gO/EP9jTmc7pUBhx+jVEIxpq41RX33GQ7N3DzOSfZoglQ==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "@types/yargs-parser": { - "version": "20.2.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-20.2.0.tgz", - "integrity": "sha512-37RSHht+gzzgYeobbG+KWryeAW8J33Nhr69cjTqSYymXVZEN9NbRYWoYlRtDhHKPVT1FyNKwaTPC1NynKZpzRA==", - "dev": true - }, - "@vue/compiler-sfc": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-2.7.0.tgz", - "integrity": "sha512-hPOI15RsXO1G8aK6FNF93ld9C/D4e/uAJBE59K8NnL8giuKqeVksvamgu4jKhCJ9f9bbUpj5BuSV3sufIx2hmw==", - "requires": { - "@babel/parser": "^7.18.4", - "postcss": "^8.4.14", - "source-map": "^0.6.1" - }, - "dependencies": { - "postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", - "requires": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } - } - }, - "@vue/component-compiler-utils": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-3.3.0.tgz", - "integrity": "sha512-97sfH2mYNU+2PzGrmK2haqffDpVASuib9/w2/noxiFi31Z54hW+q3izKQXXQZSNhtiUpAI36uSuYepeBe4wpHQ==", - "dev": true, - "peer": true, - "requires": { - "consolidate": "^0.15.1", - "hash-sum": "^1.0.2", - "lru-cache": "^4.1.2", - "merge-source-map": "^1.1.0", - "postcss": "^7.0.36", - "postcss-selector-parser": "^6.0.2", - "prettier": "^1.18.2 || ^2.0.0", - "source-map": "~0.6.1", - "vue-template-es2015-compiler": "^1.9.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "peer": true - } - } - }, - "@vue/test-utils": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@vue/test-utils/-/test-utils-1.3.0.tgz", - "integrity": "sha512-Xk2Xiyj2k5dFb8eYUKkcN9PzqZSppTlx7LaQWBbdA8tqh3jHr/KHX2/YLhNFc/xwDrgeLybqd+4ZCPJSGPIqeA==", - "dev": true, - "requires": { - "dom-event-types": "^1.0.0", - "lodash": "^4.17.15", - "pretty": "^2.0.0" - } - }, - "@webassemblyjs/ast": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", - "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", - "peer": true, - "requires": { - "@webassemblyjs/helper-numbers": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", - "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", - "peer": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", - "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", - "peer": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", - "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", - "peer": true - }, - "@webassemblyjs/helper-numbers": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", - "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", - "peer": true, - "requires": { - "@webassemblyjs/floating-point-hex-parser": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", - "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", - "peer": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", - "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", - "peer": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", - "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", - "peer": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", - "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", - "peer": true, - "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", - "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", - "peer": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", - "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", - "peer": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/helper-wasm-section": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-opt": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "@webassemblyjs/wast-printer": "1.11.1" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", - "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", - "peer": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", - "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", - "peer": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-buffer": "1.11.1", - "@webassemblyjs/wasm-gen": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", - "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", - "peer": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/helper-api-error": "1.11.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.1", - "@webassemblyjs/ieee754": "1.11.1", - "@webassemblyjs/leb128": "1.11.1", - "@webassemblyjs/utf8": "1.11.1" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", - "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", - "peer": true, - "requires": { - "@webassemblyjs/ast": "1.11.1", - "@xtuc/long": "4.2.2" - } - }, - "@webpack-cli/configtest": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.1.0.tgz", - "integrity": "sha512-ttOkEkoalEHa7RaFYpM0ErK1xc4twg3Am9hfHhL7MVqlHebnkYd2wuI/ZqTDj0cVzZho6PdinY0phFZV3O0Mzg==", - "dev": true, - "peer": true, - "requires": {} - }, - "@webpack-cli/info": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.4.0.tgz", - "integrity": "sha512-F6b+Man0rwE4n0409FyAJHStYA5OIZERxmnUfLVwv0mc0V1wLad3V7jqRlMkgKBeAq07jUvglacNaa6g9lOpuw==", - "dev": true, - "peer": true, - "requires": { - "envinfo": "^7.7.3" - } - }, - "@webpack-cli/serve": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.6.0.tgz", - "integrity": "sha512-ZkVeqEmRpBV2GHvjjUZqEai2PpUbuq8Bqd//vEYsp63J8WyexI8ppCqVS3Zs0QADf6aWuPdU+0XsPI647PVlQA==", - "dev": true, - "peer": true, - "requires": {} - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "peer": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "peer": true - }, - "abab": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", - "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", - "dev": true - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "abort-controller": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - "dev": true, - "peer": true, - "requires": { - "event-target-shim": "^5.0.0" - } - }, - "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", - "dev": true, - "peer": true, - "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" - } - }, - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - }, - "acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", - "dev": true, - "requires": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - } - }, - "acorn-jsx": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", - "dev": true, - "peer": true, - "requires": {} - }, - "acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", - "dev": true - }, - "adjust-sourcemap-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", - "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", - "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "regex-parser": "^2.2.11" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", - "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } - } - }, - "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "requires": { - "debug": "4" - } - }, - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "peer": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "dev": true, - "peer": true, - "requires": { - "ajv": "^8.0.0" - }, - "dependencies": { - "ajv": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.8.2.tgz", - "integrity": "sha512-x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw==", - "dev": true, - "peer": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "peer": true - } - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "requires": {} - }, - "ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "requires": { - "type-fest": "^0.21.3" - } - }, - "ansi-html-community": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", - "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", - "dev": true, - "peer": true - }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - }, - "dependencies": { - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - } - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true, - "peer": true - }, - "array-includes": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz", - "integrity": "sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw==", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1", - "get-intrinsic": "^1.1.1", - "is-string": "^1.0.7" - } - }, - "array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "peer": true - }, - "array.prototype.flat": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz", - "integrity": "sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg==", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0" - } - }, - "array.prototype.flatmap": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", - "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "function-bind": "^1.1.1" - } - }, - "asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "dev": true, - "peer": true, - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true, - "peer": true - } - } - }, - "assert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", - "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", - "dev": true, - "peer": true, - "requires": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" - } - }, - "astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true, - "peer": true - }, - "async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", - "dev": true, - "peer": true, - "requires": { - "lodash": "^4.17.14" - } - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true - }, - "autosize": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/autosize/-/autosize-5.0.1.tgz", - "integrity": "sha512-UIWUlE4TOVPNNj2jjrU39wI4hEYbneUypEqcyRmRFIx5CC2gNdg3rQr+Zh7/3h6egbBvm33TDQjNQKtj9Tk1HA==" - }, - "available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", - "dev": true, - "peer": true - }, - "axios": { - "version": "0.27.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", - "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", - "requires": { - "follow-redirects": "^1.14.9", - "form-data": "^4.0.0" - }, - "dependencies": { - "form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - } - } - }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" - } - } - }, - "babel-core": { - "version": "7.0.0-bridge.0", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz", - "integrity": "sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==", - "dev": true, - "requires": {} - }, - "babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", - "requires": { - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" - } - }, - "babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.5.1.tgz", - "integrity": "sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==", - "dev": true, - "requires": { - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "babel-loader": { - "version": "8.2.3", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.3.tgz", - "integrity": "sha512-n4Zeta8NC3QAsuyiizu0GkmRcQ6clkV9WFUnUf1iXP//IeSKbWjofW3UHyZVwlOB4y039YQKefawyTn64Zwbuw==", - "dev": true, - "peer": true, - "requires": { - "find-cache-dir": "^3.3.1", - "loader-utils": "^1.4.0", - "make-dir": "^3.1.0", - "schema-utils": "^2.6.5" - }, - "dependencies": { - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "peer": true, - "requires": { - "semver": "^6.0.0" - } - } - } - }, - "babel-loader-exclude-node-modules-except": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/babel-loader-exclude-node-modules-except/-/babel-loader-exclude-node-modules-except-1.2.1.tgz", - "integrity": "sha512-kp/JcdRhhYKprE9fYRquyasqtrdRKXqBj0BVGB9OYxEzdBTpD/8e6w1K1gafyHgntj7f9JxLhi4phOrnCMKD6Q==", - "dev": true, - "requires": { - "escape-string-regexp": "2.0.0" - } - }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", - "requires": { - "babel-runtime": "^6.22.0" - } - }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", - "dev": true, - "peer": true, - "requires": { - "object.assign": "^4.1.0" - } - }, - "babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - } - }, - "babel-plugin-jest-hoist": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.5.1.tgz", - "integrity": "sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==", - "dev": true, - "requires": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", - "@types/babel__traverse": "^7.0.6" - } - }, - "babel-plugin-polyfill-corejs2": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.2.tgz", - "integrity": "sha512-kISrENsJ0z5dNPq5eRvcctITNHYXWOA4DUZRFYCz3jYCcvTb/A546LIddmoGNMVYg2U38OyFeNosQwI9ENTqIQ==", - "dev": true, - "peer": true, - "requires": { - "@babel/compat-data": "^7.13.11", - "@babel/helper-define-polyfill-provider": "^0.2.2", - "semver": "^6.1.1" - } - }, - "babel-plugin-polyfill-corejs3": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.3.tgz", - "integrity": "sha512-rCOFzEIJpJEAU14XCcV/erIf/wZQMmMT5l5vXOpL5uoznyOGfDIjPj6FVytMvtzaKSTSVKouOCTPJ5OMUZH30g==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.2.2", - "core-js-compat": "^3.14.0" - } - }, - "babel-plugin-polyfill-regenerator": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.2.2.tgz", - "integrity": "sha512-Goy5ghsc21HgPDFtzRkSirpZVW35meGoTmTOb2bxqdl60ghub4xOidgNTHaZfQ2FaxQsKmwvXtOAkcIS4SMBWg==", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-define-polyfill-provider": "^0.2.2" - } - }, - "babel-plugin-syntax-class-properties": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz", - "integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=" - }, - "babel-plugin-transform-class-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz", - "integrity": "sha1-anl2PqYdM9NvN7YRqp3vgagbRqw=", - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-plugin-syntax-class-properties": "^6.8.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } - }, - "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.2", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", - "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", - "dev": true, - "requires": { - "babel-plugin-transform-strict-mode": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-types": "^6.26.0" - } - }, - "babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", - "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", - "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", - "dev": true, - "requires": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" - } - }, - "babel-preset-jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.5.1.tgz", - "integrity": "sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==", - "dev": true, - "requires": { - "babel-plugin-jest-hoist": "^27.5.1", - "babel-preset-current-node-syntax": "^1.0.0" - } - }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - }, - "dependencies": { - "core-js": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", - "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==" - }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" - } - } - }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", - "requires": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" - } - }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", - "requires": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "requires": { - "ms": "2.0.0" - } - }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - }, - "dependencies": { - "to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" - } - } - }, - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true, - "peer": true - }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", - "dev": true, - "peer": true - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" - }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "dev": true, - "requires": { - "file-uri-to-path": "1.0.0" - } - }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true, - "peer": true - }, - "bn.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", - "dev": true, - "peer": true - }, - "body-parser": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.1.tgz", - "integrity": "sha512-8ljfQi5eBk8EJfECMrgqNGWPEY5jWP+1IzkzkGdFFEwFQZZyaZ21UqdaHktgiMlH0xLHqIFtE/u2OYE5dOtViA==", - "dev": true, - "peer": true, - "requires": { - "bytes": "3.1.1", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.6", - "raw-body": "2.4.2", - "type-is": "~1.6.18" - }, - "dependencies": { - "bytes": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.1.tgz", - "integrity": "sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==", - "dev": true, - "peer": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true, - "peer": true - } - } - }, - "bonjour": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", - "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", - "dev": true, - "peer": true, - "requires": { - "array-flatten": "^2.1.0", - "deep-equal": "^1.0.1", - "dns-equal": "^1.0.0", - "dns-txt": "^2.0.2", - "multicast-dns": "^6.0.1", - "multicast-dns-service-types": "^1.1.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", - "dev": true, - "peer": true - }, - "browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", - "dev": true - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, - "peer": true, - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dev": true, - "peer": true, - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dev": true, - "peer": true, - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "browserify-rsa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", - "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", - "dev": true, - "peer": true, - "requires": { - "bn.js": "^5.0.0", - "randombytes": "^2.0.1" - } - }, - "browserify-sign": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", - "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", - "dev": true, - "peer": true, - "requires": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.3", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "peer": true - } - } - }, - "browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "dev": true, - "peer": true, - "requires": { - "pako": "~1.0.5" - } - }, - "browserslist": { - "version": "4.19.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.19.1.tgz", - "integrity": "sha512-u2tbbG5PdKRTUoctO3NBD8FQ5HdPh1ZXPHzp1rwaa5jTc+RV9/+RlWiAIKmjRPQF+xbGM9Kklj5bZQFa2s/38A==", - "requires": { - "caniuse-lite": "^1.0.30001286", - "electron-to-chromium": "^1.4.17", - "escalade": "^3.1.1", - "node-releases": "^2.0.1", - "picocolors": "^1.0.0" - } - }, - "bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", - "dev": true, - "requires": { - "node-int64": "^0.4.0" - } - }, - "buffer": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", - "dev": true, - "peer": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" - } - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" - }, - "buffer-indexof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", - "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", - "dev": true, - "peer": true - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", - "dev": true, - "peer": true - }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==", - "dev": true, - "peer": true - }, - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", - "dev": true, - "peer": true - }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "camelcase-keys": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", - "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", - "dev": true, - "peer": true, - "requires": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" - } - }, - "caniuse-lite": { - "version": "1.0.30001297", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001297.tgz", - "integrity": "sha512-6bbIbowYG8vFs/Lk4hU9jFt7NknGDleVAciK916tp6ft1j+D//ZwwL6LbF1wXMQ32DMSjeuUV8suhh6dlmFjcA==" - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - } - } - }, - "char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==" - }, - "charenc": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", - "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=" - }, - "chokidar": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz", - "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==", - "dev": true, - "peer": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "dependencies": { - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "peer": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "peer": true - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "peer": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "peer": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "peer": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "peer": true - }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "peer": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "peer": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "peer": true - }, - "ci-info": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.3.0.tgz", - "integrity": "sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw==", - "dev": true - }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dev": true, - "peer": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "cjs-module-lexer": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz", - "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==", - "dev": true - }, - "clamp": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/clamp/-/clamp-1.0.1.tgz", - "integrity": "sha1-ZqDmQBGBbjcZaCj9yMjBRzEshjQ=" - }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, - "peer": true - }, - "clipboard": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.8.tgz", - "integrity": "sha512-Y6WO0unAIQp5bLmk1zdThRhgJt/x3ks6f30s3oE3H1mgIEU33XyQjEf8gsf6DxC7NPX8Y1SsNWjUjL/ywLnnbQ==", - "requires": { - "good-listener": "^1.2.2", - "select": "^1.1.2", - "tiny-emitter": "^2.0.0" - } - }, - "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", - "dev": true - }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", - "dev": true, - "peer": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "dependencies": { - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "peer": true - } - } - }, - "clone-regexp": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clone-regexp/-/clone-regexp-2.2.0.tgz", - "integrity": "sha512-beMpP7BOtTipFuW8hrJvREQ2DrRu3BE7by0ZpibtfBA+qfHYvMGTc2Yb1JMYPKg/JUw0CHYvpg796aNTSW9z7Q==", - "dev": true, - "peer": true, - "requires": { - "is-regexp": "^2.0.0" - } - }, - "closest-css-color": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/closest-css-color/-/closest-css-color-1.0.0.tgz", - "integrity": "sha512-tSBfCvnaW4d2gSTg/yKRhZXarp6lDFM0FQthfMWweOiLa2fqVyWJhDO7PXxT7PX//xT+Ci8iPJKaZCIhwGDFHw==", - "requires": { - "colour-proximity": "0.0.2", - "css-color-names": "1.0.1", - "lodash": "^4.17.21" - } - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true - }, - "collect-v8-coverage": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", - "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", - "dev": true - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "color-string": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-0.1.3.tgz", - "integrity": "sha1-6GXS4+WfZlw68N4UOD9r8HBWhfM=", - "requires": { - "color-convert": "0.2.x" - }, - "dependencies": { - "color-convert": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-0.2.1.tgz", - "integrity": "sha1-NjyrI8lLMaDWTbcQSLjGqUD4xow=" - } - } - }, - "colord": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.2.tgz", - "integrity": "sha512-Uqbg+J445nc1TKn4FoDPS6ZZqAvEDnwrH42yo8B40JSOgSLxMZ/gt3h4nmCtPLQeXhjJJkqBx7SCY35WnIixaQ==", - "dev": true, - "peer": true - }, - "colorette": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.16.tgz", - "integrity": "sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==", - "dev": true, - "peer": true - }, - "colour-proximity": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/colour-proximity/-/colour-proximity-0.0.2.tgz", - "integrity": "sha1-E5rTr+zzAbyAO42mmPMslyl0dpw=", - "requires": { - "color-string": "~0.1.2" - } - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true - }, - "comment-parser": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.3.1.tgz", - "integrity": "sha512-B52sN2VNghyq5ofvUsqZjmk6YkihBX5vMSChmSK9v4ShjKf3Vk5Xcmgpw4o+iIgtrnM/u5FiMpz9VKb8lpBveA==", - "dev": true, - "peer": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true, - "peer": true - }, - "compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, - "peer": true, - "requires": { - "mime-db": ">= 1.43.0 < 2" - } - }, - "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dev": true, - "peer": true, - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true, - "peer": true - } - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "condense-newlines": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/condense-newlines/-/condense-newlines-0.2.1.tgz", - "integrity": "sha1-PemFVTE5R10yUCyDsC9gaE0kxV8=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-whitespace": "^0.3.0", - "kind-of": "^3.0.2" - } - }, - "config-chain": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", - "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", - "dev": true, - "requires": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - } - }, - "connect-history-api-fallback": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", - "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", - "dev": true, - "peer": true - }, - "console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", - "dev": true, - "peer": true - }, - "consolidate": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/consolidate/-/consolidate-0.15.1.tgz", - "integrity": "sha512-DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw==", - "dev": true, - "peer": true, - "requires": { - "bluebird": "^3.1.1" - } - }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==", - "dev": true, - "peer": true - }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dev": true, - "peer": true, - "requires": { - "safe-buffer": "5.2.1" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "peer": true - } - } - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true, - "peer": true - }, - "convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", - "dev": true, - "peer": true - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "dev": true, - "peer": true - }, - "core-js": { - "version": "3.24.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.24.1.tgz", - "integrity": "sha512-0QTBSYSUZ6Gq21utGzkfITDylE8jWC9Ne1D2MrhvlsZBI1x39OdDIVbzSqtgMndIy6BlHxBXpMGqzZmnztg2rg==" - }, - "core-js-compat": { - "version": "3.15.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.15.1.tgz", - "integrity": "sha512-xGhzYMX6y7oEGQGAJmP2TmtBLvR4nZmRGEcFa3ubHOq5YEp51gGN9AovVa0AoujGZIq+Wm6dISiYyGNfdflYww==", - "dev": true, - "peer": true, - "requires": { - "browserslist": "^4.16.6", - "semver": "7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true, - "peer": true - } - } - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", - "dev": true, - "peer": true, - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.2.1", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.10.0" - }, - "dependencies": { - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "peer": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "peer": true - } - } - }, - "create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", - "dev": true, - "peer": true, - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true, - "peer": true - } - } - }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, - "peer": true, - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, - "peer": true, - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "crypt": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", - "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=" - }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dev": true, - "peer": true, - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - } - }, - "css": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", - "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "source-map": "^0.6.1", - "source-map-resolve": "^0.5.2", - "urix": "^0.1.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "css-color-names": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-1.0.1.tgz", - "integrity": "sha512-/loXYOch1qU1biStIFsHH8SxTmOseh1IJqFvy8IujXOm1h+QjUdDhkzOrR5HG8K8mlxREj0yfi8ewCHx0eMxzA==" - }, - "css-loader": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.5.1.tgz", - "integrity": "sha512-gEy2w9AnJNnD9Kuo4XAP9VflW/ujKoS9c/syO+uWMlm5igc7LysKzPXaDoR2vroROkSwsTS2tGr1yGGEbZOYZQ==", - "dev": true, - "peer": true, - "requires": { - "icss-utils": "^5.1.0", - "postcss": "^8.2.15", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.1.0", - "semver": "^7.3.5" - }, - "dependencies": { - "icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true, - "peer": true, - "requires": {} - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "postcss": { - "version": "8.4.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", - "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", - "dev": true, - "peer": true, - "requires": { - "nanoid": "^3.1.30", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.1" - } - }, - "postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true, - "peer": true, - "requires": {} - }, - "postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", - "dev": true, - "peer": true, - "requires": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - } - }, - "postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", - "dev": true, - "peer": true, - "requires": { - "postcss-selector-parser": "^6.0.4" - } - }, - "postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dev": true, - "peer": true, - "requires": { - "icss-utils": "^5.0.0" - } - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "peer": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "peer": true - } - } - }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, - "peer": true - }, - "cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", - "dev": true - }, - "cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", - "dev": true, - "requires": { - "cssom": "~0.3.6" - }, - "dependencies": { - "cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true - } - } - }, - "csstype": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.0.tgz", - "integrity": "sha512-uX1KG+x9h5hIJsaKR9xHUeUraxf8IODOwq9JLNPq6BwB04a/xgpq3rcx47l5BZu5zBPlgD342tdke3Hom/nJRA==" - }, - "cubic2quad": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/cubic2quad/-/cubic2quad-1.2.1.tgz", - "integrity": "sha512-wT5Y7mO8abrV16gnssKdmIhIbA9wSkeMzhh27jAguKrV82i24wER0vL5TGhUJ9dbJNDcigoRZ0IAHFEEEI4THQ==", - "dev": true - }, - "custom-event-polyfill": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/custom-event-polyfill/-/custom-event-polyfill-1.0.7.tgz", - "integrity": "sha512-TDDkd5DkaZxZFM8p+1I3yAlvM3rSr1wbrOliG4yJiwinMZN8z/iGL7BTlDkrJcYTmgUSb4ywVCc3ZaUtOtC76w==" - }, - "data-urls": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", - "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", - "dev": true, - "requires": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" - } - }, - "date-format-parse": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/date-format-parse/-/date-format-parse-0.2.6.tgz", - "integrity": "sha512-sdxnYAWmLopeb+6Hmw+vo3or4OCJOnh4+YoJ9p+Id3o2EnNP0INpTqx7wr8UregfMpgaSZAH473R/ytiaB3gVg==" - }, - "de-indent": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", - "integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0=", - "dev": true - }, - "deasync": { - "version": "0.1.21", - "resolved": "https://registry.npmjs.org/deasync/-/deasync-0.1.21.tgz", - "integrity": "sha512-kUmM8Y+PZpMpQ+B4AuOW9k2Pfx/mSupJtxOsLzmnHY2WqZUYRFccFn2RhzPAqt3Xb+sorK/badW2D4zNzqZz5w==", - "dev": true, - "requires": { - "bindings": "^1.5.0", - "node-addon-api": "^1.7.1" - } - }, - "debounce": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/debounce/-/debounce-1.2.1.tgz", - "integrity": "sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==" - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true, - "peer": true - }, - "decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", - "dev": true, - "peer": true, - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "dependencies": { - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true, - "peer": true - } - } - }, - "decimal.js": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz", - "integrity": "sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==", - "dev": true - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true - }, - "dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=", - "dev": true - }, - "deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", - "dev": true, - "peer": true, - "requires": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" - } - }, - "deep-is": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true - }, - "deepmerge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", - "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", - "dev": true - }, - "default-gateway": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", - "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", - "dev": true, - "peer": true, - "requires": { - "execa": "^5.0.0" - } - }, - "define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - "dev": true, - "peer": true - }, - "define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", - "dev": true, - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "del": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", - "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", - "dev": true, - "peer": true, - "requires": { - "globby": "^11.0.1", - "graceful-fs": "^4.2.4", - "is-glob": "^4.0.1", - "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.2", - "p-map": "^4.0.0", - "rimraf": "^3.0.2", - "slash": "^3.0.0" - }, - "dependencies": { - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "peer": true - } - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "delegate": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz", - "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==" - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "dev": true, - "peer": true - }, - "des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "dev": true, - "peer": true, - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", - "dev": true, - "peer": true - }, - "detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - "dev": true - }, - "detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true, - "peer": true - }, - "diff-sequences": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz", - "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==", - "dev": true - }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dev": true, - "peer": true, - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true, - "peer": true - } - } - }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "peer": true, - "requires": { - "path-type": "^4.0.0" - }, - "dependencies": { - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "peer": true - } - } - }, - "dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", - "dev": true, - "peer": true - }, - "dns-packet": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz", - "integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==", - "dev": true, - "peer": true, - "requires": { - "ip": "^1.1.0", - "safe-buffer": "^5.0.1" - } - }, - "dns-txt": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", - "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", - "dev": true, - "peer": true, - "requires": { - "buffer-indexof": "^1.0.0" - } - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "peer": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "dom-event-types": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dom-event-types/-/dom-event-types-1.0.0.tgz", - "integrity": "sha512-2G2Vwi2zXTHBGqXHsJ4+ak/iP0N8Ar+G8a7LiD2oup5o4sQWytwqqrZu/O6hIMV0KMID2PL69OhpshLO0n7UJQ==", - "dev": true - }, - "dom-serializer": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", - "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", - "dev": true, - "peer": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "dependencies": { - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true, - "peer": true - } - } - }, - "domain-browser": { - "version": "4.22.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-4.22.0.tgz", - "integrity": "sha512-IGBwjF7tNk3cwypFNH/7bfzBcgSCbaMOD3GsaY1AU/JRrnHnYgEM0+9kQt52iZxjNsjBtJYtao146V+f8jFZNw==", - "dev": true, - "peer": true - }, - "domelementtype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", - "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", - "dev": true, - "peer": true - }, - "domexception": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", - "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", - "dev": true, - "requires": { - "webidl-conversions": "^5.0.0" - }, - "dependencies": { - "webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", - "dev": true - } - } - }, - "domhandler": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz", - "integrity": "sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==", - "dev": true, - "peer": true, - "requires": { - "domelementtype": "^2.2.0" - } - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "peer": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "editorconfig": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz", - "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==", - "dev": true, - "requires": { - "commander": "^2.19.0", - "lru-cache": "^4.1.5", - "semver": "^5.6.0", - "sigmund": "^1.0.1" - }, - "dependencies": { - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", - "dev": true, - "peer": true - }, - "electron-to-chromium": { - "version": "1.4.38", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.38.tgz", - "integrity": "sha512-WhHt3sZazKj0KK/UpgsbGQnUUoFeAHVishzHFExMxagpZgjiGYSC9S0ZlbhCfSH2L2i+2A1yyqOIliTctMx7KQ==" - }, - "element-matches": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/element-matches/-/element-matches-0.1.2.tgz", - "integrity": "sha512-yWh1otcs3OKUWDvu/IxyI36ZI3WNaRZlI0uG/DK6fu0pap0VYZ0J5pEGTk1zakme+hT0OKHwhlHc0N5TJhY6yQ==" - }, - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "dev": true, - "peer": true, - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true, - "peer": true - } - } - }, - "emittery": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.8.1.tgz", - "integrity": "sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==", - "dev": true - }, - "emoji-mart-vue-fast": { - "version": "7.0.7", - "resolved": "https://registry.npmjs.org/emoji-mart-vue-fast/-/emoji-mart-vue-fast-7.0.7.tgz", - "integrity": "sha512-Nrk4IOjKcKKYyMnRm4lreEiPpvDX+h3FKI86SYs05dCFZ0WZIMTGok26dtWvJqseTThS1UghsNEjM4HrfDjIJg==", - "requires": { - "@babel/polyfill": "7.2.5", - "@babel/runtime": "7.3.4", - "vue-virtual-scroller": "^1.0.0-rc.2" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==" - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "dev": true, - "peer": true - }, - "enhanced-resolve": { - "version": "5.8.3", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.3.tgz", - "integrity": "sha512-EGAbGvH7j7Xt2nc0E7D99La1OiEs8LnyimkRgwExpUMScN6O+3x9tIWs7PLQZVNx4YD+00skHXPXi1yQHpAmZA==", - "peer": true, - "requires": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - } - }, - "entities": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz", - "integrity": "sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==", - "dev": true, - "peer": true - }, - "envinfo": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz", - "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==", - "dev": true, - "peer": true - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-abstract": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.1.tgz", - "integrity": "sha512-WEm2oBhfoI2sImeM4OF2zE2V3BYdSF+KnSi9Sidz51fQHd7+JuF8Xgcj9/0o+OWeIeIS/MiuNnlruQrJf16GQA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.1", - "get-symbol-description": "^1.0.0", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.4", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "regexp.prototype.flags": "^1.4.3", - "string.prototype.trimend": "^1.0.5", - "string.prototype.trimstart": "^1.0.5", - "unbox-primitive": "^1.0.2" - } - }, - "es-module-lexer": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", - "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", - "peer": true - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==", - "dev": true, - "peer": true - }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" - }, - "escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true - }, - "escodegen": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", - "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", - "dev": true, - "requires": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - }, - "dependencies": { - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - }, - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - } - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "dev": true, - "requires": { - "prelude-ls": "~1.1.2" - } - } - } - }, - "eslint": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.11.0.tgz", - "integrity": "sha512-/KRpd9mIRg2raGxHRGwW9ZywYNAClZrHjdueHcrVDuO3a6bj83eoTirCCk0M0yPwOjWYKHwRVRid+xK4F/GHgA==", - "dev": true, - "peer": true, - "requires": { - "@eslint/eslintrc": "^1.2.1", - "@humanwhocodes/config-array": "^0.9.2", - "ajv": "^6.10.0", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.1.1", - "eslint-utils": "^3.0.0", - "eslint-visitor-keys": "^3.3.0", - "espree": "^9.3.1", - "esquery": "^1.4.0", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^6.0.1", - "globals": "^13.6.0", - "ignore": "^5.2.0", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.0.4", - "natural-compare": "^1.4.0", - "optionator": "^0.9.1", - "regexpp": "^3.2.0", - "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "peer": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "peer": true - }, - "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "dev": true, - "peer": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "peer": true - }, - "eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", - "dev": true, - "peer": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - } - }, - "eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "dev": true, - "peer": true, - "requires": { - "eslint-visitor-keys": "^2.0.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true, - "peer": true - } - } - }, - "eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", - "dev": true, - "peer": true - }, - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "peer": true - }, - "glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "peer": true, - "requires": { - "is-glob": "^4.0.3" - } - }, - "globals": { - "version": "13.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.9.0.tgz", - "integrity": "sha512-74/FduwI/JaIrr1H8e71UbDE+5x7pIPs1C2rrwC52SszOo043CsWOZEMW7o2Y58xwm9b+0RBKDxY5n2sUpEFxA==", - "dev": true, - "peer": true, - "requires": { - "type-fest": "^0.20.2" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "peer": true - }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "peer": true, - "requires": { - "argparse": "^2.0.1" - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "peer": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "peer": true - } - } - }, - "eslint-config-standard": { - "version": "17.0.0-1", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-17.0.0-1.tgz", - "integrity": "sha512-aqRG58dqoBNfOLN+PsitasxmW+W9Os4oQrx081B16T4E4WogsSbpUL6hnKSnyv35sSRYA2XjBtKMOrUboL6jgw==", - "dev": true, - "peer": true, - "requires": {} - }, - "eslint-import-resolver-node": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", - "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", - "dev": true, - "peer": true, - "requires": { - "debug": "^3.2.7", - "resolve": "^1.20.0" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "peer": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "eslint-module-utils": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.3.tgz", - "integrity": "sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ==", - "dev": true, - "peer": true, - "requires": { - "debug": "^3.2.7", - "find-up": "^2.1.0" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "peer": true, - "requires": { - "ms": "^2.1.1" - } - }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "peer": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "peer": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "peer": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "peer": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "peer": true - } - } - }, - "eslint-plugin-es": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz", - "integrity": "sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==", - "dev": true, - "peer": true, - "requires": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - } - }, - "eslint-plugin-import": { - "version": "2.25.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.25.4.tgz", - "integrity": "sha512-/KJBASVFxpu0xg1kIBn9AUa8hQVnszpwgE7Ld0lKAlx7Ie87yzEzCgSkekt+le/YVhiaosO4Y14GDAOc41nfxA==", - "dev": true, - "peer": true, - "requires": { - "array-includes": "^3.1.4", - "array.prototype.flat": "^1.2.5", - "debug": "^2.6.9", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.6", - "eslint-module-utils": "^2.7.2", - "has": "^1.0.3", - "is-core-module": "^2.8.0", - "is-glob": "^4.0.3", - "minimatch": "^3.0.4", - "object.values": "^1.1.5", - "resolve": "^1.20.0", - "tsconfig-paths": "^3.12.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, - "peer": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true, - "peer": true - } - } - }, - "eslint-plugin-jsdoc": { - "version": "39.3.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-39.3.2.tgz", - "integrity": "sha512-RSGN94RYzIJS/WfW3l6cXzRLfJWxvJgNQZ4w0WCaxJWDJMigtwTsILEAfKqmmPkT2rwMH/s3C7G5ChDE6cwPJg==", - "dev": true, - "peer": true, - "requires": { - "@es-joy/jsdoccomment": "~0.31.0", - "comment-parser": "1.3.1", - "debug": "^4.3.4", - "escape-string-regexp": "^4.0.0", - "esquery": "^1.4.0", - "semver": "^7.3.7", - "spdx-expression-parse": "^3.0.1" - }, - "dependencies": { - "escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "peer": true - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "peer": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "peer": true - } - } - }, - "eslint-plugin-n": { - "version": "14.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-14.0.0.tgz", - "integrity": "sha512-mNwplPLsbaKhHyA0fa/cy8j+oF6bF6l81hzBTWa6JOvPcMNAuIogk2ih6d9tYvWYzyUG+7ZFeChqbzdFpg2QrQ==", - "dev": true, - "peer": true, - "requires": { - "eslint-plugin-es": "^4.1.0", - "eslint-utils": "^3.0.0", - "ignore": "^5.1.1", - "is-core-module": "^2.3.0", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "^6.1.0" - }, - "dependencies": { - "eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "dev": true, - "peer": true, - "requires": { - "eslint-visitor-keys": "^2.0.0" - } - } - } - }, - "eslint-plugin-node": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", - "dev": true, - "peer": true, - "requires": { - "eslint-plugin-es": "^3.0.0", - "eslint-utils": "^2.0.0", - "ignore": "^5.1.1", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "^6.1.0" - }, - "dependencies": { - "eslint-plugin-es": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", - "dev": true, - "peer": true, - "requires": { - "eslint-utils": "^2.0.0", - "regexpp": "^3.0.0" - } - } - } - }, - "eslint-plugin-promise": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.0.0.tgz", - "integrity": "sha512-7GPezalm5Bfi/E22PnQxDWH2iW9GTvAlUNTztemeHb6c1BniSyoeTrM87JkC0wYdi6aQrZX9p2qEiAno8aTcbw==", - "dev": true, - "peer": true, - "requires": {} - }, - "eslint-plugin-vue": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-8.5.0.tgz", - "integrity": "sha512-i1uHCTAKOoEj12RDvdtONWrGzjFm/djkzqfhmQ0d6M/W8KM81mhswd/z+iTZ0jCpdUedW3YRgcVfQ37/J4zoYQ==", - "dev": true, - "peer": true, - "requires": { - "eslint-utils": "^3.0.0", - "natural-compare": "^1.4.0", - "semver": "^7.3.5", - "vue-eslint-parser": "^8.0.1" - }, - "dependencies": { - "eslint-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", - "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", - "dev": true, - "peer": true, - "requires": { - "eslint-visitor-keys": "^2.0.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "peer": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "peer": true - } - } - }, - "eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "peer": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dev": true, - "peer": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, - "peer": true - } - } - }, - "eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true, - "peer": true - }, - "espree": { - "version": "9.3.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz", - "integrity": "sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==", - "dev": true, - "peer": true, - "requires": { - "acorn": "^8.7.0", - "acorn-jsx": "^5.3.1", - "eslint-visitor-keys": "^3.3.0" - }, - "dependencies": { - "acorn": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", - "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", - "dev": true, - "peer": true - }, - "eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", - "dev": true, - "peer": true - } - } - }, - "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", - "dev": true - }, - "esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "dev": true, - "peer": true, - "requires": { - "estraverse": "^5.1.0" - }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true, - "peer": true - } - } - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "peer": true, - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "peer": true - } - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", - "dev": true, - "peer": true - }, - "event-target-shim": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - "dev": true, - "peer": true - }, - "eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true, - "peer": true - }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "peer": true - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dev": true, - "peer": true, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - } - }, - "execall": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/execall/-/execall-2.0.0.tgz", - "integrity": "sha512-0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow==", - "dev": true, - "peer": true, - "requires": { - "clone-regexp": "^2.1.0" - } - }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true - }, - "expect": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/expect/-/expect-27.5.1.tgz", - "integrity": "sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1" - } - }, - "express": { - "version": "4.17.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.2.tgz", - "integrity": "sha512-oxlxJxcQlYwqPWKVJJtvQiwHgosH/LrLSPA+H4UxpyvSS6jC5aH+5MoHFM+KABgTOt0APue4w66Ha8jCUo9QGg==", - "dev": true, - "peer": true, - "requires": { - "accepts": "~1.3.7", - "array-flatten": "1.1.1", - "body-parser": "1.19.1", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.4.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~1.1.2", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "~1.1.2", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.9.6", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.17.2", - "serve-static": "1.14.2", - "setprototypeof": "1.2.0", - "statuses": "~1.5.0", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "dev": true, - "peer": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true, - "peer": true - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "peer": true - } - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "extract-from-css": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/extract-from-css/-/extract-from-css-0.4.4.tgz", - "integrity": "sha1-HqffLnx8brmSL6COitrqSG9vj5I=", - "dev": true, - "requires": { - "css": "^2.1.0" - } - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - }, - "fast-glob": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", - "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", - "dev": true, - "peer": true, - "requires": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "dependencies": { - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "peer": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "peer": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "peer": true - }, - "micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "peer": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "peer": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - }, - "fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "fastest-levenshtein": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz", - "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==", - "dev": true, - "peer": true - }, - "fastq": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz", - "integrity": "sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==", - "dev": true, - "peer": true, - "requires": { - "reusify": "^1.0.4" - } - }, - "faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "peer": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - }, - "fb-watchman": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", - "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", - "dev": true, - "requires": { - "bser": "2.1.1" - } - }, - "file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "peer": true, - "requires": { - "flat-cache": "^3.0.4" - } - }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true - }, - "filter-obj": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-2.0.2.tgz", - "integrity": "sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==", - "dev": true, - "peer": true - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "peer": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "statuses": "~1.5.0", - "unpipe": "~1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true, - "peer": true - } - } - }, - "find-babel-config": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/find-babel-config/-/find-babel-config-1.2.0.tgz", - "integrity": "sha512-jB2CHJeqy6a820ssiqwrKMeyC6nNdmrcgkKWJWmpoxpE8RKciYJXCcXRq1h2AzCo5I5BJeN2tkGEO3hLTuePRA==", - "dev": true, - "requires": { - "json5": "^0.5.1", - "path-exists": "^3.0.0" - }, - "dependencies": { - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - } - } - }, - "find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "peer": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "dependencies": { - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "peer": true, - "requires": { - "semver": "^6.0.0" - } - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "peer": true, - "requires": { - "find-up": "^4.0.0" - } - } - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, - "peer": true, - "requires": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - } - }, - "flatted": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", - "dev": true, - "peer": true - }, - "follow-redirects": { - "version": "1.14.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", - "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==" - }, - "fonteditor-core": { - "version": "0.0.37", - "resolved": "https://registry.npmjs.org/fonteditor-core/-/fonteditor-core-0.0.37.tgz", - "integrity": "sha1-INXODJcaJXrwBt5EjBaUTrkuIDQ=", - "dev": true, - "requires": { - "esprima": "^2.7.3", - "estraverse": "^4.2.0", - "xmldom": "~0.1.19" - } - }, - "for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dev": true, - "peer": true, - "requires": { - "is-callable": "^1.1.3" - } - }, - "form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true, - "peer": true - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "dev": true, - "peer": true - }, - "fs-monkey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", - "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", - "dev": true, - "peer": true - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "optional": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "function.prototype.name": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - } - }, - "functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true, - "peer": true - }, - "functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true - }, - "gaze": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", - "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", - "dev": true, - "requires": { - "globule": "^1.0.0" - } - }, - "gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true - }, - "geometry-interfaces": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/geometry-interfaces/-/geometry-interfaces-1.1.4.tgz", - "integrity": "sha512-qD6OdkT6NcES9l4Xx3auTpwraQruU7dARbQPVO71MKvkGYw5/z/oIiGymuFXrRaEQa5Y67EIojUpaLeGEa5hGA==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - } - }, - "get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true - }, - "get-stdin": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", - "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", - "dev": true, - "peer": true - }, - "get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true - }, - "get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "peer": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "peer": true - }, - "global-modules": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", - "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", - "dev": true, - "peer": true, - "requires": { - "global-prefix": "^3.0.0" - } - }, - "global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", - "dev": true, - "peer": true, - "requires": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" - }, - "dependencies": { - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "peer": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "peer": true, - "requires": { - "isexe": "^2.0.0" - } - } - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "globby": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", - "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", - "dev": true, - "peer": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.1.1", - "ignore": "^5.1.4", - "merge2": "^1.3.0", - "slash": "^3.0.0" - }, - "dependencies": { - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "peer": true - } - } - }, - "globjoin": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", - "integrity": "sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM=", - "dev": true, - "peer": true - }, - "globule": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz", - "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==", - "dev": true, - "requires": { - "glob": "~7.1.1", - "lodash": "~4.17.10", - "minimatch": "~3.0.2" - } - }, - "good-listener": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", - "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=", - "requires": { - "delegate": "^3.1.2" - } - }, - "graceful-fs": { - "version": "4.2.9", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz", - "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==" - }, - "hammerjs": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/hammerjs/-/hammerjs-2.0.8.tgz", - "integrity": "sha1-BO93hiz/K7edMPdpIJWTAiK/YPE=" - }, - "handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true, - "peer": true - }, - "hard-rejection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", - "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", - "dev": true, - "peer": true - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - } - } - }, - "has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.1" - } - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true - }, - "has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "dev": true, - "peer": true, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, - "peer": true - } - } - }, - "hash-sum": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz", - "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=", - "dev": true, - "peer": true - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dev": true, - "peer": true, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", - "dev": true, - "peer": true, - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", - "dev": true, - "peer": true, - "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "peer": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "peer": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "html-encoding-sniffer": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", - "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", - "dev": true, - "requires": { - "whatwg-encoding": "^1.0.5" - } - }, - "html-entities": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.2.tgz", - "integrity": "sha512-c3Ab/url5ksaT0WyleslpBEthOzWhrjQbg75y7XUsfSzi3Dgzt0l8w5e7DylRn15MTlMMD58dTfzddNS2kcAjQ==", - "dev": true, - "peer": true - }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "html-tags": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.1.0.tgz", - "integrity": "sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==", - "dev": true, - "peer": true - }, - "htmlparser2": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-7.2.0.tgz", - "integrity": "sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==", - "dev": true, - "peer": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.2", - "domutils": "^2.8.0", - "entities": "^3.0.1" - } - }, - "http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", - "dev": true, - "peer": true - }, - "http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", - "dev": true, - "peer": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - } - }, - "http-parser-js": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.5.tgz", - "integrity": "sha512-x+JVEkO2PoM8qqpbPbOL3cqHPwerep7OwzK7Ay+sMQjKzaKCqWvjoXm5tqMP9tXWWTnTzAjIhXg+J99XYuPhPA==", - "dev": true, - "peer": true - }, - "http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "peer": true, - "requires": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", - "dev": true, - "requires": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - } - }, - "http-proxy-middleware": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.1.tgz", - "integrity": "sha512-cfaXRVoZxSed/BmkA7SwBVNI9Kj7HFltaE5rqYOub5kWzWZ+gofV2koVN1j2rMW7pEfSSlCHGJ31xmuyFyfLOg==", - "dev": true, - "peer": true, - "requires": { - "@types/http-proxy": "^1.17.5", - "http-proxy": "^1.18.1", - "is-glob": "^4.0.1", - "is-plain-obj": "^3.0.0", - "micromatch": "^4.0.2" - }, - "dependencies": { - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "peer": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "peer": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "peer": true - }, - "is-plain-obj": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", - "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", - "dev": true, - "peer": true - }, - "micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "peer": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "peer": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==", - "dev": true, - "peer": true - }, - "https-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", - "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", - "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true - }, - "ical.js": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/ical.js/-/ical.js-1.5.0.tgz", - "integrity": "sha512-7ZxMkogUkkaCx810yp0ZGKvq1ZpRgJeornPttpoxe6nYZ3NLesZe1wWMXDdwTkj/b5NtXT+Y16Aakph/ao98ZQ==" - }, - "icalzone": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/icalzone/-/icalzone-0.0.1.tgz", - "integrity": "sha512-ln0AM3fMSLLuJijuWuRzwrN0Tg+BG8ADi7ha6slmC7ZqOijagif5I6b4Nl4/vPSXWexnxyrHiEof8VxDOllXVQ==" - }, - "iconfont-plugin-webpack": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/iconfont-plugin-webpack/-/iconfont-plugin-webpack-1.1.4.tgz", - "integrity": "sha512-kpvbzssf7WdxaMZHYAvlQWp61Ln301oE/VCJpnvVFLr3Bib7HWleg7+vrdFgqkuI8XwlMFAZ2fSPGuf144oaqw==", - "dev": true, - "requires": { - "fonteditor-core": "0.0.37", - "run-plugin-webpack": "^1.0.0", - "svg2ttf": "^4.0.2", - "svgicons2svgfont": "^9.0.2" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true, - "peer": true - }, - "ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true, - "peer": true - }, - "immutable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", - "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", - "dev": true, - "peer": true - }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "peer": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "peer": true - } - } - }, - "import-lazy": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", - "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", - "dev": true, - "peer": true - }, - "import-local": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", - "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", - "dev": true, - "requires": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "dependencies": { - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - } - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, - "peer": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true - }, - "internal-slot": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - } - }, - "interpret": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", - "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", - "dev": true, - "peer": true - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "requires": { - "loose-envify": "^1.0.0" - } - }, - "ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", - "dev": true, - "peer": true - }, - "ipaddr.js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", - "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", - "dev": true, - "peer": true - }, - "is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "requires": { - "has-bigints": "^1.0.1" - } - }, - "is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" - }, - "is-callable": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", - "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", - "dev": true - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-date-object": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz", - "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==", - "dev": true - }, - "is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "peer": true - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true, - "peer": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "dev": true - }, - "is-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", - "dev": true, - "peer": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "peer": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-nan": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", - "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" - } - }, - "is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true - }, - "is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-path-cwd": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", - "dev": true, - "peer": true - }, - "is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "peer": true - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "dev": true, - "peer": true - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "peer": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true - }, - "is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-regexp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-2.1.0.tgz", - "integrity": "sha512-OZ4IlER3zmRIoB9AqNhEggVxqIH4ofDns5nRrPS6yQxXE1TPCUpFznBfRQmQa8uC+pXqjMnukiJBxCisIxiLGA==", - "dev": true, - "peer": true - }, - "is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", - "dev": true - }, - "is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "is-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.9.tgz", - "integrity": "sha512-kfrlnTTn8pZkfpJMUgYD7YZ3qzeJgWUn8XfVYBARc4wnmNOmLbmuuaAs3q5fvB0UJOn6yHAKaGTPM7d6ezoD/A==", - "dev": true, - "peer": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-abstract": "^1.20.0", - "for-each": "^0.3.3", - "has-tostringtag": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-whitespace": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-whitespace/-/is-whitespace-0.3.0.tgz", - "integrity": "sha1-Fjnssb4DauxppUy7QBz77XEUq38=", - "dev": true - }, - "is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "peer": true, - "requires": { - "is-docker": "^2.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "peer": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true, - "peer": true - }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz", - "integrity": "sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==", - "dev": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - } - }, - "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "istanbul-reports": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", - "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", - "dev": true, - "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - } - }, - "jed": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/jed/-/jed-1.1.1.tgz", - "integrity": "sha1-elSbvZ/+FYWwzQoZHiAwVb7ldLQ=" - }, - "jest": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest/-/jest-27.5.1.tgz", - "integrity": "sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==", - "dev": true, - "requires": { - "@jest/core": "^27.5.1", - "import-local": "^3.0.2", - "jest-cli": "^27.5.1" - } - }, - "jest-changed-files": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-27.5.1.tgz", - "integrity": "sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "execa": "^5.0.0", - "throat": "^6.0.1" - } - }, - "jest-circus": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-27.5.1.tgz", - "integrity": "sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^0.7.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3", - "throat": "^6.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-cli": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-27.5.1.tgz", - "integrity": "sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==", - "dev": true, - "requires": { - "@jest/core": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "import-local": "^3.0.2", - "jest-config": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "prompts": "^2.0.1", - "yargs": "^16.2.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-config": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-27.5.1.tgz", - "integrity": "sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==", - "dev": true, - "requires": { - "@babel/core": "^7.8.0", - "@jest/test-sequencer": "^27.5.1", - "@jest/types": "^27.5.1", - "babel-jest": "^27.5.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.9", - "jest-circus": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-jasmine2": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runner": "^27.5.1", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - } - }, - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "jest-diff": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz", - "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-docblock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz", - "integrity": "sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==", - "dev": true, - "requires": { - "detect-newline": "^3.0.0" - } - }, - "jest-each": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-27.5.1.tgz", - "integrity": "sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-environment-jsdom": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz", - "integrity": "sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1", - "jsdom": "^16.6.0" - } - }, - "jest-environment-node": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-27.5.1.tgz", - "integrity": "sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "jest-mock": "^27.5.1", - "jest-util": "^27.5.1" - } - }, - "jest-get-type": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz", - "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==", - "dev": true - }, - "jest-haste-map": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz", - "integrity": "sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.3.2", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^27.5.1", - "jest-serializer": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "micromatch": "^4.0.4", - "walker": "^1.0.7" - }, - "dependencies": { - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "jest-jasmine2": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-27.5.1.tgz", - "integrity": "sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^27.5.1", - "is-generator-fn": "^2.0.0", - "jest-each": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "pretty-format": "^27.5.1", - "throat": "^6.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-leak-detector": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-27.5.1.tgz", - "integrity": "sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==", - "dev": true, - "requires": { - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - } - }, - "jest-matcher-utils": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz", - "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==", - "dev": true, - "requires": { - "chalk": "^4.0.0", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "pretty-format": "^27.5.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-message-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz", - "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^27.5.1", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^27.5.1", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "jest-mock": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-27.5.1.tgz", - "integrity": "sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*" - } - }, - "jest-pnp-resolver": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", - "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", - "dev": true, - "requires": {} - }, - "jest-regex-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.5.1.tgz", - "integrity": "sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==", - "dev": true - }, - "jest-resolve": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-27.5.1.tgz", - "integrity": "sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^27.5.1", - "jest-validate": "^27.5.1", - "resolve": "^1.20.0", - "resolve.exports": "^1.1.0", - "slash": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-resolve-dependencies": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-27.5.1.tgz", - "integrity": "sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-snapshot": "^27.5.1" - } - }, - "jest-runner": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-27.5.1.tgz", - "integrity": "sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==", - "dev": true, - "requires": { - "@jest/console": "^27.5.1", - "@jest/environment": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.8.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^27.5.1", - "jest-environment-jsdom": "^27.5.1", - "jest-environment-node": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-leak-detector": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-runtime": "^27.5.1", - "jest-util": "^27.5.1", - "jest-worker": "^27.5.1", - "source-map-support": "^0.5.6", - "throat": "^6.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-runtime": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-27.5.1.tgz", - "integrity": "sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==", - "dev": true, - "requires": { - "@jest/environment": "^27.5.1", - "@jest/fake-timers": "^27.5.1", - "@jest/globals": "^27.5.1", - "@jest/source-map": "^27.5.1", - "@jest/test-result": "^27.5.1", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "execa": "^5.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-mock": "^27.5.1", - "jest-regex-util": "^27.5.1", - "jest-resolve": "^27.5.1", - "jest-snapshot": "^27.5.1", - "jest-util": "^27.5.1", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-serializer": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.5.1.tgz", - "integrity": "sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==", - "dev": true, - "requires": { - "@types/node": "*", - "graceful-fs": "^4.2.9" - } - }, - "jest-serializer-vue": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/jest-serializer-vue/-/jest-serializer-vue-2.0.2.tgz", - "integrity": "sha1-sjjvKGNX7GtIBCG9RxRQUJh9WbM=", - "dev": true, - "requires": { - "pretty": "2.0.0" - } - }, - "jest-snapshot": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-27.5.1.tgz", - "integrity": "sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==", - "dev": true, - "requires": { - "@babel/core": "^7.7.2", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/traverse": "^7.7.2", - "@babel/types": "^7.0.0", - "@jest/transform": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.1.5", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^27.5.1", - "graceful-fs": "^4.2.9", - "jest-diff": "^27.5.1", - "jest-get-type": "^27.5.1", - "jest-haste-map": "^27.5.1", - "jest-matcher-utils": "^27.5.1", - "jest-message-util": "^27.5.1", - "jest-util": "^27.5.1", - "natural-compare": "^1.4.0", - "pretty-format": "^27.5.1", - "semver": "^7.3.2" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "jest-util": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.5.1.tgz", - "integrity": "sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-validate": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-27.5.1.tgz", - "integrity": "sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==", - "dev": true, - "requires": { - "@jest/types": "^27.5.1", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^27.5.1", - "leven": "^3.1.0", - "pretty-format": "^27.5.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-watcher": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-27.5.1.tgz", - "integrity": "sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==", - "dev": true, - "requires": { - "@jest/test-result": "^27.5.1", - "@jest/types": "^27.5.1", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^27.5.1", - "string-length": "^4.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - }, - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "jquery": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.0.tgz", - "integrity": "sha512-JVzAR/AjBvVt2BmYhxRCSYysDsPcssdmTFnzyLEts9qNwmjmu4JTAMYubEfwVOSwpQ1I1sKKFcxhZCI2buerfw==", - "peer": true - }, - "js-beautify": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.0.tgz", - "integrity": "sha512-yuck9KirNSCAwyNJbqW+BxJqJ0NLJ4PwBUzQQACl5O3qHMBXVkXb/rD0ilh/Lat/tn88zSZ+CAHOlk0DsY7GuQ==", - "dev": true, - "requires": { - "config-chain": "^1.1.12", - "editorconfig": "^0.15.3", - "glob": "^7.1.3", - "nopt": "^5.0.0" - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - }, - "js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "dependencies": { - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true - } - } - }, - "jsdoc-type-pratt-parser": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-3.1.0.tgz", - "integrity": "sha512-MgtD0ZiCDk9B+eI73BextfRrVQl0oyzRG8B2BjORts6jbunj4ScKPcyXGTbB6eXL4y9TzxCm6hyeLq/2ASzNdw==", - "dev": true, - "peer": true - }, - "jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", - "dev": true, - "requires": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" - }, - "dependencies": { - "acorn": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", - "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", - "dev": true - } - } - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "peer": true - }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true, - "peer": true - }, - "json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", - "requires": { - "minimist": "^1.2.5" - } - }, - "jstz": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/jstz/-/jstz-2.1.1.tgz", - "integrity": "sha512-8hfl5RD6P7rEeIbzStBz3h4f+BQHfq/ABtoU6gXKQv5OcZhnmrIpG7e1pYaZ8hS9e0mp+bxUj08fnDUbKctYyA==" - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true - }, - "klona": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", - "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", - "dev": true, - "peer": true - }, - "known-css-properties": { - "version": "0.24.0", - "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.24.0.tgz", - "integrity": "sha512-RTSoaUAfLvpR357vWzAz/50Q/BmHfmE6ETSWfutT0AJiw10e6CmcdYRQJlLRd95B53D0Y2aD1jSxD3V3ySF+PA==", - "dev": true, - "peer": true - }, - "leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true - }, - "levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "peer": true, - "requires": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - } - }, - "lines-and-columns": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", - "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", - "dev": true - }, - "linkify-string": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/linkify-string/-/linkify-string-3.0.2.tgz", - "integrity": "sha512-e6sa4WYslcwuNA0ciRo7KPAb4VpTIOxsGPAXeSR8XlORtKak8WMleuvrt5iRZwulHAd6dI+BO7b94lNW8lbMUQ==", - "requires": {} - }, - "linkifyjs": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-3.0.1.tgz", - "integrity": "sha512-HwXVwdNH1wESBfo2sH7Bkl+ywzbGA3+uJEfhquCyi/bMCa49bFUvd/re1NT1Lox/5jdnpQXzI9O/jykit71idg==", - "peer": true - }, - "loader-runner": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz", - "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==", - "peer": true - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "peer": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "peer": true, - "requires": { - "minimist": "^1.2.0" - } - } - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", - "dev": true, - "peer": true - }, - "lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=" - }, - "lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true, - "peer": true - }, - "lodash.throttle": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", - "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=" - }, - "lodash.truncate": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", - "dev": true, - "peer": true - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - "dev": true, - "requires": { - "tmpl": "1.0.5" - } - }, - "map-obj": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.2.1.tgz", - "integrity": "sha512-+WA2/1sPmDj1dlvvJmB5G6JKfY9dpn7EVBUL06+y6PoljPkh+6V1QihwxNkbcGxCRjt2b0F9K0taiCuo7MbdFQ==", - "dev": true, - "peer": true - }, - "material-colors": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/material-colors/-/material-colors-1.2.6.tgz", - "integrity": "sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg==" - }, - "mathml-tag-names": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", - "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", - "dev": true, - "peer": true - }, - "md5": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", - "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", - "requires": { - "charenc": "0.0.2", - "crypt": "0.0.2", - "is-buffer": "~1.1.6" - } - }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dev": true, - "peer": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "dev": true, - "peer": true - }, - "memfs": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.1.tgz", - "integrity": "sha512-1c9VPVvW5P7I85c35zAdEr1TD5+F11IToIHIlrVIcflfnzPkJa0ZoYEoEdYDP8KgPFoSZ/opDrUsAoZWym3mtw==", - "dev": true, - "peer": true, - "requires": { - "fs-monkey": "1.0.3" - } - }, - "meow": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", - "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", - "dev": true, - "peer": true, - "requires": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize": "^1.2.0", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.18.0", - "yargs-parser": "^20.2.3" - }, - "dependencies": { - "hosted-git-info": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.0.2.tgz", - "integrity": "sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg==", - "dev": true, - "peer": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "normalize-package-data": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.2.tgz", - "integrity": "sha512-6CdZocmfGaKnIHPVFhJJZ3GuR8SsLKvDANFp47Jmy51aKIr8akjAWTSxtpI+MBgBFdSMRyo4hMpDlT6dTffgZg==", - "dev": true, - "peer": true, - "requires": { - "hosted-git-info": "^4.0.1", - "resolve": "^1.20.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - } - }, - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "peer": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dev": true, - "peer": true, - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "dependencies": { - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true, - "peer": true - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "peer": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "peer": true - }, - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "dev": true, - "peer": true - } - } - }, - "read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", - "dev": true, - "peer": true, - "requires": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "dependencies": { - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true, - "peer": true - } - } - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "peer": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "type-fest": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", - "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", - "dev": true, - "peer": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "peer": true - } - } - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", - "dev": true, - "peer": true - }, - "merge-source-map": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", - "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", - "dev": true, - "peer": true, - "requires": { - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "peer": true - } - } - }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" - }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "peer": true - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", - "dev": true, - "peer": true - }, - "microbuffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/microbuffer/-/microbuffer-1.0.0.tgz", - "integrity": "sha1-izgy7UDIfVH0e7I0kTppinVtGdI=", - "dev": true - }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dev": true, - "peer": true, - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true, - "peer": true - } - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "peer": true - }, - "mime-db": { - "version": "1.48.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", - "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==" - }, - "mime-types": { - "version": "2.1.31", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", - "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", - "requires": { - "mime-db": "1.48.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "min-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true, - "peer": true - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true, - "peer": true - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", - "dev": true, - "peer": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" - }, - "minimist-options": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", - "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", - "dev": true, - "peer": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, - "dependencies": { - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true, - "peer": true - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "peer": true - } - } - }, - "mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "moment": { - "version": "2.29.4", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", - "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==" - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "multicast-dns": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", - "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", - "dev": true, - "peer": true, - "requires": { - "dns-packet": "^1.3.1", - "thunky": "^1.0.2" - } - }, - "multicast-dns-service-types": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", - "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", - "dev": true, - "peer": true - }, - "nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==" - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "neatequal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/neatequal/-/neatequal-1.0.0.tgz", - "integrity": "sha1-LuEhG8n6bkxVcV/SELsFYC6xrjs=", - "dev": true, - "requires": { - "varstream": "^0.3.2" - } - }, - "negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", - "dev": true, - "peer": true - }, - "neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "peer": true - }, - "node-addon-api": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-1.7.2.tgz", - "integrity": "sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==", - "dev": true - }, - "node-cache": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/node-cache/-/node-cache-4.2.1.tgz", - "integrity": "sha512-BOb67bWg2dTyax5kdef5WfU3X8xu4wPg+zHzkvls0Q/QpYycIFRLEEIdAx9Wma43DxG6Qzn4illdZoYseKWa4A==", - "dev": true, - "requires": { - "clone": "2.x", - "lodash": "^4.17.15" - } - }, - "node-forge": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", - "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", - "dev": true, - "peer": true - }, - "node-gettext": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/node-gettext/-/node-gettext-3.0.0.tgz", - "integrity": "sha512-/VRYibXmVoN6tnSAY2JWhNRhWYJ8Cd844jrZU/DwLVoI4vBI6ceYbd8i42sYZ9uOgDH3S7vslIKOWV/ZrT2YBA==", - "requires": { - "lodash.get": "^4.4.2" - } - }, - "node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", - "dev": true - }, - "node-polyfill-webpack-plugin": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-2.0.0.tgz", - "integrity": "sha512-jrMdoL1KmeTUiqLJb19nOgIFjqbX0ClJg97o0kmigy/d5dyoum0+bqPCaRpaX5mccJES6hwuQTXyCdKQ1p2Y3Q==", - "dev": true, - "peer": true, - "requires": { - "assert": "^2.0.0", - "browserify-zlib": "^0.2.0", - "buffer": "^6.0.3", - "console-browserify": "^1.2.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.12.0", - "domain-browser": "^4.22.0", - "events": "^3.3.0", - "filter-obj": "^2.0.2", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "^1.0.1", - "process": "^0.11.10", - "punycode": "^2.1.1", - "querystring-es3": "^0.2.1", - "readable-stream": "^4.0.0", - "stream-browserify": "^3.0.0", - "stream-http": "^3.2.0", - "string_decoder": "^1.3.0", - "timers-browserify": "^2.0.12", - "tty-browserify": "^0.0.1", - "type-fest": "^2.14.0", - "url": "^0.11.0", - "util": "^0.12.4", - "vm-browserify": "^1.1.2" - }, - "dependencies": { - "readable-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.1.0.tgz", - "integrity": "sha512-sVisi3+P2lJ2t0BPbpK629j8wRW06yKGJUcaLAGXPAUhyUxVJm7VsCTit1PFgT4JHUDMrGNR+ZjSKpzGaRF3zw==", - "dev": true, - "peer": true, - "requires": { - "abort-controller": "^3.0.0" - } - }, - "type-fest": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.18.0.tgz", - "integrity": "sha512-pRS+/yrW5TjPPHNOvxhbNZexr2bS63WjrMU8a+VzEBhUi9Tz1pZeD+vQz3ut0svZ46P+SRqMEPnJmk2XnvNzTw==", - "dev": true, - "peer": true - } - } - }, - "node-releases": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.1.tgz", - "integrity": "sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA==" - }, - "nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "normalize-selector": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/normalize-selector/-/normalize-selector-0.2.0.tgz", - "integrity": "sha1-0LFF62kRicY6eNIB3E/bEpPvDAM=", - "dev": true, - "peer": true - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "nwsapi": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", - "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "object-inspect": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", - "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==", - "dev": true - }, - "object-is": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - } - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object.assign": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" - } - }, - "object.values": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz", - "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1" - } - }, - "obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true, - "peer": true - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dev": true, - "peer": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true, - "peer": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", - "dev": true, - "peer": true, - "requires": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - } - }, - "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": true, - "peer": true, - "requires": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" - } - }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", - "dev": true, - "peer": true - }, - "p-limit": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", - "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", - "requires": { - "yocto-queue": "^1.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - }, - "dependencies": { - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - } - } - }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "peer": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "p-retry": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.1.tgz", - "integrity": "sha512-e2xXGNhZOZ0lfgR9kL34iGlU8N/KO0xZnQxVEwdeOvpqNDQfdnxIYizvWtK8RglUa3bGqI8g0R/BdfzLMxRkiA==", - "dev": true, - "peer": true, - "requires": { - "@types/retry": "^0.12.0", - "retry": "^0.13.1" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true, - "peer": true - }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true, - "peer": true - }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "peer": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", - "dev": true, - "peer": true, - "requires": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true, - "peer": true - }, - "path-browserify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", - "dev": true, - "peer": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", - "dev": true, - "peer": true - }, - "pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", - "dev": true, - "peer": true, - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" - }, - "picomatch": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", - "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", - "dev": true - }, - "pirates": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.4.tgz", - "integrity": "sha512-ZIrVPH+A52Dw84R0L3/VS9Op04PuQ2SEoJL6bkshmiTic/HldyW9Tf7oH5mhJZBK7NmDx27vSMrYEXPXclpDKw==", - "dev": true - }, - "popper.js": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", - "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==" - }, - "portfinder": { - "version": "1.0.28", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", - "integrity": "sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==", - "dev": true, - "peer": true, - "requires": { - "async": "^2.6.2", - "debug": "^3.1.1", - "mkdirp": "^0.5.5" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "peer": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "dev": true, - "peer": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "peer": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-html": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-1.3.0.tgz", - "integrity": "sha512-ewbwd7OGW4dLsErtvZH9HpVMEcXnlhYSzKsr7MepGlOT8imHTIZ/+pdfEruLS+hTYapLTQAWDnoQcJpsYU4uRw==", - "dev": true, - "peer": true, - "requires": { - "htmlparser2": "^7.1.2", - "postcss": "^8.4.0", - "postcss-safe-parser": "^6.0.0" - }, - "dependencies": { - "postcss": { - "version": "8.4.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", - "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", - "dev": true, - "peer": true, - "requires": { - "nanoid": "^3.1.30", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.1" - } - }, - "postcss-safe-parser": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz", - "integrity": "sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==", - "dev": true, - "peer": true, - "requires": {} - } - } - }, - "postcss-media-query-parser": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", - "integrity": "sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ=", - "dev": true, - "peer": true - }, - "postcss-resolve-nested-selector": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz", - "integrity": "sha1-Kcy8fDfe36wwTp//C/FZaz9qDk4=", - "dev": true, - "peer": true - }, - "postcss-selector-parser": { - "version": "6.0.8", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.8.tgz", - "integrity": "sha512-D5PG53d209Z1Uhcc0qAZ5U3t5HagH3cxu+WLZ22jt3gLUpXM4eXXfiO14jiDWST3NNooX/E8wISfOhZ9eIjGTQ==", - "dev": true, - "peer": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, - "postcss-value-parser": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", - "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", - "dev": true, - "peer": true - }, - "preact": { - "version": "10.5.13", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.5.13.tgz", - "integrity": "sha512-q/vlKIGNwzTLu+jCcvywgGrt+H/1P/oIRSD6mV4ln3hmlC+Aa34C7yfPI4+5bzW8pONyVXYS7SvXosy2dKKtWQ==" - }, - "prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "peer": true - }, - "prettier": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.5.1.tgz", - "integrity": "sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg==", - "dev": true, - "optional": true, - "peer": true - }, - "pretty": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pretty/-/pretty-2.0.0.tgz", - "integrity": "sha1-rbx5YLe7/iiaVX3F9zdhmiINBqU=", - "dev": true, - "requires": { - "condense-newlines": "^0.2.1", - "extend-shallow": "^2.0.1", - "js-beautify": "^1.6.12" - } - }, - "pretty-format": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", - "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.1", - "ansi-styles": "^5.0.0", - "react-is": "^17.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true - } - } - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "dev": true, - "peer": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true, - "peer": true - }, - "prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "dev": true, - "requires": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - } - }, - "proto-list": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", - "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=", - "dev": true - }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "peer": true, - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "dependencies": { - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true, - "peer": true - } - } - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dev": true, - "peer": true, - "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true, - "peer": true - } - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" - }, - "qs": { - "version": "6.9.6", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz", - "integrity": "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==", - "dev": true, - "peer": true - }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", - "dev": true, - "peer": true - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", - "dev": true, - "peer": true - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "peer": true - }, - "quick-lru": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", - "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", - "dev": true, - "peer": true - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "peer": true, - "requires": { - "safe-buffer": "^5.1.0" - } - }, - "randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, - "peer": true, - "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, - "range-parser": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", - "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "dev": true, - "peer": true - }, - "raw-body": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.2.tgz", - "integrity": "sha512-RPMAFUJP19WIet/99ngh6Iv8fzAbqum4Li7AD6DtGaW2RpMB/11xDoalPiJMTbu6I3hkbMVkATvZrqb9EEqeeQ==", - "dev": true, - "peer": true, - "requires": { - "bytes": "3.1.1", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "dependencies": { - "bytes": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.1.tgz", - "integrity": "sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==", - "dev": true, - "peer": true - } - } - }, - "react": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", - "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", - "peer": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - } - }, - "react-dom": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", - "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", - "peer": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "scheduler": "^0.20.2" - } - }, - "react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", - "dev": true - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "rechoir": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", - "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", - "dev": true, - "peer": true, - "requires": { - "resolve": "^1.9.0" - } - }, - "redent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", - "dev": true, - "peer": true, - "requires": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" - } - }, - "regenerate": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true, - "peer": true - }, - "regenerate-unicode-properties": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", - "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", - "dev": true, - "peer": true, - "requires": { - "regenerate": "^1.4.0" - } - }, - "regenerator-runtime": { - "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" - }, - "regenerator-transform": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", - "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", - "dev": true, - "peer": true, - "requires": { - "@babel/runtime": "^7.8.4" - }, - "dependencies": { - "@babel/runtime": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.6.tgz", - "integrity": "sha512-/PCB2uJ7oM44tz8YhC4Z/6PeOKXp4K588f+5M3clr1M4zbqztlo0XEfJ2LEzj/FgwfgGcIdl8n7YYjTCI0BYwg==", - "dev": true, - "peer": true, - "requires": { - "regenerator-runtime": "^0.13.4" - } - } - } - }, - "regex-parser": { - "version": "2.2.11", - "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", - "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", - "dev": true - }, - "regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" - } - }, - "regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true, - "peer": true - }, - "regexpu-core": { - "version": "4.7.1", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz", - "integrity": "sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==", - "dev": true, - "peer": true, - "requires": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.2.0", - "regjsgen": "^0.5.1", - "regjsparser": "^0.6.4", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.2.0" - } - }, - "regjsgen": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", - "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==", - "dev": true, - "peer": true - }, - "regjsparser": { - "version": "0.6.9", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.9.tgz", - "integrity": "sha512-ZqbNRz1SNjLAiYuwY0zoXW8Ne675IX5q+YHioAGbCw4X96Mjl2+dcX9B2ciaeyYjViDAfvIjFpQjJgLttTEERQ==", - "dev": true, - "peer": true, - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true, - "peer": true - } - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true, - "peer": true - }, - "requireindex": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/requireindex/-/requireindex-1.2.0.tgz", - "integrity": "sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==", - "dev": true, - "peer": true - }, - "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", - "dev": true, - "peer": true - }, - "resolve": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", - "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", - "dev": true, - "requires": { - "is-core-module": "^2.2.0", - "path-parse": "^1.0.6" - } - }, - "resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", - "dev": true, - "requires": { - "resolve-from": "^5.0.0" - } - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "dev": true - }, - "resolve-url-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", - "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", - "dev": true, - "requires": { - "adjust-sourcemap-loader": "^4.0.0", - "convert-source-map": "^1.7.0", - "loader-utils": "^2.0.0", - "postcss": "^8.2.14", - "source-map": "0.6.1" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", - "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - }, - "postcss": { - "version": "8.4.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", - "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", - "dev": true, - "requires": { - "nanoid": "^3.1.30", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.1" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "resolve.exports": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz", - "integrity": "sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==", - "dev": true - }, - "retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", - "dev": true, - "peer": true - }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "peer": true - }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dev": true, - "peer": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "peer": true, - "requires": { - "queue-microtask": "^1.2.2" - } - }, - "run-plugin-webpack": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/run-plugin-webpack/-/run-plugin-webpack-1.0.0.tgz", - "integrity": "sha512-8NhhRO3J2YMmJRZG8JCl1tcGPgzd2LxOYFEtbJd5QhIU8sJH9MZwqZlXNEgcThlHW10QQ62CqOeXu36x4Rwhjw==", - "dev": true, - "requires": { - "gaze": "^1.1.2", - "mkdirp": "^0.5.1" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "sass": { - "version": "1.54.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.54.3.tgz", - "integrity": "sha512-fLodey5Qd41Pxp/Tk7Al97sViYwF/TazRc5t6E65O7JOk4XF8pzwIW7CvCxYVOfJFFI/1x5+elDyBIixrp+zrw==", - "dev": true, - "peer": true, - "requires": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - } - }, - "sass-loader": { - "version": "13.0.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.0.2.tgz", - "integrity": "sha512-BbiqbVmbfJaWVeOOAu2o7DhYWtcNmTfvroVgFXa6k2hHheMxNAeDHLNoDy/Q5aoaVlz0LH+MbMktKwm9vN/j8Q==", - "dev": true, - "peer": true, - "requires": { - "klona": "^2.0.4", - "neo-async": "^2.6.2" - } - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - }, - "saxes": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", - "dev": true, - "requires": { - "xmlchars": "^2.2.0" - } - }, - "scheduler": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", - "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", - "peer": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - } - }, - "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "peer": true, - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - } - }, - "scrollparent": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/scrollparent/-/scrollparent-2.0.1.tgz", - "integrity": "sha1-cV1bnMV3YPsivczDvvtb/gaxoxc=" - }, - "select": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", - "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=" - }, - "select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", - "dev": true, - "peer": true - }, - "selfsigned": { - "version": "1.10.11", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.11.tgz", - "integrity": "sha512-aVmbPOfViZqOZPgRBT0+3u4yZFHpmnIghLMlAcb5/xhp5ZtB/RVnKhz5vl2M32CLXAqR4kha9zfhNg0Lf/sxKA==", - "dev": true, - "peer": true, - "requires": { - "node-forge": "^0.10.0" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "send": { - "version": "0.17.2", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz", - "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==", - "dev": true, - "peer": true, - "requires": { - "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "1.8.1", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "~2.3.0", - "range-parser": "~1.2.1", - "statuses": "~1.5.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "peer": true, - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true, - "peer": true - } - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true, - "peer": true - } - } - }, - "serialize-javascript": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", - "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", - "peer": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "serve-index": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", - "dev": true, - "peer": true, - "requires": { - "accepts": "~1.3.4", - "batch": "0.6.1", - "debug": "2.6.9", - "escape-html": "~1.0.3", - "http-errors": "~1.6.2", - "mime-types": "~2.1.17", - "parseurl": "~1.3.2" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "dev": true, - "peer": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true, - "peer": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true, - "peer": true - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true, - "peer": true - } - } - }, - "serve-static": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz", - "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==", - "dev": true, - "peer": true, - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.17.2" - } - }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", - "dev": true, - "peer": true - }, - "setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true, - "peer": true - }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dev": true, - "peer": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^6.0.2" - }, - "dependencies": { - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "peer": true - } - } - }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" - } - }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "sigmund": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz", - "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=", - "dev": true - }, - "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", - "dev": true - }, - "sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true - }, - "slice-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, - "peer": true, - "requires": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "peer": true, - "requires": { - "color-convert": "^2.0.1" - } - } - } - }, - "sockjs": { - "version": "0.3.24", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", - "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", - "dev": true, - "peer": true, - "requires": { - "faye-websocket": "^0.11.3", - "uuid": "^8.3.2", - "websocket-driver": "^0.7.4" - } - }, - "sortablejs": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.10.2.tgz", - "integrity": "sha512-YkPGufevysvfwn5rfdlGyrGjt7/CRHwvRPogD/lC+TnvcN29jDpCifKP+rBqf+LRldfXSTh+0CGLcSg0VIxq3A==" - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" - }, - "source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", - "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "source-map-support": { - "version": "0.5.19", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", - "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - } - } - }, - "source-map-url": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", - "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "peer": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true, - "peer": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "peer": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.9.tgz", - "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==", - "dev": true, - "peer": true - }, - "spdy": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dev": true, - "peer": true, - "requires": { - "debug": "^4.1.0", - "handle-thing": "^2.0.0", - "http-deceiver": "^1.2.7", - "select-hose": "^2.0.0", - "spdy-transport": "^3.0.0" - } - }, - "spdy-transport": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, - "peer": true, - "requires": { - "debug": "^4.1.0", - "detect-node": "^2.0.4", - "hpack.js": "^2.1.6", - "obuf": "^1.1.2", - "readable-stream": "^3.0.6", - "wbuf": "^1.7.3" - } - }, - "specificity": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/specificity/-/specificity-0.4.1.tgz", - "integrity": "sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==", - "dev": true, - "peer": true - }, - "splitpanes": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/splitpanes/-/splitpanes-2.3.8.tgz", - "integrity": "sha512-eM/qZ1v7U5BMV8FQR7oeqVlllz3sTGTm0//g/eJMa0hZ4s+A1VK68j26FWzcaVlw2P5+dCXk7/X6ZRjjwcbrgw==" - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "stack-utils": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", - "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", - "dev": true, - "requires": { - "escape-string-regexp": "^2.0.0" - } - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true, - "peer": true - }, - "stream-browserify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", - "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", - "dev": true, - "peer": true, - "requires": { - "inherits": "~2.0.4", - "readable-stream": "^3.5.0" - } - }, - "stream-http": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", - "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", - "dev": true, - "peer": true, - "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "xtend": "^4.0.2" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - } - } - }, - "string-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", - "requires": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - } - }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "string.fromcodepoint": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/string.fromcodepoint/-/string.fromcodepoint-0.2.1.tgz", - "integrity": "sha1-jZeDM8C8klOPUPOD5IiPPlYZ1lM=", - "dev": true - }, - "string.prototype.codepointat": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/string.prototype.codepointat/-/string.prototype.codepointat-0.2.1.tgz", - "integrity": "sha512-2cBVCj6I4IOvEnjgO/hWqXjqBGsY+zwPmHl12Srk9IXSZ56Jwwmy+66XO5Iut/oQVR7t5ihYdLB0GMa4alEUcg==", - "dev": true - }, - "string.prototype.trimend": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", - "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.19.5" - } - }, - "string.prototype.trimstart": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", - "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.19.5" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true - }, - "strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true - }, - "strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", - "dev": true, - "peer": true, - "requires": { - "min-indent": "^1.0.0" - } - }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true - }, - "striptags": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/striptags/-/striptags-3.2.0.tgz", - "integrity": "sha512-g45ZOGzHDMe2bdYMdIvdAfCQkCTDMGBazSw1ypMowwGIee7ZQ5dU0rBJ8Jqgl+jAKIv4dbeE1jscZq9wid1Tkw==" - }, - "style-loader": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.3.1.tgz", - "integrity": "sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ==", - "requires": {} - }, - "style-search": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", - "integrity": "sha1-eVjHk+R+MuB9K1yv5cC/jhLneQI=", - "dev": true, - "peer": true - }, - "stylelint": { - "version": "14.2.0", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-14.2.0.tgz", - "integrity": "sha512-i0DrmDXFNpDsWiwx6SPRs4/pyw4kvZgqpDGvsTslQMY7hpUl6r33aQvNSn6cnTg2wtZ9rreFElI7XAKpOWi1vQ==", - "dev": true, - "peer": true, - "requires": { - "balanced-match": "^2.0.0", - "colord": "^2.9.2", - "cosmiconfig": "^7.0.1", - "debug": "^4.3.3", - "execall": "^2.0.0", - "fast-glob": "^3.2.7", - "fastest-levenshtein": "^1.0.12", - "file-entry-cache": "^6.0.1", - "get-stdin": "^8.0.0", - "global-modules": "^2.0.0", - "globby": "^11.0.4", - "globjoin": "^0.1.4", - "html-tags": "^3.1.0", - "ignore": "^5.2.0", - "import-lazy": "^4.0.0", - "imurmurhash": "^0.1.4", - "is-plain-object": "^5.0.0", - "known-css-properties": "^0.24.0", - "mathml-tag-names": "^2.1.3", - "meow": "^9.0.0", - "micromatch": "^4.0.4", - "normalize-path": "^3.0.0", - "normalize-selector": "^0.2.0", - "picocolors": "^1.0.0", - "postcss": "^8.3.11", - "postcss-media-query-parser": "^0.2.3", - "postcss-resolve-nested-selector": "^0.1.1", - "postcss-safe-parser": "^6.0.0", - "postcss-selector-parser": "^6.0.7", - "postcss-value-parser": "^4.1.0", - "resolve-from": "^5.0.0", - "specificity": "^0.4.1", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "style-search": "^0.1.0", - "svg-tags": "^1.0.0", - "table": "^6.7.5", - "v8-compile-cache": "^2.3.0", - "write-file-atomic": "^3.0.3" - }, - "dependencies": { - "balanced-match": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", - "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==", - "dev": true, - "peer": true - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "peer": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "peer": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "peer": true - }, - "is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", - "dev": true, - "peer": true - }, - "micromatch": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", - "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, - "peer": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.2.3" - } - }, - "postcss": { - "version": "8.4.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", - "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", - "dev": true, - "peer": true, - "requires": { - "nanoid": "^3.1.30", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.1" - } - }, - "postcss-safe-parser": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz", - "integrity": "sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==", - "dev": true, - "peer": true, - "requires": {} - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "peer": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "stylelint-config-html": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-html/-/stylelint-config-html-1.0.0.tgz", - "integrity": "sha512-rKQUUWDpaYC7ybsS6tLxddjn6DxhjSIXybElSmcTyVQj3ExhmU3q+l41ktrlwHRyY0M5SkTkZiwngvYPYmsgSQ==", - "dev": true, - "peer": true, - "requires": {} - }, - "stylelint-config-recommended": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-6.0.0.tgz", - "integrity": "sha512-ZorSSdyMcxWpROYUvLEMm0vSZud2uB7tX1hzBZwvVY9SV/uly4AvvJPPhCcymZL3fcQhEQG5AELmrxWqtmzacw==", - "dev": true, - "peer": true, - "requires": {} - }, - "stylelint-config-recommended-scss": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-5.0.2.tgz", - "integrity": "sha512-b14BSZjcwW0hqbzm9b0S/ScN2+3CO3O4vcMNOw2KGf8lfVSwJ4p5TbNEXKwKl1+0FMtgRXZj6DqVUe/7nGnuBg==", - "dev": true, - "peer": true, - "requires": { - "postcss-scss": "^4.0.2", - "stylelint-config-recommended": "^6.0.0", - "stylelint-scss": "^4.0.0" - }, - "dependencies": { - "postcss": { - "version": "8.4.5", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz", - "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==", - "dev": true, - "peer": true, - "requires": { - "nanoid": "^3.1.30", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.1" - } - }, - "postcss-scss": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.2.tgz", - "integrity": "sha512-xfdkU128CkKKKVAwkyt0M8OdnelJ3MRcIRAPPQkRpoPeuzWY3RIeg7piRCpZ79MK7Q16diLXMMAD9dN5mauPlQ==", - "dev": true, - "peer": true, - "requires": {} - } - } - }, - "stylelint-config-recommended-vue": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended-vue/-/stylelint-config-recommended-vue-1.1.0.tgz", - "integrity": "sha512-6O9gHdZ5nmnpq+qJv19pLEcZTZ/BV7ZzBmtl0J/kx92tGwe4CRqoO//SswibLWQP/1VwOaTrjJxN497pNfw7VA==", - "dev": true, - "peer": true, - "requires": { - "stylelint-config-html": ">=1.0.0", - "stylelint-config-recommended": ">=6.0.0" - } - }, - "stylelint-scss": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.0.1.tgz", - "integrity": "sha512-Ea+KY7ZFsDhU6Ne9r84y7NvFSNA843w352MSdQeDmklar0pDbeQj9flKrVAuDIlK0pDDdhFtgBl/N0FrtWHq0g==", - "dev": true, - "peer": true, - "requires": { - "lodash": "^4.17.21", - "postcss-media-query-parser": "^0.2.3", - "postcss-resolve-nested-selector": "^0.1.1", - "postcss-selector-parser": "^6.0.6", - "postcss-value-parser": "^4.1.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "supports-hyperlinks": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz", - "integrity": "sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==", - "dev": true, - "requires": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "svg-pathdata": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-5.0.5.tgz", - "integrity": "sha512-TAAvLNSE3fEhyl/Da19JWfMAdhSXTYeviXsLSoDT1UM76ADj5ndwAPX1FKQEgB/gFMPavOy6tOqfalXKUiXrow==", - "dev": true - }, - "svg-tags": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", - "integrity": "sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=", - "dev": true, - "peer": true - }, - "svg2ttf": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/svg2ttf/-/svg2ttf-4.3.0.tgz", - "integrity": "sha512-LZ0B7zzHWLWbzLzwaKGHQvPOuxCXLReIb3LSxFSGUy1gMw2Utk6KGNbTmbmRL6Rk1qDSmTixnDrQgnXaL9n0CA==", - "dev": true, - "requires": { - "argparse": "^1.0.6", - "cubic2quad": "^1.0.0", - "lodash": "^4.17.10", - "microbuffer": "^1.0.0", - "svgpath": "^2.1.5", - "xmldom": "~0.1.22" - } - }, - "svgicons2svgfont": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/svgicons2svgfont/-/svgicons2svgfont-9.2.0.tgz", - "integrity": "sha512-mWeiuob7L2ZTcnAEP4JvSQ1pnIsGjV16ykQ0fCiiXqoUAQ/iNsDvBc601ojjfP89eCPtr3IVZ9mDxYpdxYO3xQ==", - "dev": true, - "requires": { - "array.prototype.flatmap": "1.2.4", - "commander": "^4.0.1", - "geometry-interfaces": "^1.1.4", - "glob": "^7.1.6", - "neatequal": "^1.0.0", - "readable-stream": "^3.4.0", - "sax": "^1.2.4", - "string.fromcodepoint": "^0.2.1", - "string.prototype.codepointat": "^0.2.1", - "svg-pathdata": "^5.0.2" - } - }, - "svgpath": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/svgpath/-/svgpath-2.3.1.tgz", - "integrity": "sha512-wNz6lCoj+99GMoyU7SozTfPqiLHz6WcJYZ30Z+F4lF/gPtxWHBCpZ4DhoDI0+oZ0dObKyYsJdSPGbL2mJq/qCg==", - "dev": true - }, - "symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true - }, - "table": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/table/-/table-6.7.5.tgz", - "integrity": "sha512-LFNeryOqiQHqCVKzhkymKwt6ozeRhlm8IL1mE8rNUurkir4heF6PzMyRgaTa4tlyPTGGgXuvVOF/OLWiH09Lqw==", - "dev": true, - "peer": true, - "requires": { - "ajv": "^8.0.1", - "lodash.truncate": "^4.4.2", - "slice-ansi": "^4.0.0", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1" - }, - "dependencies": { - "ajv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.0.tgz", - "integrity": "sha512-cnUG4NSBiM4YFBxgZIj/In3/6KX+rQ2l2YPRVcvAMQGWEPKuXoPIhxzwqh31jA3IPbI4qEOp/5ILI4ynioXsGQ==", - "dev": true, - "peer": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "peer": true - } - } - }, - "tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "peer": true - }, - "terminal-link": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", - "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "supports-hyperlinks": "^2.0.0" - } - }, - "terser": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.0.tgz", - "integrity": "sha512-HP5/9hp2UaZt5fYkuhNBR8YyRcT8juw8+uFbAme53iN9hblvKnLUTKkmwJG6ocWpIKf8UK4DoeWG4ty0J6S6/g==", - "peer": true, - "requires": { - "commander": "^2.20.0", - "source-map": "~0.7.2", - "source-map-support": "~0.5.19" - }, - "dependencies": { - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "peer": true - }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "peer": true - } - } - }, - "terser-webpack-plugin": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.3.tgz", - "integrity": "sha512-cxGbMqr6+A2hrIB5ehFIF+F/iST5ZOxvOmy9zih9ySbP1C2oEWQSOUS+2SNBTjzx5xLKO4xnod9eywdfq1Nb9A==", - "peer": true, - "requires": { - "jest-worker": "^27.0.2", - "p-limit": "^3.1.0", - "schema-utils": "^3.0.0", - "serialize-javascript": "^5.0.1", - "source-map": "^0.6.1", - "terser": "^5.7.0" - }, - "dependencies": { - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "peer": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "schema-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz", - "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==", - "peer": true, - "requires": { - "@types/json-schema": "^7.0.6", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "peer": true - }, - "yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "peer": true - } - } - }, - "test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "requires": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - } - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true, - "peer": true - }, - "throat": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/throat/-/throat-6.0.1.tgz", - "integrity": "sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==", - "dev": true - }, - "thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true, - "peer": true - }, - "timers-browserify": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", - "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", - "dev": true, - "peer": true, - "requires": { - "setimmediate": "^1.0.4" - } - }, - "tiny-emitter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", - "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==" - }, - "tinycolor2": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.4.2.tgz", - "integrity": "sha512-vJhccZPs965sV/L2sU4oRQVAos0pQXwsvTLkWYdqJ+a8Q5kPFzJTuOFwy7UniPli44NKQGAglksjvOcpo95aZA==" - }, - "tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - "dev": true - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true - }, - "toastify-js": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/toastify-js/-/toastify-js-1.12.0.tgz", - "integrity": "sha512-HeMHCO9yLPvP9k0apGSdPUWrUbLnxUKNFzgUoZp1PHCLploIX/4DSQ7V8H25ef+h4iO9n0he7ImfcndnN6nDrQ==" - }, - "toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true, - "peer": true - }, - "tough-cookie": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", - "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", - "dev": true, - "requires": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.1.2" - } - }, - "tr46": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", - "dev": true, - "requires": { - "punycode": "^2.1.1" - } - }, - "tributejs": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/tributejs/-/tributejs-5.1.3.tgz", - "integrity": "sha512-B5CXihaVzXw+1UHhNFyAwUTMDk1EfoLP5Tj1VhD9yybZ1I8DZJEv8tZ1l0RJo0t0tk9ZhR8eG5tEsaCvRigmdQ==" - }, - "trim-newlines": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", - "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", - "dev": true, - "peer": true - }, - "tsconfig": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/tsconfig/-/tsconfig-7.0.0.tgz", - "integrity": "sha512-vZXmzPrL+EmC4T/4rVlT2jNVMWCi/O4DIiSj3UHg1OE5kCKbk4mfrXc6dZksLgRM/TZlKnousKH9bbTazUWRRw==", - "dev": true, - "requires": { - "@types/strip-bom": "^3.0.0", - "@types/strip-json-comments": "0.0.30", - "strip-bom": "^3.0.0", - "strip-json-comments": "^2.0.0" - }, - "dependencies": { - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - } - } - }, - "tsconfig-paths": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", - "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", + }, + "node_modules/tsconfig/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", "dev": true, - "peer": true, - "requires": { - "@types/json5": "^0.0.29", - "json5": "^1.0.1", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "peer": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true, - "peer": true - } + "engines": { + "node": ">=0.10.0" } }, - "tslib": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", - "integrity": "sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==" + "node_modules/tslib": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", + "dev": true, + "license": "0BSD", + "peer": true }, - "tty-browserify": { + "node_modules/tty-browserify": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==", "dev": true, + "license": "MIT", "peer": true }, - "type-check": { + "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, + "license": "MIT", "peer": true, - "requires": { + "dependencies": { "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" } }, - "type-detect": { + "node_modules/type-detect": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, - "type-fest": { + "node_modules/type-fest": { "version": "0.21.3", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "type-is": { + "node_modules/type-is": { "version": "1.6.18", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "dev": true, + "license": "MIT", "peer": true, - "requires": { + "dependencies": { "media-typer": "0.3.0", "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" } }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, - "requires": { - "is-typedarray": "^1.0.0" + "node_modules/typescript": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", + "devOptional": true, + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" } }, - "unbox-primitive": { + "node_modules/typescript-event-target": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/typescript-event-target/-/typescript-event-target-1.1.1.tgz", + "integrity": "sha512-dFSOFBKV6uwaloBCCUhxlD3Pr/P1a/tJdcmPrTXCHlEFD3faj0mztjcGn6VBAhQ0/Bdy8K3VWrrqwbt/ffsYsg==", + "license": "MIT" + }, + "node_modules/unbox-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", "dev": true, - "requires": { + "peer": true, + "dependencies": { "call-bind": "^1.0.2", "has-bigints": "^1.0.2", "has-symbols": "^1.0.3", "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "unicode-canonical-property-names-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", + "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", "dev": true, - "peer": true + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "unicode-match-property-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", - "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", "dev": true, - "peer": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" + "license": "MIT", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, - "unicode-match-property-value-ecmascript": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", - "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz", + "integrity": "sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==", "dev": true, - "peer": true + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "unicode-property-aliases-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", - "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", "dev": true, - "peer": true + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true + "node_modules/unified": { + "version": "10.1.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-10.1.2.tgz", + "integrity": "sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==", + "dependencies": { + "@types/unist": "^2.0.0", + "bail": "^2.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unified/node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } + }, + "node_modules/unified/node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/unist-builder": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-4.0.0.tgz", + "integrity": "sha512-wmRFnH+BLpZnTKpc5L7O67Kac89s9HMrtELpnNaE6TAobq5DTZZs5YaTQfAZBA9bFPECx2uVAPO31c+GVug8mg==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-builder/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/unist-util-find-after": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz", + "integrity": "sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==", + "license": "MIT", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-find-after/node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" + }, + "node_modules/unist-util-is": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-is/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/unist-util-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", + "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/unist-util-stringify-position": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz", + "integrity": "sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==", + "dependencies": { + "@types/unist": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", + "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", + "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/unist-util-visit/node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } }, - "unpipe": { + "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "dev": true, - "peer": true + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } }, - "uri-js": { + "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "requires": { + "dev": true, + "peer": true, + "dependencies": { "punycode": "^2.1.0" } }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true - }, - "url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", + "node_modules/url": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.4.tgz", + "integrity": "sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==", "dev": true, + "license": "MIT", "peer": true, - "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" + "dependencies": { + "punycode": "^1.4.1", + "qs": "^6.12.3" }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/url-join": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/url-join/-/url-join-5.0.0.tgz", + "integrity": "sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==", - "dev": true, - "peer": true - } + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" } }, - "util": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", - "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", + "node_modules/url/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/util": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", "dev": true, + "license": "MIT", "peer": true, - "requires": { + "dependencies": { "inherits": "^2.0.3", "is-arguments": "^1.0.4", "is-generator-function": "^1.0.7", "is-typed-array": "^1.1.3", - "safe-buffer": "^5.1.2", "which-typed-array": "^1.1.2" } }, - "util-deprecate": { + "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "dev": true }, - "utils-merge": { + "node_modules/utils-merge": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "dev": true, - "peer": true - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.4.0" + } }, - "v-click-outside": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/v-click-outside/-/v-click-outside-3.1.2.tgz", - "integrity": "sha512-gMdRqfRE6m6XU6SiFi3dyBlFB2MWogiXpof8Aa3LQysrl9pzTndqp/iEaAphLoadaQUFnQ0ec6fLLaxr7LiY6A==" + "node_modules/uuid": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.0.3.tgz", + "integrity": "sha512-d0z310fCWv5dJwnX1Y/MncBAqGMKEzlBb1AOf7z9K8ALnd0utBX/msg/fA0+sbyN1ihbMsLhrBlnl1ak7Wa0rg==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist/esm/bin/uuid" + } }, - "v-tooltip": { + "node_modules/v-tooltip": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/v-tooltip/-/v-tooltip-2.1.3.tgz", "integrity": "sha512-xXngyxLQTOx/yUEy50thb8te7Qo4XU6h4LZB6cvEfVd9mnysUxLEoYwGWDdqR+l69liKsy3IPkdYff3J1gAJ5w==", - "requires": { + "dependencies": { "@babel/runtime": "^7.13.10", "lodash": "^4.17.21", "popper.js": "^1.16.1", "vue-resize": "^1.0.1" - }, - "dependencies": { - "@babel/runtime": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.6.tgz", - "integrity": "sha512-/PCB2uJ7oM44tz8YhC4Z/6PeOKXp4K588f+5M3clr1M4zbqztlo0XEfJ2LEzj/FgwfgGcIdl8n7YYjTCI0BYwg==", - "requires": { - "regenerator-runtime": "^0.13.4" - } - } } }, - "v8-compile-cache": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true, - "peer": true - }, - "v8-to-istanbul": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-8.1.1.tgz", - "integrity": "sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==", + "node_modules/v8-to-istanbul": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", + "integrity": "sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==", "dev": true, - "requires": { + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" + "convert-source-map": "^2.0.0" }, - "dependencies": { - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - } + "engines": { + "node": ">=10.12.0" } }, - "validate-npm-package-license": { + "node_modules/v8-to-istanbul/node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, "peer": true, - "requires": { + "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" } }, - "varstream": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/varstream/-/varstream-0.3.2.tgz", - "integrity": "sha1-GKxklHZfP/GjWtmkvgU77BiKXeE=", + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", "dev": true, - "requires": { - "readable-stream": "^1.0.33" + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vfile": { + "version": "5.3.7", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-5.3.7.tgz", + "integrity": "sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^3.0.0", + "vfile-message": "^3.0.0" }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-3.1.4.tgz", + "integrity": "sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==", "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile/node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" }, - "readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } + { + "type": "patreon", + "url": "https://www.patreon.com/feross" }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true + { + "type": "consulting", + "url": "https://feross.org/support" } + ], + "engines": { + "node": ">=4" } }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "dev": true, - "peer": true - }, - "vm-browserify": { + "node_modules/vm-browserify": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", "dev": true, + "license": "MIT", "peer": true }, - "vue": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.0.tgz", - "integrity": "sha512-su25f1hocH+QNkVEqk+Oj7B+mkDIWU70l0YY7nYSJFEs3Z64njXxo65RUXnWH46ooEhKmEWyLdW6HcYn8coNrg==", - "requires": { - "@vue/compiler-sfc": "2.7.0", + "node_modules/vue": { + "version": "2.7.16", + "resolved": "https://registry.npmjs.org/vue/-/vue-2.7.16.tgz", + "integrity": "sha512-4gCtFXaAA3zYZdTp5s4Hl2sozuySsgz4jy1EnpBHNfpMa9dK1ZCG7viqBPCwXtmgc8nHqUsAu3G4gtmXkkY3Sw==", + "dependencies": { + "@vue/compiler-sfc": "2.7.16", "csstype": "^3.1.0" } }, - "vue-click-outside": { + "node_modules/vue-click-outside": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/vue-click-outside/-/vue-click-outside-1.1.0.tgz", "integrity": "sha512-pNyvAA9mRXJwPHlHJyjMb4IONSc7khS5lxGcMyE2EIKgNMAO279PWM9Hyq0d5J4FkiSRdmFLwnbjDd5UtPizHQ==" }, - "vue-clipboard2": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/vue-clipboard2/-/vue-clipboard2-0.3.3.tgz", - "integrity": "sha512-aNWXIL2DKgJyY/1OOeITwAQz1fHaCIGvUFHf9h8UcoQBG5a74MkdhS/xqoYe7DNZdQmZRL+TAdIbtUs9OyVjbw==", - "requires": { - "clipboard": "^2.0.0" - } - }, - "vue-color": { + "node_modules/vue-color": { "version": "2.8.1", "resolved": "https://registry.npmjs.org/vue-color/-/vue-color-2.8.1.tgz", "integrity": "sha512-BoLCEHisXi2QgwlhZBg9UepvzZZmi4176vbr+31Shen5WWZwSLVgdScEPcB+yrAtuHAz42309C0A4+WiL9lNBw==", - "requires": { + "dependencies": { "clamp": "^1.0.1", "lodash.throttle": "^4.0.0", "material-colors": "^1.0.0", "tinycolor2": "^1.1.2" } }, - "vue-eslint-parser": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-8.3.0.tgz", - "integrity": "sha512-dzHGG3+sYwSf6zFBa0Gi9ZDshD7+ad14DGOdTLjruRVgZXe2J+DcZ9iUhyR48z5g1PqRa20yt3Njna/veLJL/g==", + "node_modules/vue-component-type-helpers": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/vue-component-type-helpers/-/vue-component-type-helpers-2.0.14.tgz", + "integrity": "sha512-DInfgOyXlMyliyqAAD9frK28tTfch0+tMi4qoWJcZlRxUf+NFAtraJBnAsKLep+FOyLMiajkhfyEb3xLK08i7w==", + "dev": true + }, + "node_modules/vue-eslint-parser": { + "version": "9.4.2", + "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-9.4.2.tgz", + "integrity": "sha512-Ry9oiGmCAK91HrKMtCrKFWmSFWvYkpGglCeFAIqDdr9zdXmMMpJOmUJS7WWsW7fX81h6mwHmUZCQQ1E0PkSwYQ==", "dev": true, "peer": true, - "requires": { - "debug": "^4.3.2", - "eslint-scope": "^7.0.0", - "eslint-visitor-keys": "^3.1.0", - "espree": "^9.0.0", + "dependencies": { + "debug": "^4.3.4", + "eslint-scope": "^7.1.1", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.3.1", "esquery": "^1.4.0", "lodash": "^4.17.21", - "semver": "^7.3.5" - }, - "dependencies": { - "eslint-scope": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", - "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", - "dev": true, - "peer": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - } - }, - "eslint-visitor-keys": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", - "dev": true, - "peer": true - }, - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "peer": true - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", - "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, - "peer": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "peer": true - } + "semver": "^7.3.6" + }, + "engines": { + "node": "^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=6.0.0" + } + }, + "node_modules/vue-eslint-parser/node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "dev": true, + "peer": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/vue-eslint-parser/node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true, + "peer": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/vue-eslint-parser/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/vue-eslint-parser/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "peer": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/vue-eslint-parser/node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/vue-eslint-parser/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "peer": true + }, + "node_modules/vue-frag": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/vue-frag/-/vue-frag-1.4.3.tgz", + "integrity": "sha512-pQZj03f/j9LRhzz9vKaXTCXUHVYHuAXicshFv76VFqwz4MG3bcb+sPZMAbd0wmw7THjkrTPuoM0EG9TbG8CgMQ==", + "funding": { + "url": "https://github.com/privatenumber/vue-frag?sponsor=1" + }, + "peerDependencies": { + "vue": "^2.6.0" } }, - "vue-hot-reload-api": { + "node_modules/vue-hot-reload-api": { "version": "2.3.4", "resolved": "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz", "integrity": "sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==", "dev": true, "peer": true }, - "vue-jest": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/vue-jest/-/vue-jest-3.0.7.tgz", - "integrity": "sha512-PIOxFM+wsBMry26ZpfBvUQ/DGH2hvp5khDQ1n51g3bN0TwFwTy4J85XVfxTRMukqHji/GnAoGUnlZ5Ao73K62w==", - "dev": true, - "requires": { - "babel-plugin-transform-es2015-modules-commonjs": "^6.26.0", - "chalk": "^2.1.0", - "deasync": "^0.1.15", - "extract-from-css": "^0.4.4", - "find-babel-config": "^1.1.0", - "js-beautify": "^1.6.14", - "node-cache": "^4.1.1", - "object-assign": "^4.1.1", - "source-map": "^0.5.6", - "tsconfig": "^7.0.0", - "vue-template-es2015-compiler": "^1.6.0" - } - }, - "vue-loader": { - "version": "15.9.8", - "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.9.8.tgz", - "integrity": "sha512-GwSkxPrihfLR69/dSV3+5CdMQ0D+jXg8Ma1S4nQXKJAznYFX14vHdc/NetQc34Dw+rBbIJyP7JOuVb9Fhprvog==", + "node_modules/vue-loader": { + "version": "15.11.1", + "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.11.1.tgz", + "integrity": "sha512-0iw4VchYLePqJfJu9s62ACWUXeSqM30SQqlIftbYWM3C+jpPcEHKSPUZBLjSF9au4HTHQ/naF6OGnO3Q/qGR3Q==", "dev": true, "peer": true, - "requires": { + "dependencies": { "@vue/component-compiler-utils": "^3.1.0", "hash-sum": "^1.0.2", "loader-utils": "^1.1.0", "vue-hot-reload-api": "^2.3.0", "vue-style-loader": "^4.1.0" + }, + "peerDependencies": { + "css-loader": "*", + "webpack": "^3.0.0 || ^4.1.0 || ^5.0.0-0" + }, + "peerDependenciesMeta": { + "cache-loader": { + "optional": true + }, + "prettier": { + "optional": true + }, + "vue-template-compiler": { + "optional": true + } } }, - "vue-material-design-icons": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/vue-material-design-icons/-/vue-material-design-icons-5.0.0.tgz", - "integrity": "sha512-lYSJFW/TyQqmg7MvUbEB8ua1mwWy/v8qve7QJuA/UWUAXC4/yVUdAm4pg/sM9+k5n7VLckBv6ucOROuGBsGPDQ==" + "node_modules/vue-loader/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "peer": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } }, - "vue-multiselect": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/vue-multiselect/-/vue-multiselect-2.1.6.tgz", - "integrity": "sha512-s7jmZPlm9FeueJg1RwJtnE9KNPtME/7C8uRWSfp9/yEN4M8XcS/d+bddoyVwVnvFyRh9msFo0HWeW0vTL8Qv+w==" + "node_modules/vue-loader/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "peer": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } }, - "vue-observe-visibility": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/vue-observe-visibility/-/vue-observe-visibility-0.4.6.tgz", - "integrity": "sha512-xo0CEVdkjSjhJoDdLSvoZoQrw/H2BlzB5jrCBKGZNXN2zdZgMuZ9BKrxXDjNP2AxlcCoKc8OahI3F3r3JGLv2Q==" + "node_modules/vue-material-design-icons": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/vue-material-design-icons/-/vue-material-design-icons-5.3.1.tgz", + "integrity": "sha512-6UNEyhlTzlCeT8ZeX5WbpUGFTTPSbOoTQeoASTv7X4Ylh0pe8vltj+36VMK56KM0gG8EQVoMK/Qw/6evalg8lA==", + "license": "MIT" }, - "vue-resize": { + "node_modules/vue-resize": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/vue-resize/-/vue-resize-1.0.1.tgz", "integrity": "sha512-z5M7lJs0QluJnaoMFTIeGx6dIkYxOwHThlZDeQnWZBizKblb99GSejPnK37ZbNE/rVwDcYcHY+Io+AxdpY952w==", - "requires": { + "dependencies": { "@babel/runtime": "^7.13.10" }, - "dependencies": { - "@babel/runtime": { - "version": "7.14.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.6.tgz", - "integrity": "sha512-/PCB2uJ7oM44tz8YhC4Z/6PeOKXp4K588f+5M3clr1M4zbqztlo0XEfJ2LEzj/FgwfgGcIdl8n7YYjTCI0BYwg==", - "requires": { - "regenerator-runtime": "^0.13.4" - } - } + "peerDependencies": { + "vue": "^2.6.0" } }, - "vue-router": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.5.4.tgz", - "integrity": "sha512-x+/DLAJZv2mcQ7glH2oV9ze8uPwcI+H+GgTgTmb5I55bCgY3+vXWIsqbYUzbBSZnwFHEJku4eoaH/x98veyymQ==" + "node_modules/vue-router": { + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.6.5.tgz", + "integrity": "sha512-VYXZQLtjuvKxxcshuRAwjHnciqZVoXAjTjcqBTz4rKc8qih9g9pI3hbDjmqXaHdgL3v8pV6P8Z335XvHzESxLQ==" }, - "vue-shortkey": { + "node_modules/vue-shortkey": { "version": "3.1.7", "resolved": "https://registry.npmjs.org/vue-shortkey/-/vue-shortkey-3.1.7.tgz", "integrity": "sha512-Wm/vPXXS+4Wl/LoYpD+cZc0J0HIoVlY8Ep0JLIqqswmAya3XUBtsqKbhzEf9sXo+3rZ5p1YsUyZfXas8XD7YjQ==", - "requires": { + "dependencies": { "custom-event-polyfill": "^1.0.7", "element-matches": "^0.1.2" } }, - "vue-style-loader": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.3.tgz", - "integrity": "sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg==", + "node_modules/vue-style-loader": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.3.tgz", + "integrity": "sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg==", + "dev": true, + "peer": true, + "dependencies": { + "hash-sum": "^1.0.2", + "loader-utils": "^1.0.2" + } + }, + "node_modules/vue-style-loader/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "peer": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/vue-style-loader/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", "dev": true, "peer": true, - "requires": { - "hash-sum": "^1.0.2", - "loader-utils": "^1.0.2" + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" } }, - "vue-template-compiler": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.0.tgz", - "integrity": "sha512-b9kKOPNS6J2BVf9skXkKsUwQLP3Bjfb/gG6UoBt3fn4xUVEDko5TSWmkPGW6dSSeAOOvYEMALdouv9caKlTq0Q==", + "node_modules/vue-template-compiler": { + "version": "2.7.16", + "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.16.tgz", + "integrity": "sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==", "dev": true, - "requires": { + "dependencies": { "de-indent": "^1.0.2", "he": "^1.2.0" } }, - "vue-template-es2015-compiler": { + "node_modules/vue-template-es2015-compiler": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz", "integrity": "sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw==", "dev": true }, - "vue-virtual-scroller": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/vue-virtual-scroller/-/vue-virtual-scroller-1.0.10.tgz", - "integrity": "sha512-Hn4qSBDhRY4XdngPioYy/ykDjrLX/NMm1fQXm/4UQQ/Xv1x8JbHGFZNftQowTcfICgN7yc31AKnUk1UGLJ2ndA==", - "requires": { - "scrollparent": "^2.0.1", - "vue-observe-visibility": "^0.4.4", - "vue-resize": "^0.4.5" - }, - "dependencies": { - "vue-resize": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/vue-resize/-/vue-resize-0.4.5.tgz", - "integrity": "sha512-bhP7MlgJQ8TIkZJXAfDf78uJO+mEI3CaLABLjv0WNzr4CcGRGPIAItyWYnP6LsPA4Oq0WE+suidNs6dgpO4RHg==", - "requires": {} - } - } - }, - "vue-visible": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/vue-visible/-/vue-visible-1.0.2.tgz", - "integrity": "sha512-yaX2its9XAJKGuQqf7LsiZHHSkxsIK8rmCOQOvEGEoF41blKRK8qr9my4qYoD6ikdLss4n8tKqYBecmaY0+WJg==" - }, - "vue2-datepicker": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/vue2-datepicker/-/vue2-datepicker-3.9.1.tgz", - "integrity": "sha512-LuvcgGR+sDYKcih0z+cyvYufGyBwUtIiwzJPwxE63C8gOsAWiE09KuGtZ3OxdQXJEQM2MGQ9t9t1t7382FiFOg==", - "requires": { - "date-format-parse": "^0.2.6" + "node_modules/vue2-datepicker": { + "version": "3.11.1", + "resolved": "https://registry.npmjs.org/vue2-datepicker/-/vue2-datepicker-3.11.1.tgz", + "integrity": "sha512-6PU/+pnp2mgZAfnSXmbdwj9516XsEvTiw61Q5SNrvvdy8W/FCxk1GAe9UZn/m9YfS5A47yK6XkcjMHbp7aFApA==", + "license": "MIT", + "dependencies": { + "date-format-parse": "^0.2.7" + }, + "peerDependencies": { + "vue": "^2.5.0" } }, - "vuedraggable": { + "node_modules/vuedraggable": { "version": "2.24.3", "resolved": "https://registry.npmjs.org/vuedraggable/-/vuedraggable-2.24.3.tgz", "integrity": "sha512-6/HDXi92GzB+Hcs9fC6PAAozK1RLt1ewPTLjK0anTYguXLAeySDmcnqE8IC0xa7shvSzRjQXq3/+dsZ7ETGF3g==", - "requires": { + "dependencies": { "sortablejs": "1.10.2" } }, - "vuex": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/vuex/-/vuex-3.6.2.tgz", - "integrity": "sha512-ETW44IqCgBpVomy520DT5jf8n0zoCac+sxWnn+hMe/CzaSejb/eVw2YToiXYX+Ex/AuHHia28vWTq4goAexFbw==", - "requires": {} - }, - "vuex-router-sync": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/vuex-router-sync/-/vuex-router-sync-5.0.0.tgz", - "integrity": "sha512-Mry2sO4kiAG64714X1CFpTA/shUH1DmkZ26DFDtwoM/yyx6OtMrc+MxrU+7vvbNLO9LSpgwkiJ8W+rlmRtsM+w==", - "requires": {} - }, - "w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", - "dev": true, - "requires": { - "browser-process-hrtime": "^1.0.0" - } - }, - "w3c-xmlserializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", - "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", + "node_modules/w3c-xmlserializer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-3.0.0.tgz", + "integrity": "sha512-3WFqGEgSXIyGhOmAFtlicJNMjEps8b1MG31NCA0/vOF9+nKMUW1ckhi9cnNHmf88Rzw5V+dwIwsm2C7X8k9aQg==", "dev": true, - "requires": { - "xml-name-validator": "^3.0.0" + "dependencies": { + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": ">=12" } }, - "walker": { + "node_modules/walker": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", "dev": true, - "requires": { + "dependencies": { "makeerror": "1.0.12" } }, - "watchpack": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.3.1.tgz", - "integrity": "sha512-x0t0JuydIo8qCNctdDrn1OzH/qDzk2+rdCOC3YzumZ42fiMqmQ7T3xQurykYMhYfHaPHTp4ZxAx2NfUo1K6QaA==", + "node_modules/watchpack": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "dev": true, + "license": "MIT", "peer": true, - "requires": { + "dependencies": { "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" } }, - "wbuf": { + "node_modules/wbuf": { "version": "1.7.3", "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", "dev": true, + "license": "MIT", "peer": true, - "requires": { + "dependencies": { "minimalistic-assert": "^1.0.0" } }, - "webidl-conversions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", - "dev": true + "node_modules/web-namespaces": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", + "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/web-streams-polyfill": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz", + "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/webdav": { + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/webdav/-/webdav-5.8.0.tgz", + "integrity": "sha512-iuFG7NamJ41Oshg4930iQgfIpRrUiatPWIekeznYgEf2EOraTRcDPTjy7gIOMtkdpKTaqPk1E68NO5PAGtJahA==", + "license": "MIT", + "dependencies": { + "@buttercup/fetch": "^0.2.1", + "base-64": "^1.0.0", + "byte-length": "^1.0.2", + "entities": "^6.0.0", + "fast-xml-parser": "^4.5.1", + "hot-patcher": "^2.0.1", + "layerr": "^3.0.0", + "md5": "^2.3.0", + "minimatch": "^9.0.5", + "nested-property": "^4.0.0", + "node-fetch": "^3.3.2", + "path-posix": "^1.0.0", + "url-join": "^5.0.0", + "url-parse": "^1.5.10" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/webdav/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/webdav/node_modules/entities": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.0.tgz", + "integrity": "sha512-aKstq2TDOndCn4diEyp9Uq/Flu2i1GlLkc6XIDQSDMuaFE3OPW5OphLCyQ5SpSJZTb4reN+kTcYru5yIfXoRPw==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/webdav/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "dev": true, + "engines": { + "node": ">=12" + } }, - "webpack": { - "version": "5.67.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.67.0.tgz", - "integrity": "sha512-LjFbfMh89xBDpUMgA1W9Ur6Rn/gnr2Cq1jjHFPo4v6a79/ypznSYbAyPgGhwsxBtMIaEmDD1oJoA7BEYw/Fbrw==", - "peer": true, - "requires": { - "@types/eslint-scope": "^3.7.0", - "@types/estree": "^0.0.50", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.4.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", + "node_modules/webpack": { + "version": "5.94.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.94.0.tgz", + "integrity": "sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/estree": "^1.0.5", + "@webassemblyjs/ast": "^1.12.1", + "@webassemblyjs/wasm-edit": "^1.12.1", + "@webassemblyjs/wasm-parser": "^1.12.1", + "acorn": "^8.7.1", + "acorn-import-attributes": "^1.9.5", + "browserslist": "^4.21.10", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.8.3", - "es-module-lexer": "^0.9.0", + "enhanced-resolve": "^5.17.1", + "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-better-errors": "^1.0.2", + "graceful-fs": "^4.2.11", + "json-parse-even-better-errors": "^2.3.1", "loader-runner": "^4.2.0", "mime-types": "^2.1.27", "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", + "schema-utils": "^3.2.0", "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.3.1", + "terser-webpack-plugin": "^5.3.10", + "watchpack": "^2.4.1", "webpack-sources": "^3.2.3" }, - "dependencies": { - "acorn": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.4.1.tgz", - "integrity": "sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA==", - "peer": true - }, - "acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "peer": true, - "requires": {} - }, - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "peer": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true } } }, - "webpack-cli": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.9.1.tgz", - "integrity": "sha512-JYRFVuyFpzDxMDB+v/nanUdQYcZtqFPGzmlW4s+UkPMFhSpfRNmf1z4AwYcHJVdvEFAM7FFCQdNTpsBYhDLusQ==", + "node_modules/webpack-cli": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz", + "integrity": "sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg==", "dev": true, "peer": true, - "requires": { + "dependencies": { "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^1.1.0", - "@webpack-cli/info": "^1.4.0", - "@webpack-cli/serve": "^1.6.0", + "@webpack-cli/configtest": "^2.1.1", + "@webpack-cli/info": "^2.0.2", + "@webpack-cli/serve": "^2.0.5", "colorette": "^2.0.14", - "commander": "^7.0.0", - "execa": "^5.0.0", + "commander": "^10.0.1", + "cross-spawn": "^7.0.3", + "envinfo": "^7.7.3", "fastest-levenshtein": "^1.0.12", "import-local": "^3.0.2", - "interpret": "^2.2.0", - "rechoir": "^0.7.0", + "interpret": "^3.1.1", + "rechoir": "^0.8.0", "webpack-merge": "^5.7.3" }, - "dependencies": { - "commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "dev": true, - "peer": true + "bin": { + "webpack-cli": "bin/cli.js" + }, + "engines": { + "node": ">=14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "5.x.x" + }, + "peerDependenciesMeta": { + "@webpack-cli/generators": { + "optional": true + }, + "webpack-bundle-analyzer": { + "optional": true + }, + "webpack-dev-server": { + "optional": true } } }, - "webpack-dev-middleware": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.0.tgz", - "integrity": "sha512-MouJz+rXAm9B1OTOYaJnn6rtD/lWZPy2ufQCH3BPs8Rloh/Du6Jze4p7AeLYHkVi0giJnYLaSGDC7S+GM9arhg==", + "node_modules/webpack-cli/node_modules/commander": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "dev": true, + "peer": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/webpack-dev-middleware": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-7.4.2.tgz", + "integrity": "sha512-xOO8n6eggxnwYpy1NlzUKpvrjfJTvae5/D6WOK0S2LSo7vjmo5gCM1DbLUmFqrMTJP+W/0YZNctm7jasWvLuBA==", "dev": true, + "license": "MIT", "peer": true, - "requires": { + "dependencies": { "colorette": "^2.0.10", - "memfs": "^3.2.2", + "memfs": "^4.6.0", "mime-types": "^2.1.31", + "on-finished": "^2.4.1", "range-parser": "^1.2.1", "schema-utils": "^4.0.0" }, - "dependencies": { - "ajv": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.8.2.tgz", - "integrity": "sha512-x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw==", - "dev": true, - "peer": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "peer": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "peer": true - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "peer": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } + "engines": { + "node": ">= 18.12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true } } }, - "webpack-dev-server": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.7.2.tgz", - "integrity": "sha512-s6yEOSfPpB6g1T2+C5ZOUt5cQOMhjI98IVmmvMNb5cdiqHoxSUfACISHqU/wZy+q4ar/A9jW0pbNj7sa50XRVA==", + "node_modules/webpack-dev-server": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-5.2.2.tgz", + "integrity": "sha512-QcQ72gh8a+7JO63TAx/6XZf/CWhgMzu5m0QirvPfGvptOusAxG12w2+aua1Jkjr7hzaWDnJ2n6JFeexMHI+Zjg==", "dev": true, + "license": "MIT", "peer": true, - "requires": { - "@types/bonjour": "^3.5.9", - "@types/connect-history-api-fallback": "^1.3.5", - "@types/serve-index": "^1.9.1", - "@types/sockjs": "^0.3.33", - "@types/ws": "^8.2.2", + "dependencies": { + "@types/bonjour": "^3.5.13", + "@types/connect-history-api-fallback": "^1.5.4", + "@types/express": "^4.17.21", + "@types/express-serve-static-core": "^4.17.21", + "@types/serve-index": "^1.9.4", + "@types/serve-static": "^1.15.5", + "@types/sockjs": "^0.3.36", + "@types/ws": "^8.5.10", "ansi-html-community": "^0.0.8", - "bonjour": "^3.5.0", - "chokidar": "^3.5.2", + "bonjour-service": "^1.2.1", + "chokidar": "^3.6.0", "colorette": "^2.0.10", "compression": "^1.7.4", - "connect-history-api-fallback": "^1.6.0", - "default-gateway": "^6.0.3", - "del": "^6.0.0", - "express": "^4.17.1", + "connect-history-api-fallback": "^2.0.0", + "express": "^4.21.2", "graceful-fs": "^4.2.6", - "html-entities": "^2.3.2", - "http-proxy-middleware": "^2.0.0", - "ipaddr.js": "^2.0.1", - "open": "^8.0.9", - "p-retry": "^4.5.0", - "portfinder": "^1.0.28", - "schema-utils": "^4.0.0", - "selfsigned": "^1.10.11", + "http-proxy-middleware": "^2.0.9", + "ipaddr.js": "^2.1.0", + "launch-editor": "^2.6.1", + "open": "^10.0.3", + "p-retry": "^6.2.0", + "schema-utils": "^4.2.0", + "selfsigned": "^2.4.1", "serve-index": "^1.9.1", - "sockjs": "^0.3.21", + "sockjs": "^0.3.24", "spdy": "^4.0.2", - "strip-ansi": "^7.0.0", - "webpack-dev-middleware": "^5.3.0", - "ws": "^8.1.0" + "webpack-dev-middleware": "^7.4.2", + "ws": "^8.18.0" }, - "dependencies": { - "ajv": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.8.2.tgz", - "integrity": "sha512-x9VuX+R/jcFj1DHo/fCp99esgGDWiHENrKxaCENuCxpoMCmAt/COCGVDwA7kleEpEzJjDnvh3yGoOuLu0Dtllw==", - "dev": true, - "peer": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", - "dev": true, - "peer": true, - "requires": { - "fast-deep-equal": "^3.1.3" - } - }, - "ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "peer": true - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true, - "peer": true - }, - "schema-utils": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", - "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", - "dev": true, - "peer": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.8.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.0.0" - } - }, - "strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", - "dev": true, - "peer": true, - "requires": { - "ansi-regex": "^6.0.1" - } + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 18.12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true }, - "ws": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.4.0.tgz", - "integrity": "sha512-IHVsKe2pjajSUIl4KYMQOdlyliovpEPquKkqbwswulszzI7r0SfQrxnXdWAEqOlDCLrVSJzo+O1hAwdog2sKSQ==", - "dev": true, - "peer": true, - "requires": {} + "webpack-cli": { + "optional": true } } }, - "webpack-merge": { + "node_modules/webpack-dev-server/node_modules/@types/express-serve-static-core": { + "version": "4.19.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", + "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/webpack-dev-server/node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/webpack-dev-server/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/webpack-dev-server/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/webpack-merge": { "version": "5.8.0", "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", "dev": true, "peer": true, - "requires": { + "dependencies": { "clone-deep": "^4.0.1", "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" } }, - "webpack-sources": { + "node_modules/webpack-sources": { "version": "3.2.3", "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "peer": true + "dev": true, + "peer": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } }, - "websocket-driver": { + "node_modules/websocket-driver": { "version": "0.7.4", "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", "dev": true, + "license": "Apache-2.0", "peer": true, - "requires": { + "dependencies": { "http-parser-js": ">=0.5.1", "safe-buffer": ">=5.1.0", "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" } }, - "websocket-extensions": { + "node_modules/websocket-extensions": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", "dev": true, - "peer": true + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=0.8.0" + } }, - "whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "node_modules/whatwg-encoding": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz", + "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==", "dev": true, - "requires": { - "iconv-lite": "0.4.24" + "dependencies": { + "iconv-lite": "0.6.3" + }, + "engines": { + "node": ">=12" } }, - "whatwg-mimetype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", - "dev": true + "node_modules/whatwg-encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/whatwg-mimetype": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", + "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", + "dev": true, + "engines": { + "node": ">=12" + } }, - "whatwg-url": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", - "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", + "node_modules/whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", "dev": true, - "requires": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" } }, - "which": { + "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, - "requires": { + "dependencies": { "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "which-boxed-primitive": { + "node_modules/which-boxed-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, - "requires": { + "peer": true, + "dependencies": { "is-bigint": "^1.0.1", "is-boolean-object": "^1.1.0", "is-number-object": "^1.0.4", "is-string": "^1.0.5", "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "which-typed-array": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.8.tgz", - "integrity": "sha512-Jn4e5PItbcAHyLoRDwvPj1ypu27DJbtdYXUa5zsinrUx77Uvfb0cXwwnGMTn7cjUfhhqgVQnVJCwF+7cgU7tpw==", + "node_modules/which-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", "dev": true, + "license": "MIT", "peer": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-abstract": "^1.20.0", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.9" + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "wildcard": { + "node_modules/wildcard": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", "dev": true, "peer": true }, - "word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "wrap-ansi": { + "node_modules/wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, - "requires": { + "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - } + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "wrappy": { + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "dev": true }, - "write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", "dev": true, - "requires": { + "dependencies": { "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "ws": { - "version": "7.5.7", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz", - "integrity": "sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A==", + "node_modules/ws": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", "dev": true, - "requires": {} + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } }, - "xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", - "dev": true + "node_modules/xml-name-validator": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", + "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", + "dev": true, + "engines": { + "node": ">=12" + } }, - "xmlchars": { + "node_modules/xmlchars": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", "dev": true }, - "xmldom": { - "version": "0.1.31", - "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.31.tgz", - "integrity": "sha512-yS2uJflVQs6n+CyjHoaBmVSqIDevTAWrzMmjG1Gc7h1qQ7uVozNhEPJAwZXWyGQ/Gafo3fCwrcaokezLPupVyQ==", - "dev": true - }, - "xtend": { + "node_modules/xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", "dev": true, - "peer": true + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.4" + } }, - "y18n": { + "node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true + "dev": true, + "engines": { + "node": ">=10" + } }, - "yallist": { + "node_modules/yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", "dev": true }, - "yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true, - "peer": true - }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "node_modules/yargs": { + "version": "17.7.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.1.tgz", + "integrity": "sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==", "dev": true, - "requires": { - "cliui": "^7.0.2", + "dependencies": { + "cliui": "^8.0.1", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "string-width": "^4.2.0", + "string-width": "^4.2.3", "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" } }, - "yargs-parser": { + "node_modules/yargs-parser": { "version": "20.2.9", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true + "dev": true, + "peer": true, + "engines": { + "node": ">=10" + } }, - "yocto-queue": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", - "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==" + "node_modules/yargs/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yocto-queue": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", + "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", + "license": "MIT", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } } } } diff --git a/package.json b/package.json index 9b49620846911f857467130098b55479e9cb0656..eefc5f9e15c27ec1b4df8009043ec153ce7ecde6 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "calendar", "description": "A calendar app for Nextcloud. Easily sync events from various devices, share and edit them online.", - "version": "3.5.0", + "version": "5.3.5", "author": "Georg Ehrke ", "contributors": [ "Georg Ehrke ", @@ -32,77 +32,82 @@ "stylelint": "stylelint src css", "stylelint:fix": "stylelint src css --fix", "test": "jest", + "test:watch": "jest --watch", "test:coverage": "jest --coverage" }, "dependencies": { - "@fullcalendar/core": "5.11.0", - "@fullcalendar/daygrid": "5.11.0", - "@fullcalendar/interaction": "5.11.0", - "@fullcalendar/list": "5.11.0", - "@fullcalendar/resource-timeline": "5.11.0", - "@fullcalendar/timegrid": "5.11.0", - "@fullcalendar/vue": "5.11.0", - "@nextcloud/auth": "^1.3.0", - "@nextcloud/axios": "^1.10.0", - "@nextcloud/calendar-availability-vue": "^0.3.1", - "@nextcloud/calendar-js": "^3.0.0", - "@nextcloud/cdav-library": "^1.1.0", - "@nextcloud/dialogs": "^3.1.4", - "@nextcloud/event-bus": "^2.1.1", - "@nextcloud/initial-state": "^1.2.1", - "@nextcloud/l10n": "^1.6.0", - "@nextcloud/logger": "^2.1.0", - "@nextcloud/moment": "^1.2.1", - "@nextcloud/router": "^2.0.0", - "@nextcloud/vue": "^5.3.1", - "@nextcloud/vue-dashboard": "^2.0.1", - "autosize": "^5.0.1", - "closest-css-color": "^1.0.0", - "color-convert": "^2.0.1", - "core-js": "^3.24.1", + "@fullcalendar/core": "6.1.17", + "@fullcalendar/daygrid": "6.1.17", + "@fullcalendar/interaction": "6.1.17", + "@fullcalendar/list": "6.1.17", + "@fullcalendar/multimonth": "6.1.17", + "@fullcalendar/resource": "6.1.17", + "@fullcalendar/resource-timeline": "6.1.17", + "@fullcalendar/timegrid": "6.1.17", + "@fullcalendar/vue": "6.1.17", + "@mdi/svg": "^7.4.47", + "@nextcloud/auth": "^2.5.1", + "@nextcloud/axios": "^2.5.1", + "@nextcloud/calendar-availability-vue": "^2.2.6", + "@nextcloud/calendar-js": "^8.1.1", + "@nextcloud/cdav-library": "^1.5.3", + "@nextcloud/dialogs": "^6.2.0", + "@nextcloud/event-bus": "^3.3.2", + "@nextcloud/initial-state": "^2.2.0", + "@nextcloud/l10n": "^3.2.0", + "@nextcloud/logger": "^3.0.2", + "@nextcloud/moment": "^1.3.4", + "@nextcloud/router": "^3.0.1", + "@nextcloud/timezones": "^0.1.1", + "@nextcloud/vue": "^8.26.0", + "autosize": "^6.0.1", + "color-convert": "^3.0.1", + "color-string": "^2.0.1", + "core-js": "^3.42.0", "css-color-names": "^1.0.1", - "debounce": "^1.2.1", + "debounce": "^2.2.0", "jstz": "^2.1.1", + "linkifyjs": "^4.2.0", + "lodash": "^4.17.21", "md5": "^2.3.0", - "p-limit": "^4.0.0", + "p-limit": "^6.2.0", + "pinia": "^2.3.1", "v-tooltip": "^2.1.3", - "vue": "^2.7.0", + "vue": "^2.7.16", "vue-click-outside": "^1.1.0", - "vue-clipboard2": "^0.3.3", - "vue-material-design-icons": "^5.0.0", - "vue-router": "^3.5.4", + "vue-material-design-icons": "^5.3.1", + "vue-router": "^3.6.5", "vue-shortkey": "^3.1.7", "vuedraggable": "^2.24.3", - "vuex": "^3.6.2", - "vuex-router-sync": "^5.0.0" + "webdav": "^5.8.0" }, "browserslist": [ "extends @nextcloud/browserslist-config" ], "engines": { - "node": "^16.0.0", - "npm": "^7.0.0 || ^8.0.0" + "node": "^20.0.0", + "npm": "^10.0.0" }, "devDependencies": { - "@nextcloud/babel-config": "^1.0.0", - "@nextcloud/browserslist-config": "^2.2.0", - "@nextcloud/eslint-config": "^8.0.0", - "@nextcloud/stylelint-config": "^2.1.2", - "@nextcloud/webpack-vue-config": "^5.2.1", - "@vue/test-utils": "^1.3.0", - "babel-core": "^7.0.0-bridge.0", - "babel-jest": "^27.4.4", + "@babel/core": "^7.24.0", + "@babel/preset-env": "^7.24.0", + "@nextcloud/babel-config": "^1.2.0", + "@nextcloud/browserslist-config": "^3.0.1", + "@nextcloud/eslint-config": "^8.4.1", + "@nextcloud/stylelint-config": "^2.4.0", + "@nextcloud/webpack-vue-config": "^6.2.0", + "@vue/test-utils": "^2.4.6", + "@vue/vue2-jest": "^29.2.6", + "babel-jest": "^29.7.0", "babel-loader-exclude-node-modules-except": "^1.2.1", - "ical.js": "^1.5.0", - "iconfont-plugin-webpack": "^1.1.4", - "jest": "^27.5.1", - "jest-serializer-vue": "^2.0.2", + "jest": "^29.7.0", + "jest-environment-jsdom": "^29.7.0", + "jest-serializer-vue": "^3.1.0", "resolve-url-loader": "^5.0.0", - "vue-jest": "^3.0.7", - "vue-template-compiler": "^2.7.0" + "vue-template-compiler": "^2.7.16" }, "optionalDependencies": { - "fsevents": "^2.3.2" + "fsevents": "^2.3.3" }, "jest": { "moduleFileExtensions": [ @@ -111,11 +116,11 @@ ], "moduleNameMapper": { "^@/(.*)$": "/src/$1", - "^ical.js": "/node_modules/ical.js" + "\\.(css|less|scss|sass)$": "/__mocks__/css.js" }, "transform": { ".*\\.js$": "/node_modules/babel-jest", - ".*\\.(vue)$": "/node_modules/vue-jest" + ".*\\.(vue)$": "/node_modules/@vue/vue2-jest" }, "snapshotSerializers": [ "/node_modules/jest-serializer-vue" @@ -134,7 +139,7 @@ "clover" ], "transformIgnorePatterns": [ - "/node_modules/(?!(@fullcalendar)).+\\.js$" + "/node_modules/(?!(@fullcalendar|uuid|webdav|p-limit|yocto-queue|color-(name|string|convert))).+\\.js$" ], "setupFilesAfterEnv": [ "./tests/javascript/jest.setup.js", diff --git a/phpunit.integration.xml b/phpunit.integration.xml new file mode 100644 index 0000000000000000000000000000000000000000..f6eba1961fdaeed8df0068928a179000ef23f65d --- /dev/null +++ b/phpunit.integration.xml @@ -0,0 +1,21 @@ + + + + + + ../lib + + + + + + + ./tests/php/integration + + diff --git a/phpunit.unit.xml b/phpunit.unit.xml index 08553d3f5fcd89ed366afc23cc59cd65422abc18..56f9d822c2afbf4e631309fcc495b574e541cf9c 100644 --- a/phpunit.unit.xml +++ b/phpunit.unit.xml @@ -1,4 +1,8 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/renovate.json b/renovate.json new file mode 100644 index 0000000000000000000000000000000000000000..de3623c12027163456ee91993b6a457b37c58ec7 --- /dev/null +++ b/renovate.json @@ -0,0 +1,134 @@ +{ + "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "extends": [ + "config:recommended", + "helpers:pinGitHubActionDigests", + ":dependencyDashboard", + ":semanticCommits", + ":gitSignOff" + ], + "timezone": "Europe/Vienna", + "schedule": [ + "before 5am on wednesday" + ], + "labels": [ + "dependencies", + "3. to review" + ], + "commitMessageAction": "Bump", + "commitMessageTopic": "{{depName}}", + "commitMessageExtra": "from {{currentVersion}} to {{#if isPinDigest}}{{{newDigestShort}}}{{else}}{{#if isMajor}}{{prettyNewMajor}}{{else}}{{#if isSingleVersion}}{{prettyNewVersion}}{{else}}{{#if newValue}}{{{newValue}}}{{else}}{{{newDigestShort}}}{{/if}}{{/if}}{{/if}}{{/if}}", + "rangeStrategy": "bump", + "rebaseWhen": "conflicted", + "ignoreUnstable": false, + "baseBranches": [ + "main", + "stable5.0", + "stable4.7" + ], + "enabledManagers": [ + "composer", + "github-actions", + "npm" + ], + "ignoreDeps": [ + "node", + "npm", + "php", + "postcss-loader" + ], + "packageRules": [ + { + "description": "Request JavaScript reviews", + "matchManagers": ["npm"], + "reviewers": [ + "st3iny" + ] + }, + { + "description": "Request PHP reviews", + "matchManagers": ["composer"], + "reviewers": [ + "SebastianKrupinski", + "st3iny" + ] + }, + { + "description": "Bump Github actions monthly and request reviews", + "matchManagers": ["github-actions"], + "extends": ["schedule:monthly"], + "reviewers": [ + "SebastianKrupinski", + "st3iny" + ] + }, + { + "matchUpdateTypes": ["minor", "patch"], + "matchCurrentVersion": "!/^0/", + "automerge": true, + "automergeType": "pr", + "platformAutomerge": true, + "labels": [ + "dependencies", + "4. to release" + ], + "reviewers": [] + }, + { + "description": "Only automerge packages that follow semver", + "matchPackageNames": ["@nextcloud/vue", "friendsofphp/php-cs-fixer"], + "automerge": false, + "labels": [ + "dependencies", + "3. to review" + ], + "reviewers": [ + "GretaD", + "st3iny" + ] + }, + { + "enabled": false, + "matchBaseBranches": "/^stable(.)+/" + }, + { + "matchBaseBranches": ["main"], + "matchDepTypes": ["devDependencies"], + "extends": ["schedule:monthly"] + }, + { + "groupName": "FullCalendar family", + "matchPackageNames": [ + "@fullcalendar/core", + "@fullcalendar/daygrid", + "@fullcalendar/interaction", + "@fullcalendar/list", + "@fullcalendar/multimonth", + "@fullcalendar/resource", + "@fullcalendar/resource-timeline", + "@fullcalendar/timegrid", + "@fullcalendar/vue" + ], + "rangeStrategy": "pin", + "automerge": false + }, + { + "groupName": "Jest family", + "matchPackageNames": [ + "jest", + "jest-environment-jsdom", + "babel-jest", + "@vue/vue2-jest" + ], + "automerge": true + } + ], + "vulnerabilityAlerts": { + "enabled": true, + "semanticCommitType": "fix", + "schedule": "before 7am every weekday", + "dependencyDashboardApproval": false, + "commitMessageSuffix": "" + }, + "osvVulnerabilityAlerts": true +} diff --git a/screenshots/2.0/COPYING b/screenshots/2.0/COPYING deleted file mode 100644 index 2f244ac814036ecd9ba9f69782e89ce6b1dca9eb..0000000000000000000000000000000000000000 --- a/screenshots/2.0/COPYING +++ /dev/null @@ -1,395 +0,0 @@ -Attribution 4.0 International - -======================================================================= - -Creative Commons Corporation ("Creative Commons") is not a law firm and -does not provide legal services or legal advice. Distribution of -Creative Commons public licenses does not create a lawyer-client or -other relationship. Creative Commons makes its licenses and related -information available on an "as-is" basis. Creative Commons gives no -warranties regarding its licenses, any material licensed under their -terms and conditions, or any related information. Creative Commons -disclaims all liability for damages resulting from their use to the -fullest extent possible. - -Using Creative Commons Public Licenses - -Creative Commons public licenses provide a standard set of terms and -conditions that creators and other rights holders may use to share -original works of authorship and other material subject to copyright -and certain other rights specified in the public license below. The -following considerations are for informational purposes only, are not -exhaustive, and do not form part of our licenses. - - Considerations for licensors: Our public licenses are - intended for use by those authorized to give the public - permission to use material in ways otherwise restricted by - copyright and certain other rights. Our licenses are - irrevocable. Licensors should read and understand the terms - and conditions of the license they choose before applying it. - Licensors should also secure all rights necessary before - applying our licenses so that the public can reuse the - material as expected. Licensors should clearly mark any - material not subject to the license. This includes other CC- - licensed material, or material used under an exception or - limitation to copyright. More considerations for licensors: - wiki.creativecommons.org/Considerations_for_licensors - - Considerations for the public: By using one of our public - licenses, a licensor grants the public permission to use the - licensed material under specified terms and conditions. If - the licensor's permission is not necessary for any reason--for - example, because of any applicable exception or limitation to - copyright--then that use is not regulated by the license. Our - licenses grant only permissions under copyright and certain - other rights that a licensor has authority to grant. Use of - the licensed material may still be restricted for other - reasons, including because others have copyright or other - rights in the material. A licensor may make special requests, - such as asking that all changes be marked or described. - Although not required by our licenses, you are encouraged to - respect those requests where reasonable. More_considerations - for the public: - wiki.creativecommons.org/Considerations_for_licensees - -======================================================================= - -Creative Commons Attribution 4.0 International Public License - -By exercising the Licensed Rights (defined below), You accept and agree -to be bound by the terms and conditions of this Creative Commons -Attribution 4.0 International Public License ("Public License"). To the -extent this Public License may be interpreted as a contract, You are -granted the Licensed Rights in consideration of Your acceptance of -these terms and conditions, and the Licensor grants You such rights in -consideration of benefits the Licensor receives from making the -Licensed Material available under these terms and conditions. - - -Section 1 -- Definitions. - - a. Adapted Material means material subject to Copyright and Similar - Rights that is derived from or based upon the Licensed Material - and in which the Licensed Material is translated, altered, - arranged, transformed, or otherwise modified in a manner requiring - permission under the Copyright and Similar Rights held by the - Licensor. For purposes of this Public License, where the Licensed - Material is a musical work, performance, or sound recording, - Adapted Material is always produced where the Licensed Material is - synched in timed relation with a moving image. - - b. Adapter's License means the license You apply to Your Copyright - and Similar Rights in Your contributions to Adapted Material in - accordance with the terms and conditions of this Public License. - - c. Copyright and Similar Rights means copyright and/or similar rights - closely related to copyright including, without limitation, - performance, broadcast, sound recording, and Sui Generis Database - Rights, without regard to how the rights are labeled or - categorized. For purposes of this Public License, the rights - specified in Section 2(b)(1)-(2) are not Copyright and Similar - Rights. - - d. Effective Technological Measures means those measures that, in the - absence of proper authority, may not be circumvented under laws - fulfilling obligations under Article 11 of the WIPO Copyright - Treaty adopted on December 20, 1996, and/or similar international - agreements. - - e. Exceptions and Limitations means fair use, fair dealing, and/or - any other exception or limitation to Copyright and Similar Rights - that applies to Your use of the Licensed Material. - - f. Licensed Material means the artistic or literary work, database, - or other material to which the Licensor applied this Public - License. - - g. Licensed Rights means the rights granted to You subject to the - terms and conditions of this Public License, which are limited to - all Copyright and Similar Rights that apply to Your use of the - Licensed Material and that the Licensor has authority to license. - - h. Licensor means the individual(s) or entity(ies) granting rights - under this Public License. - - i. Share means to provide material to the public by any means or - process that requires permission under the Licensed Rights, such - as reproduction, public display, public performance, distribution, - dissemination, communication, or importation, and to make material - available to the public including in ways that members of the - public may access the material from a place and at a time - individually chosen by them. - - j. Sui Generis Database Rights means rights other than copyright - resulting from Directive 96/9/EC of the European Parliament and of - the Council of 11 March 1996 on the legal protection of databases, - as amended and/or succeeded, as well as other essentially - equivalent rights anywhere in the world. - - k. You means the individual or entity exercising the Licensed Rights - under this Public License. Your has a corresponding meaning. - - -Section 2 -- Scope. - - a. License grant. - - 1. Subject to the terms and conditions of this Public License, - the Licensor hereby grants You a worldwide, royalty-free, - non-sublicensable, non-exclusive, irrevocable license to - exercise the Licensed Rights in the Licensed Material to: - - a. reproduce and Share the Licensed Material, in whole or - in part; and - - b. produce, reproduce, and Share Adapted Material. - - 2. Exceptions and Limitations. For the avoidance of doubt, where - Exceptions and Limitations apply to Your use, this Public - License does not apply, and You do not need to comply with - its terms and conditions. - - 3. Term. The term of this Public License is specified in Section - 6(a). - - 4. Media and formats; technical modifications allowed. The - Licensor authorizes You to exercise the Licensed Rights in - all media and formats whether now known or hereafter created, - and to make technical modifications necessary to do so. The - Licensor waives and/or agrees not to assert any right or - authority to forbid You from making technical modifications - necessary to exercise the Licensed Rights, including - technical modifications necessary to circumvent Effective - Technological Measures. For purposes of this Public License, - simply making modifications authorized by this Section 2(a) - (4) never produces Adapted Material. - - 5. Downstream recipients. - - a. Offer from the Licensor -- Licensed Material. Every - recipient of the Licensed Material automatically - receives an offer from the Licensor to exercise the - Licensed Rights under the terms and conditions of this - Public License. - - b. No downstream restrictions. You may not offer or impose - any additional or different terms or conditions on, or - apply any Effective Technological Measures to, the - Licensed Material if doing so restricts exercise of the - Licensed Rights by any recipient of the Licensed - Material. - - 6. No endorsement. Nothing in this Public License constitutes or - may be construed as permission to assert or imply that You - are, or that Your use of the Licensed Material is, connected - with, or sponsored, endorsed, or granted official status by, - the Licensor or others designated to receive attribution as - provided in Section 3(a)(1)(A)(i). - - b. Other rights. - - 1. Moral rights, such as the right of integrity, are not - licensed under this Public License, nor are publicity, - privacy, and/or other similar personality rights; however, to - the extent possible, the Licensor waives and/or agrees not to - assert any such rights held by the Licensor to the limited - extent necessary to allow You to exercise the Licensed - Rights, but not otherwise. - - 2. Patent and trademark rights are not licensed under this - Public License. - - 3. To the extent possible, the Licensor waives any right to - collect royalties from You for the exercise of the Licensed - Rights, whether directly or through a collecting society - under any voluntary or waivable statutory or compulsory - licensing scheme. In all other cases the Licensor expressly - reserves any right to collect such royalties. - - -Section 3 -- License Conditions. - -Your exercise of the Licensed Rights is expressly made subject to the -following conditions. - - a. Attribution. - - 1. If You Share the Licensed Material (including in modified - form), You must: - - a. retain the following if it is supplied by the Licensor - with the Licensed Material: - - i. identification of the creator(s) of the Licensed - Material and any others designated to receive - attribution, in any reasonable manner requested by - the Licensor (including by pseudonym if - designated); - - ii. a copyright notice; - - iii. a notice that refers to this Public License; - - iv. a notice that refers to the disclaimer of - warranties; - - v. a URI or hyperlink to the Licensed Material to the - extent reasonably practicable; - - b. indicate if You modified the Licensed Material and - retain an indication of any previous modifications; and - - c. indicate the Licensed Material is licensed under this - Public License, and include the text of, or the URI or - hyperlink to, this Public License. - - 2. You may satisfy the conditions in Section 3(a)(1) in any - reasonable manner based on the medium, means, and context in - which You Share the Licensed Material. For example, it may be - reasonable to satisfy the conditions by providing a URI or - hyperlink to a resource that includes the required - information. - - 3. If requested by the Licensor, You must remove any of the - information required by Section 3(a)(1)(A) to the extent - reasonably practicable. - - 4. If You Share Adapted Material You produce, the Adapter's - License You apply must not prevent recipients of the Adapted - Material from complying with this Public License. - - -Section 4 -- Sui Generis Database Rights. - -Where the Licensed Rights include Sui Generis Database Rights that -apply to Your use of the Licensed Material: - - a. for the avoidance of doubt, Section 2(a)(1) grants You the right - to extract, reuse, reproduce, and Share all or a substantial - portion of the contents of the database; - - b. if You include all or a substantial portion of the database - contents in a database in which You have Sui Generis Database - Rights, then the database in which You have Sui Generis Database - Rights (but not its individual contents) is Adapted Material; and - - c. You must comply with the conditions in Section 3(a) if You Share - all or a substantial portion of the contents of the database. - -For the avoidance of doubt, this Section 4 supplements and does not -replace Your obligations under this Public License where the Licensed -Rights include other Copyright and Similar Rights. - - -Section 5 -- Disclaimer of Warranties and Limitation of Liability. - - a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE - EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS - AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF - ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, - IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, - WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR - PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, - ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT - KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT - ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. - - b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE - TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, - NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, - INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, - COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR - USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN - ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR - DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR - IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. - - c. The disclaimer of warranties and limitation of liability provided - above shall be interpreted in a manner that, to the extent - possible, most closely approximates an absolute disclaimer and - waiver of all liability. - - -Section 6 -- Term and Termination. - - a. This Public License applies for the term of the Copyright and - Similar Rights licensed here. However, if You fail to comply with - this Public License, then Your rights under this Public License - terminate automatically. - - b. Where Your right to use the Licensed Material has terminated under - Section 6(a), it reinstates: - - 1. automatically as of the date the violation is cured, provided - it is cured within 30 days of Your discovery of the - violation; or - - 2. upon express reinstatement by the Licensor. - - For the avoidance of doubt, this Section 6(b) does not affect any - right the Licensor may have to seek remedies for Your violations - of this Public License. - - c. For the avoidance of doubt, the Licensor may also offer the - Licensed Material under separate terms or conditions or stop - distributing the Licensed Material at any time; however, doing so - will not terminate this Public License. - - d. Sections 1, 5, 6, 7, and 8 survive termination of this Public - License. - - -Section 7 -- Other Terms and Conditions. - - a. The Licensor shall not be bound by any additional or different - terms or conditions communicated by You unless expressly agreed. - - b. Any arrangements, understandings, or agreements regarding the - Licensed Material not stated herein are separate from and - independent of the terms and conditions of this Public License. - - -Section 8 -- Interpretation. - - a. For the avoidance of doubt, this Public License does not, and - shall not be interpreted to, reduce, limit, restrict, or impose - conditions on any use of the Licensed Material that could lawfully - be made without permission under this Public License. - - b. To the extent possible, if any provision of this Public License is - deemed unenforceable, it shall be automatically reformed to the - minimum extent necessary to make it enforceable. If the provision - cannot be reformed, it shall be severed from this Public License - without affecting the enforceability of the remaining terms and - conditions. - - c. No term or condition of this Public License will be waived and no - failure to comply consented to unless expressly agreed to by the - Licensor. - - d. Nothing in this Public License constitutes or may be interpreted - as a limitation upon, or waiver of, any privileges and immunities - that apply to the Licensor or You, including from the legal - processes of any jurisdiction or authority. - - -======================================================================= - -Creative Commons is not a party to its public -licenses. Notwithstanding, Creative Commons may elect to apply one of -its public licenses to material it publishes and in those instances -will be considered the “Licensor.” The text of the Creative Commons -public licenses is dedicated to the public domain under the CC0 Public -Domain Dedication. Except for the limited purpose of indicating that -material is shared under a Creative Commons public license or as -otherwise permitted by the Creative Commons policies published at -creativecommons.org/policies, Creative Commons does not authorize the -use of the trademark "Creative Commons" or any other trademark or logo -of Creative Commons without its prior written consent including, -without limitation, in connection with any unauthorized modifications -to any of its public licenses or any other arrangements, -understandings, or agreements concerning use of licensed material. For -the avoidance of doubt, this paragraph does not form part of the -public licenses. - -Creative Commons may be contacted at creativecommons.org. diff --git a/screenshots/week_new_event.png b/screenshots/week_new_event.png index dbca8a682e33451592a24ba6747b1513f4b60a03..726434b823e5e995b29f7fabe8cf8a5a0420ccb4 100644 Binary files a/screenshots/week_new_event.png and b/screenshots/week_new_event.png differ diff --git a/screenshots/week_room_suggestion.png b/screenshots/week_room_suggestion.png index 75974fa574da45d0066a21c7b0302e88d32cd560..1fcb4a6a7c6e42f5eeaa10dba3a051055073f10e 100644 Binary files a/screenshots/week_room_suggestion.png and b/screenshots/week_room_suggestion.png differ diff --git a/screenshots/week_sidebar.png b/screenshots/week_sidebar.png index 5caed9ebfc7e36862b01b463f491a99073c212c1..5b2d5013fc306a4cdeb03c3317ef73e54d6cad6d 100644 Binary files a/screenshots/week_sidebar.png and b/screenshots/week_sidebar.png differ diff --git a/src/App.vue b/src/App.vue index bb03f5880d97d82921dfa8e7b5f19223a66b5ae0..06b1237fd850795406bbd88a6eba5c4b2f953164 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,23 +1,7 @@ + - SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors + - SPDX-License-Identifier: AGPL-3.0-or-later +-->